1第五章总线技术2第五章总线总线的基本概念5.1系统总线的结构5.2总线信息的传送方式5.3总线仲裁和定时5.4实用总线标准5.535.1总线的基本概念•总线指通过分时共享的方式,将信息以一个或多个源部件传送到一个或多个目的部件的一组传输线。是计算机中传输数据的公共通道。•分时和共享是总线的两个基本特性。–共享是指多个部件连接在同一条总线上,各个部件之间都可以通过这条总线来进行信息的交换。–分时是指同一时刻,总线上只能传输一个部件发送出来的信息。45.1总线的基本概念总线的特性一总线的分类二总线的性能指标三5一、总线的特性1.电气特性–电气特性指总线上每一根传输线的信号传递方向和有效电平范围。2.机械特性–机械特性指总线在机械连接方式上的一些特性。3.功能特性–功能特性指总线中每一根传输线的功能。4.时间特性–时间特性指总线的每一根传输线在什么时间内有效,以及每一根线产生的信号之间时序关系。时间特性一般可以用信号的时序图来表示。–只有严格按照总线特性设计的部件或外设接口,才能保证系统的可靠传输和运行。6二、总线的分类1.按连接部件分类①CPU内部总线:即内总线,是CPU内部各部件之间的信息传送线。②系统总线:指连接CPU与主存或I/O接口之间的信息传送线,它是连接整机系统的基础。③通信总线:主要是用于计算机系统之间或计算机与外部设备之间的通信。2.按数据传送方式分类①并行总线采用多根数据线同时传送一个字节或一个字的所有位。②串行总线采用一根数据线一位一位地传送数据。7二、总线的分类3.按总线的通信定时方式分类①同步总线:指互联的部件或设备均通过统一的时钟进行同步,即所有的互联的部件或设备都必须使用同一个时钟(同步时钟),在规定的时钟节拍内进行规定的总线操作,来完成部件或设备之间的信息交换。②异步总线:指没有统一的时钟而依靠各部件或设备内部定时操作,所有部件或设备是以信号握手的方式进行,即发送设备和接收设备互用请求(request)和确认(acknowledgement)信号来协调动作,总线操作时序不是固定的。因此,异步总线能兼容多种不同的设备,而且不必担心时钟变形或同步问题使得总线长度不受限制。例如,火线协议(Firewire或IEEE1394)和USB2.0协议都是异步总线协议。8三、总线的性能指标1.总线宽度:即数据总线宽度,指一次总线操作中通过总线传送的数据位数,一般有8、16、32和64位。2.总线周期:指一次总线操作所用的时间。3.总线频率:总线的工作频率,单位是MHZ。工作频率越高,总线工作速度越快,总线带宽越宽。4.总线带宽(标准传输率):指单位时间内总线上可传送的数据量,用每秒多少兆字节(MB/S)表示。总线带宽=总线宽度/8×总线工作频率MB/s5.信号线类型:指信号线是专用还是分时复用。将地址线和数据线单独设置可使写操作的性能更高,因为地址和数据可在同时传送出去。而采用分时复用可使总线利用率更高。6.仲裁方法:指集中式裁决还是分布式裁决。7.定时方式:指同步方式还是异步方式。95.2系统总线的结构•根据连接方式的不同,单机系统中采用的总线结构有3种基本类型:单总线结构、双总线结构和多总线结构。CPU主存I/O接口I/O接口外设1外设n系统总线图5-1单总线结构10双总线结构CPU主存系统总线图5-3具有I/O总线的双总线结构I/O接口I/O接口外设1外设n通道I/O总线CPU主存I/O接口I/O接口外设1外设n系统总线图5-2双总线结构存储总线11三总线结构CPU主存系统总线图5-4三总线结构I/O接口I/O接口外设1外设n通道I/O总线存储总线12四总线结构CPU主存系统总线图5-5四总线结构扩展总线接口多媒体传真机串行接口Cache/桥高速总线局部总线局域网SCSI图像设备打印机其他外设扩展总线135.3总线信息的传送方式1.并行传送–并行传送:指每一位数据需要1根传输线,多位数据同时传送。并行传送的优点是传送速度快。但该传送方式要求线数多,成本高,一般在近距离时采用并行传送。系统总线上传送的信息必须采用并行传送方式。–并行传送的速度指标为最大数据传输率(MB/S),例如,时钟频率为33MHZ的PCI总线的最大数据传输率为132MB/S(32位)~164MB/S(64位)。145.3总线信息的传送方式2.串行传送–采用按位进行传送,发送用一根数据线,接收用一根数据线,适合于远距离传输。–发送方:并-串转换,接收方:串-并转换;–串行传送的速度指标为每秒钟传送的二进制位数(波特率)。–串行传送方式有异步方式和同步方式两种。15串行传送方式–异步方式:以一个字符为一个传送单位即一帧。一帧信息通常以1个起始位(低电平表示)和开始;接着是5~8位数据位,数据位从低位到高位顺序传送;然后可以有(或没有)一个校验位;最后是1~2个停止位(高电平)来作为一帧的结束。–同步方式:将若干个字符作为1个传送单位或1个数据块进行传送,在数据块的开始和结束处用1个或几个同步字符做标志,而数据块中的各个字符不再有起始、停止附加位。–同步方式比异步方式速度快,但它要求由时钟来实现发送端和接收端的同步,并且接口的硬件较复杂。165.3总线信息的传送方式3.分时传送•分时传送有两种含义。–一种是:指采用总线复用,即在传输线上既传送地址信息,又传送数据信息,这样可以减少总线的线数,为此,必须划分时间片,使得同一总线上在不同的时间片中完成传送地址和传送数据的任务。–二种是:指共享总线的部件分时使用总线。因为,总线是系统的公共资源,可以有很多部件挂在总线上,但在一个时间片内,总线只为一对互相交换信息的源设备和目的设备提供服务。所以,如果有多个设备要求使用总线时,要由总线控制器按时间片来分时提供服务。175.4总线仲裁和定时一、总线仲裁总线仲裁和定时二、总线的定时18一、总线仲裁•总线上可以挂很多设备,但任一时刻都只能由一个设备控制和使用总线,此设备称为主设备。•当多个设备同时提出使用总线的请求时,必须由总线控制器按事先规定的原则进行仲裁,确定使用总线的先后次序,从而决定由哪一个设备控制总线,称为总线仲裁。•除CPU外,I/O设备也可以提出总线请求。在对多个主设备提出的占用总线请求,一般采用优先级或公平策略进行仲裁。•根据总线仲裁电路的位置不同,总线仲裁方式可分为:集中式仲裁方式1分布式仲裁2191、集中式仲裁方式•将总线访问的控制逻辑做在一个控制器中,通过将所有总线请求集中起来,采用一个特定的仲裁算法来进行仲裁。•该总线控制器可能是处理器中的部件,也可能是一个独立的控制单元。系统中每个设备至少有两条控制线连接到总线控制器上–一条是送往总线控制器的总线请求信号BR;–另一条是总线控制器送出的总线授权信号BG;–(可能)还有一条送往总线控制器的总线忙信号BS。•常用的集中式总线仲裁方式重要有链式查询方式、计数器定时查询方式和独立请求方式。20①链式查询方式•优点:只用很少几根线就能实现按一定优先级的总线仲裁,并且链式结构很容易扩充设备。•缺点:对查询链的电路故障很敏感,如果第i个设备接口中有关链的电路出现故障,则该设备后的设备都不能工作。•查询链的优先级是固定不变的,假如优先级高的设备出现繁忙的总线请求,则优先级低的设备可能长期得不到总线的使用权。总线控制器设备接口0设备接口1设备接口nBGDBABBSBR图5-6集中式仲裁的链式查询方式21②计数器定时查询方式•为总线上的每个设备分配一个总线地址,各设备的总线地址按连续值分配,并且在总线控制器中设置一个计数器,若设备数为N,计数器的位数n应满足。总线请求信号BR和总线忙信号BS与链式查询方式同样地与控制器连接。•计算器定时查询方式的优先级设置较为灵活,但它需要增加额外的计数线。总线控制器设备接口0设备接口1设备接口nDBABBSBR图5-7集中式仲裁的计数器定时查询方式设备地址22③独立请求方式•优点:响应速度快,即确定优先响应的设备所花费的时间少,不需要一个设备接一个设备地查询;而且,对优先级的控制非常灵活,总线控制器可以根据一定的仲裁算法给各请求线以固定的优先级;也可以通过编程设置动态优先级;另外还可以用屏蔽(禁止)某个请求线的办法,不响应无效设备的请求。由于独立请求方式的这些优点,因此现代总线标准普遍采用独立请求方式。总线控制器设备接口0设备接口1设备接口nDBABBG0BR0图5-8集中式仲裁的独立请求方式BR1BG1BGnBRn232、分布式仲裁•分布式仲裁方式没有独立的总线控制器,总线上每个主设备都有自己的总线仲裁逻辑。每次总线仲裁都由各个设备的总线仲裁逻辑根据一定的仲裁算法来决定自己是否占用总线。•常用的分布式仲裁方式分为:自举分布式仲裁①冲突检测分布式仲裁②并行竞争分布式仲裁③24①自举分布式仲裁•自举分布式仲裁方式中,每个设备有一根自己的总线请求线,每个需要总线请求的设备在各自的总线请求线上发出请求信号,同时接收其他设备的总线请求信号;•如果没有接收到优先级比自己高的设备的总线请求信号,且此时“总线忙”信号无效,则该设备可以立即使用总线,并发出“总线忙”信号以阻止其他设备使用总线。•如果一个设备在发出总线请求信号时,同时也检测到其他优先级更高的设备也请求使用总线,则该设备放弃本次对总线的请求。•“总线忙”信号是多个设备共享的一根信号。•自举分布式仲裁方式的缺点是:需要较多的连线,每个设备不仅要有发出总线请求的线,还要有接收其他设备的总线请求线。25②冲突检测分布式仲裁方式•主要用于网络通信总线。•每个设备都可以独立地请求总线,当某个设备要使用总线时,它首先检测是否有其他设备正在使用总线,如果没有,则置总线忙,然后使用总线;•如果多个设备同时检测到总线不忙而造成同时使用总线时会产生冲突,这时检测到冲突,并按照某种策略在冲突的各方选择一个设备获得总线控制权。不同的系统可以有不同的冲突解决策略,例如,以太网中,在同时访问总线的情景发生时,设备便检测到“冲突”,采用的策略是冲突的几个设备都停止传送,经过一段随机延迟时间,再重新向抢占总线,直到抢占总线发送数据成功为止。这样冲突就解决了,这也就是以太网的不确定性特征,是一种不可预测的仲裁方案。26③并行竞争仲裁方式•每个主设备都有自己的仲裁号和控制器,当某个设备有总线请求时,把它的仲裁号发送到共享的仲裁线上,每个设备的控制器将仲裁线上接收到的号与自己的仲裁号进行比较,如果比自己的仲裁号大,则在仲裁线上撤销自己的仲裁号。最后,竞争获胜者的仲裁号被保留在仲裁线上。显然,这种方案中仲裁号越大,优先级越高。•并行竞争分布式仲裁比自举分布式仲裁所需的的连接线要少,因为,并行竞争分布式仲裁中,对于n根仲裁线可以表示个优先级。例如,在并行竞争分布式仲裁中,具有8根仲裁线共可以表示256个优先级,仲裁号为255的设备优先级最高,仲裁号为0的设备优先级最低。而在自举分布式仲裁中,请求线是8根,只能表示8个优先级,也即只有对8个设备进行仲裁。27二、总线的定时•总线的一次信息传送过程,大致可分为五个阶段:①请求总线阶段;②总线仲裁阶段;③寻址阶段;④信息传送阶段;⑤结束阶段。•为了同步主方、从方的操作,必须制订定时协议。定时:是指事件出现在总线上的时序关系。•数据传送过程中采用两种定时方式:同步定时①异步定时②28①同步定时•在同步定时中,总线上有一根设备公用的时钟信号线,每个信号出现在总线上的时刻由总线时钟信号来确定。•同步定时传输频率较高。•适用于总线长度较短、各功能模块存取时间比较接近的情况。当各功能模块存取时间相差很大时,会大大损失总线效率。总线时钟启动信号读命令地址数据图5-9同步定时的读数据操作时序地址数据29②异步定时•建立在应答式或互锁机制基础上。不需要统一的公共时钟信号。总线周期的长度是可变的。•异步定时的优点是:允许快速和慢速的功能模块都能连接到同一总线上。异步定时传送的可靠性高。•缺点:增加了总线的复杂性和成本为代价。读命令Ready数据地址图5-10异步定时的读数据操作时序地址数据Ack305.5实用总线标准ISA