6.1 总线概述
总线的基本概念与四个特性;片内总线、系统总线(数据/地址/控制总线)、通信总线,并行与串行总线;单总线、双总线、三总线与多总线结构;总线的性能指标与带宽计算;常见总线标准。
总线的基本概念
计算机的各部件之间如果两两单独连线(分散连接),连线数量会随部件数迅速增长,也难以扩充。总线是一组能为多个部件分时共享的公共信息传送线路:
- 分时:同一时刻只允许有一个部件向总线发送信息;如果有多个部件要发送,只能分时使用总线;
- 共享:总线上可以挂接多个部件,各部件之间交换的信息都通过这组线路传送。同一时刻可以有多个部件从总线上接收信息。
获得总线控制权、发起总线传送的设备称为主设备;被主设备访问、只能响应的设备称为从设备。
总线有四个特性:
| 特性 | 含义 |
|---|---|
| 机械特性 | 尺寸、形状、管脚数、排列顺序 |
| 电气特性 | 每根传输线上信号的传递方向和有效的电平范围 |
| 功能特性 | 每根传输线的功能(地址、数据、控制) |
| 时间特性 | 每根传输线在什么时间有效,即信号的时序关系 |
总线的分类
按功能(连接的部件)分
- 片内总线:芯片内部的总线,如 CPU 内部寄存器与寄存器之间、寄存器与 ALU 之间的公共连线。
- 系统总线:计算机系统内各功能部件(CPU、主存、I/O 接口)之间相互连接的总线。按传输的信息不同又分为三类:
- 数据总线:传输各功能部件之间的数据信息,包括指令和操作数,双向传输;位数与机器字长、存储字长有关;
- 地址总线:传输地址信息,包括主存单元或 I/O 端口的地址,单向传输(由主设备发出);位数与主存地址空间的大小及设备数量有关;
- 控制总线:传输控制信息,包括 CPU 送出的控制命令(如读/写命令、中断响应)和主存或外设返回 CPU 的反馈信号(如中断请求、总线请求、就绪)。每一根控制线都是单向的,但控制总线整体是双向的。
- 通信总线(外部总线):计算机系统之间、或计算机系统与其他系统(如控制仪表、移动通信)之间传送信息的总线。
按数据传输格式分
- 并行总线:多根数据线同时传输多位数据。逻辑时序比较简单,电路实现容易;但信号线数多,占用更多的布线空间,远距离传输成本高;工作频率较高时,并行的信号线之间会产生严重的串扰,对每根线等长的要求也越高,因此无法持续提升工作频率。
- 串行总线:只有一根(或一对)数据线,数据一位一位地传输。信号线少、成本低,适合长距离传输;需要在发送和接收端进行并/串、串/并转换。由于没有线间串扰,可以工作在很高的频率下。
所以并行总线不一定比串行总线快。现代的高速总线(如 PCIe、SATA、USB)大多是串行总线。
按时序控制方式分
分为同步总线和异步总线,见下一节「总线事务与定时」。
系统总线的结构
| 结构 | 组成 | 特点 |
|---|---|---|
| 单总线 | CPU、主存、I/O 设备都连在一组系统总线上 | 结构简单、成本低,易于接入新的设备;但带宽低、负载重,多个部件只能争用唯一的总线,且不支持并发传送 |
| 双总线 | 主存总线(CPU、主存与通道之间)+ I/O 总线(多个外设与通道之间) | 把低速 I/O 设备从单总线上分离出来,实现了存储器总线与 I/O 总线分离;需要增加通道等硬件 |
| 三总线 | 主存总线(CPU 与主存)、I/O 总线(CPU 与外设)、DMA 总线(主存与高速外设) | 提高了 I/O 设备的性能和系统吞吐量;但任一时刻只能使用一种总线,系统工作效率较低 |
现代计算机普遍采用多总线(层次)结构:CPU 与主存之间是速度最快的处理器总线和存储器总线,再通过桥接器连接 PCIe 等 I/O 总线,较慢的设备挂在更外层的总线上。越靠近 CPU 的总线速度越快,不同的总线之间必须通过桥接器相连。
总线的性能指标
| 指标 | 含义 |
|---|---|
| 总线时钟周期 | 总线时钟的周期,总线时钟频率是它的倒数 |
| 总线传输周期(总线周期) | 一次总线操作所需的时间,通常由若干个总线时钟周期组成 |
| 总线工作频率 | 每秒传送数据的次数,即总线周期的倒数。一个总线周期占 N 个时钟周期时,工作频率 = 时钟频率 / N;若一个时钟周期传送两次(上升沿、下降沿各一次),工作频率 = 2 × 时钟频率 |
| 总线宽度 | 又称总线位宽,指数据总线的根数,如 32 位、64 位 |
| 总线带宽 | 总线的数据传输率,即单位时间内总线上最多可传输数据的位数或字节数 |
| 总线复用 | 一种信号线在不同的时间传输不同的信息,如地址线与数据线复用,可减少线数、节省成本 |
| 信号线数 | 地址总线、数据总线和控制总线的线数之和 |
计算器总线带宽与突发传输时间
时钟周期 = 1 / 100 MHz = 10 ns
每次传送 32 位 = 4 B
带宽 = 4 B × 100 MHz = 400 MB/s
需要 ⌈128 / 32⌉ = 4 次数据传送,先用 1 个时钟周期传送地址; 共 1 + 4 = 5 个时钟周期 = 50 ns
带宽(数据传输率)= 每次传送的字节数 × 每秒传送的次数。题目中 1 MB/s 通常按 10⁶ B/s 计算。
常见的总线标准
| 总线标准 | 类型 | 说明 |
|---|---|---|
| ISA、EISA | 并行,系统总线 | 早期 PC 的系统总线,已淘汰 |
| PCI | 并行,局部总线 | 32/64 位,33/66 MHz;与 CPU 无关,支持即插即用 |
| AGP | 并行 | 显卡专用的局部总线,已被 PCIe 取代 |
| PCI-Express(PCIe) | 串行,点对点 | 全双工,可由 ×1、×4、×16 等多条通道(lane)组成,用于显卡、固态硬盘等 |
| USB | 串行,设备总线 | 用于设备与主机(设备控制器)之间的互连;支持即插即用、热插拔,可通过集线器级联 |
| SATA | 串行 | 硬盘、光驱的接口标准 |
| SCSI | 并行 | 小型计算机系统接口,用于连接硬盘等智能设备 |
| QPI | 串行,点对点 | Intel 的处理器之间、处理器与芯片组之间的互连总线 |
即时练习
即时练习6 题
点击选项即可作答
- 1假设某系统总线在一个总线周期中并行传输 4 字节信息,一个总线周期占用 2 个时钟周期,总线时钟频率为 10 MHz,则总线带宽是( )。
- 2在系统总线的数据线上,不可能传输的是( )。
- 3某同步总线采用数据线和地址线复用方式,其中地址/数据线有 32 根,总线时钟频率为 66 MHz,每个时钟周期传送两次数据(上升沿和下降沿各传送一次数据),该总线的最大数据传输率(总线带宽)是( )。
- 4假定一台计算机采用 3 通道存储器总线,配套的内存条型号为 DDR3-1333,即内存条所接插的存储器总线的工作频率为 1333 MHz、总线宽度为 64 位,则存储器总线的总带宽大约是( )。
- 5下列关于多总线结构的叙述中,错误的是( )。
- 6下列选项中,用于设备和设备控制器(I/O 接口)之间互连的接口标准是( )。
学完了吗?
标记完成后,侧栏会显示进度。进度仅保存在本浏览器中。