第六章总线系统总线是构成计算机系统的互联机构,是多个系统功能部件之间进行数据传送的公共通路。总线技术是计算机系统的一个重要技术。总线系统的概念、总线的结构和总线的控制。总线概述总线是传送信息的通路。计算机系统中的总线分为三类内部总线:同一部件内部传送信息的通路,如CPU内部连接各寄存器及运算部件之间的总线。系统总线:同一台计算机系统的各部件,如CPU、存储器、外设端口之间传送信息的通路。多机总线:多台计算机之间传送信息的通路。传输线包括数据线和地址线控制时序和中断信号电源线和地线未定义的公用线等4类总线由一定数量的传输线和总线控制器两部分构成。传输线的总条数称作总线的宽度总线概述系统总线中控制线的功能是:提供主存、I/O接口设备的控制信号和响应信号。地址线的功能:提供主存和I/O设备接口电路的地址。一条总线上常常有多个设备或部件,但任何时候只能有两个设备利用总线进行通信,一是信息发送者,一是信息接收者。总线控制器确定当前总线由哪两个设备来使用。如果有多个部件申请使用总线时,总线控制器要根据申请者的优先级别来确定使用总线的优先次序。总线概述总线周期——一次总线操作所需要的时间。传送宽度——获得总线使用权后,在一次总线操作中通过总线传送的数据位数。总线带宽——总线能提供的数据传送速率,通常用每秒钟传送信息的字节数(或位数)来表示。衡量总线性能的重要指标。例如:某总线在一个总线周期中并行传送4个字节的数据,假设一个总线周期等于一个时钟周期,总线时钟频率为33MHz,总线带宽=4B/T=4Bf=4B33106/s=132MB/s基本概念例如:在异步串行传输系统中,假设每秒可传输20个数据帧,一个数据帧包含1个起始位、7个数据位、1个奇校验位、1个结束位。波特率=(1+7+1+1)20=200b/s比特率=720=140b/s波特率——每秒钟通过信道传输的码元数(二进制位数)。比特率——每秒钟通过信道传输的信息量(有效数据位)。基本概念猝发式数据传输——是一种总线传输方式,即在一个总线周期传输存储地址连续的多个数据。消息传输——是将总线需要传送的数据信息、地址信息和控制信息等合成为一个固定的数据结构,以猝发方式进行传输。总线协议——总线通信同步方式规定了实现总线数据传输的定时规则,即总线协议。主设备(主方)——获得总线控制权的设备。从设备(从方)——被主设备访问的设备。总线事务——从请求总线到完成总线使用的操作序列称为总线事务。基本概念总线裁决方式——决定哪个设备进行总线控制的方式。总线标准——系统与模块、模块与模块之间的一个互连的标准界面。界面的任何一方只需根据总线标准的要求完成自身一面接口的功能要求,而无需了解对方接口与总线的连接要求。基本概念相同的指令系统,相同的功能,不同厂家生产的各功能部件在实现方法上不相同,但各厂家生产的相同功能部件却可以互换使用,其原因在于它们都遵守了相同的总线标准。总线的特性物理特性:指总线的物理连接方式,包括总线的根数,总线的插头、插座的形状,引脚线的排列方式等。功能特性:描述总线中每一根线的功能。如地址总线的宽度指明了能够直接访问存储器的地址空间范围。电气特性:定义每一根线上信号的传递方向及有效电平范围。送入CPU的信号叫输入信号(IN),从CPU发出的信号叫输出信号(OUT)。如地址总线是输出线,数据总线是双向传送的信号线。有的高电平有效,有的低电平有效。时间特性:定义了每根线在什么时间有效。只有规定了总线上各信号有效的时序关系,CPU才能正确无误地使用。总线性能指标包括:(1)总线宽度:数据总线的根数(2)标准传输率:在总线上每秒能传输的最大字节数(3)时钟同步/异步:总线上的数据与时钟同步工作的总线称为同步总线,时钟不同步的总线称为异步总线(4)总线复用:将地址总线和数据总线共用一组物理线路,只是某一时刻该总线传输地址信号,另一时刻传输数据信号或命令信号。总线性能指标(5)信号线数:即地址总线、数据总线和控制总线三种总线的总和。(6)总线控制方式:包括并发工作、自动配置、仲裁方式、逻辑方式、计数方式等。(7)其他指标:如负载能力系统总线结构系统总线是同一台计算机系统的各部件,如CPU、存储器、外设端口之间互相连接的总线。根据连接方式的不同,单机系统总线结构有三种基本类型。单总线结构使用一条单一的系统总线来连接CPU、主存和I/O设备。各部件之间的所有信息传送都通过这组总线。系统总线结构单总线结构的优点:允许I/O设备之间或I/O设备与内存之间直接交换信息,只需CPU分配总线使用权,不需要CPU干预信息的交换。总线是由各大功能部件分时使用的,某一时间只能允许一对部件之间传送数据。缺点:所有部件都连接在一组总线上,总线的负载很重,故多为小型机和微型机采用。系统总线结构双总线结构在CPU和主存之间专门设置了一组高速的存储总线,用于CPU和内存之间传送地址、数据和控制信息。(1)内存总线使CPU可通过专用总线与存储器交换信息,减轻了系统总线的负担。(2)主存可通过系统总线与外设之间实现DMA操作,而不必经过CPU。系统总线结构三总线结构它是在双总线系统的基础上增加I/O总线形成的。系统总线是CPU、内存和通道之间进行数据传送的公共通路。用于CPU和内存之间传送地址、数据和控制信息。I/O总线用于多个外设与通道之间进行数据传送的公共通路。通道实际上是一台具有特殊功能的处理器,实现对外设的统一管理及外设与主存之间的数据传送。总线结构对计算机系统性能的影响最大存储容量在单总线系统中,主存和外设挂在相同的总线上,对主存和外设进行存取的差别,仅仅在于出现在总线上的地址不同,因此,必须将某些地址留给外设,所以最大主存容量必须小于由计算机字长所决定的可能的地址总数。在双总线系统中,由于主存地址和外设地址出现于不同的总线上,所以存储容量不会受到外围设备多少的影响。总线结构对计算机系统性能的影响指令系统在双总线系统中,CPU对存储总线和系统总线必须有不同的指令系统,要用操作码规定要使用哪一条总线。在单总线系统中,访问主存和I/O传送可使用相同的操作码,使用相同的指令,但它们使用不同的地址。总线结构对计算机系统性能的影响吞吐量计算机系统的吞吐量是指流入、处理和流出系统的信息的速率。它主要取决于存储器的存取周期。存取周期短,吞吐量大。采用双端口存储器,把每个端口连到不同的总线上,那么主存可以在同一时间内对两个端口完成读写操作,从而增加主存的有效速度。总线数量越多,吞吐量越大。总线的内部结构早期总线的内部结构:地址线是单向的,用来传送主存与设备的地址;数据线是双向的,用来传送数据;控制线对每一根来讲是单向的,用来指明数据传送的方向、中断控制和定时请求。缺点:(1)CPU是总线上的唯一主控者。(2)总线信号是CPU引脚信号的延伸,故总线结构紧密与CPU相关,通用性较差。总线的内部结构当代总线的内部结构整个总线分成如下四部分:1数据传送总线:由地址线、数据线、控制线组成。2仲裁总线:包括总线请求线和总线授权线。3中断和同步总线:用于处理带优先级的中断操4公用线:包括时钟信号线、电源线、地线、系统复位线以及加电或断电的时序信号线等。总线的内部结构在当代总线结构中,CPU和它私有的cache一起作为一个模块与总线相连。总线控制器完成几个总线请求者之间的协调与仲裁。现代总线的趋势是:标准总线,与结构、CPU、技术无关。总线结构实例pentium计算机主板的总线结构框图:(三层次——CPU总线、PCI总线、ISA总线的多总线结构)大多数计算机采用了分层次的多总线结构。在这种结构中,速度差异较大的设备模块使用不同速度的总线,而速度相近的设备模块使用同一类总线。CPU总线:也称CPU—存储器总线,它是一个64位数据线和32位地址线的同步总线。CPU是这条总线的主控者,但必要时可放弃总线控制权。北桥南桥总线结构实例桥的作用:信号速度缓冲、电平转换和控制协议的转换。通过桥将两类不同的总线“粘合”在一起,适合于系统的升级换代。ISA总线:用于与低速I/O设备连接。北桥南桥PCI总线:用于连接高速的I/O设备模块。PCI总线是一个32(或64位)的同步总线,32位(或64位)数据/地址线是同一组线,分时复用.通过“桥”芯片,上面与更高速的CPU总线相连,下面与低速的ISA总线相接。总线上信息的传送方式通过总线传送信息的方式有:串行传送、并行传送和分时传送。串行传送收发双方只需要一条传输线,任何信息按照一定的传送速率从最低位开始传送给对方。最低位在前,最高位在后。总线上信息的传送方式发方首先发出一个启动信号,固定为0信号,然后顺序发出8位二进制数据(0或1),最后发出1个停止信号,固定为1信号,构成发出1帧完整的信息。收方一旦检测到启动信号,就会每隔1bit产生一个选通脉冲将总线上的数据逐位接收下来,一共产生8个选通脉冲,1帧信息便接收完毕,以后继续检测下一个启动信号。整个串行通信的过程就是这样,一帧一帧的传送,每帧中一位一位的传送。由于信息在传送过程中会产生误差积累,若一次传送的位数太多,有可能造成数据出错,因此,串行传送数据时,常常将待传送的数据按帧组织起来。每次传送一帧数据。1帧数据由启动信号和停止信号括起来。000001011帧信息发送方接收方启动信号停止信号总线上信息的传送方式在串行传送时,被传送的数据需要在发送部件进行并--串变换,这称为拆卸;而在接收部件又需要进行串--并变换,这称为装配。优点:只需要一条传输线,适于长距离传输,可以节省大量的线路费用,成本比较低廉。缺点:传输速度慢。总线上信息的传送方式并行传送对每个数据位都需要单独一条传输线。信息有多少二进制位组成,就需要多少条传输线,从而使得二进制数“0”或“1”在不同的线上同时进行传送。特点:传送速度快,传输线多,适于短距离的数据传送。总线上信息的传送方式分时传送分时传送有两种概念。一是采用总线复用方式,将不可能同时传送的信息,例如地址信息和数据信息,用同一组总线来传输。分时传送的另一种概念是共享总线的部件分时使用总线。总线接口总线接口也称为输入输出接口,它是指CPU和主存、外围设备之间通过总线进行连接的逻辑部件。接口部件在它动态连接的两个部件之间起着“转换器”的作用,以便实现彼此之间的信息传送。接口通常做成标准化,可以连接多个设备。因为主机通过总线与各种类型的输入输出设备相连,并且相互交换信息,但是由于它们之间存在着很大的差异,它们的工作方式不同,传输速率不同,结构方式不同,使用器件不同,因此各种输入输出设备必须要通过相应的接口,通过输入输出总线才能与主机交换信息。总线接口CPU、接口和外围设备之间的连接关系为:不管什么样的外部设备,只要选用某种数据控制方法,并按它的规定通过总线和主机连接,就可进行信息交换。通过接口,使所有的外部设备能够兼容,并能在一起正确工作。接口的分类根据接口的不同特点可有多种分类方法。(1)根据数据传送方式分并行接口:接口和外设之间并行传送数据,传送宽度可以是一个字节或者是一个字,所以传送速率比较高,但需要的传送线比较多。串行接口:接口和外设之间一位一位地串行传送数据,传送速率较低,但只需要一条传送线。接口的分类(2)根据主机对I/O设备的访问方式分查询式接口:通过硬件或软件方式根据外设的优先级别由高到低顺序查询哪个设备当前要进行输入/输出操作。中断接口:哪个外设需要向主机输入/输出信息时,立即向主机发出中断请求,由中断接口来处理有关的事件。DMA接口:由它代替CPU完成高速外设与主机之间成块交换信息。接口的分类(3)根据功能选择的灵活性分可编程接口:接口的功能可由初始化程序来定义,功能比较强。不可编程接口:一般只具有单一功能。(4)根据输入输出信号的性质分数模转换接口:将计算机输出的数字信号变换成模拟信号。模数转换接口:将模拟信号变换成数字信号输入到计算机中。接口的功能接口种类繁多,功能各异,主要功能为:(1)缓冲在计算机主机与外部设备之间传送信息的过程中,被传送数据可在接口中缓冲,以匹配两者之间的速度差别。(2)转换接口可以完