文章目录
- 一.总线概述
- (一)总线特性
- (二)总线分类
- 1.按功能分/按连接的部件分
- (1)片内总线/CPU内部总线
- (2)系统总线
- (3)通信总线/外部总线
- 2.按数据传输格式分
- (1)串行总线
- (2)并行总线
- 3.按时序控制方式分
- (1)同步总线
- (2)异步总线
- (三)系统总线的结构
- 1.单总线结构
- 2.双总线结构
- 3.三总线结构
- 4.四总线结构
- (四)总线的性能指标
- 1.总线的传输周期/总线周期
- 2.总线时钟周期
- 3.总线的工作频率
- 4.总线的时钟频率
- 5.总线宽度/总线位宽
- 6.总线带宽
- 7.总线复用
- 8.信号线数
- 二.总线的操作和定时
- (一)总线传输阶段
- 1.申请分配阶段
- 2.寻址阶段
- 3.传输阶段
- 4.结束阶段
- (二)总线定时
- 1.同步定时方式/同步通信
- 2.异步定时方式/异步通信
- (1)不互锁方式
- (2)半互锁方式
- (3)全互锁方式
- 3.半同步通信
- 4.分离式通信
一.总线概述
总线是一组能为多个部件分时共享的公共信息传送线路。
分时:同一时刻只允许有一个部件向总线发送信息,若系统中有多个部件,则它们只能分时地向总线发送信息
共享:总线上可以挂接多个部件,各个部件之间互相交换的信息都可通过这组线路分时共享,多个部件可同时从总线上接收相同的信息
(一)总线特性
1.机械特性:尺寸、形状
2.电气特性:传输方向和有效的电平范围
3.功能特性:每根传输线的功能
4.时间特性:信号和时序关系
(二)总线分类
1.按功能分/按连接的部件分
(1)片内总线/CPU内部总线
CPU内部寄存器之间、寄存器与ALU之间的公共连接线
(2)系统总线
连接CPU、主存、I/O接口之间的总线,即连接各功能部件之间的总线
①数据总线DB
传输指令和操作数,是双向传输的。若数据总线的位数=机器字长,则CPU通过一次数据读入即可取得CPU可以处理的数据量;若数据总线的位数=存储字长,则每次主存读/写只需要用数据总线传输一次数据;若数据总线的位数=存储字长的一半,则取出一个存储字需要用数据总线传输两次数据
- 机器字长
计算机进行一次整数运算所能处理的二进制数据位数 - 存储字长
主存中的存储体存放二进制信息。存储体由许多存储单元组成,每个存储单元包含若干存储元件,每个存储元件存储一位二进制代码。因此存储单元可存储一串二进制代码,这串代码称为存储字。这串代码的位数称为存储字长。
②地址总线AB
通过地址总线发出地址信号,指明要访问主存单元的地址,指明访问哪个输入输出设备。
地址总线位数(根数)与主存地址空间大小及设备数量有关。若主存和I/O设备采用统一编址,随着设备数的增多,地址总线的位数也需要增加。
地址总线的传输方向是单向,由CPU向主存或I/O设备指明要访问的是哪个地址或设备
③控制总线CB
一根控制线传输一个信号。对单根控制线来说传输方向单向,对整个控制总线来说是双向的。可由CPU发出控制命令,也可由主存或外设返回CPU的反馈信号
(3)通信总线/外部总线
计算机系统或计算机与其他系统之间传送信息的总线
2.按数据传输格式分
(1)串行总线
设备A每次只能给设备B发送1bit。如USB
优点:只需要一条传输线,成本低廉,抗干扰能力强,广泛应用于长距离传输;应用于计算机内部时,可以节省布线空间
缺点:在数据发送和接收的时候要进行拆卸和装配,要考虑串行-并行转换的问题
(2)并行总线
设备A每次只能给设备B发送多个比特
优点:总线的逻辑时序比较简单,电路实现起来比较容易
缺点:信号线数量多,占用更多的布线空间;远距离传输成本高;由于工作频率较高时,并行的信号线之间会产生严重干扰,对每条线等长的要求也越高,所以无法持续提升工作频率。
3.按时序控制方式分
(1)同步总线
指互联的部件或设备均通过统一的时钟进行同步,即所有的互联的部件或设备都必须使用同一个时钟(同步时钟),在规定的时钟节拍内进行规定的总线操作,来完成部件或设备之间的信息交换。
(2)异步总线
指没有统一的时钟而依靠各部件或设备内部定时操作,所有部件或设备是以信号握手的方式进行,即发送设备和接受设备使用请求和确认信号来协调动作,总线操作时序不是固定的。因此,异步总线能兼容多种不同的设备,而且不必担心时钟变形或同步问题使得总线长度不受限制。如火线协议和USB2.0协议都是异步总线协议
(三)系统总线的结构
1.单总线结构
将CPU、主存、I/O设备(通过I/O接口)都挂在一组(包含数据地址控制的总线)总线上
优点:结构简单,成本低,易于接入新的设备
缺点:带宽低、负载重,多个部件只能争用唯一的总线,且不支持并行传送操作
2.双总线结构
两条总线:主存总线和I/O总线
优点:将较低速的I/O设备从单总线上分离出来,实现存储器总线和I/O总线分离
缺点:需要增加通道等硬件设备
引入通道,类似于一个小型CPU,专门管理I/O设备,解决了I/O设备和CPU速度不匹配的问题。通道程序放在主存中,通道运行通道程序时同样需要通过主存总线。
回顾操作系统:
通道是独立于CPU的,控制输入/输出的设备。CPU、通道、I/O设备可并行工作,资源利用率很高。
①CPU向通道发出I/O指令。为通道指明通道程序(即任务清单。指明了要读入/写出多少数据,读/写的数据应放在内存的什么位置等信息)在内存中的位置,并指明要操作的是哪个I/O设备,之后CPU就切换到其他进程执行了
②通道执行内存中的通道程序
③通道执行完规定的任务后,向CPU发出中断信号,之后CPU对中断进行处理
主存总线支持突发传送(猝发传输):CPU指明一个地址,可以从主存中读出多个地址连续的数据,以此来提升效率
3.三总线结构
主存总线、I/O总线、直接内存访问DMA总线
(1)主存总线:CPU和内存传送地址、数据、控制信息
(2)I/O总线:CPU和外设通信
(3)DMA总线:内存和高速外设之间直接传送数据
优点:提高了I/O设备的性能,使其更快地响应命令,提高系统吞吐量
缺点:系统工作效率较低(三个总线不能同时工作)
回顾操作系统
DMA:数据传输以“块”为单位,CPU介入频率低,仅在传送一个或多个数据块的开始和结束时才需要CPU干预,CPU和I/O的并行性得到提升
4.四总线结构
CPU总线、系统总线、高速总线、扩充总线。越靠近CPU的总线速度越快
桥接器:用于连接不同的总线,具有数据缓冲、转换和控制功能,例如可以将串行输入的数据并行输出
(四)总线的性能指标
1.总线的传输周期/总线周期
指一次总线操作所需的时间。包括申请阶段(总线仲裁)+ 寻址阶段(主设备通过地址总线将想要读/写的地址单元传递给从设备)+ 传输阶段(通过数据总线往从设备中写入数据/读出数据)+ 结束阶段(释放总线使用权)
主设备:获得总线控制权的设备
从设备:被主设备访问的设备,它只能响应从主设备发来的各种总线命令(在分离式通信中,从模块可以主动申请总线的控制权)
2.总线时钟周期
总线时钟周期=机器的时钟周期,但现代计算机中总线的时钟周期可能由桥接器决定
总线传输周期和总线时钟周期可能是1对多、多对1、1对1的关系
回顾:一个机器周期包含若干时钟周期/节拍/T周期/CPU时钟周期,时钟周期是CPU操作的最基本单位
3.总线的工作频率
总线的工作频率=1/总线周期=1秒内传送数据的次数
4.总线的时钟频率
总线的时钟频率=1/时钟周期=机器的时钟频率=1秒内的时钟周期数
5.总线宽度/总线位宽
指总线上能够同时传输的数据位数,也是数据总线的根数
6.总线带宽
指总线本身所能达到的最高传输速率,即单位时间内总线上可传输数据的位数,单位bit/s、B/s
总线带宽=总线工作频率×总线宽度=总线宽度/总线周期
7.总线复用
一种信号线在不同的时间传输不同的信息。如用一组线分时的当做数据总线和地址总线。节约成本,速度降低。
8.信号线数
信号线数=地址总线数+数据总线数+控制总线数
二.总线的操作和定时
(一)总线传输阶段
1.申请分配阶段
由需要使用总线的主模块/主设备提出申请,经总线仲裁机构决定将下一传输周期的总线使用权授予某一申请者。可细分为传输请求和总线仲裁两个阶段。
2.寻址阶段
取得使用权的主模块通过总线发出本次要访问的从模块/从设备的地址及有关命令,启动参与本次传输的从模块。
3.传输阶段
主模块和从模块进行数据交换,可单向或双向进行数据传送。
4.结束阶段
主模块的有关信息均从系统总线上擦除,让出总线使用权
(二)总线定时
总线在双方交换数据的过程中需要时间上配合关系的控制,这种控制称为总线定时,它的实质是一种协议或规则。
1.同步定时方式/同步通信
系统采用一个统一的时钟信号来协调发送和接收双方的传送定时关系。同步通信适用于总线长度较短及总线所接部件的存取时间比较接近的系统。
优点:传送速度快,总线控制逻辑简单
缺点:主从设备属于强制性同步;不能及时进行数据通信的有效性检验,可靠性差
所有人都要跟上节奏
2.异步定时方式/异步通信
没有统一的时钟,双方通过握手信号实现定时控制。主设备提出交换信息的请求,经接口传送到从设备,从设备通过接口向主设备回答信号
优点:总线周期长度可变,能保证两个工作速度相差很大的部件或设备之间可靠地进行信息交换,自动适应时间的配合
缺点:复杂,速度慢
根据请求和回答信号的撤销是否互锁,异步定时方式可分为以下三类
(1)不互锁方式
主设备请求,不必等到从设备回答。主设备请求一段时间后撤回请求信号,从设备回答一段时间后撤回回答信号(互不等)
速度快,可靠性差
(2)半互锁方式
主设备请求,在收到回答后才能撤销请求。从设备发出回答一段时间后,即可撤销回答(主等从)
(3)全互锁方式
主设备请求,在收到回答后才能撤销请求。从设备发出回答,在确定主设备请求信号已撤销后,才能撤回回答信号(互等)
速度慢,可靠性高
3.半同步通信
同步异步结合,在同步的基础上增加反馈信号WAIT,跟不上节奏的时候WAIT一下
支持速度差异大的主从设备数据交互。
半同步通信总线既保留了同步通信的特点,又能采用异步应答方式连接速度相差较大的设备。通过在异步总线中引入时钟信号,其就绪和应答等信号都在时钟的上升沿或下降沿有效,而不受其他时间的信号干扰。
例如,某个采用半同步方式的总线总是从某个时钟开始,在每个时钟到来时,采样Wait信号,若无效,则说明数据未准备好,下个时钟到来时,再采样Wait信号,直到检测到有效,再去数据线上取数据。
PCI总线也是一种半同步总线,它的所有事件都在时钟下降沿同步,总线设备在时钟开始的上升沿采样总线信号。
4.分离式通信
充分挖掘系统总线每瞬间的潜力
从设备在准备数据到发送回答信号前,不需要使用总线,为了更加充分利用,将总线传输周期分为两个子周期,总线空闲时其他设备均可使用。
①子周期1:主模块申请占用总线,使用完后放弃总线的使用权
②子周期2:从模块准备好数据后再申请占用总线,将各种信息送至总线上
特点:
(1)在分离式通信中,从模块也应该可以主动申请总线的控制权
(2)分离式通信采用同步方式通信,互不等待
(3)准备数据时不能占用总线
(4)总线利用率有所提高
- 引入总线结构有什么好处?
①简化了系统结构,便于系统设计制造
②大大减少了连线数目,便于布线,减小体积,提高系统的可靠性
③便于接口设计,所有与总线连接的设备均采用类似的接口
④便于系统的扩充、更新与灵活配置,易干实现系统的模块化
⑤便于设备的软件设计,所有接口的软件对不同的接口地址进行操作
⑥便于故障诊断和维修,同时也能降低成本 - 系统总线按照传输信息的不同,可以分成哪几类?是单向的,还是双向的?
可以分成数据总线、地址总线以及控制总线。
①数据总线:各个功能部件之间传送数据信息,双向传输
②地址总线:用来指明数据总线上,源数据或目的数据所在的主存单元的地址。单向:由CPU发出
③控制总线:用来发送各种控制信号。对于控制总线中的单根线,是单向的,即只能由一个部件发向另一个部件。而一组控制总线中,有输入也有输出。因此,控制总线也可以看成是双向的。 - 什么是总线宽度、总线带宽、总线复用、信号线数?
①总线宽度:总线上能够同时传输的数据位数,也是数据总线的根数,一般是8的倍数。是衡量计算机系统性能的重要指标
②总线带宽:总线本身所能达到的最高传输速率,即单位时间内总线上可传输数据的位数
③总线复用:一条信号线上分时传送两种信号。例如数据总线和地址总线的分时复用
④信号线数:地址总线、数据总线和控制总线三种总线的线数之和 - 什么是总线?总线传输有何特点?为了减轻总线负载,总线上的部件应具备什么特点?
①总线是多个部件共享的传输部件(总线是连接多个部件的信息传输线,是各部件共享的传输介质。)
②特点:某一时刻只能有一路信息在总线上传输,即分时使用
③为了减轻总线负载,总线上的部件应通过三态驱动缓冲电路与总线连通 - 总线如何分类?
- 什么是系统总线?系统总线又分为几类,它们各有何作用,是单向的还是双向的,它们与机器字长、存储字长、存储单元有何关系?
①系统总线是指CPU、主存、I/O设备(通过I/O接口)各大部件之间的信息传输线
②系统总线可分为数据总线、地址总线、控制总线
③数据总线:用来传输各功能部件之间的数据信息,是双向传输总线,其位数与机器字长、存储字长有关,一般为8位、16位或32位。如果数据总线的宽度为8位,指令字长为16位,那么CPU在取指阶段必须两次访问主存;
地址总线:主要用来指出数据总线上的源数据或目的数据在主存单元的地址或I/O设备的地址,单向传输。其位数与存储单元的个数有关。若地址线为20根,则对应的存储单元个数为20;
控制总线:用来发出各种控制信号的传输线,单向传输 - 一个总线在某一时刻可以有多对主从设备进行通信吗?
不可以。在某个总线周期内,总线上只有一个主设备控制总线,选择一个从设备与之进行通信(即一对一的关系),或对所有设备进行广播通信(即一对多的关系)。所以一个总线在某一时刻不能有多对主从设备进行通信,否则会发生数据冲突。