第 6 章 总线
本章地位:总线是连接 CPU、主存与外设的「公共干道」,直接考分约 2~5 分,以选择题为主,但带宽计算是大题与选择双料高频点。真题最爱考四类:① 三类信号线的方向辨析(数据双向、地址单向、控制逐根单向——最易错);② 总线带宽计算(给频率和宽度算带宽,常设「时钟频率 ≠ 总线频率」「每周期传 k 次」两重陷阱);③ 集中式仲裁三方式对比(线数、优先级、速度、故障敏感性);④ 定时方式与总线标准归类(异步握手三子方式、串行 vs 并行辨析)。本章大纲考点不多,但每个都必须吃透——所有计算全部代入具体数值验证。
6.1 总线基本概念
6.1.1 总线的分类
- 片内总线:芯片内部的总线,连接 CPU 芯片内的寄存器与运算器、控制器等部件(如 ALU 与寄存器组之间的数据通路);
- 系统总线:计算机内各功能部件(CPU、主存、I/O 接口)之间互连的总线,按传的信息再分为数据总线、地址总线、控制总线三类(见 6.1.2);
- 通信总线(外总线):计算机系统之间或计算机与其他系统(如控制仪表、网络设备)之间的通信线路,分串行与并行两种。
- 并行总线:一次同时传送多位(n 根线传 n 位),线多、速度快,适合短距离(ISA、PCI、SCSI、IDE);
- 串行总线:一位一位顺序传送,线少、成本低、抗干扰强、适合长距离与高速(USB、PCIe、SATA、以太网)——「串行一定慢」是过时观念,见 6.5.2。
- 专用总线:一种信息走一组专用线。如 ISA 把地址线与数据线分开设置,任何时刻地址、数据可同时在线上传送;
- 复用总线:一组线分时传送不同类型信息。如 PCI 采用地址 / 数据复用线 AD——先传地址、再传数据,用控制信号(如帧信号、ADRCBE)指明当前线上是什么。复用省线、降成本,但一次传输要分多个阶段完成,速度略降、控制变复杂。
② 「分时」与「共享」是总线的两大特征,判断题去掉任何一个都错;
③ 地址 / 数据复用不等于「地址总线和数据总线可以双向」——复用是「一组线分时当两种线用」,与信号方向无关。
6.1.2 三类信号线:数据、地址、控制 高频考点
- CPU 发出(出):存储器读 MEMR、存储器写 MEMW、I/O 读 IOR、I/O 写 IOW、中断响应 INTA、总线允许 BG、DMA 响应 HLDA、复位 RESET、时钟 CLK;
- 送入 CPU(入):中断请求 INTR、总线请求 BR(或 DMA 请求 HRQ)、就绪 READY / 等待 WAIT(来自慢速从设备);
- 读 / 写命令是一对方向相反的独立信号线,「读命令线」由 CPU 发出(出),「写命令线」也由 CPU 发出(出)——读写都由主设备发起,从设备只被动响应。
② 「控制总线是双向的」半对半错——严格说每根控制线都是单向的,只是方向有的朝 CPU、有的朝外,整组呈双向;
③ 地址总线位数决定寻址空间(单元个数),数据总线位数决定一次传送的位数,别互相张冠李戴;
④ 指令代码、地址码中存的「数据」走数据总线;要访问的单元地址走地址总线——取指令时指令经数据总线送入 IR。
判断下列说法的正误:(1) 地址总线是双向的,因为写操作时地址也能送回 CPU;(2) 某机地址总线 20 位、按字节编址,最大寻址空间为 1 MB;(3) 控制总线中「存储器读」与「存储器写」两根命令线均由 CPU 发出;(4) 指令操作码从主存取到 IR 的过程中经过地址总线。
查看答案
(1) 错:地址总线单向,地址永远由主设备(CPU / DMA 控制器)发出;写操作也只是 CPU 把地址发出去,不存在「送回」。
(2) 对:\(2^{20}=1\text{M}\) 个单元,字节编址即 \(1\ \text{MB}\)(\(\checkmark\):\(2^{10}=1024\),\(2^{20}=1024\times1024\))。
(3) 对:读 / 写都是主设备发出的命令,从设备只被动响应;这两根线方向都是「出」。
(4) 错:操作码是指令代码的一部分,取指时经数据总线(经 MDR)送入 IR;地址总线上跑的是该指令的存放地址。
6.2 总线性能指标 必考计算
6.2.1 总线宽度、工作频率与总线带宽
- 总线宽度:数据线的根数(位数)。32 位即一次并行传送 32 bit;
- 总线工作频率:总线每秒执行传输操作的次数(MHz)。总线频率不一定等于 CPU 时钟频率——总线时钟常由 CPU 时钟分频得到(如 CPU 时钟 400 MHz、总线按 2 分频为 200 MHz),且有的总线一个总线周期含多个时钟周期;
- 总线带宽(总线传输率):单位时间内总线上传送的数据量,单位 MB/s(408 计算惯例 \(1\ \text{MB/s}=10^{6}\ \text{B/s}\),除非题目注明按 2 的幂)。
输入: f (频率, MHz), W (总线宽度, bit), k (每周期传送数据的次数)
STEP1 宽度换字节: B = W / 8 例: 32 位 → 4 B
STEP2 每秒传送次数: T = f × 10^6 × k 例: 100 MHz, k=1 → 10^8 次/秒
STEP3 带宽: BW = T × B 例: 10^8 × 4 B = 4×10^8 B/s = 400 MB/s
NOTE 若给出总线时钟频率, 先换算总线工作频率:
总线频率 = 时钟频率 / 每总线周期所含时钟周期数
输出: BW (MB/s = BW 除以 10^6)
PCI 总线数据线宽度 32 位,总线工作频率 33 MHz,每个总线周期传送一次数据。求总线带宽,并与 64 位 PCI 比较。
查看解答
三步法:宽度换字节 \(32/8=4\ \text{B}\);每秒 \(33\times10^{6}\) 次传输;带宽:
\[ 33\times10^{6}\times4=132\times10^{6}\ \text{B/s}=132\ \text{MB/s}\quad(\checkmark) \]这正是教科书上 PCI 的标准带宽 132 MB/s。宽度翻到 64 位(其余不变):
\[ 33\times10^{6}\times8=264\ \text{MB/s}\quad(\checkmark) \]带宽与宽度成正比——宽度的每一分提升都直接体现在带宽上。
某总线的数据线宽度 64 位,总线时钟频率 200 MHz,每个总线周期占用 2 个时钟周期,且每个总线周期可传送 2 次数据。该总线的带宽约为( )
A. 1600 MB/s B. 3200 MB/s C. 800 MB/s D. 6400 MB/s
查看解答
A。先拆除两重陷阱:
① 时钟 200 MHz、2 个时钟周期构成一个总线周期 → 总线工作频率:
\[ f_{\text{bus}}=\frac{200\ \text{MHz}}{2}=100\ \text{MHz}\quad(\checkmark) \]② 每个总线周期传 2 次数据 → 等效每秒传送次数 \(100\times10^{6}\times2\);宽度 64 位 = 8 B。带宽:
\[ 100\times10^{6}\times2\times8=1600\times10^{6}\ \text{B/s}=1600\ \text{MB/s}\quad(\checkmark) \]B 是忘了除 2(把 200 MHz 当总线频率);C 是忘了乘 2 次;D 是两处都算错。本题与 2012 年 408 真题同型:先换频率、再算每秒传输次数,最后乘字节数。
② DDR(Double Data Rate)类总线一个时钟周期传 2 次(上、下降沿各一次),题干会明示「每个时钟周期传送 2 次数据」,此时直接用「时钟频率 × 2 × 宽度/8」;
③ 单位陷阱:宽度要除以 8 换成字节;结果从 B/s 换 MB/s 除以 \(10^{6}\)(408 惯例按十进制);
④ 带宽算的是数据线的吞吐能力,地址线根数不影响带宽。
某同步总线工作频率 266 MHz,数据线宽度 64 位,每个总线周期传送一次数据。求总线带宽;若改为每个总线周期传送 2 次数据(其余不变),带宽变为多少?
查看答案
64 位 = 8 B。每周期 1 次:
\[ 266\times10^{6}\times8=2128\ \text{MB/s}\quad(\checkmark:\ 266\times8=2128) \]每周期 2 次(等效 DDR):
\[ 266\times10^{6}\times2\times8=4256\ \text{MB/s}\quad(\checkmark:\ 2128\times2) \]每周期传送次数翻倍,带宽同比例翻倍——\(k\) 是带宽公式里最容易漏乘的因子。
6.2.2 波特率与比特率(串行总线指标)
某串行总线采用异步方式传送字符,每帧含 1 位起始位、7 位数据位、1 位奇校验位、1 位停止位,波特率为 1200 baud。该总线每秒最多能传送多少个字符?有效数据传输率是多少 b/s?
查看解答
第一步,帧长:\(1+7+1+1=10\) 位/帧,其中有效数据 7 位。
第二步,每秒传送帧数:1200 baud = 每秒 1200 个码元(二态信号,每码元 1 bit):
\[ \frac{1200}{10}=120\ \text{帧/秒,即 120 个字符/秒}\quad(\checkmark) \]第三步,有效数据传输率:
\[ 120\times7=840\ \text{b/s}\quad(\checkmark:\ 1200\times7/10=840) \]套路总结:数清帧总长 m 与有效位 d,「每秒码元数 ÷ m = 帧率,帧率 × d = 有效比特率」;题干给数据位 7 还是 8、有无校验,直接改变 m 与 d,逐位照抄别背模板。
6.3 总线仲裁 高频考点
总线是分时共享的:同一时刻只能有一个主设备占用总线发送信息。当多个主设备同时申请使用总线时,必须由总线仲裁(bus arbitration)机构按某种优先级算法决定谁获得使用权。仲裁分集中式(专设中央仲裁器,即总线控制逻辑)与分布式(无中央仲裁器,各设备自带仲裁逻辑)两大类,统考重点在集中式的三种方式。
6.3.1 集中式三种仲裁方式
控制器循环:
1 若 BS=0(总线空闲)且 BR=1(有请求)→ 发出 BG
2 BG 沿 接口0 → 接口1 → 接口2 逐级传递:
接口 i 收到 BG:
若 接口 i 自身有请求 → 置 BS=1,取得总线,BG 不再下传
否则 → BG 继续传给 接口 i+1
3 接口 i 传完数据 → 撤销 BS 与自身 BR,控制器可响应下一轮请求
| 对比项 | 链式查询 | 计数器定时查询 | 独立请求 |
|---|---|---|---|
| 控制线数(\(n\) 设备) | 3 条(BR、BG、BS) | \(\lceil\log_{2}n\rceil+2\) 条 | \(2n\) 条(+BS 则 \(2n{+}1\)) |
| 响应速度 | 慢(BG 逐级传递) | 较快(逐个计数查询) | 最快(直达) |
| 优先级 | 固定:离控制器近者高 | 随计数起点可固定 / 可均等 / 可编程 | 灵活:集中排队逻辑可编程 |
| 故障敏感性 | 最敏感(BG 链断则后级全瘫) | 居中 | 不敏感(各请求线独立) |
| 硬件开销 | 最省、易扩展 | 居中 | 最复杂 |
下列关于集中式仲裁方式的叙述中,错误的是( )
A. 链式查询方式下,离总线控制器最近的设备优先级最高,且只需 3 条控制线
B. 计数器定时查询方式中,若计数器每次从 0 开始计数,则各设备优先级相等
C. 独立请求方式响应速度最快,\(n\) 个设备需要 \(2n\) 条请求 / 允许线
D. 链式查询方式对接口故障最敏感,一个接口损坏可能使其后的设备都无法使用总线
查看解答
B。逐项分析:
A 对:BG 串行传递,「近水楼台先得月」;BR、BG、BS 共 3 条线,与设备数无关;
B 错:计数器每次从 0 开始 → 小号设备总先被查到,优先级固定(0 号最高);要让各设备优先级相等,必须从上一次计数的终点开始循环计数。「从 0 开始 = 均等」是本考点最典型的偷换;
C 对:请求、允许线各 \(n\) 条直达控制器,无需传递 / 查询,速度最快;
D 对:BG 链是「串联保险丝」,一环断、后级全黑——这正是链式查询牺牲可靠性换省线。
某总线上接有 16 个主设备。分别求采用链式查询、计数器定时查询、独立请求方式时所需的控制线根数。
查看答案
① 链式查询:BR + BG + BS,与设备数无关:
\[ 3\ \text{条}\quad(\checkmark) \]② 计数器定时查询:设备地址线 \(\lceil\log_{2}16\rceil=4\) 根,加 BR 与 BS:
\[ 4+2=6\ \text{条}\quad(\checkmark) \]③ 独立请求:每个设备一对 BR、BG:
\[ 2\times16=32\ \text{条}\quad(\checkmark) \]线数对比 3 < 6 < 32,正好对应「省线低速」到「多线高速」的谱系;若教材口径计入公用忙线,② 为 7、③ 为 33,答题时跟随题干。
6.3.2 分布式仲裁简介
- 自举分布式:每个设备有唯一的仲裁号(优先级编码),申请总线时把自己的仲裁号发送到共享仲裁线上,同时读回线上的值与自己比较——线上保留的一定是最大(最高优先级)仲裁号,该设备获得总线。无需中央控制器(部分 68000 系列总线即用此法);
- 冲突检测分布式:先「听」总线空闲就发,边发边「听」,发现冲突立即停发、退避随机时长后重发——以太网 CSMA/CD 的思路;
- 并行竞争分布式:自举法的改进,仲裁号各位并行竞争比较,速度更快。
6.4 总线操作与定时
6.4.1 同步定时
某同步总线的时钟频率为 50 MHz,地址线与数据线分开设置,数据线宽度 32 位。完成一次读操作共需 2 个时钟周期:第 1 个周期主设备送出地址与读命令,第 2 个周期从设备送出数据。该总线的数据传输率为( )
A. 50 MB/s B. 100 MB/s C. 200 MB/s D. 400 MB/s
查看解答
B。一次传输占 2 个时钟周期 → 每秒完成传输次数:
\[ \frac{50\times10^{6}}{2}=25\times10^{6}\ \text{次/秒}\quad(\checkmark) \]每次传 32 bit = 4 B,传输率:
\[ 25\times10^{6}\times4=100\times10^{6}\ \text{B/s}=100\ \text{MB/s}\quad(\checkmark) \]A 是忘了除以 2;C 是误以为每时钟周期传一次。「一次传输占几个时钟周期」正是同步总线带宽题的核心陷阱——它与例 1、例 2 合起来覆盖了带宽计算的三种命题角度:直接给总线频率、给时钟频率需换算 / 乘 \(k\)、按总线周期构成推传输次数。
6.4.2 异步定时:握手与三种子方式 高频考点
| 子方式 | 主模块(请求方) | 从模块(回答方) | 可靠性 | 速度 |
|---|---|---|---|---|
| 不互锁 | 发请求后不等回答,过一段时间自动撤销 | 发回答后不等确认,过一段时间自动撤销 | 最低(无法确知对方是否收到) | 最快 |
| 半互锁 | 发请求后等到回答信号才撤销请求 | 发回答后不等主方确认,过一段时间自动撤销回答 | 居中(回答若丢失,主模块将一直等待) | 较快 |
| 全互锁 | 等到回答才撤请求 | 等确认请求已撤销后才撤回答 | 最高(双方互相确认) | 最慢(应答往返最多) |
关于异步通信的三种握手方式,下列叙述中正确的是( )
A. 不互锁方式中,主模块须等到从模块的回答信号才能撤销请求
B. 半互锁方式中,从模块发出回答后不等待主模块确认,经过一段时间自动撤销回答
C. 全互锁方式的传输速度在三种方式中最快
D. 三种方式中,只有全互锁方式的从模块需要发出回答信号
查看解答
B。逐项分析:
A 错:那是半互锁(以及全互锁)的特征;不互锁的主模块发请求后不等待,定时自动撤销;
B 对:半互锁「半」在只有请求方单方面等回答——主模块等到回答才撤请求,但从模块的回答不等确认、定时自撤;
C 错:全互锁请求、回答要互相确认撤销,应答往返次数最多,是三种方式中最慢的,但最可靠;
D 错:三种方式都靠「请求—回答」应答配合,从模块都要发回答;差别只在撤销前是否等对方确认。
6.4.3 半同步定时与分离式通信
- 子周期 1(申请—发送):主设备申请并取得总线,只传送地址和读命令,发完立即释放总线;
- 空闲准备期:从设备按命令译码、读出并准备数据——这段时间总线可出让给其他设备使用;
- 子周期 2(申请—送数):从设备数据就绪后自己申请总线,此时它充当主设备,把数据直接发往原请求方。
判断下列说法的正误:(1) 同步定时的总线周期必须按总线上最慢的设备设计;(2) 半同步方式完全取消了公共时钟;(3) 分离式通信中,第二个子周期里从设备是总线上的主设备;(4) 异步全互锁方式比不互锁方式传输速度快;(5) WAIT 信号有效时,主设备插入等待周期,总线时钟暂停。
查看答案
(1) 对:统一时钟下所有设备同节拍工作,必须迁就最慢者。
(2) 错:半同步恰恰保留公共时钟,只是增加 WAIT/READY 应答线来迁就慢设备;完全无公共时钟的是异步方式。
(3) 对:分离式通信第二个子周期由从设备申请总线并发送数据,此刻它是主设备。
(4) 错:全互锁应答往返最多,最慢但最可靠;不互锁最快但可靠性差。
(5) 错:等待周期 \(T_w\) 是时钟驱动下多等几个完整的时钟周期,总线时钟本身照常运行、从不暂停。
6.5 总线标准
总线标准是国际组织或行业制定的总线互连规范:规定插槽形状尺寸、信号线定义、时序与电气参数,使不同厂商的板卡、设备都能按同一标准接入。考试只考「识记级」——每个标准是串行还是并行、用于什么场合、几个标志性特点。
6.5.1 常见总线标准一览
| 标准 | 传送方式 | 关键参数 / 带宽 | 标志性特点 |
|---|---|---|---|
| ISA / EISA | 并行 | 16 位 / 32 位,约 8 MHz | 早期 PC 系统总线;EISA 是其 32 位兼容扩展(16 MB/s → 33 MB/s) |
| VL-BUS(VESA) | 并行 | 32 位,33/66 MHz | 局部总线:把显示等高速设备直接挂 CPU 总线,短暂过渡 |
| PCI | 并行 | 32/64 位,33/66 MHz;32 位 @33 MHz = 132 MB/s | 地址 / 数据复用线(AD),支持即插即用、多主设备,曾统治 PC 平台 |
| PCI-X | 并行 | 64 位,133 MHz,约 1 GB/s | PCI 的服务器版扩展,提速扩宽 |
| AGP | 并行 | 32 位,66 MHz 基础 ×2/×4/×8 倍增 | 专用于图形加速卡的点对点高速端口(1×即 266 MB/s) |
| PCI-Express(PCIe) | 串行、差分、点对点 | ×1/×4/×8/×16 通道聚合,全双工,逐代翻倍(2.5/5/8 GT/s…) | 经交换器(Switch)连接,独享带宽、热插拔、支持 QoS,现行主流 |
| USB | 串行、差分 | 1.5 / 12 / 480 Mbps / 5 Gbps(1.0/2.0/3.0) | 热插拔、即插即用、树状(星型级联)拓扑,4 线(2 供电 + D+/D− 差分数据) |
| SCSI | 并行(小型机系统接口) | 8/16 位,可外挂 8~16 个设备 | 智能 I/O 接口,硬盘 / 光驱 / 扫描仪等多设备总线 |
| IDE / ATA | 并行 | 40 芯排线,一个通道挂 2 个盘 | 早期 PC 磁盘接口,廉价;Ultra ATA 133 MB/s 封顶 |
| SATA | 串行、差分、点对点 | 1.5 Gb/s / 3 Gb/s / 6 Gb/s(150/300/600 MB/s) | 取代 IDE 的现代磁盘接口,线少、抗干扰、独享通道 |
6.5.2 并行为何让位于串行差分 选择常考
下列全部采用串行方式传送数据的总线标准是( )
A. PCI、USB、SATA B. PCIe、USB、SATA C. AGP、SCSI、USB D. IDE、PCIe、IEEE 1394
查看解答
B。逐项分析:
A 错:PCI 是 32/64 位并行总线(地址数据复用);B 对:PCIe(串行差分点对点)、USB(串行差分、树状热插拔)、SATA(串行差分)都是串行标准;
C 错:AGP 与 SCSI 均为并行;D 错:IDE 是 40 芯并行排线(IEEE 1394 火线确实串行,但 IDE 拖累全组)。
记法:串行「新贵」家族 = PCIe、USB、SATA、1394(火线)、以太网;并行「老派」家族 = ISA/EISA、VL-BUS、PCI/PCI-X、AGP、SCSI、IDE。
判断下列说法的正误:(1) USB 采用串行方式传送数据,支持热插拔,并可经集线器级联成树状拓扑;(2) PCIe ×16 比 ×1 快,是因为它一次并行传送 16 位数据;(3) AGP 是专门为图形加速卡设计的点对点总线;(4) 一个 USB 2.0 接口的传输速率是 480 MB/s。
查看答案
(1) 对:串行差分、热插拔、树状(星型级联)拓扑都是 USB 的标志特点。
(2) 错:×16 是 16 条独立串行通道的聚合(每通道仍一次 1 bit、差分传),不是 16 位并行——这是 PCIe 与并行总线最常考的区别。
(3) 对:AGP 是显卡专用端口,点对点独享带宽,不必与其他设备分时。
(4) 错:USB 2.0 高速模式 480 Mb/s(兆位/秒),折合仅 60 MB/s——Mb/s 与 MB/s 差 8 倍,单位陷阱必须看清。
6.6 章末自测 真题风格
限时 35 分钟,先做后看答案。难度:★★ 基础 / ★★★ 强化 / ★★★★ 冲刺。计算题全部要求代入具体数值逐步演算,并用第二种方式验算。
下列关于三类信号线的叙述中,错误的是( )
A. 数据总线是双向的,其宽度决定一次并行传送的位数 B. 地址总线是单向的,由主设备发出 C. 控制总线中每根信号线都是双向的 D. 中断请求信号线是送入 CPU 的,中断响应信号线是 CPU 发出的
查看答案
C。控制总线「整组看双向」,但每根线都是单向——有的出(读 / 写、响应、允许)、有的入(请求、就绪);A、B、D 均正确且是常考结论。
某机地址总线 24 位、按字节编址,该机最大寻址空间为( )
A. 4 MB B. 16 MB C. 16 Mb D. 8 MB
查看答案
B。\(2^{24}=16\text{M}\) 个单元(\(\checkmark\):\(2^{20}=1\text{M}\),\(2^{24}=16\times2^{20}\)),字节编址即 16 MB;C 单位是「位」,差 8 倍。
某总线工作频率 100 MHz,数据线宽度 32 位,每个总线周期传送一次数据。该总线的带宽为 \(\underline{\hspace{1cm}}\) MB/s;若宽度增至 64 位,带宽为 \(\underline{\hspace{1cm}}\) MB/s。
查看答案
32 位 = 4 B:
\[ 100\times10^{6}\times4=400\ \text{MB/s}\quad(\checkmark) \]64 位 = 8 B:
\[ 100\times10^{6}\times8=800\ \text{MB/s}\quad(\checkmark:\ 400\times2) \]验算:带宽 = 频率 × 宽度/8,宽度翻倍带宽翻倍,比例关系吻合。
某总线时钟频率 266 MHz,数据线宽度 64 位,每个时钟周期可传送 2 次数据。该总线带宽为 \(\underline{\hspace{1cm}}\) MB/s。
查看答案
本题给的是时钟频率且每时钟周期传 2 次,直接等效「每秒传送次数 = 266M × 2」;64 位 = 8 B:
\[ 266\times10^{6}\times2\times8=4256\ \text{MB/s}\quad(\checkmark:\ 266\times16=4256) \]与练习 2 对照:那题「每总线周期 1 次」得 2128 MB/s,本题每周期 2 次即翻倍——\(k\) 因子别漏乘。
关于集中式总线仲裁,下列叙述中错误的是( )
A. 链式查询方式只需 3 根控制线,且对接口故障敏感 B. 计数器定时查询中,计数器从上一次的终点开始计数,各设备优先级相等 C. 独立请求方式中 8 个设备需要 16 根请求 / 允许线 D. 三种方式中,链式查询的响应速度最快
查看答案
D。速度排序:独立请求(直达)最快、计数器定时查询居中、链式查询(BG 逐级串传)最慢;A、B、C 均正确(8 设备独立请求 \(2\times8=16\) 根)。
关于定时方式,下列叙述中正确的是( )
A. 半同步方式取消公共时钟,完全靠应答配合 B. 分离式通信中,从设备准备数据期间总线可被其他设备使用 C. 同步方式下主设备能即时知道从设备是否正确收到数据 D. 异步不互锁方式是三种握手中最可靠的
查看答案
B。分离式通信把传输拆成两个子周期,准备期释放总线给他人,故总线利用率最高。A 错:半同步保留时钟 + WAIT;C 错:同步无应答,无法即时确认;D 错:不互锁最快但可靠性最低,最可靠的是全互锁。
某串行异步通信每帧含 1 位起始位、8 位数据位、1 位停止位(无校验位),波特率为 2400 baud。其有效数据传输率为( )
A. 2400 b/s B. 1920 b/s C. 240 b/s D. 2112 b/s
查看答案
B。帧长 \(m=1+8+1=10\) 位,有效位 \(d=8\):
\[ 2400\times\frac{8}{10}=1920\ \text{b/s}\quad(\checkmark) \]
验算(走另一条路):帧率 \(=2400\div10=240\) 帧 / 秒,每帧带 8 个有效位,\(240\times8=1920\) b/s ✓。A 是把波特率当比特率;C 是误除帧长;D 是 \(m\) 数成 11 位(多算了校验位)——帧长必须逐位照抄题干。
为什么现代高速总线(PCIe、SATA、USB 3.x)纷纷放弃并行而改用「串行 + 差分 + 点对点」?请给出至少三条理由,并说明 PCIe ×16 为什么不等于「16 位并行」。
查看解答
理由(答出三条即可):
① 抗干扰:差分对两线信号相位相反,接收端取差值,共模干扰相互抵消,允许更高频率;
② 无同步偏移:并行多线各线时延不齐,频率越高「对齐窗口」越窄;串行一次 1 bit 无多位对齐问题,频率可大幅提升;
③ 点对点独享:无共享竞争,带宽不摊薄,配合 Switch 可扩展;④ 线少引脚少:成本低、功耗低、布线简单,支持热插拔。
PCIe ×16 是 16 条独立的串行差分通道聚合:每通道仍一次传 1 bit、全双工,×16 把 16 通道带宽相加,而非一根 16 位宽的并行总线——「通道数」是「份数」,不是「位宽」。
6.7 本章考点总结
| 考点 | 常考题型 | 热度 | 核心方法 |
|---|---|---|---|
| 总线概念与分类 | 选择题 | ★★★ | 分时 + 共享两大特征;片内 / 系统 / 通信总线,串行 / 并行,专用 / 复用(地址数据复用线省线但分时) |
| 三类信号线方向 | 选择题 / 判断 | ★★★★ 易错 | 数据总线双向(宽度定一次传送位数);地址总线单向(位数定寻址空间 \(2^{n}\));控制总线逐根单向、整组双向,逐根记方向(读写 / 响应出,请求 / 就绪入) |
| 总线带宽计算 | 选择 / 填空 / 大题一问 | ★★★★★ 必考 | 带宽 = 频率 × 宽度/8;三问审题——总线频率还是时钟频率?一总线周期几时钟周期?一周期传 k 次乘 k;B/s → MB/s 除 \(10^{6}\) |
| 波特率与比特率 | 选择 / 填空 | ★★★ | 比特率 = 波特率 × log\(_2\)L;串行帧按「帧率 × 有效位」算,附加位是开销;Mb/s 与 MB/s 差 8 倍 |
| 集中式仲裁三方式 | 选择题 | ★★★★ 高频 | 链式 3 条线、近者优先、故障敏感;计数式 log\(_2\)n+2 条、起点定优先级(从 0 固定 / 从上次终点均等);独立请求 2n 条、最快最复杂 |
| 定时四方式 | 选择题 | ★★★★ 高频 | 同步迁就最慢设备;异步握手三子方式(不互锁最快、全互锁最可靠最慢,互锁 = 撤信号前等不等确认);半同步 = 时钟 + WAIT;分离式两子周期、总线利用率最高 |
| 总线标准归类 | 选择题 | ★★★ | 并行:ISA/EISA、VL-BUS、PCI/PCI-X、AGP、SCSI、IDE;串行差分点对点:PCIe、USB(热插拔树状)、SATA;PCIe ×n 是 n 通道聚合非 n 位并行 |
| 串行 vs 并行 | 选择 / 简答 | ★★★★ | 并行硬伤:串扰、同步偏移、线多;串行差分:共模抵消抗干扰、无对齐问题可提频、点对点独享——「串行不一定慢」 |