
PCIe 带宽计算:从 GT/s 到 GB/s,读懂每一比特
2026/6/18大约 6 分钟

PCIe 2.0 支持 5.0 GT/s,但并不意味着 5 Gbps。
PCIe 3.0 支持 8.0 GT/s,但并不意味着 8 Gbps。
为什么?
因为编码方案。
前置知识:两个容易混淆的单位
GT/s vs Gbps,它们之间不存在成比例的换算关系。
┌─────────────────────────────────────────────────────────┐
│ GT/s vs Gbps 的区别 │
├─────────────────────────────────────────────────────────┤
│ │
│ GT/s │
│ ┌─────────────────────────────────────────────────┐ │
│ │ Giga Transactions per Second │ │
│ │ 千兆传输 / 秒 │ │
│ │ │ │
│ │ 定义: │ │
│ │ 每一秒内传输的次数 │ │
│ │ │ │
│ │ 特点: │ │
│ │ · 描述物理层通信协议的速率属性 │ │
│ │ · 可以不和链路宽度等关联 │ │
│ │ · 关注的是「传输了多少次」 │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ Gbps │
│ ┌─────────────────────────────────────────────────┐ │
│ │ Giga Bits Per Second │ │
│ │ 千兆位 / 秒 │ │
│ │ │ │
│ │ 定义: │ │
│ │ 每一秒内传输的比特数 │ │
│ │ │ │
│ │ 特点: │ │
│ │ · 描述实际数据吞吐量 │ │
│ │ · 关注的是「传输了多少数据」 │ │
│ └─────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────┘关键洞察:
- GT/s 描述的是「物理层协议速率」
- Gbps 描述的是「实际数据吞吐量」
- 两者之间需要通过「编码方案」来换算
核心公式:PCIe 吞吐量计算
PCIe 吞吐量(可用带宽)计算方法:
吞吐量 = 传输速率 × 编码方案效率更详细的公式:
单 Lane 吞吐量(Gbps)= 传输速率(GT/s) × (有效位数 / 总位数)
单 Lane 吞吐量(MB/s)= 单 Lane 吞吐量(Gbps)÷ 8多 Lane 吞吐量:
总吞吐量 = 单 Lane 吞吐量 × Lane 数量PCIe 2.0:8b/10b 编码方案
协议参数
┌─────────────────────────────────────────────────────────┐
│ PCIe 2.0 协议参数 │
├─────────────────────────────────────────────────────────┤
│ │
│ 传输速率:5.0 GT/s │
│ 编码方案:8b/10b │
│ 编码效率:8 / 10 = 80% │
│ │
└─────────────────────────────────────────────────────────┘为什么是 8b/10b?
8b/10b 编码方案:
- 每传输 8 个 Bit,需要发送 10 个 Bit
- 多出的 2 个 Bit 用于:
- 时钟恢复
- 直流平衡(DC Balance)
- 错误检测
这意味着:
- 20% 的带宽被编码开销占用
- 只有 80% 的带宽用于传输有效数据
计算过程
单 Lane 计算:
步骤 1:计算原始传输速率
传输速率 = 5.0 GT/s = 每秒传输 5G 个 Bit
步骤 2:应用编码效率
有效速率 = 5.0 × (8 / 10) = 4.0 Gbps
步骤 3:转换为 MB/s
有效速率 = 4.0 Gbps ÷ 8 = 500 MB/s结论:
- PCIe 2.0 单 Lane 实际吞吐量:500 MB/s
x8 通道计算
步骤 1:单 Lane 吞吐量
500 MB/s
步骤 2:乘以 Lane 数量
500 MB/s × 8 = 4,000 MB/s
步骤 3:转换为 GB/s
4,000 MB/s ÷ 1,024 = 3.91 GB/s结论:
- PCIe 2.0 x8 实际吞吐量:约 4 GB/s
PCIe 3.0:128b/130b 编码方案
协议参数
┌─────────────────────────────────────────────────────────┐
│ PCIe 3.0 协议参数 │
├─────────────────────────────────────────────────────────┤
│ │
│ 传输速率:8.0 GT/s │
│ 编码方案:128b/130b │
│ 编码效率:128 / 130 ≈ 98.46% │
│ │
└─────────────────────────────────────────────────────────┘为什么是 128b/130b?
128b/130b 编码方案:
- 每传输 128 个 Bit,需要发送 130 个 Bit
- 多出的 2 个 Bit 用于:
- 同步头(Sync Header)
- 错误检测
这意味着:
- 只有约 1.54% 的带宽被编码开销占用
- 约 98.46% 的带宽用于传输有效数据
相比 PCIe 2.0 的改进:
- 编码效率从 80% 提升到 98.46%
- 大幅减少了编码开销
计算过程
单 Lane 计算:
步骤 1:计算原始传输速率
传输速率 = 8.0 GT/s = 每秒传输 8G 个 Bit
步骤 2:应用编码效率
有效速率 = 8.0 × (128 / 130) = 7.877 Gbps
步骤 3:转换为 MB/s
有效速率 = 7.877 Gbps ÷ 8 = 984.6 MB/s结论:
- PCIe 3.0 单 Lane 实际吞吐量:984.6 MB/s
x16 通道计算
步骤 1:单 Lane 吞吐量
984.6 MB/s
步骤 2:乘以 Lane 数量
984.6 MB/s × 16 = 15,753.6 MB/s
步骤 3:转换为 GB/s
15,753.6 MB/s ÷ 1,024 = 15.38 GB/s结论:
- PCIe 3.0 x16 实际吞吐量:约 15.4 GB/s
PCIe 4.0/5.0/6.0
为了完整性,这里也列出更新的 PCIe 版本:
┌─────────────────────────────────────────────────────────┐
│ 各代 PCIe 协议参数对比 │
├─────────────────────────────────────────────────────────┤
│ │
│ PCIe 1.x │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 传输速率:2.5 GT/s │ │
│ │ 编码方案:8b/10b │ │
│ │ 单 Lane 吞吐量:250 MB/s │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ PCIe 2.0 │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 传输速率:5.0 GT/s │ │
│ │ 编码方案:8b/10b │ │
│ │ 单 Lane 吞吐量:500 MB/s │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ PCIe 3.0 │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 传输速率:8.0 GT/s │ │
│ │ 编码方案:128b/130b │ │
│ │ 单 Lane 吞吐量:984.6 MB/s │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ PCIe 4.0 │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 传输速率:16.0 GT/s │ │
│ │ 编码方案:128b/130b │ │
│ │ 单 Lane 吞吐量:1.969 GB/s │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ PCIe 5.0 │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 传输速率:32.0 GT/s │ │
│ │ 编码方案:128b/130b │ │
│ │ 单 Lane 吞吐量:3.938 GB/s │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ PCIe 6.0 │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 传输速率:64.0 GT/s │ │
│ │ 编码方案:256b/257b (PAM4) │ │
│ │ 单 Lane 吞吐量:7.877 GB/s │ │
│ └─────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────┘关键洞察:编码方案的演进
┌─────────────────────────────────────────────────────────┐
│ 编码方案的演进趋势 │
├─────────────────────────────────────────────────────────┤
│ │
│ PCIe 1.x / 2.0:8b/10b │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 编码效率:80% │ │
│ │ 开销:20% │ │
│ │ 优点: │ │
│ │ · 时钟恢复简单 │ │
│ │ · 直流平衡好 │ │
│ │ 缺点: │ │
│ │ · 编码开销大 │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ PCIe 3.0 / 4.0 / 5.0:128b/130b │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 编码效率:98.46% │ │
│ │ 开销:1.54% │ │
│ │ 优点: │ │
│ │ · 编码开销大幅降低 │ │
│ │ · 吞吐量显著提升 │ │
│ │ 缺点: │ │
│ │ · 需要更复杂的时钟恢复 │ │
│ └─────────────────────────────────────────────────┘ │
│ │
│ PCIe 6.0:256b/257b (PAM4) │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 编码效率:99.61% │ │
│ │ 开销:0.39% │ │
│ │ 优点: │ │
│ │ · 编码开销极低 │ │
│ │ · 使用 PAM4 调制,每符号传输 2 Bit │ │
│ │ 缺点: │ │
│ │ · 需要更复杂的信号处理 │ │
│ └─────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────┘趋势:
- 编码效率从 80% → 98.46% → 99.61%
- 编码开销从 20% → 1.54% → 0.39%
- 吞吐量不断提升
实战应用:如何选择 PCIe 配置?
场景 1:NVMe SSD
假设你需要一块 NVMe SSD,目标顺序读取速度为 7,000 MB/s。
计算:
需求:7,000 MB/s ≈ 6.83 GB/s
PCIe 3.0 x4:
单 Lane:984.6 MB/s
x4:984.6 × 4 = 3,938.4 MB/s ≈ 3.84 GB/s
❌ 不够
PCIe 3.0 x8:
x8:984.6 × 8 = 7,876.8 MB/s ≈ 7.69 GB/s
✅ 够用
PCIe 4.0 x4:
单 Lane:1.969 GB/s
x4:1.969 × 4 = 7.876 GB/s
✅ 够用结论:
- PCIe 3.0 需要 x8 才能满足
- PCIe 4.0 只需要 x4 就能满足
- 在满足需求的前提下,PCIe 4.0 x4 更经济
场景 2:显卡
假设你需要一块显卡,目标带宽为 16 GB/s。
计算:
需求:16 GB/s
PCIe 3.0 x16:
15.38 GB/s
❌ 略微不够
PCIe 4.0 x16:
单 Lane:1.969 GB/s
x16:1.969 × 16 = 31.5 GB/s
✅ 远超需求结论:
- PCIe 3.0 x16 略微不够(但实际使用中可能影响不大)
- PCIe 4.0 x16 远超需求(更安全)
常见误区
误区 1:GT/s = Gbps
错误:
PCIe 3.0 支持 8.0 GT/s
所以 PCIe 3.0 单 Lane 支持 8 Gbps
正确:
PCIe 3.0 支持 8.0 GT/s
但 PCIe 3.0 单 Lane 只支持 7.877 Gbps
因为需要考虑 128b/130b 编码开销误区 2:直接乘以 Lane 数量
错误:
PCIe 3.0 x16 = 8.0 × 16 = 128 Gbps
正确:
PCIe 3.0 单 Lane = 7.877 Gbps
PCIe 3.0 x16 = 7.877 × 16 = 126.031 Gbps误区 3:忽略编码开销
错误:
直接用 GT/s 作为吞吐量计算
正确:
吞吐量 = 传输速率 × 编码效率快速计算表
为了方便查阅,这里提供一个快速计算表:
┌─────────────────────────────────────────────────────────┐
│ PCIe 吞吐量快速计算表 │
├─────────────────────────────────────────────────────────┤
│ │
│ PCIe 版本 | 传输速率 | 单 Lane | x4 | x8 | x16 │
│ ───────────────────────────────────────────────────── │
│ 1.x | 2.5 GT/s | 250 MB/s | 1 GB/s | 2 GB/s | 4 GB/s│
│ 2.0 | 5.0 GT/s | 500 MB/s | 2 GB/s | 4 GB/s | 8 GB/s│
│ 3.0 | 8.0 GT/s | 984.6 MB/s| 3.9 GB/s| 7.7 GB/s| 15.4 GB/s│
│ 4.0 | 16.0 GT/s | 1.97 GB/s | 7.9 GB/s| 15.8 GB/s| 31.5 GB/s│
│ 5.0 | 32.0 GT/s | 3.94 GB/s | 15.8 GB/s| 31.5 GB/s| 63 GB/s│
│ 6.0 | 64.0 GT/s | 7.88 GB/s | 31.5 GB/s| 63 GB/s | 126 GB/s│
│ │
└─────────────────────────────────────────────────────────┘注意:
- 表中数值为理论最大值
- 实际使用中会有协议开销
- 实际吞吐量通常为理论值的 90-95%
关键洞察
从 GT/s 到 GB/s,中间隔着编码方案。
┌─────────────────────────────────────────────────────────┐
│ 完整的计算流程 │
├─────────────────────────────────────────────────────────┤
│ │
│ 步骤 1:获取传输速率(GT/s) │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 例如:PCIe 3.0 = 8.0 GT/s │ │
│ └─────────────────────────────────────────────────┘ │
│ ↓ │
│ 步骤 2:应用编码效率 │
│ ┌─────────────────────────────────────────────────┐ │
│ │ PCIe 3.0 使用 128b/130b 编码 │ │
│ │ 编码效率 = 128 / 130 ≈ 98.46% │ │
│ │ 有效速率 = 8.0 × 98.46% = 7.877 Gbps │ │
│ └─────────────────────────────────────────────────┘ │
│ ↓ │
│ 步骤 3:转换为 MB/s │
│ ┌─────────────────────────────────────────────────┐ │
│ │ 7.877 Gbps ÷ 8 = 984.6 MB/s │ │
│ └─────────────────────────────────────────────────┘ │
│ ↓ │
│ 步骤 4:乘以 Lane 数量 │
│ ┌─────────────────────────────────────────────────┐ │
│ │ PCIe 3.0 x16 = 984.6 × 16 = 15,753.6 MB/s │ │
│ │ = 15.38 GB/s │ │
│ └─────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────┘收尾金句
GT/s 描述的是物理层协议速率
Gbps 描述的是实际数据吞吐量
两者之间需要通过编码方案来换算
PCIe 2.0 支持 5.0 GT/s,但单 Lane 实际吞吐量只有 500 MB/s
PCIe 3.0 支持 8.0 GT/s,但单 Lane 实际吞吐量只有 984.6 MB/s
编码方案的演进:8b/10b (80%) → 128b/130b (98.46%) → 256b/257b (99.61%)
编码开销从 20% → 1.54% → 0.39%
吞吐量 = 传输速率 × 编码效率
从 GT/s 到 GB/s,中间隔着编码方案
PCIe 带宽计算
从 GT/s 到 GB/s,读懂每一比特
"
