2.05k likes | 2.27k Views
第 2 章 总线与接口芯片. 1 、总线概述 2 、总线的仲裁、定时和数据传送模式 3 、常用总线标准及其主要参数 4 、 I/O 端口编址与译码 5 、 8254 可编程定时器 / 计数器. 2.1 总线概述. 1. 总线定义:总线就是各种信号线的集合,总线是计算机中传输数据信号的通道,即是计算机各部件之间传送数据、地址和控制信息的公共通路。 2 总线特点:分时、共享。. 总线的分类 1. 按相对于 CPU 或其它芯片的 位置 ,总线可分为: 片内总线 (Internal Bus) 片外总线 (External Bus) 。
E N D
第2章 总线与接口芯片 • 1、总线概述 • 2、总线的仲裁、定时和数据传送模式 • 3、常用总线标准及其主要参数 • 4、I/O端口编址与译码 • 5、8254可编程定时器/计数器
2.1总线概述 • 1. 总线定义:总线就是各种信号线的集合,总线是计算机中传输数据信号的通道,即是计算机各部件之间传送数据、地址和控制信息的公共通路。 • 2总线特点:分时、共享。
总线的分类 • 1.按相对于CPU或其它芯片的位置,总线可分为: • 片内总线(Internal Bus) • 片外总线(External Bus)。 • 前者是CPU内部寄存器之间和算术逻辑部件ALU与控制部件之间传输数据所用的总线,即芯片内部的总线;后者是CPU与内存RAM、ROM和输入/输出设备接口之间进行通讯的通路。
2.按总线的功能可分为:地址总线(ABus)、数据总线(DBus)、控制总线(CBus)。2.按总线的功能可分为:地址总线(ABus)、数据总线(DBus)、控制总线(CBus)。 • 地址总线上传送地址信号,总线主控用地址信号指定其需要访问的部件(如外设、存储器单元)。 • 总线主控发出地址信号后,总线上的所有部件均感受到该地址信号,但只有经过译码电路选中的部件才接收主控的控制信号,并与之通信。 • 地址总线是单向的,即地址信号只能由总线主控至从控。地址总线也是三态的,非主控部件不能驱动地址总线。
数据总线 • 数据总线上传送数据信息,数据总线是双向的,数据信息可由主控至从控(写),也可由从控至主控(读)。 • 数据总线是三态的,未被地址信号选中的部件,不驱动数据总线(其数据引脚为高阻)。 • 数据总线的根数称为总线的宽度。16位总线,指其数据总线为16根。
控制总线 • 控制总线上传送一个部件对另一个部件的控制信号。 • 在总线上,可以控制其他部件的部件称为总线主控或主控(bus master),被控部件称为从控(slave) • 根据不同的使用意义,有的为双向, 有的为三态,有的非三态
3.按总线的层次结构可分为: • (1) CPU总线,包括地址线(CAB)、数据线(CDB)和控制线(CCD),它用来连接CPU和控制芯片。 • (2) 存贮总线, 包括地址线(MAB)、数据线(MDB)和控制线(MCD),用来连接存储控制器和DRAM。 • (3)系统总线,也称为I/O通道总线,包括地址线(SAB)、数据线(SDB)和控制线(SCB) (即数据总线、地址总线和控制总线 ) • (4)外部总线: 用来连接外设控制芯片,如主机板上的I/O控制器和键盘控制器。包括地址线(XAB)、数据线(XDB)和控制线(XCB)。
4.按总线在微机系统中的位置可分为: • (1)机内总线 :上面介绍的各类都是机内总线。 • (2)机外总线(Peripheral Bus — 外设总线): 指与外部设备接口的总线,实际上是一种外设的接口标准。
二、微机系统总线简介 • PC系列机上采用的总线标准: ISA 工业标准体系结构 ( Industrial Standard Architecture) EISA 扩展工业标准体系结构 (Extended Industrial Standard Architecture) VESA 视频电气标准协会(又称VL-bus ) • (Video Electronics Standards Association) PCI 外部设备互连 (Peripheral Component Interconnect) USB 通用串行总线 (Universal Serial Bus) AGP 图形加速端口(显卡专用线)(Accelerated Graphics Port)
其他总线简介 • 由于目前的一些新型接口标准,如USB、IEEE1394等,允许同时连接多种不同的外设,因此也把它们称为外设总线。此外,连接显示系统的新型接口AGP,由于习惯上的原因(原来的显示卡插入ISA或者PCI总线插槽中),也被称为AGP总线,但是实际上它应该是一种接口标准。
1. IEEE 1394总线 • IEEE 1394是一种串行接口标准,这种接口标准允许把计算机、外部设备、各种家用电器非常简单地连接在一起。从IEEE 1394可以连接多种不同外设的功能特点来看,也可以称为总线,即一种连接外部设备的机外总线。 • IEEE 1394的原型是运行在Apple Mac电脑上的Fire Wire(火线),由IEEE采用并且重新进行了规范。它定义了数据的传输协定及连接系统,可用较低的成本达到较高的性能,以增强电脑与外设(如硬盘、打印机、扫描仪),与消费性电子产品(如数码相机、DVD播放机、视频电话等)的连接能力。
由于要求相应的外部设备也具有IEEE1394接口功能才能连接到1394总线上,所以直到1995年第3季度Sony推出的数码摄像机加上了IEEE接口后,1394才真正引起广泛的注意。由于要求相应的外部设备也具有IEEE1394接口功能才能连接到1394总线上,所以直到1995年第3季度Sony推出的数码摄像机加上了IEEE接口后,1394才真正引起广泛的注意。 • 机外总线将改变当前电脑本身拥有众多附加插卡、连接线的现状,它把各种外设和各种家用电器连接起来。电脑也成为一种普通的家电。
2.USB总线 • USB(Universal Serial Bus)称为通用串行总线,是由Compaq、DEC、IBM、Intel、Microsoft、NEC和NT(北方电讯)七大公司共同推出的新一代接口标准。它和IEEE 1394一样,也是一种连接外围设备的机外总线。 根据USB规范,USB传送速度可达12Mb/s(每秒12兆位),除了可以与键盘、鼠标、MODEM等常见外设连接外,还可以与ISDN(综合业务数据网)、电话系统、数字音响、打印机/扫描仪等低速外设连接。 • 从性能上来看,USB在很多方面不如IEEE 1394,但是由于USB有着IEEE 1394无法比拟的价格优势,在一段时间内USB将与IEEE 1394共存,分别管理低速和高速外设。 • 有关UBS更详细内容将在串行接口章节中介绍。
3. AGP(Accelerated Graphics Port) • AGP是一种为了提高视频带宽而设计的总线规范。因为它是点对点连接,即连接控制芯片和AGP显示卡,因此严格说来,AGP不能算是总线,而是一种接口标准,它在主内存与显示卡之间提供了一条直接的通道,使得3D图形数据不通过PCI总线,而直接送入显示子系统。这样就能突破由于PCI总线形成的系统瓶颈,从而实现了以相对低价格来达到高性能3D图形的描绘功能以提高计算机对图像的处理能力。目前的主板产品大多支持AGP。 • 本章第三节将进一步介绍AGP的有关技术指标。
总线的主要参数 • 1.总线的带宽 • 总线的带宽指的是一定时间内总线上可传送的数据量,即我们常说的每秒钟传送多少MB(兆字节)的最大稳态数据传输率。 • 2.总线的位宽 • 总线的位宽指的是总线能同时传送的数据位数,即我们常说的32位、64位等总线宽度的概念。 • 3.总线的工作时钟频率 • 总线的工作时钟频率以MHz为单位。工作频率越高则总线工作速度越快,也即总线带宽越宽。 • 总线位宽越宽、总线工作时钟频率越高则总线带宽越大。当然,单方面提高总线的位宽或工作时钟频率都只能部分提高总线的带宽,并容易达到各自的极限。只有两者配合才能使总线的带宽得到更大的提升。
2.2 总线的仲裁、定时和数据传送模式 • §2.2.1 总线的仲裁 • 连接到总线上的功能模块有主动和被动两种形态。如CPU模块,它在不同的时间可以用做主方,也可用做从方;而存储器模块只能用做从方。主方可以启动一个总线周期,而从方只能响应主方的请求。每次总线操作,只能有一个主方占用总线控制权,但同一时间里可以有一个或多个从方。
除CPU模块外,I/O功能模块也可提出总线请求。为了解决多个主设备同时竞争总线控制权的问题,必须具有总线仲裁部件,以某种方式选择其中一个主设备作为总线的下一次主方。 • 对多个主设备提出的占用总线请求,一般采用优先级或公平策略进行仲裁。例如,在多处理器系统中对各CPU模块的总线请求采用公平的原则来处理。 • 对I/O模块的总线请求采用优先级策略。被授权的主方在当前总线业务一结束,即接管总线控制权,开始新的信息传送。 • 主方持续控制总线的时间称为总线占用期。
仲裁方式分为集中式仲裁和分布式仲裁两类。 • 2.2.1.1 集中式仲裁 • (1) 链式查询方式
主要特点是:总线授权信号BG串行地从一个I/O接口传送到下一个I/O接口。假如BG到达的接口无总线请求,则继续往下查询;假如BG到达的接口有总线请求,BG信号便不再往下查询。这意味着该I/O接口就获得了总线控制权。主要特点是:总线授权信号BG串行地从一个I/O接口传送到下一个I/O接口。假如BG到达的接口无总线请求,则继续往下查询;假如BG到达的接口有总线请求,BG信号便不再往下查询。这意味着该I/O接口就获得了总线控制权。 • 排列在链首的设备具有最高优先级,在链末的设备优先级越低。因此,链式查询是通过安排接口设备的先、后位置来实现优先级排队的。
链式查询方式的优点:只用很少几根线就能按一定优先次序实现总线仲裁,并且这种链式结构很容易扩充设备。链式查询方式的优点:只用很少几根线就能按一定优先次序实现总线仲裁,并且这种链式结构很容易扩充设备。 • 缺点1:对询问链的电路故障很敏感,如果第i个设备的接口中有关链的电路有故障,那么第i个以后的设备都不能进行工作。 • 缺点2:优先级是固定的,如果优先级高的设备出现频繁的请求时,那么优先级较低的设备可能长期不能使用总线。
(2) 计数器定时查询方式 工作原理:总线上的任一设备要求使用总线时,通过BR线发出总线请求。中央仲裁器接到请求信号以后,在BS线为“0”的情况下让计数器开始计数,计数值通过一组地址线发向各设备。每个设备接口都有一个设备地址判别电路,当地址线上的计数值与请求总线的设备地址相一致时,该设备将BS线置“1”,获得了总线使用权,此时中止计数查询。
优点:每次计数可以从“0”开始,也可以从中止点开始。如果从“0”开始,各设备的优先次序与链式查询法相同,优先级的次序是固定的。如果从中止点开始,则每个设备使用总线的优先级相等。计数器的初值也可用程序来设置,这就可以方便地改变优先次序 • 缺点:增加了连线数量
(3) 独立请求方式 每一个共享总线的设备均有一对总线请求线BRi和总线授权线BGi。 当设备要求使用总线时,便发出该设备的请求信号。中央仲裁器中有一个排队电路,它根据一定的优先次序决定首先响应哪个设备的请求,给设备以授权信号BGi。
优点1:仲裁请求响应时间快。 • 优点2:对优先次序的控制相当灵活。它可以预先固定,例如BR0优先级最高,BRl次之……BRn最低;也可以通过程序来改变优先次序;还可以用屏蔽(禁止)某个请求的办法,不响应来自无效设备的请求。 • 当代总线标准普遍采用独立请求方式。
分布式仲裁 • 不需要中央仲裁器,每个潜在的主方功能模块都有自己的仲裁号和仲裁器。 • 当它们有总线请求时,把它们唯一的仲裁号发送到共享的仲裁总线上,每个仲裁器将仲裁总线上得到的号与自己的号进行比较。如果仲裁总线上的号大,则它的总线请求不予响应,并撤消本身的仲裁号。最后,获胜者的仲裁号保留在仲裁总线上。 • 是以优先级仲裁策略为基础的一种仲裁方式。
总线的定时 1.同步定时 2.异步定时 3.半同步定时 4.分离方式定时
1.同步定时 在同步定时协议中,事件出现在总线上的时刻由总线时钟信号来确定。总线周期是固定的,每次传送一旦开始,主、从设备都必须严格按照时间规定完成相应的动作。
现代微机中的PCI总线就是同步方式总线。 • 全部系统模块由单一时钟信号控制。 • 优点1:电路设计比较简单; • 优点2:完成一次传输的时间很短, 它不允许主从设备间有等待,适合于高速设备的数据传输。 • 缺点:它不能满足高/低速设备在同一系统中的使用。否则,只能按最慢的设备来确定总线周期长短或频带,这样高速设备只能按照低速设备的速度来进行数据传输,使整个系统性能下降。
2.异步定时 • 数据采用“应答式”传输。 • 无系统时钟信号,而是靠“请求”(REQ)和“应答”(ACK)两根信号线来协调传输过程。
连接任何外部设备都不需要考虑该设备的速度,它根据模块的响应速度自动调整响应时间。连接任何外部设备都不需要考虑该设备的速度,它根据模块的响应速度自动调整响应时间。 • 异步方式的应答关系完全互锁,REQ和ACK两个信号是有制约关系的。主设备的请求使REQ有效,由从设备的ACK来响应;ACK有效,允许主设备撤消REQ,只有REQ撤消,最后才撤消ACK;只有ACK已经撤消,才允许下一传输周期的开始,这保证了数据传输的可靠性。
优点:总线周期长度可变。 • 不把响应时间强加到功能模块上,因而允许快速和慢速的功能模块都能连接到同一总线上。 • 缺点1:增加总线的复杂性和成本。 • 缺点2:不管从模块的速度,每完成一次传输,主、从模块之间的互锁控制信号都要经过4个步骤,即请求、响应、撤消请求和撤消响应,它的传输延迟是同步传输的两倍。因此,异步方式比同步方式要慢,总线的频带窄,总线传输周期长。
3.半同步定时 • 综合同步和异步传送的优点,是两者混合的传送方式。 • 从总体上看,它是一个同步系统,仍用系统时钟来定时,利用某个脉冲的上升沿或下降沿判断某一个信号的状态,使得传输操作与时钟同步。 • 为了克服同步方式的缺点,它允许两个速度不同的设备使用像异步方式那样的传输。为此,设置了一条“等待”(WAIT)或“就绪”(READY)信号线。
对可以严格按照时钟规定进行传送的两个高速设备的传输,等待信号无效,依然按照同步方式传输。对可以严格按照时钟规定进行传送的两个高速设备的传输,等待信号无效,依然按照同步方式传输。 • 如果从模块是慢速设备,没有准备好数据传输,从模块会使得WAIT信号有效或READY信号无效,系统用一个适当的状态时钟沿检测这个信号线。如果是WAIT有效(或READY无效),就自动将总线周期延长一个时钟周期,强制主模块等待。下一个时钟周期继续检测这个信号线,直到检测到WAIT信号无效(或READY信号有效)才不再延长总线周期。这种方法像异步方式那样能使不同速度的设备同时在系统中做数据传输。 • 但WAIT信号不是互锁的,而是单方向的状态传递,这是和异步方式的不同之处。
4.分离方式定时 • 在总线读周期的寻址阶段,到数据传送阶段,有一个短暂的时间间隔,用于从模块执行读命令(取出数据)。此时的总线是空闲的。 • 可以想办法把这总线的空闲时间也利用起来。
将读周期分为两个分离的子周期。 • 第一个子周期为寻址阶段,当有关的从模块从总线上得到主模块发出的地址、命令及有关信息后,立即和总线断开,以便其他模块可以使用总线。 • 等到从模块准备好数据后,启动第二个子周期,由该模块申请总线,获准后,将数据发送给原来请求数据的主模块。 • 两个子周期均采用同步方式传送,在占用总线的时候,进行高速的信息传输。 • 分离式传输很适合有多个主模块(如多个处理器或多个DMA设备)的系统。
总线数据传送模式 • 当代的总线标准大都能支持以下四类模式的数据传送: • 1.读、写操作 读操作是由从方到主方的数据传送;写操作是由主方到从方的数据传送。一般,主方先以一个总线周期发出命令和从方地址,经过一定的延时再开始数据传送总线周期。为了提高总线利用率,减少延时损失,主方完成寻址总线周期后可让出总线控制权(分时方式),以使其他主方完成更紧迫的操作。然后再重新竞争总线,完成数据传送总线周期。
2.块传送操作 只需给出块的起始地址,然后对固定块长度的数据一个接一个地读出或写入。对于CPU(主方)—存储器(从方)而言的块传送,常称为突发式传送,其块长一般固定为数据线宽度(存储器字长)的4倍。例如一个64位数据线的总线,一次突发式传送块长可达256位。
3.写后读、读修改写操作 只给出地址一次,或进行先写后读操作,或进行先读后写操作。前者用于校验目的,后者用于多道程序系统中对共享存储资源的保护。这两种操作和突发式操作一样,主方掌管总线直到整个操作完成。 • 4.广播、广集操作 一般而言,数据传送只在—个主方和一个从方之间进行。但有的总线允许一个主方对多个从方进行写操作,这种操作称为广播。与广播相反的操作称为广集,它将选定的多个从方数据在总线上完成AND或OR操作,用以检测多个中断源。
2.3 常用总线标准及其主要参数 • 总线标准的内容 机械规范: 规定总线的根数、插座形状、引脚排列等。 功能规范: 规定总线中每根线的功能。 从功能上,总线分成三组:地址总线、数据总线、控制总线。 电气规范: 规定总线中每根线的传送方向、有效电平范围、负载能力等。 时间规范: 规定每根线在什么时间有效,通常以时序图的方式进行描述。
采用标准总线的优点 便于采用模块化设计方法, 简化系统设计 • 厂家面向总线设计各种插件板,产品具有通用性, • 用户可灵活选购必要的插件板构成所需的系统。 • 便于系统的扩充和升级 • 一个插件板只要满足总线标准, • 就可连接到带有这种总线标准的计算机系统中。 • 加插功能卡 扩充系统功能 • 研制新的插件板 更新系统功能
总线体系结构 单总线体系结构 指微机中所有模块都连接在单一总线上。 • 如早期的IBM PC、XT机:采用IBM PC/XT总线 多总线体系结构 指微机中采用多种总线, 各模块按数据传输速率的不同,连接不同的总线上。 • 如Pentium 微机: 内部有 ISA、PCI、AGP等。
总线的发展趋势 不断提高传输速率 • 几MB/s 几百MB/s 不断降低功耗 电源5.0V 3.0V 1.6V ; 采用休眠技术 智能化、层次化 支持即插即用; 多总线结构
1、ISA总线 • ISA(Industry Standard Architecture工业标准体系结构)总线是早期比较有代表性的总线。 • IBM公司推出 PC/XT和PC/AT个人计算机后,IEEE(Institute of Electronic and Electronic Engineers 电气电子工程师协会)在1987年定义了工业标准体系结构(ISA),将PC/XT总线定义为8位ISA,将PC/AT总线定义为16位ISA。
ISA总线具有以下特点: • 既支持8位数据操作,也支持16位数据操作; • 可以将PC/AT总线和PC/XT总线的运行速度提升至8MHz; • 提供了1KB的I/O空间、15级的硬件中断、7级的DMA通道、8个设备的负载能力; • 总线中的地址、数据线采用非多路复用形式,使系统的扩展设计更为简便; • 是一种多主控设备总线,除主CPU外,DMA控制器、DRAM刷新控制器、带处理器的智能卡都可成为ISA的主控设备; • 由于IBM PC机广泛流行,可供选择的ISA插件卡品种较多,这有利于用户根据需要快速构成相应的微型计算机应用系统。
2、 EISA总线 • EISA(Extended Industry Standard Architecture扩展的工业标准体系结构)总线是扩展的ISA总线。1989年,以Compaq公司为代表的9家公司,在ISA总线的基础上,联合推出了EISA总线。在当时,尽管数据总线宽度被增加到32位,但EISA总线的时钟速度仍然维持在8MHz,这导致了这种互连结构标准逐渐地被减少使用。但是,更新以后的VESA局部总线和PCI总线均工作在更高的速度之下,它们现在可以在33MHz的频率下工作。
EISA总线的特点 • (1)用于32 位微机中,可寻址4GB的存储空间,也支持64KB的I/O端口寻址。 • (2)具有32位数据线,保证了系统性能的提高,使最大数据传输速率达33 MB/S。 • (3)支持多处理器结构,支持多主控总线设备,具有较强的I/O扩展能力和负载能力。 • (4)具有自动配置功能,可以根据配置文件自动地初始化,配置系统板和多扩展卡。 • (5)扩展了DMA的范围和传输速度,支持7个DMA通道,DMA数据传输既可在ISA方式下也可在EISA方式下进行。 • (6)采用同步数据传送协议,可支持常规的一次传送,也可支持突法方式即高速分组传送。
3、 VESA总线 • VESA(Video Electronics Standards Association 视频电子标准协会)总线是一种32位接口的局部总线,通常称为VL总线。 • VESA局部总线工作频率可以达到33MHz,常用在需要高速数据传输的系统。 • 与EISA总线一样,VESA局部总线也是ISA总线的扩展,不同之处在于VESA局部总线没有在16位ISA总线连接器上增加任何器件,而是在16 位ISA总线连接器的后面增加了第3个连接器,即VESA连接器。 • VESA局部总线上的连线与EISA总线卡非常相似,VESA局部总线还包括一个32位地址和数据总线,用于将存储器和I/O设备连接到微处理器上。
4、PCI总线 • PCI(Peripheral Component Interconnect 外部组件互连)总线是目前最常用的系统总线。该总线是专门为Pentium系列芯片设计的。 • PCI V2.0版本支持32/64位数据总线,总线时钟为25~33MHz,数据传输率达132~264MB/s。 • 1995年推出的PCI V2.1版本支持64位数据总线,总线速度为66MHz,最大数据传输率达528MB/s。
PCI总线的特点 • 采用数据线和地址线复用结构,目标设备可用47引脚,总线主控设备可用 49引脚。 • 提供5V和3.3V两种工作信号环境,可在两种环境中根据需要进行转换。 • 允许32位与64位器件相互协作。 • 允许PCI局部总线扩展卡和元件进行自动配置,提供了即插即用的能力。 • PCI总线独立于处理器,它的工作频率与CPU时钟无关,可以支持多机系统。 • PCI总线具有良好的兼容性,可支持ISA、EISA、MCA、SCSI、IDE等多种总线。