前置知识: 计算机基础

总线与接口

00:00
7 min Intermediate 2026/6/14

总线与接口:总线仲裁、总线协议、PCIe、USB、I2C、SPI与系统互连

1. 总线基本概念

1.1 总线分类

类型连接对象特点示例
片内总线CPU 内部各部件速度最快,宽度大ALU 总线
系统总线CPU、内存、I/O速度较快前端总线
通信总线计算机之间距离远,速度较慢以太网

1.2 系统总线组成

  • 数据总线:双向,传输数据,宽度决定一次传输的数据量
  • 地址总线:单向(CPU→外设),宽度决定寻址空间
  • 控制总线:读/写信号、中断请求、总线请求等

例如 32 位地址总线可寻址

1.3 总线性能指标

示例:64 位数据总线,200 MHz,每个传输需 2 个时钟周期:

2. 总线仲裁

2.1 集中仲裁

链式查询(菊花链)

总线请求 → 仲裁器 → BG 信号 → 设备1 → 设备2 → ... → 设备N
  • 优先级由物理位置决定(离仲裁器近的优先级高)
  • 简单,但优先级固定,对远端设备不公平
  • 一个设备故障可能导致后续设备无法获得总线

计数器定时查询

  • 仲裁器从当前计数值开始查询
  • 计数从0开始:等效于链式查询
  • 计数从上次停止处开始:循环优先级

独立请求方式

  • 每个设备有独立的总线请求和授权线
  • 仲裁器可灵活分配优先级
  • 硬件复杂度 ,但响应最快

2.2 分布仲裁

自举分布式仲裁

每个设备有唯一优先级ID,同时请求时,优先级高的获得总线。

冲突检测(CSMA/CD)

以太网使用的仲裁方式,先听后发,冲突时退避重试。

3. 总线定时

3.1 同步定时

所有设备使用统一时钟:

时钟周期1:主设备发地址
时钟周期2:从设备返回数据

优点:控制简单 缺点:时钟频率受最慢设备限制

3.2 异步定时

无统一时钟,使用握手协议:

全互锁握手

主设备:发请求(REQ) ──────────→
                          等待
从设备:          ←──── 发应答(ACK)
主设备:撤销REQ ──────────→
从设备:          ←──── 撤销ACK

优点:适应不同速度的设备 缺点:每次传输需要多次握手,开销较大

3.3 半同步定时

在同步基础上增加等待信号(WAIT),允许慢设备插入等待周期。

4. PCI Express(PCIe)

4.1 PCIe 架构

PCIe 采用点对点串行互连,取代 PCI 的并行共享总线:

特性PCIPCIe
互连方式共享并行点对点串行
数据宽度32/64 位1/2/4/8/12/16 通道
时钟频率33/66 MHz2.5/5/8/16/32 GT/s
最大带宽533 MB/s~63 GB/s (x16 Gen5)

4.2 PCIe 通道

每条 PCIe 通道包含两对差分信号线(发送+接收):

PCIe 版本数据速率编码单通道带宽
Gen12.5 GT/s8b/10b250 MB/s
Gen25 GT/s8b/10b500 MB/s
Gen38 GT/s128b/130b~985 MB/s
Gen416 GT/s128b/130b~1970 MB/s
Gen532 GT/s128b/130b~3940 MB/s

4.3 PCIe 事务层

PCIe 使用数据包传输:

┌──────────┬──────────┬──────────┬──────────┐
│  TLP头   │  可选头   │  数据负载  │  ECRC    │
│ (3~4DW)  │ (0~3DW)  │ (0~1024DW)│ (1DW)   │
└──────────┴──────────┴──────────┴──────────┘

TLP 类型:Memory Read/Write、IO Read/Write、Configuration Read/Write、Message。

5. USB

5.1 USB 版本演进

版本速率别名
USB 1.112 MbpsFull Speed
USB 2.0480 MbpsHigh Speed
USB 3.05 GbpsSuperSpeed
USB 3.110 GbpsSuperSpeed+
USB 3.220 GbpsSuperSpeed++
USB440/80 Gbps基于Thunderbolt

5.2 USB 传输类型

类型方向性可靠性适用场景
控制传输双向可靠设备配置
批量传输单向可靠打印机、存储
中断传输可靠键盘、鼠标
等时传输不可靠音视频

5.3 USB 拓扑

USB 采用拓扑,最支持 7 层深、127 个设备

主机控制器
  ├── 集线器1
  │     ├── 设备1
  │     └── 设备2
  └── 集线器2
        ├── 设备3
        └── 集线器3
              └── 设备4

6. 嵌入式常用总线

6.1 I2C

两线制串总线:SCL(时钟)+ SDA(数据)。

特性
线数2(SCL + SDA)
100kbps / 400kbps / 3.4Mbps
寻址7位或10位地址
拓扑
距离短距离(<1m)

通信流程:

起始条件 → 从机地址(7bit) + 读/写位 → ACK → 数据 → ACK → 停止条件

6.2 SPI

四线制速串总线:

信号方向说明
SCLK主→从时钟
MOSI主→从主出从入
MISO从→主主入从出
CS主→从片选

:全双工、速(可达数十Mbps)、无寻址机制通过片选选择设备)。

6.3 UART

异步串通信:

空闲(高) → 起始位(低) → 数据位(5~9bit) → 校验位 → 停止位(高)
参数典型
波特9600 / 115200
数据8
校验无/奇/偶
停止1

7. 系统互连架构

7.1 片上网络(NoC)

处理器中,心间通过路由器网络互连:

拓扑直径链路数
Mesh4
Torus4
Fat Tree变化变化

7.2 路由策略

  • 维序路由(XY路由):先沿X方向,再沿Y方向,无死锁
  • 自适应路由网络拥塞动态选择路径
  • 最短路径路由选择跳数最少的路径

知识检测

学习进度

-- 已学文档
--% 知识覆盖率

学习推荐

专注模式