第9章:总线系统_第1页
第9章:总线系统_第2页
第9章:总线系统_第3页
第9章:总线系统_第4页
第9章:总线系统_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第9章:总线系统学习目标了解:了解总线的概念和结构形态理解:内部总线、系统总线、外部总线、I/O总线、通信总线。掌握:总线的仲裁、定时和数据传送模式总线的概述总线的结构总线接口与仲裁总线系统PCI总线与HOST总线总线结构应用举例总线的联接方式总线的结构与组成总线仲裁方式总线接口与仲裁总线的类型总线分布式总裁方式信息传送方式总线集中式总裁方式多总线结构PCI总线信号总线的数据传送模式总线周期类型与操作总线的定时协议总线应用案例总线的定时与传送模式知识结构9.1总线的概述总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和控制总线,分别用来传输数据、数据地址和控制信号。总线是一种内部结构,它是CPU、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线结构来连接各个功能部件的。9.2总线的结构9.2.1总线的类型随着微电子技术和计算机技术的发展,总线技术也在不断地发展和完善,而使计算机总线技术种类繁多,各具特色。下面仅对微机各类总线中目前比较流行的总线技术分别加以介绍。1.内部总线(1)I2C总线(2)SPI总线(3)SCI总线2.系统总线(1)ISA总线(2)EISA总线(3)VESA总线(4)PCI总线(5)CompactPCI3.外部总线(1)RS-232-C总线(2)RS-485总线(3)IEEE-488总线(4)USB总线9.2总线的结构9.2.2总线的结构与组成早期总线的内部结构如图9.2所示,它实际上是处理器芯片引脚的延伸,是处理器与I/0设备适配器的通道。这种简单的总线一般也由50一100条线组成,这些线按其功能可分为三类:地址线、数据线和控制线。地址线是单向的,用来传送主存与设备的地址;数据线是双向的,用来传送数据;控制线对每一根线来讲是单向的(CPU发向接口,或接口发向CPU),用来指明数据传送的方向(存储器读、存储器写、I/O读、I/O写),中断控制(请求、识别)和定时控制等。9.2总线的结构图9.2总线的内部结构9.2总线的结构9.2.3总线的联接方式1.单总线结构在许多单处理器的计算机中,使用一条单一的系统总线来连接CPU、主存和I/O设备,叫做单总线结构。CPU主存M.S接口接口I/O设备I/O设备图9.3单总线结构系统总线9.2总线的结构2.双总线结构这种结构保持了单总线系统简单、易于扩充的优点,但又在CPU和主存之间专门设置了一组高速的存储总线,使CPU可通过专用总线与存储器交换信息,并减轻了系统总线的负担,同时主存仍可通过系统总线与外设之间实现DMA操作,而不必经过CPU。当然这种双总线系统以增加硬件为代价。CPU主存MSI/O接口I/O接口图9.4双总线结构存储总线系统总线……I/O设备I/O设备9.2总线的结构3.三总线结构它是在双总线系统的基础上增加I/O总线形成的。CPU主存图9.5三总线结构存储总线系统总线I/O接口I/O接口……I/O设备I/O设备IOP(通道)I/O总线9.2总线的结构9.2.4总线结构应用举例大多数计算机采用了分层次的多总线结构。在这种结构中,速度差异较大的设备模块使用不同速度的总线,而速度相近的设备模块使用同一类总线。显然,这种结构的优点不仅解决了总线负载过重的问题,而且使总线设计简单,并能充分发挥每类总线的效盲目。9.2总线的结构图9.6Pentium计算机主板的总线结构框图9.3总线接口与仲裁1.总线接口总线接口即I/O设备适配器,具体指CPU和主存、外围设备之间通过总线进行连接的逻辑部件。接口部件在它动态连接的两个部件之间起着“转换器”的作用,以便实现彼此之间的信息传送。图9.7所示为CPU、接口和外围设备之间的连接关系。主机I/O接口(适配器)地址线外围设备数据线控制、状态线图9.7外设和主机的连接方法9.3总线接口与仲裁【例1】利用串行方式传送字符,每秒钟传送的数据位数常称为波特。假设数据传送速率是120个字符/秒,每一个字符格式规定包含10个数据位(起始位、停止位、8个数据位),问传送的波特数是多少?每个数据位占用的时间是多少?【解】:波特数为:10位×120/秒=1200波特

每个数据位占用的时间Td是波特数的倒数:Td=1/1200=0.833×0.001s=0.833ms9.3总线接口与仲裁9.3.2信息传送方式数字计算机使用二进制数,它们或用电位的高、低来表示,或用脉冲的有、无来表示。计算机系统中,传输信息采用三种方式:串行传送、并行传送和分时传送。但是出于速度和效率上的考虑,系统总线上传送的信息必须采用并行传送方式。1.串行传送当信息以串行方式传送时,只有一条传输线,且采用脉冲传送。在串行传送时,按顺序来传送表示一个数码的所有二进制位(bit)的脉冲信号,每次一位,通常以第一个脉冲信号表示数码的最低有效位,最后一个脉冲信号表示数码的最高有效位。9.3总线接口与仲裁【例9.1】:假设某串行总线传送速率是960个字符/秒,每一个字符格式规定包含10个数据位,问传送的波特数是多少?每个数据位占用的时间(位周期)是多少?【解】:波特数为:10位/字符×960字符/秒=9600(波特)每个数据位占用的时间Tb是波特数的倒数:Tb=1/9600=0.000104(s)=104(μs)9.3总线接口与仲裁2.并行传送用并行方式传送二进制信息时,对每个数据位都需要单独一条传输线。信息有多少二进制位组成,就需要多少条传输线,从而使得二进制数“0”或“1”在不同的线上同时进行传送。

并行传送一般采用电位传送。由于所有的位同时被传送,所以并行数据传送比串行数据传送快得多。3.分时传送分时传送有两种概念。一是采用总线复用方式,某个传输线上既传送地址信息,又传送数据信息。为此必须划分时间片,以便在不同的时间间隔中完成传送地址和传送数据的任务。分时传送的另一种概念是共享总线的部件分时使用总线。9.3总线接口与仲裁9.3.3总线集中式总裁方式1.集中式仲裁集中式仲裁中每个功能模块有两条线连到中央仲裁器:一条是送往仲裁器的总线请求信号线BR,一条是仲裁器送出的总线授权信号线BG。(1)链式查询方式链式查询方式的主要特点:总线授权信号BG串行地从一个I/O接口传送到下一个I/O接口。假如BG到达的接口无总线请求,则继续往下查询;假如BG到达的接口有总线请求,BG信号便不再往下查询,该I/O接口获得了总线控制权。离中央仲裁器最近的设备具有最高优先级,通过接口的优先级排队电路来实现。9.3总线接口与仲裁9.3.4总线分布式总裁方式分布式仲裁不需要中央仲裁器,每个潜在的主方功能模块都有自己的仲裁号和仲裁器。当它们有总线请求时,把它们唯一的仲裁号发送到共享的仲裁总线上,每个仲裁器将仲裁总线上得到的号与自己的号进行比较。如果仲裁总线上的号大,则它的总线请求不予响应,并撤消它的仲裁号。最后,获胜者的仲裁号保留在仲裁总线上。显然,分布式仲裁是以优先级仲裁策略为基础。作为思考题,读者自行设计分布式仲裁器逻辑电路。9.4总线的定时与传送模式9.4.1总线的定时协议总线的一次信息传送过程,大致可分为如下五个阶段:请求总线,总线仲裁,寻址(目的地址),信息传送,状态返回(或错误报告)。为了同步主方、从方的操作,必须制订定时协议。定时:事件出现在总线上的时序关系。1.同步定时在同步定时协议中,事件出现在总线上的时刻由总线时钟信号来确定。由于采用了公共时钟,每个功能模块什么时候发送或接收信息都由统一时钟规定,因此,同步定时具有较高的传输频率。9.4总线的定时与传送模式2.异步定时在异步定时协议中,后一事件出现在总线上的时刻取决于前一事件的出现,即建立在应答式或互锁机制基础上。在这种系统中,不需要统一的共公时钟信号。总线周期的长度是可变的。【例9.2】某CPU采用集中式仲裁方式,使用独立请求与菊花链查询相结合的二维总线控制结构。每一对请求线BRi和授权线BGi组成一对菊花链查询电路。每一根请求线可以被若干个传输速率接近的设备共享。当这些设备要求传送时通过BRi线向仲裁器发出请求,对应的BGi线则串行查询每个设备,从而确定哪个设备享有总线控制权。请分析说明演示图所示的总线仲裁时序图9.4总线的定时与传送模式【解】从时序图看出,该总线采用异步定时协议。当某个设备请求使用总线时,在该设备所属的请求线上发出申请信号BRi(1)。CPU按优先原则同意后给出授权信号BGi作为回答(2)。BGi链式查询各设备,并上升从设备回答SACK信号证实已收到BGi信号(3)。CPU接到SACK信号后下降BGi作为回答。(4)在总线“忙”标志BBSY为“0”情况该设备上升BBSY,表示该设备获得了总线控制权,成为控制总线的主设备(5)。在设备用完总线后,下降BBSY和SACK(6),释放总线。在上述选择主设备过程中,可能现行的主从设备正在进行传送。此时需等待现行传送结束,即现行主设备下降BBSY信号后(7),新的主设备才能上升BBSY,获得总线控制权。9.4总线的定时与传送模式9.4.2总线的数据传送模式当代的总线标准大都能支持以下四类模式的数据传送:1.读、写操作读操作是由从方到主方的数据传送;写操作是由主方到从方的数据传送。一般,主方先以一个总线周期发出命令和从方地址,经过一定的延时再开始数据传送总线周期。为了提高总线利用率,减少延时损失,主方完成寻址总线周期后可让出总线控制权,以使其他主方完成更紧迫的操作。然后再重新竞争总线,完成数据传送总线周期。2.块传送操作只需给出块的起始地址,然后对固定块长度的数据一个接一个地读出或写入。对于CPU(主方)、存储器(从方)而言的块传送,常称为猝发式传送,其块长一般固定为数据线宽度(存储器字长)的4倍。3.写后读、读修改写操作只给出地址一次,或进行先写后读操作,或进行先读后写操作。前者用于校验目的,后者用于多道程序系统中对共享存储资源的保护。这两种操作和猝发式操作一样,主方掌管总线直到整个操作完成。4.广播、广集操作一般而言,数据传送只在一个主方和一个从方之间进行。但有的总线允许一个主方对多个从方进行写操作,这种操作称为广播。与广播相反的操作称为广集,它将选定的多个从方数据在总线上完成AND或OR操作,用以检测多个中断源。9.5PCI总线与HOST总线9.5.1PCI总线信号下表列出了PCI标准2.0版的必备类信号名称及其功能描述。总线周期类型由C/BE#线上的总线命令给出。总线周期长度由周期类型和FRAME#(帧)、IRDY#(主就绪)、IRDY#(目标就绪)、STOP#(停止)等信号控制。一个总线周期由一个地址期和一个或多个数据期组成。9.5PCI总线与HOST总线9.5.2多总线结构图9.14所示为典型的多总线结构图。9.5PCI总线与HOST总线处理器/cache处理器/cache主存控制器主存HOST/PCI桥HOST总线PCI总线HOST/PCI桥LANSCSIPCI设备PCI设备PCI/LAGACY桥中低速I/O设备LAGACY总线(ISA,EISA,…)图9.14PCI总线典型配置结构框图9.5PCI总线与HOST总线1.HOST总线该总线有CPU总线、系统总线、主存总线等多种名称,各自反映总线功能的一个方面。这里称“宿主”总线,也许更全面,因为HOST总线不仅连接主存,还可以连接多个CPU。2.PCI总线PCI是一个与处理器无关的高速外围总线,又是至关重要的层间总线。它采用同步时序协议和集中式仲裁策略,并具有自动配置能力。3.LAGACY总线可以是ISA,EISA,MCA等这类性能较低的传统总线,以便充分利用市场上丰富的适配器卡,支持中、低速I/O设备。在PCI总线体系结构中有三种桥。桥连接两条总线,使彼此间相互通信。桥又是一个总线转换部件,可以把一条总线的地址空间映射到另一条总线的地址空间上,从而使系统中任意一个总线主设备都能看到同样的一份地址表。PCI总线的基本传输机制是猝发式传送,利用桥可以实现总线间的猝发式传送。写操作时,桥把上层总线的写周期先缓存起来,以后的时间再在下层总线上生成写周期,即延迟写。读操作时,桥可早于上层总线,直接在下层总线上进行预读。无论延迟写和预读,桥的作用可使所有的存取都按CPU的需要出现在总线上。9.5PCI总线与HOST总线9.5.3总线周期类型与操作PCI总线周期由当前被授权的主设备发起。PCI支持任何主设备和从设备之间点到点的对等访问,也支持某些主设备的广播读写。PCI总线周期类型由主设备在C/BE[3-0]线上送出的4位总线命令代码指明,被目标设备译码确认,然后主从双方协调配合完成指定的总线周期操作。4位代码组合可指定16种总线命令,但实际给出12种。9.5PCI总线与HOST总线9.5.4总线仲裁方式PCI总线采用集中式仲裁方式,每个PCI主设备都有独立的REQ#(总线请求)和GNT#(总线授权)两条信号线与中央仲裁器相连。由中央仲裁器根据一定的算法对各主设备的申请进行仲裁,决定把总线使用权授予谁。但PCI标准并没有规定仲裁算法。中央仲裁器不仅采样每个设备的REQ#信号线,而且采样公共的FRAME#和IRDY#信号线。因此,仲裁器清楚当前总线的使用状态:是处于空闲状态还是一个有效的总线周期。PCI总线支持隐藏式仲裁。即在主设备A正在占用总线期间,中央仲裁器根据指定的算法裁决下一次总线的主方应为主设备B时,它可以使GNT#A无效而使GNT#B有效。隐藏式仲裁使裁决过程或在总线空闲期进行或在当前总线周期内进行,提高了总线利用率。一个提出申请并被授权的主设备,应在FRAME#、IRDY#线已释放的条件下尽快开始新的总线周期操作。自FRAME#、IRDY#信号变为无效开始起,16个时钟周期内信号仍不变为有效,中央仲裁器认为被授权的主设备为“死设备”,并收回授权,以后也不再授权给该设备。9.6总线应用案例基于PCI总线的高速实时数据采集系统的设计本节介绍了一种基于PCI总线的高速实时数据采集系统的设计与实现,主要讨论了高速数据采集的存储与传输的硬件解决方案以及该系统的控制逻辑的实现。在现代雷达体制中,数字信号处理技术已经占据了日益重要的地位。由于微电子技术的发展而推动的DSP器件的发展,使在单片或多片DSP中完成诸如正交插值、通道均衡、脉冲压缩、自适应波束形成等雷达信号处理成为现实。但是现在的大多数雷达信号处理机都是采用自定义总线,不具有通用性,每改变一些系统功能就需要大量的硬件改动。作为雷达信号处理的前端,数据采集板是通用雷达信号处理机的不可缺少的一部分。本文就是笔者根据某通用雷达信号处理机的要求而设计的,实践表明,该系统可以有效的解决数据的实时传输和存储问题,为信号的实时处理提供方便。1.数据采集系统的结构和性能在某通用雷达信号处理机中,我们需要对雷达输入信号的I和Q两个通道的信号进行中频采样,采样精度为12位,最高采样频率为20M,数据采集卡采集到的数据要通过PCI总线实时的传输给数字信号处理模块。每路数字信号字长采用16位,两路合并为32位数据通过PCI总线进行传输。根据以上要求,我们采用图9.16的设计方案。系统设计以PCI总线控制器为基础,通过主控写方式将采集到的I、Q两路数据实时传送给数字信号处理板。系统的主要功能模块有:A/D转换模块(AD9042)、PCI总线控制器(PCI9054)、先进先出缓冲(IDT72V3660)、逻辑控制芯片CPLD(EPM7128)。9.6总线应用案例图9.16高速数据采集系统框图9.6总线应用案例2.数据采集系统主要功能模块的实现(1)A/D转换模块A/D转换采用美国AD公司生产的一种高速度、高性能、低功耗的12位模数转换芯片AD9042,它的片内带有跟踪/保持放大器和基准电源,只需单+5V电源即能工作,并能以41MHz的速率提供与CMOS兼容的逻辑数据输出。它的最大采样速率可以达到41MHz,对输入信号,在整个Nyquist频带上典型不失真动态范围为。雷达I、Q两路输入信号进入高速A/D转换芯片AD9042进行模数转换。由于AD9042只能转换一路信号,所以需要两片AD9042同时工作。AD9042正常工作时,在编码输入引脚ENCODE的上升沿触发A/D转换以及数据输出,由于系统需要连续不断的进行A/D转换,所以在ENCODE端采用20MHz的时钟输入信号以连续不断的触发A/D转换以及数据传输。采样系统正常工作以后,AD9042就会在每个ENCODE时钟信号的上升沿输出一个采样数据。电路设计时,AD9042的模拟+5V电源与数字+5V电源应该分开,AVcc的变化不应该超过5%,同时在AD9042数据输出端口串接499Ω的电阻再与后级的FIFO相连接,FIFO为CMOS逻辑兼容器件。9.6总线应用案例(2)PCI总线控制器的实现PCI总线特征和总线定义的逻辑非常复杂,如果用可编程器件来实现PCI总线规范,开发周期长,并且接口的兼容性不好。因此,我们采用PLX公司生产的专用PCI接口芯片PCI9054来完成PCI接口的逻辑功能实现。PCI9054是PLX公司的一种功能强大、使用灵活的PCI/CPCI系统总线的桥接芯片。其主要特性如下:支持32位数据、33MHz速率的PCI总线,符合V2.1和V2.2版的PCI规范。包括两个独立的DMA通道,支持局部总线与PCI主机总线间的相互数据传输,可设置的主从数据传输模式,及PCI的消息传递功能。PCI9054提供PCI总线接口、局部总线接口和外部配置存储器接口。局部总线有三种工作模式:M模式、C模式和J模式。本地总线的速率高达50MHz,且本地总线的时钟可以由外部提供,该时钟可以与PCI时钟异步。本系统采用PCI9054的主模式传送,当FIFO的半满标志位(/HF)有效时,启动PCI9054的主控写,把数据从FIFO由PCI总线传送到信号处理板。数据传送时,局部总线控制逻辑(CPLD)应驱动地址总线、数据总线、读写信号线及地址选通信号,控制PCI局部总线的数据传输。PCI9054会直接将数据存入其内部主控写FIFO,随后PCI9054会向CPCI/PCI系统申请PCI总线控制权,在得到总线控制权后,根据映射地址自行完成本次写操作。局部总线控制器只需将数据写入PCI9054内部FIFO,其后的操作不需要CPLD的参与。(3)先进先出缓冲(FIFO)由于PCI9054内部的FIFO只有32级深度,实时传送高速数据时,PCI9054的内部FIFO会很快存满,而外界的数据仍会源源不断的传送过来,可能会造成数据的丢失,因此必须要扩展外部FIFO;(4)采集控制芯片(CPLD)控制逻辑包括数据采集控制逻辑、FIFO控制逻辑和PCI接口控制逻辑三部分。我们采用Altera公司的EPM7128来实现系统的逻辑控制,并利用MaxPlusII软件进行设计、仿真和调试。实验表明,EPM7128完全可以满足系统的设计要求,大大提高了系统控制电路的集成度。3.数据采集系统控制和CPLD设计CPLD对数据采集系统的控制包括对采集芯片AD9042的控制、对FIFO的控制以及对PCI接口芯片PCI9054的控制。其中,对PCI9054的逻辑控制是设计的重点。9.6总线应用案例图9.18CPLD控制逻辑流程图在CPLD的协调控制下,PCI9054与FIFO之间就可以以40MHZ的频率进行数据突发传送。数据首先进入PCI9054的内部32级的主模式写FIFO,然后通过PCI总线传送到信号处理模块。突发传输以一帧为单位,一帧传送2048长字,CPLD内部设置计数器,如果计数达到2048以后,就主动向PCI9054发送突发中止信号(/BTERM),以中止本次突发传送。在突发传送过程中,如果CPLD检测到突发中止信号(/BTERM)有效,表示PCI9054主动中止本次突发传送,则CPLD控制逻辑应该使FIFO读允许信号(/REN)无效,停止本次突发数据传送。同时,不停的检测PCI9054的准备好信号(/READY),如果准备好信号有效,则重新发送地址选通信号(/ADS)和地址信号,继续本一帧数据的突发传送。CPLD内部应该设置传送计数器,能够准确的计算出被PCI9054打断以后继续传输的地址。一帧数据传送结束以后,就重新等待FIFO的半满信号(/HF),以启动下一帧的数据传送。本系统应用于某通用雷达信号处理机中,是该雷达信号处理机的重要组成部分。在前端对数据处理之后,在定时时钟的驱动下,对信号进行实时A/D转换,然后,利用PCI总线的高速传送特性,把采集数据送入信号处理模块,进行后续的数字信号处理。工程实践证明,该系统能够可靠的工作,为后续信号处理提供有效的数据。9.6总线应用案例本章小结总线是构成计算机系统的互连机构,是多个系统功能部件之间进行数据传送的公共通道,并在争用资源的基础上进行工作。总线有物理特性、功能特性、电气特性、机械特性,因此必须标准化。微型计算机系统的标准总线从SA总线(16位,带宽8M

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论