第7章总线系统

  • 格式:doc
  • 大小:76.50 KB
  • 文档页数:20

第7章总线系统7.1.1 总线的基本概念1. 总线基本特性及其分类物理特性总线的物理特性包括总线的物理连接方式、连线的类型、连线的数量、接插件的形状和尺寸、引脚线的排列方式等方面。

根据连线的类型,计算机系统的总线可分为电缆式、主板式和背板式。

电缆式总线通常采用扁平电缆连接电路板;主板式总线通常在主机板上采用插槽方式供电路板插入;背板式总线则在机箱中设置一个插槽板,其他功能模块或设备电路板都以插板的方式插入背板。

根据连线的数量,总线一般可分为串行总线和并行总线。

串行总线采用一条线路传输信号;并行总线采用多条线路并行地传输信号,一般有8位总线,16位总线,32位总线和64位的总线等。

功能特性总线的功能特性包括总线的功能层次、资源类型、信息传递类型、信息传递方式和控制方式等。

计算机系统中可以有多个层次的总线:芯片级的、板级的和系统级的。

CPU 芯片内部有的总线式芯片级的总线,这种总线也称内部总线,是连接CPU内部运算器等部件的数据通路。

板极总线连接主机系统印刷电路板CPU和主存等部件,通常也称局部总线。

电气特性总线的电气特性定义为每一条信号线的信号传递方向、信号的时序特征和电平特征。

从允许的数据传输方向来看,总线可以有单向传输(单工)总线和双向传输(双工)总线两种。

双向传输的总线又可分为半双工的和全双工的。

单向总线只能将信息从总线的一端传输到另一端,不能反向传输。

半双工总线可以在两个方向上轮流传输信息,全双工总线可在两个方向上同时传输信息。

总线中的单向信号线有输入信号线,输出信号线之分。

在单处理机总线中,一般规定送入CPU的信号为输入信号,从CPU发出的信号为输出信号。

这种总线中的地址线一般为输出信号线,数据线为双向信号线,控制信号线有输入信号线,也有输出信号线。

2. 总线的性能参数线时钟频率: 总线的工作频率,以MHz表示,它是影响总线传输速率的重要因素之一。

总线宽度: 数据总线的位数,用位(bit)表示,如总线宽度为8位、16位、32位和64位。

总线传输速率: 在总线上每秒传输的最大字节数,MB/s表示,即每秒多少兆字节。

若总线工作频率8MHz,总线宽度8位,则最大传输速率为8MB/s。

若工作频率33.3MHz,总线宽度32位,则最大传输速率为133MB/s。

同步方式有同步或异步之分。

在同步方式下,总线上主模块与从模块进行一次传输所需的时间(即传输周期或总线周期)是固定的,并严格按系统时钟来统一定时主、从模块之间的传输操作,只要总线上的设备都是高速的,总线的带宽便可允许很宽。

在异步方式下,采用就答式传输技术,允许从模块自行调整响应时间,即传输周期是可以改变的,故总线带宽减少。

多路复用数据线和地址线是否共用。

若地址线和数据线共用一条物理线,即某一时刻该线上传输的是地址信号,而另一时刻传输的是数据或总线命令。

这种一条线做多种用途的技术,叫做多路复用。

若地址线和数据线是物理上分开的,就属非多路复用。

采用多路复用,可以减少总线的数目。

负载能力一般采用“可连接的扩增电路板的数量”来表示。

其实这并不严密,因为不同电路插板对总线的负载是不一样的,即使是同一电路插板在不同工作频率的总线上,所表现出的负载也不一样,但它基本上反映了总线的负载能力。

信号线数表明总线拥有多少信号线,是数据、地址、控制线及电源线的总和。

信号线数与性能不成正比,但与复杂度成正比。

总线控制方式如传输方式(猝发方式),并发工作,设备自动配置,中断分配及仲裁方式。

其他性能电源电压等级是5V还是3.3V,能否扩展64位宽度等。

7.1.2 总线标准所谓总线就是一组进行互连和传输信息(指令、数据和地址)和信号线。

但是,计算机的总线,都是有特定含义的。

如“局部总线”,“系统总线”和“通信总线”等等,它们都具有其明确的定义与内容。

因此,一提到总线,就一定要指出是什么样的总线,才有意义。

总线标准是指芯片之间、插板之间及系统之间,通过总线进行连接和传输信息时,应遵守的一些协议与规范,包括硬件和软件两个方面,如总线工作时钟频率、总线信号定义、总线系统结构、总线仲裁机构、电气规范、机械规范和实施总线协议的驱动与管理程序。

平时我们通常说的总线,实际上指的是总线标准。

不同的标准,就形成了不同类型和同一类型不同版本的总线。

比较常用的总线标准有:ISA总线、EISA总线、VESA 总线、PCI总线。

有关总线的分类、定义及其标准将在后面详细讨论。

7.1.3 总线的基本概念1.串行传输串行传输是指数据的传输在一条线路上按位进行。

在计算机中普遍使用串行的通信线路连接慢速的外围设备,如终端、鼠标器和调制解调器等。

近年出现的中高速串行总线可连接各种类型的外围设备,可传输多媒体信息。

串行传输只需一条数据传输线,线路的成本低,适合于长距离的数据传输。

在串行传输时,被传输的数据需要在发送设备中进行并行到串行的变换;而在接收设备中又需要进行串行到并行的变换。

串行总线是一种信息传输信道。

在信息传输通道中,携带数据信息的信号单元叫码元,每秒钟通过信道传输的码元数称为码元传输速率,简称波特率。

波特率是传输通道频宽的指标。

波特率的倒数称为码元时间,又称为位时间,即传输一位码元所需要的时间。

每秒钟通过信道传输的信息量称为位传输速率。

比特率表示有效数据的传输速率。

波特率和比特率是不同的,波特率是传输线路上信号的传输速率,而比特率是信息传输的速率。

波特率和比特率之间有一定的对应关系,这种对应关系来源于两个因素:一是通过编码消除数据冗余以提高通信效率的措施;另一个因素是按一定规则增加一定的同步信息代码和冗余代码,以降低传输的误码率的措施。

前一个措施使得比特率提高,2.并行传输用并行方式传输二进制信息时,对每个数据位都需要单独一条传输线。

在并行传输方式中,所有的数据位同时进行传输。

在采用并行传输方式的总线中,除了有传输数据的线路外,还可以具有传输地址和控制信号的线路。

地址线用于选择存储单元和设备,控制线用于传递操作信号。

为了传输各种不同的控制信号,在并行传输方式中可为每个控制信号专门设置一条信号线。

所以并行数据传输比串行数据传输快得多,但需要很多信号线。

3.复合传输复合传输方式又称为总线复用的传输方式,它使不同的信号在同一条信号线上传输,总线设计的目标是用较少的线数实现较高的传输速率。

通常采用的方法是信号分时的方法,即不同的信号在不同的时间片中轮流地向总线的同一条信号线上发出。

它与并串行传输的区别在于分时地传输同一数据源的不同信息。

7.1.4 总线仲裁总线上的设备一般分为总线主设备和总线从设备。

总线主设备是指具有控制总线能力的模块,通常是CPU或以CPU为中心的逻辑模块,在获得总线控制权之后能启动数据信息的传输;与之相对应的总线从设备,是指能够对总线上的数据请求做出响应,但本身不具备总线控制能力的模块。

在早期的计算机系统中,一条总线上只有一个主设备,总线一直由它占用,技术简单,实现也比较容易。

随着应用的发展,主要是工业控制、科学计算的需求,多个主设备共享总线的情况越来越多,这对总线技术提出了新的要求。

根据这类系统的特点,需要解决各个主设备之间资源争用等问题,这使得总线的复杂性大为增加。

总线仲裁就是在多个总线主设备的环境中提出来的。

在多处理机系统中,每个处理机都可以作为总线主设备,都要共享资源,它们都必须通过系统总线才能访问其它资源,总线也可视为是一种重要的公共资源。

由于每个处理机都会随机地提出对总线使用的要求,这样就可能发生总线竞争现象。

为了防止多个处理机同时控制总线,就要在总线上设立一个处理上述总线竞争的机构,按优先级次序,合理地分配资源,这就是总线仲裁问题。

用硬件来实现总线分配的逻辑电路称为总线仲裁器(Bus Arbiter)。

它的任务是响应总线请求,通过对分配过程的正确控制,达到最佳使用总线。

对总线仲裁问题的解决是以优先级(又称优先权)的概念为基础的,通常有三种总线分配的优先级技术──串联、并联和循环。

1. 串联优先级判别法。

等N个模块,都可作为总线主设备,各个模块中的“请求”输出端采用集电极(漏极)开路门,“请求”端用“线或”方式接到仲裁器“请求”输入端,每个模块的“忙”端同仲裁器的“总线忙”状态线相连,这是一个输入输出双向信号线。

当一个模块占有总线控制权时,该模块的“忙”信号端成为输出端,向系统的“忙”状态线送出有效信号(例如低电平)。

其它模块的“忙”信号端全部作为输入端工作,检测“忙”线上状态。

一个模块若要提出总线“请求”,其必要条件是选检测到“忙”信号输入端处于无效状态。

与此相应,仲裁器接受总线请求输入的条件,也是“忙”线处于无效状态。

进一步可以规定仲裁器输出“允许”信号的条件首先是“忙”线无效,表示总线没有被任一模块占用;其次才是有模块提出了总线请求。

“允许”信号在链接的模块之间传输,直到提出总线“请求”的那个模块为止。

这里用“允许”信号的边沿触发,它把共享总线的各模块要使用总线时,便发生信号禁止后面的部件使用总线。

通过这种方式,就确定了请求总线各模块中优先级最高的模块。

显然,在这种方式中,当优先级高的模块频繁请求时,优先级别低的模块可能很长时间都无法获得总线。

一旦有模块占用总线后,“允许”信号就不再存在。

2. 并联优先级别判别法。

N个模块,都可作为总线主设备,每个模块都有总线“请求”线和总线“允许”线,模块之间是独立的,没有任何控制关系。

这些信号接到总线优先控制器(仲裁器),任一模块使用总线,都要通过“请求”线向仲裁器发出“请求”信号。

仲裁器一般由一个优先级编码器和一个译码器组成。

该电路接到某个模块或多个模块发来的请求信号后,首先优先级编码器进行编码,然后由译码器产生相应的输出信号,发往请求总线模块中优先级最高的模块,并把“允许”信号送给该模块。

被选中的模块撤销总线“请求”信号,输出总线“忙”信号,通知其余模块,总线已经占用。

在一个模块占用总线的传输结束以后,就把总线“忙”信号撤销,仲裁器也撤销“允许”信号。

根据各请求输入的情况,仲裁器重新分配总线控制权。

3.循环优先级判别法。

循环优先级判别方法类似于并联优先级判别方法,只是其中的优先级是动态分配的,原来的优先级编码器由一个更为复杂的电路代替,该电路把占用总线的优先级在发出总线请求的那些模块之间循环移动,从而使每个总线模块使用总线的机会相同。

7.1.5 总线通信协议总线通信同步方式规定了实现总线数据传输的定时规则,这种规则又称为总线通信协议。

总线数据通信方式按照传输定时的方法可分为同步式和异步式两类。

这里以处理器总线为例进行说明。

1. 同步通信在同步方式中,所有的设备都从同一个公共的时钟信号中获得定时信息。

一定频率的时钟信号线定义了等间隔的时段,每一个时间段定义了一个总线周期。

在这个时序图中,t0时刻CPU将设备地址放到设备地址线上并设置模式控制线以表示读数据操作。