1、第6章 总线系统,6.1 总线的概念和结构形态 6.2 总线接口 6.3 总线的仲裁、定时和数据传送模式 6.4 ISA总线 6.5 PCI总线,一、为什么要用总线,二、什么是总线,三、总线上信息的传送,串行,并行,6.1 总线的概念和结构形态,总线是构成计算机系统的互连机构,是多个系统功能部件之间进行数据传送的公共通路。,6.1 总线的概念和结构形态,单处理器系统的总线,大致分为三类: 内部总线:CPU内部连接各寄存器及运算部件之间的总线 系统总线:CPU同计算机系统的其他高速功能部件,如存储器、通道等互相连接的总线 I/O总线:中低速I/O设备间互相连接的总线,一、总线类型(层次结构),芯
2、片总线(Chip Bus) 芯片级互连,大规模集成电路芯片内部或之间连接的总线 局部总线(Local Bus),微处理器的引脚信号 片内总线,大规模集成电路芯片内部连接 内总线(Internal Bus) 模板级互连,主机内部功能单元(模板)间连接的总线 板级总线、母板总线,或系统总线 系统总线(System Bus)是微机系统的主要总线 内部总线从一条变为多条,形成多总线结构 外总线(External Bus) 设备级互连,微机与其外设或微机之间连接的总线 过去,指通信总线 现在,常延伸为外设总线,二、总线特性,物理特性:物理连接方式,包括总线的根数、排列方式,总线的插头、插座的形状等 功能
3、特性:描述总线中每一根线的功能 电气特性:定义每一根线上信号的传递方向及有效电平范围。送入CPU的信号叫输入信号(IN),从CPU发出的信号叫输出信号(OUT) 时间特性: 定义了每根线在什么时间有效,即总线上各信号有效的时序关系,为了方便各个功能部件的连接, 广泛应用的总线都实现了标准化,三、总线的性能指标,数据线 的根数,每秒传输的最大字节数(MBs),同步、不同步,地址线 与 数据线 复用,地址线、数据线和控制线的 总和,负载能力,并发、自动、仲裁、逻辑、计数,四、总线带宽,总线带宽总线传输速率吞吐率 单位时间传输的数据量 每秒兆字节(MB/S)或每秒位(bps) 总线带宽传输的数据量需
4、要的时间,举例,5MHz的8086微处理器 16(40.210-6)bps20106 bps2.5 MB/S 66MHz的Pentium,基本非流水线总线周期 64266106 bps264 MB/S 66MHz的Pentium,2-1-1-1猝发读周期 32566106 B/S422.4 MB/S,【例1】(1)某总线在一个总线周期中并行传送4个字节的数据,假设一个总线周期等于一个总线时钟周期,总线时钟频率为33MHz,则总线带宽是多少? (2)如果一个总线周期中并行传送64位数据,总线时钟频率升为66MHz,则总线带宽是多少?,解:(1) 设总线带宽用Dr表示,总线时钟周期用T=1/f表示
5、,一个总线周期传送的数据量用D表示, 根据定义可得: Dr=D/T=D1/T=Df =4B331000000/s=132MB/s(2) 64位=8B Dr=Df=8B661000000/s=528MB/s,此处:1MB106 B,1.单总线结构 在单处理器的计算机中,使用一条单一的系统总线来连接CPU、主存和I/O设备,叫做单总线结构。 要求连接到总线上的逻辑部件必须高速运行,以便在某些设备需要使用总线时能迅速获得总线控制权;当不再使用总线时,能迅速放弃总线控制权。,五、总线结构,2.双总线结构 在CPU和主存之间专门设置了一组高速的存储总线,使CPU可通过专用总线与存储器交换信息,减轻了系统
6、总线的负担,主存仍可通过系统总线与外设之间实现DMA操作,而不必经过CPU,3.三总线结构,早期总线的内部结构-处理器芯片引脚的延伸,当代流行的总线内部结构,六、PC机总线的发展,16位PC机:单总线结构 IBM PC机和IBM PC/XT机的IBM PC总线 IBM PC/XT机的IBM AT总线,即ISA总线 早期32位PC机 与MCA总线竞争的EISA总线(扩展 ISA总线) 32位局部总线VESA 当前32位PC机:多总线结构 存储总线 系统总线:外设部件互连PCI 显示总线:图形加速接口AGP 外设接口:键盘接口、鼠标接口、并行打印机接口、串行通信接口,通用串行接口USB,IEEE
7、1394接口,6.2 总线接口,1.串行传送 只有一条传输线,每次一位,按顺序来传送表示一个数码的所有二进制位(bit) 2.并行传送 每个数据位都需要单独一条传输线。二进制数“0”或“1”在不同的线上同时进行传送,串行通信,串行通信:将数据分解成二进制位用一条信号线,一位一位顺序传送的方式 串行通信的优势:用于通信的线路少,因而在远距离通信时可以极大地降低成本 通信协议(通信规程):收发双方共同遵守解决传送速率、信息格式、位同步、字符同步、数据校验等问题 串行通信适合于远距离数据传送,也常用于速度要求不高的近距离数据传送 PC系列机上有两个串行异步通信接口、键盘、鼠标器与主机间采用串行数据传
8、送,通信方式,串行异步通信:以字符为单位进行传输 串行同步通信:以一个数据块(帧)为传输单位,每个数据块附加1个或2个同步字符,最后以校验字符结束 传输制式 全双工:双根传输线,能够同时发送和接收 半双工:单根传输线,不能同时发送和接收 单工:单根传输线只用作发送或只用作接收 调制解调器Modem:通信线路信号与计算机数字信号相互转换的设备,起始位每个字符开始传送的标志,起始位采用逻辑0电平,数据位数据位紧跟着起始位传送。由58个二进制位组成,低位先传送,校验位用于校验是否传送正确;可选择奇检验、偶校验或不传送校验位,停止位表示该字符传送结束。停止位采用逻辑1电平,可选择1、1.5或2位,起止
9、式异步通信字符格式,空闲位传送字符之间的逻辑1电平,表示没有进行传送,数据传输速率,数据传输速率比特率(Bit Rate) 每秒传输的二进制位数bps 字符中每个二进制位持续的时间长度都一样,为数据传输速率的倒数 进行二进制数码传输,每位时间长度相等:比特率波特率(Baud Rate) 过去,限制在50 bps到9600 bps之间 现在,可以达到115200 bps或更高,【例2】 利用串行方式传送字符,每秒钟传送的数据位数常称为波特。假设数据传送速率是120个字符/秒,每一个字符格式规定包含10个数据位(起始位、停止位、8个数据位),问传送的波特数是多少?每个数据位占用的时间是多少?,【解
10、】:波特数为:10位120/秒=1200波特 每个数据位占用的时间Td是波特数的倒数: Td=1/1200=0.8330.001s=0.833ms,发送8位数据:59H01011001B,偶校验、两个停止位,6.3.1 总线的仲裁,主设备(Master):控制总线完成数据传输 从设备(Slave):被动实现数据交换 总线仲裁:决定当前控制总线的主设备 集中仲裁:中央仲裁器负责 分布仲裁:比较各个主设备仲裁号决定,某一时刻,只能有一个主设备控制总线, 其它设备此时可以作为从设备,某一时刻,只能有一个设备向总线发送数据, 但可以有多个设备从总线接收数据,集中仲裁:链式查询方式,I/O接口1,集中仲
11、裁:计数器定时查询方式,I/O接口1,设备地址,集中仲裁:独立请求方式,分布式仲裁,中央 处理器,设备接口 0,设备接口 1,设备接口 N,3,1,2,6.3.2 总线的定时(时序协议),同步定时(时序) 总线操作的各个过程由共用的总线时钟信号控制 适合速度相当的器件互连总线,否则需要准备好信号让快速器件等待慢速器件 微处理器控制的总线时序采用同步时序 异步定时(时序) 总线操作需要握手联络(应答)信号控制 数据传输的开始伴随有启动(选通或读写)信号 数据传输的结束有一个确认信号,进行应答,同步时序协议,同步式数据输入,同步式数据输出,不互锁,半互锁,全互锁,异步时序的互锁关系,打印机时序,典
12、型的异步时序 DATA0DATA7(8位并行数据)信号 主机输出打印数据和命令 STROBE*(选通)信号 输出低有效,才能使打印机接收数据 ACK*(响应)信号 打印机接收数据结束回送负脉冲响应信号 BUSY(忙状态)信号 打印机忙于处理接收到的数据,不能接收新的数据,时序图,6.3.3 总线数据传送模式,读数据传送:数据由从设备到主设备 写数据传送:数据由主设备到从设备 猝发传送(数据块传送) 给出起始地址,将固定块长的数据一个接一个地从相邻地址读出或写入 写后读(Read-After-Write) 先写后读同一个地址单元,适用于校验 读修改写(Read-Modify-Write) 先读后
13、写同一个地址单元,适用于共享数据保护 广播(Broadcast) 一个主设备对多个从设备的写入操作,6.4 ISA总线,16位系统总线,用于IBM PC/AT及其兼容机 由前62引脚(A和B面)和后36引脚(C和D接面)两个插槽组成: IBM PC机和IBM PC/XT机的IBM PC总线 前62个信号,其中8位数据总线、20位地址总线 时钟频率4.77MHz,最快4个时钟周期传送8位数据 IBM AT机增加部分 后36个信号,16位数据引脚和24位地址引脚 8MHz总线频率,2个时钟周期传送16位数据,6.4 ISA总线,6.4 ISA总线,6.4 ISA总线,6.4 ISA总线,6.4 I
14、SA总线,6.4 ISA总线,6.5 PCI总线,Intel公司提出,PCI联盟SIG支持 与处理器无关 集中式总线仲裁、支持多处理器系统 通过桥电路兼容ISA/EISA总线 具有即插即用的自动配置能力等 共94个引脚 PCI 1.0版:32位数据总线、33MHz时钟频率 PCI 2.0版:64位数据总线、33MHz时钟频率 PCI 2.1版:64位数据总线、66MHz时钟频率,突出的性能。总线宽度32位, 可升级至64位, 支持突发工作方式, 同步操作时最大频率33MHz, 数据最大传输率133M bp s (32位) 或266M bp s (64位)。 良好的兼容性。PC I 总线部件和插
15、板接口是相互独立的处理器, 所有目前和将来不同结构的处理器都可以被很好地支持。 即插即用。PC I 设备都包含存有设备具体信息的寄存器, 这些信息可以使得系统B IO S 和操作系统层的软件可以自动配置PC I 总线部件和插板。 低成本。采用最优化的芯片, 多路复用体系减少了管脚个数和PC I 部件,基于ISA、EISA、MCA 的扩展板也可以在PC I 总线上工作, 减少了用户开发费用。 多主能力。支持任何PC I 主设备和从设备之间点对点的访问。 定义了3.3V 和5V 2种信号环境,5 3.3V 的组件技术可以使电压平滑过渡。 高速缓存(Cache) 支持。,PCI总线主要特点:,PCI
16、总线的结构,PCI总线特点,(1) PC I 规则支持多总线结构。在整个系统中, 存在着3种不同的总线:HOST Bus 为整个系统中最基本设备之间高性能的连接, 它一般是IN TEL X86 类型总线。PC IBus 为系统高性能局部总线, 各种高性能外设连于其上, 增强系统功能。L EGACY Bus 为传统的性能较低的总线, 如ISA、E ISA、MCA 总线。(2) 整个系统可以分为多个层次, 不同的总线通过桥路(BR IDGE) 相连, 桥路的主要功能是在2种不同的信号环境间进行转换, 使不同总线间的数据传输可以顺畅进行。(3) 在每条总线上接有各自的总线设备(MASTER、TARG
17、ET MEMORY、TARGET I/O ) 。,SCSI总线(Small Computer System Interface),SCSI小型计算机系统接口 高速、智能、并行总线接口 使用50芯电缆,由8条数据线、一条奇偶校验线、9条控制线等组成 以菊花链形式最多可连接8台设备 采用分布式总线仲裁策略,每个SCSI设备有唯一设备号ID07 SCSI-2扩充了SCSI的命令集,采用68芯电缆,提高了数据传输率 SCSI-3标准允许总线上连接的设备由8个提高到16个,可支持16位数据传输,IEEE 1394总线,高速串行总线标准接口,适合视频等家电消费类设备的连接,俗称火线Fire Wire 具有
18、数据传送的高速性 数据传输率:100Mb/s、200Mb/s、400Mb/s 具有数据传送的实时性 保证多媒体数据(图像和声音)传送的连续 体积小易安装,连接方便 使用6芯电缆 支持热插入(带电插拔),USB 总线,USB通用串行总线是一种通用万能插口,可以将下列的任一部件插入USB端口:显示器、键盘、鼠标、调制解调器、游戏杆、扫描仪、打印机、视频相机等。还可以将一些USB外设进行串接,即一大串设备共用PC机一个端口。USB总线可提供电源,但如将多个耗电量大的外设串接起来有可能使总线过载,此时可使用一个自供电的集线器来补充功耗。另外USB外设可以热插拔。 根据设备对系统资源需求的不同,在USB
19、标准中规定了4种不同的数据传输方式:1. 等时传输方式2. 中断传输方式3. 控制传输方式4. 批处理方式,第6章习题,1、用异步通信方式传送字符“A”和“8”,数据有7位,偶校验1位,起始位1位,停止位1位,请分别画出波形图。2、某总线在一个总线周期中并行传送8个字节的信息,假设一个总线周期等于一个总线时钟周期,总线时钟频率为70MHz,总线带宽是多少?,PCI总线信号,地址和数据引脚 AD31:0,AD63:32:64位地址和数据复用信号 C/BE3:0#,C/BE7:4#:命令和字节有效复用信号 PAR,PAR64:奇偶校验信号 接口控制引脚 FRAME#:帧信号,表示总线周期开始 IR
20、DY#:初始方就绪信号 TRDY#:目标方就绪信号 STOP#:停止信号 DEVSEL#:设备选择信号 IDSEL#:初始化设备选择信号 LOCK#:封锁信号,PCI总线信号,PCI总线周期,I/O读写周期 主设备与I/O设备交换数据,不支持猝发传送 存储器读、存储器行读、存储器多重读周期 猝发读取不同的数据量 存储器写周期:猝发写入数据 存储器写和无效周期 保证写入,同时广播“无效”信息 中断响应周期:响应I/O设备中断 特殊周期:主设备广播信息到多个目标设备 双地址总线周期:传输64位地址 配置读和写周期 实现对PCI总线设备的配置信息进行读写,实现自动配置,PCI总线时序,同步时序协议,
21、数据传输需要两个阶段 第一个阶段(一个时钟):提供地址 第二个阶段(最少一个时钟):交换数据 非猝发传送需要2个时钟周期 支持无限猝发传送,第一个时钟提供地址,后续时钟交换数据,也就是2-1-1-1 最大总线带宽 每个时钟传送64位数据,时钟频率66MHz 866 MB/S528 MB/S,PCI总线时序,PC I 总线主设备置FRAME# 有效, 首先开始1个地址期, 在这段时间内, 有效地址和命令分别位于AD 和C/BE#信号线上。,命令类型指出是哪一个地址空间和哪种具体操作。,单步写操作,PCI总线时序,PCI总线时序,数据周期,地址周期,目标设备通过置DEV SEL # 信号有效来响应
22、传送周期。,PC I 总线主设备分别驱动被写数据、有效字节信息和校验信号至AD、C/B E#和PAR 信号线,单步写操作,PCI总线时序,单步读操作,PC I 总线主设备驱动有效字节信息至C/BE# , 由目标设备驱动被读数据和校验PAR到信号线上。,由于目标设备驱动 AD, 所以在目标设备驱动信号之前,AD 要保持1个系统时钟周期的三态, 以便完成转换。,PCI总线时序,单步读操作,数据传输完毕, IRDY# 无效,PCI总线时序,突发传送,基地址,当FRAME# 无效而IRDY# 有效时,突发传输进行最后数据传送。,FRAME# 和IRDY# 都无效时, 传输结束。,PCI总线时序,突发传
23、送,PCI总线时序,传输周期中止,主设备故障终止:当主设备置FRAM E# 有效, 驱动地址到AD 上之后,没有目标设备响应, 此时主设备终止传送。重试终止:目标设备响应传输周期后,数据尚未传送, 而目标设备一时还不能传送或接收数据, 此时目标设备将置STOP# 有效, 终止传输。断开终止:目标设备响应传输周期后, 数据已有部分传送, 而在同一传送周期内, 其他数据尚不能传送, 此时目标设备将置STOP# 有效, 终止传输。目标设备故障终止:不管是否已有数据传送, 目标设备在随后的时间内不能进行传送, 此时它置STOP# 有效, 终止传输。已经传送的数据认为无效。,PC I 总线结构采用集中仲裁机制, 每1个PC I 主设备都有独立的REQ # (总线占用请求) 和GNT # (总线占用允许) 2条信号线与中央仲裁器相连。由中央仲裁器对各设备的申请进行仲裁, 决定由谁占用总线。,PCI总线仲裁,PCI总线时序,同步时序协议,数据传输需要两个阶段 第一个阶段(一个时钟):提供地址 第二个阶段(最少一个时钟):交换数据 非猝发传送需要2个时钟周期 支持无限猝发传送,第一个时钟提供地址,后续时钟交换数据,也就是2-1-1-1 最大总线带宽 每个时钟传送64位数据,时钟频率66MHz 866 MB/S528 MB/S,