Chapter3 系统总线
总线的基本概念
计算机的五大部件之间的互联方式有两种,一种是各部件之间使用单独的连线,称为分散连接;另一种是将各部件连到一组公共信息传输线上,称为总线连接。
如图1.7所示,分散连接方式是以运算器为中心的结构,内部连线十分复杂,I/O与存储器交换信息时,都需要经过运算器,致使运算器停止运算,严重影响了CPU的工作效率。之后,改进为如图1.8所示的分散连接结构,I/O与主存交换信息可以不再经过运算器,又采用了中断、DMA等技术,使CPU工作效率得到了很大提高,但是仍无法解决I/O设备与主机之间连接的灵活性。由此出现了总线连接方式。
总线是连接多个部件的信息传输线,是各部件共享的传输介质。当多个部件与总线相连时,如果出现两个或两个以上部件同时向总线发送信息,将导致信号冲突,传输无效。因此,在某一时刻,只允许一个部件向总线发送信息,而多个部件可以同时从总线上接收相同的信息。总线实际上是由许多传输线或通路 组成,每条线可一位一位地传输若干位二进制代码,例如,16条传输线组成的总线可同时传输16位二进制代码。
图3.1是以CPU为中心的采用总线连接的双总线结构。其中一组总线连接CPU和主存,称为存储总线(M总线);另一组用来建立CPU和各I/O设备之间交换信息的通道,称为输入输出总线(I/O总线)。各种I/O设备通过I/O接口挂载到I/O总线上,更便于增删设备。这种结构在I/O设备与主存交换信息时仍然要占用CPU,因此还会影响CPU的工作效率。
图3.2是将CPU、主存和I/O设备(通过I/O接口)都挂到一组总线上的单总线结构的计算机,最明显的特点是当I/O设备与主存交换信息时,原则上不影响CPU的工作,CPU仍可继续处理不访问主存或I/O设备的操作,这就使CPU工作效率有所提高。但由于只有一组总线,当某时刻各部件都要占用总线时,就会发生冲突。为此,必须设置总线判优逻辑,让各部件按优先级高低来占用总线,这也会影响整机的工作速度。
还有一种以存储器为中心的双总线结构,如图3.3所示。
以存储器为中心的双总线结构在单总线基础上又开辟了一条CPU与主存之间的总线,称为存储总线。这组总线速度高,只供主存与CPU之间传输信息。既提高了传输效率,又减轻了系统总线的负担,还保留了I/O设备与存储器交换信息时不经过CPU的特点。
总线的分类
总线从不同角度有不同的分类方法。按照数据传送方式可分为并行传输总线和串行传输总线。在并行传输总线中,又可按传输数据宽度分为8位、16位、32位、64位等传输总线。若按总线的使用范围划分,则又有计算机总线、测控总线、网络通信总线等。下面按照连接部件介绍三类总线。
片内总线
片内总线指芯片内部的总线,如在CPU内部,寄存器与寄存器之间、寄存器与算逻单元ALU之间都是由片内总线连接。
系统总线
系统总线是指CPU、主存、I/O设备(通过I/O接口)各大部件之间的信息传输线。由于这些部件通常都安放在主板或各个插件板(插卡)上,故又称为扳级总线(在一块电路板上各芯片间的连接)或板间总线。
系统总线按照传输方式的不同又分为三类:数据总线、地址总线和控制总线。
数据总线
数据总线用来传输各功能部件之间的数据信息,它是双向传输总线,其位数与机器字长、存储字长有关,一般为8位、16位或32位。数据总线的位数称为数据总线宽度,它是衡量系统性能的一个重要参数。如果数据总线的宽度为8位,指令字长为16位,那么CPU在取指阶段必须两次访问主存。
地址总线
地址总线主要用来指出数据总线上的源数据和目的数据在主存单元的地址或I/O设备的地址。例如,预从存储器读出一个数据,则CPU要将此数据所在存储单元的地址送到地址线上。或数据通过I/O设备输出时,CPU除了需要将数据送到数据总线,还需要将输出设备的地址送到地址总线上。
可见,地址总线上的代码是用来指明CPU预访问的存储单元或I/O端口的地址,由CPU单向进行传输。
地址线的位数与存储单元的个数有关,如地址线为20根,则对应的存储单元个数为220。
控制总线
由于数据总线、地址总线都是被挂在总线上的所有部件共享的,如何使各部件能在不同时刻占有总线使用权,需依靠控制总线来完成,因此控制总线是用来发出各种控制信号的传输线。
通信总线
通信总线用于计算机系统之间或与其他系统(如控制仪表、移动通信等)之间的通信。按照传输方式可分为串行通行和并行通信两种。
串行通信是指数据在单条1位宽的传输线上,一位一位地按顺序分时传送。如1字节的数据,在串行传送中,1字节的数据要通过一条传输线分8次由低位到高位按顺序逐位传送。
并行通信是猪数据在多条并行1位宽的传输线上,同时由源传送到目的地。如1字节的数据,在并行传送中,要通过8条并行传输线同时由源传送到目的地。
并行通信适用于近距离的数据传输;串行通信适用于远距离的数据传输。并行数据传送速率比串行数据传送速率高得多。随着大规模和超大规模集成电路的发展,逻辑器件的价格趋低,而通信线路费用趋高,因此远距离通信采用串行通信费用比并行通信费用低得多。此外串行通信还可利用现有的电话网络来实现远程通信,降低了通信费用。
总线特性及性能指标
总线特性
从物理角度看,总线由许多导线直接印制在电路板上,延伸到各个部件。
总线特性包括:
(1)机械特性
机械特性是指总线在机械连接方式上的一些性能,如插头与插座使用标准、几何尺寸、形状、引脚个数以及排列顺序,接头处的可靠接触等
(2)电气特性
电气特性是指总线的每一根传输线上信号的传递方向和有效额的电平范围。通常规定由CPU发出的信号称为输出信号,送入的信号称为输入信号。
(3)功能特性
功能特性是指总线中每根传输线的功能。如,地址总线用来指出地址码;数据总线用来传递数据;控制总线发出控制信号,既有从CPU发出的(如存储器读/写、I/O设备读/写),也有I/O设备向CPU发出的(如中断请求、DMA请求等)。
(4)时间特性
时间特性是指总线中的任一根线在什么时间内有效,每条总线上的各种信号互相存在一种有效时序的关系。因此,时间特性一般可用时序图来描述。
总线性能指标
- 总线宽度
通常指数据总线的根数,用bit(位)表示,如8位、16位、32位、64位(即8根、16根、32根、64根)。 - 总线带宽
总线带宽可理解为总线的数据传输速率,即单位时间内总线上传输数据的位数,通常用每秒传输信息的字节数来衡量,单位可用MBps(兆字节每秒)表示。例如,总线工作频率为33MHz,总线宽度为32位(4B),则总线带宽为33*4=132MBps。
1/时钟周期=工作频率
数据传输率=工作频率*字节数
数据传输率=字节数/时钟周期
- 时钟同步/异步
总线上的数据与时钟同步工作的总线称为同步总线,与时钟不同步工作的总线称为异步总线。 - 总线复用
一条信号线上分时传送两种信号。例如,通常地址总线与数据总线在物理上是分开的两种总线,地址总线传输地址码,数据总线传输数据信息。为了提高总线的利用率,优化设计,特将地址总线和数据总线共用一组物理线路,在这组物理线路上分时传输地址信号和数据信号,即为总线的多路复用。 - 信号线数
地址总线、数据总线和控制总线三种总线数的总和。 - 总线控制方式
包括突发工作、自动配置、仲裁方式、逻辑方式、计数方式等。 - 其他指标
负载能力、电源电压、总线宽度能否扩展等。
总线标准
。。。