第 6 章 总线
内容
- 总线的基本概念
- 总线的组成及性能指标
- 总线事务和定时
6.1. 总线概述
6.1.1. 基本概念
1. 定义
总线是一组能为多个部件分时共享的公共信息传送线路。
特点
- 分时
- 同一时刻只允许一个部件向总线发送信息,如果系统中有多个部件,它们只能分时向总线发送信息
- 共享
- 总线上可以挂接多个组件,各个部件之间互相交换信息都可通过这组线路分时共享,多个部件可同时从总线上接收相同的信息
2. 总线设备
- 主设备:获得总线控制权的设备
- 从设备:被主设备访问的设备,只能响应从主设备发来的各种总线命令
3. 特性
- 机械特性:尺寸、形状
- 电气特性:传输方向和有效的电平范围
- 功能特性:每根传输线的功能
- 时间特性:信号和时序的关系
6.1.2. 分类
1. 片内总线
芯片内部的总线,是 CPU 芯片内部寄存器与寄存器之间、寄存器与 ALU 之间的公共连接线
2. 系统总线
及选举系统内各功能部件( CPU、主存I/O 接口)之间互相连接的总线。
- 数据总线
- 用来传输各功能部件之间的数据信息,是双向传输总线,位数与机器字长、存储字长有关
- 地址总线
- 用来指出数据总线上的源数据或目的数据所在的主存单元或 I/O 端口的地址,是单向传输总线,位数与主存地址空间的大小有关
- 控制总线
- 传输控制信息,包括 CPU 送出的控制命令和主存(或外设)返回 CPU 的反馈信号
各个功能部件通过数据总线连接形成的数据传输路径称为数据通路。数据通路表示的是数据流经的路径,二数据总线是承载的媒介
3. I/O 总线
主要用于链接中低速的 I/O 设备,通过 I/O 接口与系统总线相链接,目的是将低速设备与高速总线分离,以提升总线的系统性能,常见有 USB、PCI 总线。
4. 通信总线
在计算机系统之间或计算机系统与其他系统之间传送信息的总线,通信总线也称外部总线。
- 按时序:同步总线、异步总线
- 按数据格式:并行总线、串行总线
6.1.3. 系统总线的结构
1. 单总线结构
单总线结构将 CPU、主存、I/O 设备(通过 I/O 接口)都挂在一组总线上,允许 I/O 设备之间、I/O 设备与主存之间直接交换信息,无需中间设备干预。
单总线并不是指只有一根信号线,系统总线按传送信息的不同可细分为地址总线、数据总线、控制总线
优缺点
- 结构简单、成本低、易于接入新的设备
- 带宽低、负载重,多个部件只能争用唯一的总线,不支持并发传送操作
2. 双总线结构
两条总线
- 主存总线:用于在 CPU、主存和通道之间传送数据
- I/O 总线,用于在多个外部设备与通道之间传送数据
优缺点
- 将低速 I/O 设备总单总线上分离出来,实现了存储器总线和 I/O 总线分离
- 需要增加通道等硬件设备
3. 三总线结构
在计算机系统各部件之间采用 3 条各自独立的总线来构成信息通道,分别为主存总线、I/O 总线、直接内存访问 DMA 总线
- 主存总线:在 CPU 和内存之间传送地址、数据、控制信息
- I/O 总线:在 CPU 和各类外设之间通信
- DMA 总线:在内存和高速外设之间直接传送数据
优缺点
- 提高了 I/O 设备性能,使其更快的响应命令,提高系统吞吐量
- 系统工作效率低
6.1.5. 总线性能标准
- 总线传输周期
- 一次总线操作所需的时间,包括申请阶段、寻址阶段、传输阶段、结束阶段。通常由若干总线时钟周期构成
- 总线时钟周期
- 即机器的时钟周期。计算机有一个统一的时钟,以控制整个计算机的各个部件,总线也要受此时钟的控制。
- 总线工作频率
- 机器的时钟频率,是时钟周期的倒数
- 总线宽度
- 总线位宽,是总线上同时能够传输的数据位数,通常指数据总线的根数
- 总线带宽
- 可理解为总线的最大数据传输率,即单位时间内总线上最多可传输数据的位数,通常用每秒传送信息的字节数来衡量,单位可用字节/秒表示。总线带宽 = 总线工作频率 × 总线宽度 / 8
- 总线复用
- 一种信号线在不同的时间传输不同的信息,因此可以使用较少的线传输更多的信息,从而节省空间和成本
- 信号线数
- 地址总线、数据总线、控制总线 3 中总线数的总和为信号线数。
6.2. 总线事务和定时
总线定时是指总线在双方交换数据的过程中需要时间上配合关系的控制,这种控制称为总线定制,实质是一种协议或规则,主要有同步和异步两种基本定时方式。
6.2.1. 总线事务
从请求总线到完成总线使用的操作序列称为总线事务,实在一个总线周期中发生的一系列活动。典型的总线事务包括请求操作、仲裁操作、地址传输、数据传输、总线释放。
- 请求阶段:主设备(CPU 或 DMA)发出总线传输请求,并且获得总线控制权
- 仲裁阶段:总线仲裁机构决定将下一个传输周期的总线使用权授予某个申请者、
- 寻址阶段:主设备通过总线给出要访问的从设备地址及有关命令,启动从模块
- 传输阶段:主模块和从模块进行数据交换,可单向或双向进行数据传送
- 释放阶段:主模块的有关信息均从系统总线上撤除,让出总线使用权
在总线事务的传输阶段,主、从设备之间一般只能传输一个字长的数据。
突发传送方式能够进行连续成组数据的传送,其寻址阶段发送的是连续数据单元的首地址,在传输阶段传送多个连续单元的数据,每个时钟周期可以传送一个字长的信息,但不释放总线,知道一组数据全部传送完毕后,再释放总线。
6.2.2. 同步定时方式
系统采用一个统一ud是中信号来协调发送和接收双方的传送定时关系。时钟产生相等的时间间隔,每个间隔构成一个总线周期。在一个总线周期中,发送方和接收方可以进行一次数据传送。因为采用统一的时钟,每个部件或设备发送或接收信息都在固定的总线传送周期中,一个总线的传送周期结束,下一个总线的传送周期开始。
优缺点
- 传送速度快,具有较高的传输速率;总线控制逻辑简单
- 主从设备属于强制性同步;不能及时进行数据通信的有效性检验,可靠性较差
- 适用于总线长度较短及总线所接部件的存取时间比较接近的系统
6.2.3. 异步定时方式
没有统一的时钟,也没有固定的时间间隔,完全一开传送双方相互制约的“握手信号”来实现定时控制。
主设备提出交换信息的“请求”信号,经接口传送到从设备;从设备接到主设备的请求后,通过接口向主设备发出“回答”信号。
优缺点
- 总线周期长度可变,能保证两个工作速度相差很大的部件或设备之间可靠的进行信息交换,自动适应时间的配合
- 比同步控制方式稍复杂一点,速度比同步定时方式慢
根据“请求”和“回答”信号的撤销是否互锁,异步定时方式又分为下面 3 种类型
1. 不互锁方式
主设备发出请求信号后,不必等待接到从设备的应答信号,而是经过一段时间便撤销请求信号。从设备在接到请求信号后,发出回答信号,并经过一段时间后自动撤销回答信号。双方不存在互锁关系
2. 半互锁关系
主设备发出请求信号后,必须在接到从设备的回答后,才撤销请求信号。从设备在接到请求信号后,发出回答信号,但不必等待获知主设备的请求信号已经撤销,而是隔一段时间后自动撤销回答信号。
3. 全互锁关系
主设备发出请求信号后,必须在从设备回答后才撤销请求信号;从设备发出回答信号后,必须在获知主设备请求信号已撤销后,再撤销其回答信号。
引入总线结构的好处
- 简化了系统结构,便于系统设计制造
- 大大减少连线数目,便于布线,减小体积,提高系统的可靠性
- 便于接口设计,所有与总线连接的设备均采用类似的接口
- 便于系统的扩充、更新与灵活配置,抑郁实现系统模块化
- 便于设备的软件设计,所有接口的软件对不同的接口地址进行操作
- 便于故障诊断和维修,降低成本
引入总线会导致什么问题
- 总线上的各个设备分时共享同一总线,当总线上多个设备同时要求使用总线时就会发生冲突
- 为解决多个主设备同时竞争总线控制前的问题,应当采用总线仲裁部件,以某种方式选择一个主设备有限获得总线控制前,只有获得总线控制权的设备才能开始数据传送