第六章系统总线主要内容:(3)常见总线举例难点:总线仲裁控制(2)总线技术(1)系统总线结构①总线仲裁控制②总线数据传送③出错处理④总线驱动总线的基本概念:6.1系统总线结构互连结构从分散结构发展到总线结构。计算机内部进行信息交换,必须在部件之间构筑通信线路,通常把连接各部件的通路的集合称为互连结构。总线是连接两个或多个功能部件的一组共享的信息传输线,它的主要特征就是多个部件共享传输介质;一个部件发出的信号可以被连接到总线上的其他所有部件所接收。(1)物理特性:▲总线的物理特性是指总线在机械物理连接上的特性。包括:连线类型、数量、接插件的几何尺寸和形状以及引脚线的排列等。▲从连线的类型来看,总线可分为电缆式、主板式和底板式。▲连线的数量来看,总线一般分为串行总线和并行总线。在并行传输总线中,按数据线的宽度分8位、16位、32位、64位总线等。◆总线的特性▲一般串行总线用于长距离的数据传送,并行总线用于短距离的高速数据传送。(2)电气特性:▲总线的电气特性是指总线的每一条信号线的信号传递方向、信号的有效电平范围。△总线的电平表示方式有两种:单端方式和差分方式。在单端电平方式中,用一条信号线和一条公共接地线来传递信号;采用正逻辑。差分电平方式采用一条信号线和一个参考电压比较来互补传输信号,一般采用负逻辑。△CPU发出的信号为输出信号,送入CPU的信号为输入信号。◆总线的特性(3)功能特性:▲总线功能特性是指总线中每根传输线的功能。如地址线用来传输地址信息,数据线用来传输数据信息,控制线用来发出控制信息,不同的控制线其功能不同。(4)时间特性:▲总线时间特性是指总线中任一根传输线在什么时间内有效,以及每根线产生的信号之间的时序关系。用信号时序图来说明。◆总线的特性6.1.1总线的结构与连接方式有三类:内部总线、系统总线和多机系统总线一、总线的结构系统总线是一组两端带有插头,用扁平线构成。地址线:用于选择信息传送的设备.数据线:用于在总线上的设备之间传送数据信息.控制线:用于实现对设备的控制和监视功能.典型的控制信号包括:时钟(Clock):用于总线同步。复位(Reset):初始化所有设备。总线请求(BusRequest):表明发出该请求信号的设备要使用总线。总线允许(BusGrant):表明接收到该允许信号的设备可以使用总线。中断请求(InterruptRequest):表明某个中断正在请求。中断回答(InterruptAcknowledge):表明某个中断请求已被接受。存储器读(MemoryRead):从指定的主存单元中读数据到数据总线上。存储器写(MemoryWrite):将数据总线上的数据写到指定的主存单元中。I/O读(I/ORead):从指定的I/O端口中读数据到数据总线上。I/O写(I/OWrite):将数据总线上的数据写到指定的I/O端口中。传输确认(TransferACK):表示数据已被接收或已被送到总线上。二、总线的连接方式(根据连接方式不同,单机系统中采用的总线结构有①单总线结构;②双总线结构;③三总线结构3种基本类型.在许多微小型计算机中,使用一条单一的系统总线来连接CPU、主存和I/O设备,叫做单总线结构。CPU内存……系统总线设备接口设备接口图6.1单总线结构1.单总线结构①采用统一编址法,指令系统简单,使用灵活,易扩充。②主存实际空间小于地址空间,速度慢。适用于小型或微型计算机的系统总线。此时要求连接到总线上的逻辑部件必须高速运行,以便在某些设备需要使用总线时能迅速获得总线控制权;而当不再使用总线时,能迅速放弃总线控制权。否则,一条总线由多种部件共用,可能导致很大的时间延迟。PCCPU控制指令内存接口外部设备地址(a)使用单总线取指令CPU控制数据内存接口外部设备地址(b)使用单总线在CPU和内存间传送数据CPU控制数据内存接口外部设备地址(d)使用单总线进行DMA操作在CPU和主存之间专门设置了一组高速的存储总线,使CPU可通过专用总线与存储器交换信息,并减轻了系统总线的负担,同时主存仍可通过系统总线与外设之间实现DMA操作,而不必经过CPU。当前高档微型机中广泛采用这种总线结构。CPU内存内存总线I/O接口I/O接口…系统总线图6.3双总线结构2.双总线结构CPU内存内存总线IOP(通道)系统总线I/O接口I/O接口I/O总线…图6.4三总线结构3.三总线结构是在双总线系统的基础上增加I/O总线形成的。其中:系统总线是CPU、内存和通道(IOP)进行数据传送的公共通路,I/O总线是多个外部设备与通道之间进行数据传送的公共通路。三总线系统通常用于中、大型计算机中。三、总线结构对计算机系统性能的影响1、最大存储容量在单总线系统中,最大主存容量必须小于由计算机字长所决定的可能的地址总数。(因为设备统一编址)在双总线系统中,对主存和外设进行存取的判断是利用各自的指令操作码。由于主存地址和外设地址出现于不同的总线上,所以存储容量不会受到外围设备多少的影响。2、指令系统在双总线系统中,CPU对存储总线和系统总线必须有不同的指令系统。(访问内存操作和I/O操作各有不同的指令)在单总线系统中,访问主存和I/O传送可使用相同的操作码,使用相同的指令,但它们使用不同的地址。计算机系统的吞吐量:是指流入、处理和流出系统的信息的速率。它取决于CPU把指令、数据从内存取出或存入的速度以及把结果从内存送到一台外围设备的速度。由于上述原因,采用双端口存储器可以增加主存的有效速度。因为如果把每个端口连到不同的内存总线上,那么内存可以在同一时间内对每个端口完成读/写操作。在三总线结构中,由于将CPU的一部分功能下放给通道,由通道对外围设备统一管理并实现外围设备与内存之间的数据传送,因而其吞吐能力比单总线结构强得多。3、吞吐量一、信息的传送方式计算机系统中,信息传输基本有四种方式:串行传送、并行传送、并串行传送和分时传送。但是出于速度和效率上的考虑,系统总线上传送信息时,通常采用并行传送方式。在一些微型计算机或单片机中,由于CPU引脚数的限制,系统总线传送信息时,采用的是并串行方式或分时方式。6.1.2总线接口1、当信息以串行方式传送时,只有一条传输线,且采用脉冲传送。在串行传送时,按顺序来传送表示一个数码的所有二进制位(bit)的脉冲信号,每次一位。通常以第一个脉冲信号表示数码的最低有效位,最后一个脉冲信号表示数码的最高有效位。规定有脉冲表示二进制“1”,无脉冲表示二进制“0”。假定串行数据是由“位时间”组成的,那么传送8个比特需要8个位时间。例如,如果接受设备在第一个位时间和第三个位时间接受到一个脉冲,而其余的6个位时间没有收到脉冲,那么就会知道所收到的二进制信息是00000101。注意,串行传送时低位在前,高位在后。在串行传送时,被传送的数据需要在发送部件进行并——串变换,这称为拆卸;而在接收部件又需要进行串——并变换,这称为装配。该方式的主要优点:是只需要一条传输线。这一点对长距离传输显得特别重要,不管传送的数据量有多少,只需要一条传输线,成本比较低廉。指定一个二进制位在传输线上占用的时间长度。是为了确定连续传送了多少个“0”。2、并行传送用并行方式传送二进制信息时,对每个数据位都需要单独一条传输线。信息有多少二进制位组成,就需要多少条传输线,从而使得二进制数“0”或“1”在不同的线上同时进行传送。并行传送一般采用电位传送。由于所有的位同时被传送,所以并行数据传送比串行数据传送快得多。发送邮件接收邮件1高位0101100低位3、并串行传送发送部件接收部件低8位低8位高8位高8位4、分时传送分时传送有两种概念。一是采用总线复用方式,某个传输线上既传送地址信息,又传送数据信息。为此必须划分时间片,以便在不同的时间间隔中完成传送地址和传送数据的任务。分时传送的另一种概念是共享总线的部件分时使用总线。二、接口的基本概念接口是指CPU和内存、外部设备、或两种外围设备、或两种机器设备之间通过总线进行连接的逻辑部件。起“转换器”的作用CPU接口外围设备地址线数据线控制线状态接口典型功能:①控制:接口靠程序的指令信息来控制外围设备动作,如启动、关闭设备等。②缓冲:接口在外围设备和计算机系统的其他部件之间用作为一个缓冲器,以补偿各种设备在速度上的差异③状态监视:接口监视外围设备的工作状态并保存状态信息。接口典型功能:④转换数据格式:接口在外围设备和计算机系统其他部件之间用作为一个缓冲器,以补偿各种设备在速度上的差异。⑤整理:接口可以完成一些特别的功能,例如在需要时可以修改字计数器或当前内存地址寄存器。⑥程序中断:每当外围设备向CPU请求某种动作时,接口即发生一个中断请求信号到CPU。主要内容:1、串行通信的优点2、传送编码3、通信方式4、串行传送中几个问题三、串行通信与数据接口三、串行通信与数据接口1、串行通信的优点串行传送可以大大减少传送线,从而大大的降低成本。但是串行传送的速度慢,若并行传送所需的时间为t,则串行传送的时间至少为nt(其中n为位数)。2、传送编码在计算机中,数和字符等都是以一定的编码表示的。编码的种类很多,常用的主要有:①扩展的BCD交换码EBCDIC(ExtendedBinaryCodedDecimalInterchangeCode),这是一种8b编码,通常用在同步通信中。②美国标准信息交换码ASCII(AmericanStandardCodeforInformationInterchange)。3、通信方式在串行通信中,有2种最基本的通信方式。1)异步通信ASYNC(AsynchronousDataCommunication)•它用一个起始位表示字符的开始,用停止位表示字符的结束构成一帧,如图6.7所示。•起始位占用一位,字符编码为7位(ASCII)码,第8位为奇、偶校验位,加上这一位使字符中为“1”的位为奇数(或偶数),停止位可以是一位、一位半或两位。于是一个字符就由10b或10.5b或11b构成。•用这样的方式表示字符时,字符可以一个接着一个地传送。三、串行通信与数据接口…100/10/10/10/10/10/10/10/1111100/10/1…起始位下一个字符起始位7位数据奇偶校验停止位第n个字符空闲位第(n+1)个字符低位高位下降边指出下一个字符的开始一位时间取决于波特率MARK(a)0/10/1100/10/10/10/10/10/10/10/1100/10/10/10/1起始位7位数据奇偶校验停止位第n个字符第(n+1)个字符低位高位下降边指出下一个字符的开始奇偶校验停止位第(n–1)个字符7位数据(b)图6.7异步通信字符格式在异步数据传送中,CPU与外设之间必须遵循如下二项规定。①字符格式。这是对字符的编码方式,奇偶校验方式以及起始位和停止位的规定形式。例如用ASCII编码,字符为七位,加上一个偶校验位,一个起始位,以及一个停止位。形成一个10b的字符格式。②波特率(Baudrate)波特率即数据传送的速率,它对于CPU与外界的通信是很重要的。波特率也是衡量传输通道频宽的指标。假如数据传送的速率是120字符/s,而每一个字符字符格式为10b,则传送的波特率为10×120=1200b/s=1200Baud每一位的传送时间为波特率的倒数:Td=1/1200=0.833ms…SYN字符#1SYN字符#2数据图6.8同步通信字符格式2)同步传送(SYNC)在异步传送中,每一个字符要用起始位和停止位作为字符开始和结束的标志,占用了时间,所以,在数据块传送时,为了提高速度,就去掉这些标志,采用同步传送的方式。此方式在数据块开始处要用同步字符来指示,如图6.8所示。发送设备在发送的数据前面要先发送同步字符,接收设备在收到同步字符后就以与发送设备相同的时钟来接收数据块,从而达到快速数据传送的目的。同步传送的速度高于异步传送速度,可达上兆波特。但它要求用时钟来实现发送端与接收端之间的同步,故而硬件结构复杂。站A站B图6.9半双工示意图4、串行传送中的几个问题1)数据传送方向①半双工(HalfDup