连接计算机系统各个功能部件的信息传输线。是各个部件共享数据及信息的传输介质,用来连接计算机系统各功能部件而构成一个完整系统。
实际上是一组信号线。
广义地讲,任何连接两个以上电子元器件的导线都可以称为总线。
各部件之间使用单独的连线连接起来,数量庞大,系统难以扩展,结构复杂。
将各部件连接到一组公共信息传输线上。
总线实际上是由许多传输线或通路组成的,每条线可一位一位地传输二进制代码,一串二进制代码可在一段时间内逐一传输完成。若干条传输线可以同时传输若干位二进制代码。
串行:每条线一位接一位的传输二进制代码,一串二进制代码可在一段时间内逐一传输完成。
并行:若干条传输线可以同时传输若干位二进制代码,如,16条传输线组成的总线可同时传输16位二进制代码。
总线是连接多个部件的信息传输线,是各部件共享的传输介质。
在某一时刻,只允许有一个部件向总线发送信息,而多个部件可以同时从总线上接收相同的信息。
总线由总线控制器管理,总线控制器的主要功能有总线系统的资源管理、总线系统的定时及总线的仲裁和连接。
单总线结构将 CPU、主存、I/O 设备(通过 I/O 接口)都挂到一组总线上,允许 I/O 设备之间、I/O 设备与主存之间直接交换信息。
特点:
I/O设备与内存交换信息时,需要占用CPU,因此会影响CPU的工作效率。
特点:
保留了内存与I/O设备间传输信息不经过CPU的特点,既提高了内存与I/O设备间的传输速率,减轻了系统总线的负担。
现代计算机系统大多采用此类总线结构。
用于集成电路芯片内部各部分的连接。
如CPU内部寄存器与寄存器之间、寄存器与算术逻辑单元ALU之间都由片内总线连接。
用于计算机各组成部分(CPU、内存、I\O接口等)之间的信息传输。
CPU通过系统总线对存储器的内容进行读写,同样经过系统总线,实现将CPU内数据写入外设,或由外设读入CPU。
用于一块电路板内各元器件的连接。
用于计算机与外设或计算机与计算机之间的连接或通信。
所传输的信息 | 传输方向 | 说明 | |
数据总线 | 传输各功能部件之间的数据信息。 | 双向传输 | 其位数称为数据总线宽度,与机器字长、存储字长有关,一般为 8 位、16 位或 32 位。 |
地址总线 |
用于指出数据总线上的源数据或目的数据在主存单元的地址或 I/O设备的地址, 也就是说地址总线上的代码用来指明 CPU 欲访问的存储单元或I/O端口的地址。 |
由CPU输出,单向传输。 |
地址总线的位数与存储单元的个数有关,如地址线为 20 根,则对应的存储单元个数为 220个。 |
控制总线 | 用于发出各种控制信号,控制各部件动作。 |
通常对任一控制线而言,它的传输是单向的,如存储器读/写命令都是由 CPU 发出的; 但对控制总线总体而言,又可认为是双向的, 如当某设备准备就绪时,便可通过控制总线向 CPU 发送中断请求。 |
常用的控制信号有: 时钟:同来同步各种操作。 复位:初始化所有部件。 总线请求:表示某部件需获得总线使用权。 总线允许:表示需要获得总线使用权的部件已获得了控制权。 中断请求:表示某部件提出中断请求。 中断响应:表示终端请求已被接收。 主存读/写、I/O 读写和传输响应等。 |
是指数据总线的根数,用 bit(位)表示,如 8 位(8 根)、16 位(16根)、32 位(32 根)、64 位(64 根)等。
可理解为总线的数据传输率,即单位时间内总线上传输数据的位数,通常用每秒传输信息的字节数来衡量,单位可用 MB/s(兆字节每秒)表示。
总线带宽 = 总线工作频率×(总线宽度/8),如总线工作频率为33MHz,总线宽度为 16 位,则总线带宽 = 33×(16÷8)=66MB/s。
总线上各种操作的频率,等于总线周期的倒数,即总线工作频率=1/总线周期。实际上是指一秒钟内传输几次数据。
是指一次总线操作所需的时间(包括申请阶段、寻址阶段、传送阶段和结束阶段)。
总线周期通常由若干个总线时钟周期构成。而总线时钟周期就是机器的时钟周期。
指机器的时钟频率,总线时钟频率=1/总线时钟周期。
总线上的数据与时钟同步工作的总线称为同步总线,与时钟不同步工作的总线称为异步总线。
一条信号线上分时传送两种信号称为总线复用。
例如,在一组物理线路上可分时传输地址信号和数据信号。
地址总线、数据总线和控制总线三种总线数的总和称为信号线数。
总线控制方式有突发工作、自动配置、仲裁方式、逻辑方式和计数方式等。
Example-1:
设某系统总线在一个总线周期中并行传送 6 字节信息,总线时钟频率为20MHz,一个总线周期占用 2 个时钟周期,求该总线带宽。
解:
总线时钟频率为 20MHz,一个总线周期占用 2 个时钟周期;
所以总线工作频率=20MHz/2=10MHz,总线的宽度=6×8 位;
所以总线带宽=总线工作频率×(总线宽度/8)=10MHz×6B=60MB/s。
信息以串行方式传送时,只有一条传输线,且采用脉冲传送,即数据 0 或 1 按位顺序传送(以脉冲信号“有或无”的形式传送),每拍(次)传一位。
其特点是线路成本低,传送速度慢。适用场合:主机与低速外设间的传送、远距离通信总线的数据传送、系统之间的数据传送。
串行传输信息的速率通常用波特率和比特率来表示。
每秒钟传送的数据位数。
每秒钟传送的有效数据位数。
Example-1:
利用串行方式传送字符,假设数据传送速率是 120 个字符/秒,每一个字符格式规定包含 10 个数据位(起始位、停止位、8 个数据位),问传送的波特率是多少?每个数据位占用的时间是多少?比特率又是多少?
解:
波特率=10 位×120/秒=1200。
每个数据位占用的时间 Td是波特率的倒数,所以 Td=1/1200=0.833×10-3s=0.833ms。
每个字符对应的 10 个数据位中只有 8 个有效数据位。
所以比特率=8 位×120/秒=960。
利用并行方式传输二进制信息时,每位数据都需要单独一条传输线,从而使得多位二进制数码在同一时刻同时进行传送。
并行传输一般采用电位传送。由于所有的位同时被传送,所以并行数据传送比串行数据传送快得多。
特点是线路成本高,传送速度快。适用场合:短距离的高速数据传输。
在不同的时间间隔中,总线可以分别完成传送地址和传送数据的任务,或者当多部件共享总线时,各部件根据控制命令,分时使用总线来完成自己的数据传送任务。也就是说,复合传输方式有两个概念:
所谓总线标准,可视为系统与各模块、模块与模块之间的一个互连的标准界面。这个界面两端的任一方只须根据总线标准的要求完成自身接口的功能要求,而无须了解对方接口与总线的连接要求。因此,按总线标准设计的接口可视为通用接口。制定总线标准的目的是便于灵活组成系统。
常用的总线标准如下。
ISA(Industry Standard Architecture,工业标准体系结构),又称 AT 总线。
ISA总线是具有开放式结构的总线。ISA总线为62+36线,数据线16,地址线14。采用 24 位地址线(可直接寻址的内存容量为 16MB),没有支持仲裁的硬件逻辑,不能支持多台主设备系统。ISA 属系统总线标准。
EISA(Extended IndustryStandard Architecture,扩展工业标准体系结构是一种在 ISA基础上扩充开放的总线标准。支持多个总线主控器和突发方式(总线上可进行成块的数据传输)的传输。地址总线为 32 位,数据总线为 32 位,属于系统总线标准。
VESA 总线是由 VESA(Video Electronic Standard Association,视频电子标准协会)提出来的局部总线标准,也称为 VL-BUS 总线。所谓局部总线,是指在系统外为两个以上设备提供的高速传输信息通道,VESA配有局部控制器,将高速设备直接挂在 CPU 的总线上,实现CPU 与高速外设之间的高速数据交换。数据总线为 32 位,属于系统总线标准。
PCI(Peripheral Component Interconnect),即外部设备互连总线,它提供 32/64 位数据总线,总线时钟频率为 33MHz。与 ISA、EISA 均可兼容,支持即插即用、多层结构,提供数据和地址奇偶校验功能。采用同步时序协议和集中式仲裁方式,属于系统总线标准。
PCI Express 总线是一种完全不同于过去 PCI 总线的一种全新总线规范,与 PCI 总线共享并行架构相比,PCI Express 总线是一种点对点串行连接的设备连接方式,点对点意味着每一个 PCI Express 设备都拥有自己独立的数据连接,各个设备之间并发的数据传输互不影响,而对于过去 PCI 那种共享总线方式,PCI 总线上只能有一个设备进行通信,一旦 PCI总线上挂接的设备增多,每个设备的实际传输速率就会下降,性能得不到保证。现在,PCI Express 以点对点的方式处理通信,每个设备在要求传输数据的时候各自建立自己的传输通道,对于其他设备而言这个通道是封闭的,这样的操作保证了通道的专有性,从而避免其他设备的干扰。
AGP(Accelerated GraphicsPort,加速图形接口)是专为提高视频带宽而设计的总线规范。它采用点对点连接,连接控制芯片组和 AGP 显示卡,因此严格来说 AGP 不能称为总线,而是一种接口标准。AGP 属于设备总线标准。
RS-232C(Recommended Standard,232 为标识号,C 表示修改次数)是由美国电子工业协会 EIA 提出的一种串行通信总线标准,它是应用于串行二进制交换的数据终端设备和数据通信设备之间的标准接口。RS-232C 属于设备总线标准。
SCSI(Small Computer SystemInterface,小型计算机系统接口)总线主要用于光驱、音频设备、扫描仪、打印机以及像硬盘驱动器这样的大容量存储设备等的连接,是一种直接连接外设的并行 I/O 总线,属于设备总线标准。
USB(Universal Serial Bus——通用串行总线)是一种连接外围设备的 I/O 总线,属于设备总线标准。USB 由 Intel 公司提出,带宽为 12Mbps,与传统接口总线相比,主要优点有三个:①具有即插即用功能(USB 提供机箱外的即插即用连接,连接外设时不必再打开机箱,也不必关闭主机电源);②USB采用“级联”方式连接各个外部设备(每个 USB 设备用一个USB 插头连接到前一个外设的 USB 插座上,而其本身又提供一个 USB 插座,以供下一个 USB 外设连接,可连接多达 127 个外设,两个外设间的线缆长度可达 5 米);③适用于低速外设连接(USB 的传送速度可达 12Mb/s,可与键盘、鼠标、Modem 等常见外设连接,还可以与 ISDN、电话系统、数字音响、打印机/扫描仪等低速外设连接)。
在 USB 总线上,数据的传送是以帧(Frame)为单位进行的,即发送方需要按照一定的格式对要传送的数据进行组织;接收方按照同样的格式来接收和理解帧。
总线上所连接的各类设备(部件,CPU、I/O设备,内存等),按其对总线有无控制功能可分为主设备和从设备。
主设备是指获得总线控制权的设备,它对总线有控制权;
从设备是指被主设备访问的设备,它对总线没有控制权,只能响应从主设备发来的总线命令。
总线上信息的传输是由主设备启动的,如某个主设备要与另一个设备(从设备)进行通信时,首先由主设备发出总线请求信号,若多个主设备同时要使用总线时,为保证在同一时间内只能有一个设备获得总线使用权,需要设置总线判优控制机构。
总线判优控制机构按照申请者的优先权,决定哪个总线主控设备将在下次得到总线使用权的过程称为总线裁决(仲裁)。
只有获得了总线使用权的设备或部件,才能开始数据传送。
总线裁决方式可以分为集中式裁决和分布式裁决两种。
集中式裁决方式是将控制逻辑做在一个专门的总线控制器或总线裁决器中,将所有的总线请求集中起来,利用一个特定的裁决算法进行裁决。
集中裁决方式有三种:链式查询方式、计数器定时查询方式和独立请求方式。
链式查询方式也称菊花链方式,如图所示。设备的优先级由主设备在总线上的位置来决定,离总线控制器最近的设备具有最高的优先级,要求拥有总线使用权的高优先级设备简单地拦截总线允许信号,不让更低级的设备收到该信号。
此方案比菊花链查询方式多了一组设备线,少了一根总线允许线 BG,如图所示。
总线请求的设备号与计数值一致时,该设备便获得总线使用权,此时终止计数查询,同时该设备建立总线忙 BS 信号。
设备的优先级通过设置不同的计数初始值来改变:
计数总是从 0 开始,此时设备的优先次序是固定的。
计数的初值总是上次得到控制权设备的设备号,那么所有设备的优先级是相等的,是循环优先级方式。
每个设备都有一对总线请求线 BRi和总线允许线 BGi,如图所示。
这种方案使用一个中心裁决器从请求总线的一组设备中选择一个。总线控制器可以给各个请求线一个固定的优先级,也可以设置可编程的优先级。裁决算法由硬件来实现,可采用固定的并行判优算法、平等的循环菊花链算法、动态优先级算法(如最近最少用算法、先来先服务算法)等。
分布式仲裁是每个潜在的主模块都有自己的仲裁号和仲裁器,不需要中央仲裁器。当它们有总线请求时,把它们唯一的仲裁号发到共享的仲裁总线上,以优先级策略为基础,获胜者的仲裁号保留在仲裁线上。如图所示。
分布式的裁决方式,没有专门的总线控制器,其控制逻辑分散在各个部件或设备中。
通常将完成一次总线操作的时间称为总线周期,可分为以下 4 个阶段:
① 申请分配阶段。由需要使用总线的主模块(或主设备)向总线仲裁机构提出总线使用申请,总线仲裁机构决定下一传输周期的总线使用权并将其授予某一申请者。
② 寻址阶段。拥有总线使用权的主模块发出本次要访问的从模块(或从设备)的地址及有关命令,该从模块被选中并启动。
③ 数据传送阶段。主模块和从模块间使用数据总线进行双(单)向数据传送。
④ 结束阶段。主、从模块均撤出总线,让出总线使用权。
总线通信控制方式通常有同步通信、异步通信、半同步通信和分离式通信四种。
总线上的部件通过总线进行信息传送时,用一个由CPU 的总线控制部件发出的公共的时钟信号进行同步,这种方式称为同步通信。由于采用统一的时钟,每个部件或设备发送信息或接收信息都在固定的总线传送周期中,一个总线传送周期结束,开始下一个总线传送周期。
同步通信方式的优缺点如下。
☆ 优点:具有较高的数据传输速率,总线控制逻辑也比较简单;同步通信适用于总线长度短、各部件存取时间比较接近的情况。
☆ 缺点:主、从设备时间配合属于强制性“同步”,不能及时进行数据通信的有效性检验。
在异步通信方式中利用数据发送部件和数据接收部件之间的相互“握手”信号(应答方式)来实现数据传送,即当主设备发出请求信号时,一直等到从从设备反馈回来的响应信号后才开始通信,所以主、从设备之间增加两条应答线。
异步通信的应答方式又分为以下三种类型:
☆ 不互锁方式。主设备发请求后,间隔固定时间,认为从设备已经收到,不必等待接到从设备的回答信号而可撤销其请求信号;从设备发回答后,间隔固定时间,认为主设备也收到回答信号,便自动撤销回答信号。如图 9.8(a)所示。
☆ 半互锁方式。主设备发请求后,等待从设备的回答,必须在接到从设备的回答信号后才撤销其请求信号;从设备发回答后,则不必获知主设备的请求信号已经撤销,而是隔一段时间后自动撤销其回答信号。如图 9.8(b)所示。
☆ 全互锁方式。主从设备相互等待,即主设备发出请求信号后,必须等待从设备回答后再撤销其请求信号,从设备发出回答信号,必须待获知主设备请求信号已撤销后,再撤销其回答信号。双方存在互锁关系。如图 9.8(c)所示。
异步通信方式的优缺点如下。
☆ 优点:便于实现不同传输速率部件之间的数据传送,而且对总线长度也没有严格要求,还能实现数据的有效性检验。
☆ 缺点:速度一般不如同步通信方式高,而且总线控制逻辑也相对复杂一些。
半同步通信方式既保留了同步通信的基本特点,如所有的地址、命令、数据信号的发出时间,都严格参照系统时钟的某个前沿开始,而接收方都采用系统时钟后沿时刻来进行判断识别;同时又像异步通信那样,允许不同速度的设备和谐地工作。为此增设一条等待响应信号线,采用插入时钟(等待)周期的措施来协调通信双方的配合问题。
半同步通信方式的优缺点如下。
☆ 优点:比异步通信简单,在全系统内各模块又在统一的系统时钟控制下同步工作,可靠性较高。
☆ 缺点:从整体上看,系统工作的速度还不是很高。
其基本思想是将一个传输周期(或总线周期)分解为两个子周期。
在第一个子周期中,主模块 A 在获得总线使用权后将命令、地址以及其他有关信息,包括主模块编号(当有多个主模块时,此编号尤为重要)发到系统总线上,经过总线传输后,由有关的从模块 B 接收下来。主模块 A 向系统总线发布这些信息只占用总线很短的时间,一旦发送完成,立即放弃总线使用权,以便其他模块使用。在第二个子周期中,当 B 模块接收到 A 模块发来的有关命令信号后,经过选择、译码、读取等一系列内部操作,将 A 模块所需的数据准备好,便由 B 模块申请总线使用权,一旦获准,B 模块便将 A 模块的编号、B 模块的地址、A 模块所需的数据等一系列信息送到总线上,供 A 模块接收。很显然,上述两个子周期都只有单方向的信息流,每个模块都变成了主模块。
原文:https://www.cnblogs.com/victoryluyun/p/11094243.html