计算机组成原理---第 6 章总线系统

news2024/11/24 3:46:26

一、总线的概念和结构形态

  1. 总线的基本概念

   ⑴概述

总线是构成计算机系统的互联机构,是多个系统功能部件之间进行数据传送的公共通路。

   ⑵ 分类

总线的分类方式有很多:如被分为外部总线和内部总线、系统总线和非系统总线、片内总线和PCB板级总线、串行总线和并行总线、高速总线和低速总线、同步总线和异步总线。专用总线和通用总线等。

如以用途分类:一个单处理器系统中的总线,大致分为三类:

①CPU 内部连接各寄存器及运算部件之间的总线,称为内部总线;

②CPU 同存储器、通道等计算机系统的其他高速功能部件互相连接的总线,称为系统总线;

③中、低速 I/O 设备之间互相连接的总线,称为 I/O 总线。

 

 

 

    ⑶  特性

①物理特性

②功能特性

③电气特性

④时间特性

     ⑷ 性能指标

       衡量总线性能的重要指标是总线带宽,即总线本身所能达到的最高传输速率,单位是兆字节每秒(MB/s)。设总线的总线周期为 T,其在一个总线周期中共传输 D 个字节,则总线带宽为 D/T。

     

 

⑸ 

 

 

  2. 总线的连接方式

外围设备通过适配器与计算机连接,从而实现高速 CPU 与低速外设之间工作速度上的匹配和同步,并完成计算机和外设之间的所有数据传送和控制,适配器通常简称为接口。

⑴ 单总线结构

     在许多单处理器的计算机中,使用单一的系统总线来连接 CPU、主存和 I/O 设备,称为单总线结构,如图6-1 所示。

 单总线结构有以下特点:

①连接到总线上的逻辑部件必须高速,从而避免不必要的时间延迟;

②当 CPU 读取指令时会将程序计数器中的地址同控制信息送至总线,而只有地址与总线传输的地址相对应的设备才会执行数据传送操作;

③在单总线系统中,对输入/输出设备的操作,完全与对主存的操作方法一样;

④在单总线系统中,某些外围设备也可以指定地址;(访问存储器和访问外设指令相同,由地址来区分)

⑤单总线结构容易扩展成多 CPU 系统。

        ⑥总线简单,使用灵活、易于扩展

        ⑦任意两设备之间理论上都可以直接交换信息。

        ⑧所有设备分时工作,仅适用于低速的计算机系统中。

      

   ⑵多总线结构

      由于单总线系统的信息传送效率和吞吐量都受到极大限制,因此产生了多总线结构,如图 6-2 所示。

多总线结构有如下几个特点:

 ①CPU 和 cache 之间采用高速的 CPU 总线,主存连在系统总线上,通过桥,CPU 总线、系统总线和高速总线彼此相连;

②高速总线通过扩充总线接口与扩充总线相连,扩充总线可以连接串行工作方式的 I/O 设备;

③多总线结构中,高速、中速、低速设备连接到不同的总线上同时进行工作,提高了总线的效率和吞吐量。

④存储总线的增加减轻了系统总线的负担,提高了并行性;

 ⑤由于外设和内存处于不同的总线,需要增加I/O指令。

3. 总线的内部结构

   ⑴ 早期总线的内部结构

早期总线的内部结构如图 6-3 所示。

其中地址线是单向的,而数据线和控制线是双向的,早期总线的不足有两个地方:

①CPU 是唯一主控者,从而无法满足多 CPU 的环境要求;

②由于总线信号是 CPU 引脚信号的延伸,故总线结构与 CPU 紧密相关,通用性较差。

 

⑵当代总线的内部结构

当代流行的总线内部结构如图 6-4 所示。

 

 

其中总线分为四个部分:

图 6-4 当代总线的内部结构

其中总线分为四个部分:

①数据传送总线:主要由地址线、数据线、控制线组成,一般是 32 位或 64 位;

②仲裁总线:主要包括总线请求线以及总线授权线;

③中断与同步总线:用于处理带优先级的中断操作,包括中断请求线和中断认可线;

④公用线:主要包括时钟信号线、电源线、地线、系统复位线以及加电或断电的时序信号线等。当代总线的结构是标准总线,并且满足包括多个 CPU 在内的主控者环境需求。

 

  

二、总线接口

 

  1. 信息传送方式

计算机系统中,传输信息可采用串行传送、并行传送和分时传送三种方式,但是出于速度和效率上的考虑, 系统总线上传送的信息必须采用并行传送方式。

    ⑴ 串行传送 

串行传送只有一条传输线,且通过脉冲传送,因此特别适合长距离传输,但是传输效率低。

    ⑵ 并行传送

并行传送,对每个数据位都需要单独一条传输线。并行传送一般采用电位传送,由于所有的位同时被传送, 所以并行数据传送比串行数据传送快得多。

    ⑶ 分时传送

①采用总线复用方式,即传送地址和传送数据在不同的时间片内完成;

②共享总线的部件分时使用总线。

 

 

 

2.总线接口的基本概念

   ⑴ 概述

I/O 功能模块通常简称为 I/O 接口,也叫适配器。广义地讲,I/O 接口是指 CPU、主存和外围设备之间通过系统总线进行连接的标准化逻辑部件。

  ⑵ 外围设备

CPU、I/O 接口和外围设备之间的连接关系如图 6-5 所示。

 ⑶I/O 接口

      一个标准 I/O 接口可能连接一个设备,也可能连接多个设备。I/O 接口模块的一般结构框图如图 6-6 所示。

三、总线的仲裁

  1. 概述

        为了解决多个主设备同时竞争总线控制权的问题,必须具有总线仲裁部件,一般采用优先级或公平策略进行仲裁。主方持续控制总线的时间称为总线占用期,按照总线仲裁电路的位置不同,仲裁方式分为集中式仲裁和分布式仲裁两类。

2.集中式仲裁

       集中式仲裁中每个功能模块有两条线连到总线控制器:一条是送往仲裁器的总线请求信号线 BR,一条是仲裁器送出的总线授权信号线 BG。

   ⑴链式查询方式

      为减少总线授权线数量,采用菊花链查询方式,其中 A 表示地址线,D 表示数据线。BS 线为 1 表示总线正被某外设使用,如图 6-7 所示。

①工作过程

链式查询中,总线授权信号 BG 串行地从一个 I/O 接口传送到下一个 I/O 接口。假如 BG 到达的接口无总线请求,则继续往下查询;假如 BG 到达的接口有总线请求,BG 信号便不再往下查询,这意味着该 I/O 接口就获得了总线控制权。由此可见,离总线仲裁器越远,优先级越低。

②优缺点

优点:结构简单,只需较少几根线就能按一定优先次序实现总线仲裁;

缺点:对电路故障很敏感,并且高优先级的设备频繁请求时,低优先级的设备可能长期不能使用总线。

 ⑵计数器定时查询方式

计数器定时查询方式原理如图 6-8 所示。

 其工作过程为:

       总线上的任一设备要求使用总线时,通过 BR 线发出总线请求。总线仲裁器接到请求信号以后,在 BS 线为“0”的情况下让计数器开始计数,计数值通过一组地址线发向各设备。当地址线上的计数值与请求总线的设备地址相一致时,该设备将 BS 线置“1”,获得了总线使用权,此时中止计数查询。

当释放总线后,有两种方法:

①重新开始从 0 开始计数,这样和链式查询法相同,离总线仲裁器越近,优先级越高;

②从中止点开始,则每个设备使用总线的优先级相等。

⑶独立请求方式

独立请求方式原理如图 6-9 所示。

 

①工作过程

       在独立请求方式中,每一个共享总线的设备均有一对总线请求线 BR 和总线授权线 BG。当设备要求使用总线时,便发出该设备的请求信号。总线仲裁器中有一个排队电路,它根据一定的优先次序决定首先响应哪个设备的请求,给设备以授权信号 BG。

②优缺点

       独立请求方式的优点是响应时间快,并且控制优先级也相当灵活,但是电路结构复杂,所需线路多。

 

3.分布式仲裁

      分布式仲裁每个潜在的主方功能模块都有自己的仲裁号和仲裁器,不需要集中的总线仲裁器。当有总线请求时,把它们唯一的仲裁号发送到共享的仲裁总线上,每个仲裁器将仲裁总线上得到的号与自己的号进行比较。如果仲裁总线上的号大,则它的总线请求不予响应,并撤销它的仲裁号,最后,获胜者的仲裁号保留在仲裁总线上。分布式仲裁是以优先级仲裁策略为基础。

分布式仲裁器的逻辑结构示意图如图 6-10 所示。

四、总线的定时和数据传送模式

  1. 总线的定时

总线的一次信息传送过程,大致可分为五个阶段:请求总线,总线仲裁,寻址(目的地址),信息传送,状态返回(或错误报告)。

  ⑴ 同步定时

在同步定时协议中,事件出现在总线上的时刻由总线时钟信号来确定。一次 I/O 传送被称为时钟周期或总线周期,如图 6-11 所示为读写数据的同步时序。

 

 

①工作过程

以读周期为例,CPU 首先将存储器地址放到地址线上,并发出地址允许信号,在第二个时钟周期发出一个读命令,再经过一个周期的存取时间,将数据和认可信息放到总线上,被 CPU 读取。

②优缺点

优点:同步定时具有较高的传输频率;同步定时适用于总线长度较短、各功能模块存取时间比较接近的情况。缺点:同步总线必须按最慢的模块来设计公共时钟,当各功能模块存取时间相差很大时,会大大损失总线效率。

  ⑵ 异步定时

       在异步定时协议中,后一事件出现在总线上的时刻取决于前一事件的出现,即建立在应答式或互锁机制的基础上。这种系统不需要统一的公共时钟信号,总线周期的长度是可变的。

①读周期的过程。

系统总线读周期时序图如图 6-12 所示。

      CPU 将地址信号和读状态信号发送到总线上,待这些信号稳定后,它发出读命令,指示有效地址和控制信号的出现。存储器模块进行地址译码并将数据放到数据线上。一旦数据线上的信号稳定,存储器模块使确认线有效,通知 CPU 数据可用。CPU 从数据线上读取数据后,立即撤销读状态信号,从而引起存储器模块撤销数据和确认信号。最后,确认信号的撤销又使 CPU 撤销地址信息。

 

②写周期的过程

系统总线写周期时序图如图 6-13 所示。

 

 

2.总线数据传送模式

当代的总线标准大都能支持的数据传送模式如图 6-14 所示。

 

五、HOST 总线和 PCI 总线

典型的多总线结构框图如图 6-15 所示。

 

整个系统有如下三种不同的总线:

⑴HOST 总线

      HOST 总线不仅连接主存,还可以连接多个 CPU。HOST 总线是连接“北桥”芯片与 CPU 之间的信息通路, 它是一个 64 位数据线和 32 位地址线的同步总线。

⑵PCI 总线

       PCI 总线连接各种高速的 PCI 设备,是一个与处理器无关的高速外围总线,又是至关重要的层间总线。它采用同步时序协议和集中式仲裁策略,并具有自动配置能力。PCI 设备可以是主设备,也可以是从设备,或兼而有之。在 PCI 设备中不存在 DMA(直接存储器访问)的概念,这是因为 PCI 总线支持无限的猝发式传送。系统中允许有多条 PCI 总线,它们可以使用 HOST 桥与 HOST 总线相连,也可使用 PCI/PCI 桥与已和HOST 总线相连的 PCI 总线相连,从而得以扩充整个系统的 PCI 总线负载能力。

PCI 总线的基本传输机制是猝发式传送,利用桥可以实现总线间的猝发式传送。同时 PCI 总线结构具有很好的扩充性和兼容性,允许多条总线并行工作。PCI 适合于低成本的小系统,因此在微型机系统中得到了广泛的应用。

⑶LAGACY 总线

       该总线可以是 ISA,EISA,MCA 等这类性能较低的传统总线,以便充分利用市场上丰富的适配器卡,支持中、低速 I/O 设备。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/461808.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

VS2022+opengl环境配置

glfw下载Download | GLFW glad下载https://glad.dav1d.de/ Freeglut下载 https://freeglut.sourceforge.net/index.php#download cmake下载 Download | CMake glfwFreeglut 用cmake配置Freeglut,生成vs工程项目,用vs2022编译项目,生成fr…

27.Spring的事务控制

目录 一、编程式事务控制相关对象。 (1)事务管理器。 (2)事务定义信息对象(如隔离级别、传播行为)。 (3)事务状态对象。 (4) 知识要点。 二、声明式事务…

基于STM32的开源简易示波器项目

目录 ​一、前言 二、硬件接线 三、信号的采集 四、代码配置 五、数据的处理 六、模拟正弦波输出 七、模拟噪声或三角波输出 八、显示函数与按键控制 ​一、前言 该项目是基于正点原子精英板制作的一个简易示波器,可以读取信号的频率和幅值,并可…

JetpackCompose从入门到实战学习笔记14

JetpackCompose从入门到实战学习笔记14——Coli的简单使用 1.简介: Coil 是一个 Android官方出的配合Jetpack的图片加载库,通过 Kotlin 协程的方式加载图片。 优点如下: 更快: Coil 在性能上有很多优化,包括内存缓存和磁盘缓存…

C/C++基础知识

专栏:C/C 个人主页: C/C基础知识 前言C关键字(C98)命名空间命名空间的定义正常的命名空间的定义如何使用命名空间 命名空间可以嵌套同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中(一个工程中的.h文件和test.…

(数字图像处理MATLAB+Python)第七章图像锐化-第一、二节:图像锐化概述和微分算子

文章目录 一:图像边缘分析二:一阶微分算子(1)梯度算子A:定义B:边缘检测C:示例D:程序 (2)Robert算子A:定义B:示例C:程序 &a…

Tailscale: Please Restart the Tailscale Windows Service

之前用的好好的,最近重新升级了一下Tailscale后发现一直连不上。右击win10右下角的Tailscale图标,第一行显示:Please Restart the Tailscale Windows Service。 我查看了一下服务,发现Tailscale是自动的,这里的启动类…

vuex存储数组(新建,增,删,更新),并存入localstorage定时删除

vuex存储数组(新建,增,删,更新),并存入localstorage定时删除 本文目录 vuex存储数组(新建,增,删,更新),并存入localstorage定时删除使用背景store中实现增删改组件中维护数组&#x…

缩小数据文件

今天又出现12.2c 环境的问题,1T的数据空间还剩下2G,吓了一身冷汗,赶紧查看原因,不知道哪路业务大神作妖了。 发现sysaux和system增加N多数据文件,而且目前使用不多, 缩小表空间的数据文件 可以使用下面的语…

直升机空气动力学基础---002 桨叶的主要参数

源于 1.桨叶的平面形状和主要参数 由于其设计制造比较简单,早期直升机大多采用矩形桨叶,缺点是在高速气流中,无法抑制桨尖涡,会消耗向下的诱导速度,降低旋翼的拉力。现代多采用梯形桨叶。 桨尖后掠能够降低桨尖涡 …

【Linux】Linux基本指令(2)

一.你如何看待指令 指令说白了就是可执行程序,且指令一定是在系统的某一个位置存在的,在执行指令前,我们需要先找到它。 二.man指令 众所周知,Linux的指令有很多,指令的选项也有很多,我们不可能全记住&…

android注解注入AspectJ面向切面AOP插桩技术改变android原生类对象行为记录View点击事件,Java(3)

droid注解注入AspectJ面向切面AOP插桩技术改变android原生类对象行为记录View点击事件,Java(3) 动态改变Toast提示的内容,弹之前修改。Button在每次点击后记录。 import android.util.Log; import android.widget.Toast;import o…

基于天牛须(BAS)与NSGA-Ⅱ混合算法的交直流混合微电网多场景多目标优化调度(Matlab代码实现)

💥 💥 💞 💞 欢迎来到本博客 ❤️ ❤️ 💥 💥 🏆 博主优势: 🌞 🌞 🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 …

论Shell编程规范与变量

目录 一:shell脚本 1.shell概述 2.linux中包含的常用shell 3.shell脚本概述 4.shell脚本应用场景 5.shell脚本的作用 6.用户的登录shell 二: 编写脚本 1.脚本的基本格式 2.shell脚本的执行 3. 交互式硬件设备 4.重定向操作 5.管道操作符号 “…

信号完整性分析基础知识之传输线和反射(一):阻抗变化引起反射

阻抗不连续引起的反射和失真可能会导致信号的误触发和误码,这是导致信号失真和质量下降的主要原因。 在某些情况下,这看起来像振铃。当信号电平下降时,下冲会影响噪声预算并导致误触发。或者,在下降信号上,峰值可能会上…

阅读笔记 First Order Motion Model for Image Animation

文章解决的是图片动画的问题。假设有源图片和驱动视频,并且其中的物体是同一类的,文章的方法让源图片中的物体按照驱动视频中物体的动作而动。 文章的方法只需要一个同类物体的视频集,不需要而外的标注。 方法 该方法基于self-supervised策…

Qt信号槽原理

Qt之信号槽原理 一.概述 所谓信号槽,实际就是观察者模式。当某个事件发生之后,比如,按钮检测到自己被点击了一下,它就会发出一个信号(signal)。这种发出是没有目的的,类似广播。如果有对象对这…

idea无效的目标版本和类文件具有错误的版本 61.0, 应为 52.0错误(测试有用,一次性解决问题)

SpringBoot己更新到3后,使用的JAVA版本最低要求JAVA17,如果低于这个版本就是报错: 问题一:类文件具有错误的版本 61.0, 应为 52.0。 解决就只有升级JAVA-sdk: 官方下载地址:JAVA20-17 官方推荐更好的sd…

MySQL 视图、函数和存储过程

MySQL 是一种流行的关系型数据库管理系统,其具有强大的功能和灵活性,使其成为了许多企业和个人喜爱的数据库选择。在 MySQL 中,视图、函数和存储过程是常见的数据库对象,它们都有助于提高数据的处理效率和可重用性。 一、视图 视…

UE5实现Runtime环境下绘制点功能

文章目录 1.实现目标2.实现过程2.1 C++实现2.2 蓝图调用3.参考资料1.实现目标 UE5在Runtime环境下基于PDI绘制点,GIF动态如下: 2.实现过程 UE常用的在运行时环境下绘制点方法主要有两种。一种是基于Mesh,即添加Sphere等StaticMesh来模拟显示绘制点;另一种是基于Primitive的…