详细解读 PCIe 外设组件互连快速总线
人工智能日益普及的当下,DDR5 与 PCIe
5.0 已经成为 AI 算力中心的标准搭配,而服务器内部用于连接
CPU、内存,以及各种扩展设备的高速 I/O 总线,已经历经了三代标准的发展。第
1 代推出于 1981~1992 年期间,采用传统的并行总线架构,包括了
ISA、EISA、VESA、MCA
一系列标准,由于多设备共享一条总线带宽,导致带宽低速率慢,因而被市场淘汰;第
2 代推出于 1993~2000 年,依然采用并行总线架构,主要有
PCI、AGP、PCI-X
三种标准,虽然大幅优化了带宽、时序、仲裁机制,但是仍然采用并行共享总线架构,并未解决并行串扰、时钟同步等瓶颈,后续逐步被本文的主角
PCIe(PCI Express)高速串行总线所代替。

外设组件互连快速总线(PCIe,Peripheral Component Interconnect Express)属于一种高速串行总线标准,英特尔(Intel)公司于 2001 年联合 超微(AMD)、戴尔(Dell)、惠普(HP)、国际商用机器(IBM)等企业成立 Arapahoe 工作组,进而推出了第 3 代(3GIO,Third-Generation I/O)通信总线标准。2002 年 4 月该标准移交给 外围组件互连特别兴趣组织(PCI-SIG,Peripheral Component Interconnect Special Interest Group) 之后,被正式命名为 PCIe。
PCIe 版本对比
截止到 2026 年本文撰写的时间点,最新的 PCIe
总线标准已经迭代到了 7.0 版本,下面的表格里展示了各个 PCIe
版本的性能特点:
| PCIe 版本 | 正式发布时间 | 编码与调制方式 | 总线频率 | 传输速率 | 单 Lane 峰值带宽(x1) | 双 Lane 峰值带宽(x2) |
|---|---|---|---|---|---|---|
| 1.x | 2003 年 | 8/10b 编码 + NRZ 调制 | 2.5 GHz |
2.5 GT/s |
250 MB/s |
500 MB/s |
| 2.x | 2007 年 | 8/10b 编码 + NRZ 调制 | 5 GHz |
5 GT/s |
500 MB/s |
1 GB/s |
| 3.0 | 2010 年 | 128/130b 编码 + NRZ 调制 | 8 GHz |
8 GT/s |
984.6 MB/s |
1.969 GB/s |
| 4.0 | 2017 年 | 128/130b 编码 + NRZ 调制 | 16 GHz |
16 GT/s |
1.969 GB/s |
3.938 GB/s |
| 5.0 | 2019 年 | 128/130b 编码 + NRZ 调制 | 32 GHz |
32 GT/s |
3.938 GB/s |
7.877 GB/s |
| 6.0 | 2022 年 | 128/130b 编码 + PAM4 调制 | 32 GHz |
64 GT/s |
7.56 GB/s |
15.12 GB/s |
| 7.0 | 2025 年 | 128/130b 编码 + PAM4 调制 | 64 GHz |
128 GT/s |
15.12 GB/s |
30.24 GB/s |
编码与调制方式
截止到 PCIe 7.0 版本,PCIe
总线采用的编码方式主要有如下两种类型:
- 8/10b 编码:将 8 位数据固定映射为 10 个比特位进行传输,其中低 5 位被映射成为 6 位,而高 3 位被映射成为 4 位。
- 128/130b 编码:每 128 位原始数据添加 2
位的同步头(
10表示正常数据,01表示链路控制命令序列,00/11则表示错误),组成 130 位进行传输。
比较这两种编码类型,8b/10b 编码方式的有效载荷为 8
bit,传输 10 bit,带宽利用率为 \(\frac{8}{10}
= 80%\),冗余开销高达 20%;而 128/130b
编码方式有效载荷为 128 bit,实际传输 130 bit,带宽利用率为 \(\frac{128}{130} \approx
98.46%\),冗余开销约为 1.54%。
注意:
8b/10b编码方式过高的传输冗余开销,正是其被128/130b编码方式取代的核心原因。
接下来,再来讨论 PCIe 总线两种类型的调制方式:
- 不归零码(NRZ,Non Return to Zero):只有
高
1和 低0两个电平状态,符号速率与比特率相同(1 个符号 = 1 个比特位)。

- 四电平脉冲幅度调制(PAM4,Pulse Amplitude
Modulation 4-Level):划分为
L0=00、L1=01、L2=10、L3=11四个电平幅度等级,符号速率为比特率的一半(1 个符号 = 2 个比特位)。

比较而言,NRZ 编码只有两个电平,1 个物理层符号传输 1
个比特位,虽然抗干扰能力强,但是带宽比较低。而 PAM4
编码采用了四个电平,1 个物理层符号传输 2
个比特位,虽然总线带宽翻倍,但是需要搭配 FEC
前向纠错(发送端提前加冗余编码,接收端自动进行纠错)、Gray
编码(普通二进制如 00 01 10 11 电平跳变可能出现 2
个比特位同时翻转的情况,而 Gray 编码如 00 01 11 10
相邻的电平只有 1 个比特位会出现变化)确保传输的可靠性。
注意:上述内容里的符号,指代的是传输线路上面发送的一个电压电平波形,是 PCIe 总线在物理层的最小传输单元。
带宽的两层含义
带宽(Bandwidth)通常用于表达最大传输能力,但是在电子硬件领域的不同应用场景下,具有如下两层含义:
- 模拟/射频领域:用于表示频带宽度,即信号占用的频率范围,单位为赫兹
Hz; - 计算机/网络通信领域:表征单位时间内能够传输的最大
bit数据量,即理论最大传输速率,单位为比特每秒bps;
注意:比特每秒
bps还衍生出了千比特每秒Kbps、兆比特每秒Mbps、吉比特每秒Gbps等单位。
单位 GT/s 与 Gbps
在 PCIe
相关的示波器眼图测试以及信号完整性仿真过程当中,经常使用到
GT/s 这个单位。而在计算算实际传输速率的时候,使用的则是
Gbps 这个单位,两者的区别如下所示:
- 千兆传输/秒(
GT/s,Giga Transfers per Second):符号波特率,物理层每一秒传输的次数,即物理信号的跳变次数; - 千兆位/秒(
Gbps,Giga Bits per Second):有效比特速率,扣除编码开销之后的有效数据传输速率;
上述的 千兆传输/秒 GT/s 与
千兆位/秒 Gbps
两个单位的换算公式如下面所示:
\[ Gbps = GT/s \times 编码效率 \]
例如 PCIe 2.0 总线的传输速率为
5.0 GT/s,即每一条 Lane 上面每 1 秒钟传输
5G 个 Bit 位数据,由于 PCIe 2.0 物理层使用的是 8b/10b 编码,即每传输 8
个比特位,就需要发送 10 个 比特位的数据,多出来的 2
个比特位并非有效数据,因而 PCIe 2.0 每一条 Lane
支持的带宽计算如下:
\[ 5 GT/s \times \frac{8 Bit}{10 Bit} = 4 Gbps = 500 MB/s \]
基于此就可以推导出采用了 8 个通道的 PCIe 2.0 x 8 的可用带宽为:
\[ 4 Gbps \times 8 = 32 Gbps = 4 GB/s。 \]
同样对于总线传输速率为 8.0 GT/s 的 PCIe
3.0,其每一条 Lane 支持每秒钟传输 8G 个 Bit
位数据,而其物理层使用的是 128b/130b 编码,即每传输
128 个比特位,需要发送 130 个比特位,这样 PCIe
3.0 每一条 Lane 支持的带宽同样可以计算如下:
\[ 8 GT/s \times \frac{128 Bit}{130 Bit} = 7.877 Gbps = 984.6 MB/s \]
同样基于此,就能推导出采用了 8 个通道的 PCIe 3.0 x 8 可用带宽为:
\[ 7.877 Gbps \times 8 = 63.016 Gbps = 7.877 GB/s。 \]
分层协议架构
PCIe 总线架构与以太网的 OSI 模型类似,也属于一种分层的协议架构,具体可以划分为事务层(Transaction Layer)、数据链路层(Data Link Layer)、物理层(Physical Layer),每一层均包含有数据的发送与接收两个部分:

- 事务层:主要负责事务层包(TLP,Transaction Layer Packet)的组装和拆卸;
- 数据链路层:主要职责包括链路管理和数据完整性校验(包括错误检测与错误纠正);
- 物理层:主要为数据传输提供可靠的物理环境,包括了接口操作的所有电路(驱动器、输入缓冲器、串并转换、PLL、阻抗匹配),以及 PCIe 接口初始化和维护相关的逻辑功能;
注意:PCIe 总线使用数据包作为单位来进行通信,数据包形成于事务层和数据链路层中形成。
传输通道 Lane
通道 Lane 是 PCIe 总线的最小物理传输单元,英文读作
[leɪn],表示的是一条独立的高速双向传输通道,每条
Lane 由 2 组差分对共 4 根信号线组成:
- 发送差分对:
TX+和TX−; - 接收差分对:
RX+和RX−;
注意:PCIe 总线发送端与接收端的
RX+/-和TX+/-差分对,需要以RX->TX和TX->RX的方式交叉进行连接。
PCIe 总线接口目前可以支持
×1、×2、×4、×8、×12、×16、×32
个 Lane 宽度的链路(其中每条 Lane 的总线频率与 PCIe
总线的版本有关):

注意:PCB 布线的时候,每一条 Lane 的差分对必须进行严格的
5mil对内等长。而多条 Lane 之间虽然不需要进行精准的长度匹配,但是走线长度差距尽量控制在三百个mil以内。
金手指连接器
PCIe 总线使用的连接器,公口通常被称作 PCIe 金手指,母口则称为 PCIe 插槽,它们会根据 Lane 通道数量的不同,提供不同物理长度的连接器。

PCIe 金手指可以插入任何不短于金手指长度的 PCIe 插槽当中,例如
x1 的 PCIe 金手指可以插入
x1、x4、x8、x16 的
PCIe 插槽,而 x4 的 PCIe 金手指可以插入
x4、x8、x16 的 PCIe
插槽,这一特性极大提升了 PCIe 总线的可扩展性:

注意:观察上图可以看到,左侧的
PCIe x8不兼容PCIe x1和PCIe x4插槽,但是能够在PCIe x8和PCIe x16插槽上面正常工作。
PCIe x1 通道定义
一个 Lane 通道的 x1
金手指引脚定义,如下面表格所示:

| 引脚编号 | B 侧引脚名称 | 功能描述 | A 侧引脚名称 | 功能描述 |
|---|---|---|---|---|
| 1 | +12v | +12V 电源 |
PRSNT#1 | 热插拔检测 1(低电平有效) |
| 2 | +12v | +12V 电源 |
+12v | +12V 电源 |
| 3 | +12v | +12V 电源 |
+12v | +12V 电源 |
| 4 | GND | 接地引脚 | GND | 接地引脚 |
| 5 | SMCLK | 系统管理总线 SMBus 时钟 | JTAG2 | TCK(JTAG 时钟) |
| 6 | SMDAT | 系统管理总线 SMBus 数据 | JTAG3 | TDI(JTAG 数据输入) |
| 7 | GND | 接地引脚 | JTAG4 | TDO(JTAG 数据输出) |
| 8 | +3.3v | +3.3V 电源 |
JTAG5 | TMS(JTAG 模式选择) |
| 9 | JTAG1 | TRST(JTAG 复位) |
+3.3v | +3.3V 电源 |
| 10 | 3.3Vaux | 3.3V 辅助电源 |
+3.3v | +3.3V 电源 |
| 11 | WAKE# | 链接激活信号 | PERST# | PCIe 复位信号 |
| 【机械防呆缺口】 | ||||
| 12 | RSVD | 保留 |
GND | 接地引脚 |
| 13 | GND | 接地引脚 | REFCLK+ | 100 MHz 差分参考时钟 + |
| 14 | HSOp(0) | Lane 0 发送差分信号 + |
REFCLK- | 100 MHz 差分参考时钟 - |
| 15 | HSOn(0) | Lane 0 发送差分信号 - |
GND | 接地引脚 |
| 16 | GND | 接地引脚 | HSIp(0) | Lane 0 接收差分信号 + |
| 17 | PRSNT#2 | 热插拔检测 2(低电平有效) | HSIn(0) | Lane 0 接收差分信号 - |
| 18 | GND | 接地引脚 | GND | 接地引脚 |
注意:PCIe 各个版本的引脚定义完全相同,每个版本的
REFCLK+/-引脚均采用的是100 MHz的差分时钟信号。
PCIe x4 通道定义
四个 Lane 通道的 x4
金手指引脚定义,如下面表格所示:

| 引脚编号 | B 侧引脚名称 | 功能描述 | A 侧引脚名称 | 功能描述 |
|---|---|---|---|---|
| 1 | +12v | +12V 电源 |
PRSNT#1 | 热插拔检测 1(低电平有效) |
| 2 | +12v | +12V 电源 |
+12v | +12V 电源 |
| 3 | +12v | +12V 电源 |
+12v | +12V 电源 |
| 4 | GND | 接地引脚 | GND | 接地引脚 |
| 5 | SMCLK | 系统管理总线 SMBus 时钟 | JTAG2 | TCK(JTAG 时钟) |
| 6 | SMDAT | 系统管理总线 SMBus 数据 | JTAG3 | TDI(JTAG 数据输入) |
| 7 | GND | 接地引脚 | JTAG4 | TDO(JTAG 数据输出) |
| 8 | +3.3v | +3.3V 电源 |
JTAG5 | TMS(JTAG 模式选择) |
| 9 | JTAG1 | TRST(JTAG 复位) |
+3.3v | +3.3V 电源 |
| 10 | 3.3Vaux | 3.3V 辅助电源 |
+3.3v | +3.3V 电源 |
| 11 | WAKE# | 链接激活信号 | PERST# | PCIe 复位信号 |
| 【机械防呆缺口】 | ||||
| 12 | RSVD | 保留 |
GND | 接地引脚 |
| 13 | GND | 接地引脚 | REFCLK+ | 100 MHz 差分参考时钟 + |
| 14 | HSOp(0) | Lane 0 发送差分信号 + |
REFCLK- | 100 MHz 差分参考时钟 - |
| 15 | HSOn(0) | Lane 0 发送差分信号 - |
GND | 接地引脚 |
| 16 | GND | 接地引脚 | HSIp(0) | Lane 0 接收差分信号 + |
| 17 | PRSNT#2 | 热插拔检测 2(低电平有效) | HSIn(0) | Lane 0 接收差分信号 - |
| 18 | GND | 接地引脚 | GND | 接地引脚 |
| 19 | HSOp(1) | Lane 1 发送差分信号 + |
RSVD | 保留 |
| 20 | HSOn(1) | Lane 1 发送差分信号 - |
GND | 接地引脚 |
| 21 | GND | 接地引脚 | HSIp(1) | Lane 1 接收差分信号 + |
| 22 | GND | 接地引脚 | HSIn(1) | Lane 1 接收差分信号 - |
| 23 | HSOp(2) | Lane 2 发送差分信号 + |
GND | 接地引脚 |
| 24 | HSOn(2) | Lane 2 发送差分信号 - |
GND | 接地引脚 |
| 25 | GND | 接地引脚 | HSIp(2) | Lane 2 接收差分信号 + |
| 26 | GND | 接地引脚 | HSIn(2) | Lane 2 接收差分信号 - |
| 27 | HSOp(3) | Lane 3 发送差分信号 + |
GND | 接地引脚 |
| 28 | HSOn(3) | Lane 3 发送差分信号 - |
GND | 接地引脚 |
| 29 | GND | 接地引脚 | HSIp(3) | Lane 3 接收差分信号 + |
| 30 | RSVD | 保留 |
HSIn(3) | Lane 3 接收差分信号 - |
| 31 | PRSNT#2 | 热插拔检测 2(低电平有效) | GND | 接地引脚 |
| 32 | GND | 接地引脚 | RSVD | 保留 |
PCIe x8 通道定义
八个 Lane 通道的 x8
金手指引脚定义,如下面表格所示:

| 引脚编号 | B 侧引脚名称 | 功能描述 | A 侧引脚名称 | 功能描述 |
|---|---|---|---|---|
| 1 | +12v | +12V 电源 |
PRSNT#1 | 热插拔检测 1(低电平有效) |
| 2 | +12v | +12V 电源 |
+12v | +12V 电源 |
| 3 | +12v | +12V 电源 |
+12v | +12V 电源 |
| 4 | GND | 接地引脚 | GND | 接地引脚 |
| 5 | SMCLK | 系统管理总线 SMBus 时钟 | JTAG2 | TCK(JTAG 时钟) |
| 6 | SMDAT | 系统管理总线 SMBus 数据 | JTAG3 | TDI(JTAG 数据输入) |
| 7 | GND | 接地引脚 | JTAG4 | TDO(JTAG 数据输出) |
| 8 | +3.3v | +3.3V 电源 |
JTAG5 | TMS(JTAG 模式选择) |
| 9 | JTAG1 | TRST(JTAG 复位) |
+3.3v | +3.3V 电源 |
| 10 | 3.3Vaux | 3.3V 辅助电源 |
+3.3v | +3.3V 电源 |
| 11 | WAKE# | 链接激活信号 | PERST# | PCIe 复位信号 |
| 【机械防呆缺口】 | ||||
| 12 | RSVD | 保留 |
GND | 接地引脚 |
| 13 | GND | 接地引脚 | REFCLK+ | 100 MHz 差分参考时钟 + |
| 14 | HSOp(0) | Lane 0 发送差分信号 + |
REFCLK- | 100 MHz 差分参考时钟 - |
| 15 | HSOn(0) | Lane 0 发送差分信号 - |
GND | 接地引脚 |
| 16 | GND | 接地引脚 | HSIp(0) | Lane 0 接收差分信号 + |
| 17 | PRSNT#2 | 热插拔检测 2(低电平有效) | HSIn(0) | Lane 0 接收差分信号 - |
| 18 | GND | 接地引脚 | GND | 接地引脚 |
| 19 | HSOp(1) | Lane 1 发送差分信号 + |
RSVD | 保留 |
| 20 | HSOn(1) | Lane 1 发送差分信号 - |
GND | 接地引脚 |
| 21 | GND | 接地引脚 | HSIp(1) | Lane 1 接收差分信号 + |
| 22 | GND | 接地引脚 | HSIn(1) | Lane 1 接收差分信号 - |
| 23 | HSOp(2) | Lane 2 发送差分信号 + |
GND | 接地引脚 |
| 24 | HSOn(2) | Lane 2 发送差分信号 - |
GND | 接地引脚 |
| 25 | GND | 接地引脚 | HSIp(2) | Lane 2 接收差分信号 + |
| 26 | GND | 接地引脚 | HSIn(2) | Lane 2 接收差分信号 - |
| 27 | HSOp(3) | Lane 3 发送差分信号 + |
GND | 接地引脚 |
| 28 | HSOn(3) | Lane 3 发送差分信号 - |
GND | 接地引脚 |
| 29 | GND | 接地引脚 | HSIp(3) | Lane 3 接收差分信号 + |
| 30 | RSVD | 保留 |
HSIn(3) | Lane 3 接收差分信号 - |
| 31 | PRSNT#2 | 热插拔检测 2(低电平有效) | GND | 接地引脚 |
| 32 | GND | 接地引脚 | RSVD | 保留 |
| 33 | HSOp(4) | Lane 4 发送差分信号 + |
RSVD | 保留 |
| 34 | HSOn(4) | Lane 4 发送差分信号 - |
GND | 接地引脚 |
| 35 | GND | 接地引脚 | HSIp(4) | Lane 4 接收差分信号 + |
| 36 | GND | 接地引脚 | HSIn(4) | Lane 4 接收差分信号 - |
| 37 | HSOp(5) | Lane 5 发送差分信号 + |
GND | 接地引脚 |
| 38 | HSOn(5) | Lane 5 发送差分信号 - |
GND | 接地引脚 |
| 39 | GND | 接地引脚 | HSIp(5) | Lane 5 接收差分信号 + |
| 40 | GND | 接地引脚 | HSIn(5) | Lane 5 接收差分信号 - |
| 41 | HSOp(6) | Lane 6 发送差分信号 + |
GND | 接地引脚 |
| 42 | HSOn(6) | Lane 6 发送差分信号 - |
GND | 接地引脚 |
| 43 | GND | 接地引脚 | HSIp(6) | Lane 6 接收差分信号 + |
| 44 | GND | 接地引脚 | HSIn(6) | Lane 6 接收差分信号 - |
| 45 | HSOp(7) | Lane 7 发送差分信号 + |
GND | 接地引脚 |
| 46 | HSOn(7) | Lane 7 发送差分信号 - |
GND | 接地引脚 |
| 47 | GND | 接地引脚 | HSIp(7) | Lane 7 接收差分信号 + |
| 48 | PRSNT#2 | 热插拔检测 2(低电平有效) | HSIn(7) | Lane 7 接收差分信号 - |
| 49 | GND | 接地引脚 | GND | 接地引脚 |
PCIe x16 通道定义
十六个 Lane 通道的 x16
金手指引脚定义,如下面表格所示:

| 引脚编号 | B 侧引脚名称 | 功能描述 | A 侧引脚名称 | 功能描述 |
|---|---|---|---|---|
| 1 | +12v | +12V 电源 |
PRSNT#1 | 热插拔检测 1(低电平有效) |
| 2 | +12v | +12V 电源 |
+12v | +12V 电源 |
| 3 | +12v | +12V 电源 |
+12v | +12V 电源 |
| 4 | GND | 接地引脚 | GND | 接地引脚 |
| 5 | SMCLK | 系统管理总线 SMBus 时钟 | JTAG2 | TCK(JTAG 时钟) |
| 6 | SMDAT | 系统管理总线 SMBus 数据 | JTAG3 | TDI(JTAG 数据输入) |
| 7 | GND | 接地引脚 | JTAG4 | TDO(JTAG 数据输出) |
| 8 | +3.3v | +3.3V 电源 |
JTAG5 | TMS(JTAG 模式选择) |
| 9 | JTAG1 | TRST(JTAG 复位) |
+3.3v | +3.3V 电源 |
| 10 | 3.3Vaux | 3.3V 辅助电源 |
+3.3v | +3.3V 电源 |
| 11 | WAKE# | 链接激活信号 | PERST# | PCIe 复位信号 |
| 【机械防呆缺口】 | ||||
| 12 | RSVD | 保留 |
GND | 接地引脚 |
| 13 | GND | 接地引脚 | REFCLK+ | 100 MHz 差分参考时钟 + |
| 14 | HSOp(0) | Lane 0 发送差分信号 + |
REFCLK- | 100 MHz 差分参考时钟 - |
| 15 | HSOn(0) | Lane 0 发送差分信号 - |
GND | 接地引脚 |
| 16 | GND | 接地引脚 | HSIp(0) | Lane 0 接收差分信号 + |
| 17 | PRSNT#2 | 热插拔检测 2(低电平有效) | HSIn(0) | Lane 0 接收差分信号 - |
| 18 | GND | 接地引脚 | GND | 接地引脚 |
| 19 | HSOp(1) | Lane 1 发送差分信号 + |
RSVD | 保留 |
| 20 | HSOn(1) | Lane 1 发送差分信号 - |
GND | 接地引脚 |
| 21 | GND | 接地引脚 | HSIp(1) | Lane 1 接收差分信号 + |
| 22 | GND | 接地引脚 | HSIn(1) | Lane 1 接收差分信号 - |
| 23 | HSOp(2) | Lane 2 发送差分信号 + |
GND | 接地引脚 |
| 24 | HSOn(2) | Lane 2 发送差分信号 - |
GND | 接地引脚 |
| 25 | GND | 接地引脚 | HSIp(2) | Lane 2 接收差分信号 + |
| 26 | GND | 接地引脚 | HSIn(2) | Lane 2 接收差分信号 - |
| 27 | HSOp(3) | Lane 3 发送差分信号 + |
GND | 接地引脚 |
| 28 | HSOn(3) | Lane 3 发送差分信号 - |
GND | 接地引脚 |
| 29 | GND | 接地引脚 | HSIp(3) | Lane 3 接收差分信号 + |
| 30 | RSVD | 保留 |
HSIn(3) | Lane 3 接收差分信号 - |
| 31 | PRSNT#2 | 热插拔检测 2(低电平有效) | GND | 接地引脚 |
| 32 | GND | 接地引脚 | RSVD | 保留 |
| 33 | HSOp(4) | Lane 4 发送差分信号 + |
RSVD | 保留 |
| 34 | HSOn(4) | Lane 4 发送差分信号 - |
GND | 接地引脚 |
| 35 | GND | 接地引脚 | HSIp(4) | Lane 4 接收差分信号 + |
| 36 | GND | 接地引脚 | HSIn(4) | Lane 4 接收差分信号 - |
| 37 | HSOp(5) | Lane 5 发送差分信号 + |
GND | 接地引脚 |
| 38 | HSOn(5) | Lane 5 发送差分信号 - |
GND | 接地引脚 |
| 39 | GND | 接地引脚 | HSIp(5) | Lane 5 接收差分信号 + |
| 40 | GND | 接地引脚 | HSIn(5) | Lane 5 接收差分信号 - |
| 41 | HSOp(6) | Lane 6 发送差分信号 + |
GND | 接地引脚 |
| 42 | HSOn(6) | Lane 6 发送差分信号 - |
GND | 接地引脚 |
| 43 | GND | 接地引脚 | HSIp(6) | Lane 6 接收差分信号 + |
| 44 | GND | 接地引脚 | HSIn(6) | Lane 6 接收差分信号 - |
| 45 | HSOp(7) | Lane 7 发送差分信号 + |
GND | 接地引脚 |
| 46 | HSOn(7) | Lane 7 发送差分信号 - |
GND | 接地引脚 |
| 47 | GND | 接地引脚 | HSIp(7) | Lane 7 接收差分信号 + |
| 48 | PRSNT#2 | 热插拔检测 2(低电平有效) | HSIn(7) | Lane 7 接收差分信号 - |
| 49 | GND | 接地引脚 | GND | 接地引脚 |
| 50 | HSOp(8) | Lane 8 发送差分信号 + |
RSVD | 保留 |
| 51 | HSOn(8) | Lane 8 发送差分信号 - |
GND | 接地引脚 |
| 52 | GND | 接地引脚 | HSIp(8) | Lane 8 接收差分信号 + |
| 53 | GND | 接地引脚 | HSIn(8) | Lane 8 接收差分信号 - |
| 54 | HSOp(9) | Lane 9 发送差分信号 + |
GND | 接地引脚 |
| 55 | HSOn(9) | Lane 9 发送差分信号 - |
GND | 接地引脚 |
| 56 | GND | 接地引脚 | HSIp(9) | Lane 9 接收差分信号 + |
| 57 | GND | 接地引脚 | HSIn(9) | Lane 9 接收差分信号 - |
| 58 | HSOp(10) | Lane 10 发送差分信号 + |
GND | 接地引脚 |
| 59 | HSOn(10) | Lane 10 发送差分信号 - |
GND | 接地引脚 |
| 60 | GND | 接地引脚 | HSIp(10) | Lane 10 接收差分信号 + |
| 61 | GND | 接地引脚 | HSIn(10) | Lane 10 接收差分信号 - |
| 62 | HSOp(11) | Lane 11 发送差分信号 + |
GND | 接地引脚 |
| 63 | HSOn(11) | Lane 11 发送差分信号 - |
GND | 接地引脚 |
| 64 | GND | 接地引脚 | HSIp(11) | Lane 11 接收差分信号 + |
| 65 | GND | 接地引脚 | HSIn(11) | Lane 11 接收差分信号 - |
| 66 | HSOp(12) | Lane 12 发送差分信号 + |
GND | 接地引脚 |
| 67 | HSOn(12) | Lane 12 发送差分信号 - |
GND | 接地引脚 |
| 68 | GND | 接地引脚 | HSIp(12) | Lane 12 接收差分信号 + |
| 69 | GND | 接地引脚 | HSIn(12) | Lane 12 接收差分信号 - |
| 70 | HSOp(13) | Lane 13 发送差分信号 + |
GND | 接地引脚 |
| 71 | HSOn(13) | Lane 13 发送差分信号 - |
GND | 接地引脚 |
| 72 | GND | 接地引脚 | HSIp(13) | Lane 13 接收差分信号 + |
| 73 | GND | 接地引脚 | HSIn(13) | Lane 13 接收差分信号 - |
| 74 | HSOp(14) | Lane 14 发送差分信号 + |
GND | 接地引脚 |
| 75 | HSOn(14) | Lane 14 发送差分信号 - |
GND | 接地引脚 |
| 76 | GND | 接地引脚 | HSIp(14) | Lane 14 接收差分信号 + |
| 77 | GND | 接地引脚 | HSIn(14) | Lane 14 接收差分信号 - |
| 78 | HSOp(15) | Lane 15 发送差分信号 + |
GND | 接地引脚 |
| 79 | HSOn(15) | Lane 15 发送差分信号 - |
GND | 接地引脚 |
| 80 | GND | 接地引脚 | HSIp(15) | Lane 15 接收差分信号 + |
| 81 | PRSNT#2 | 热插拔检测 2(低电平有效) | HSIn(15) | Lane 15 接收差分信号 - |
| 82 | RSVD | 保留 |
GND | 接地引脚 |
PCB 布线规范
由于各个 PCIe 版本承载的信号频率不同,这里将每个版本对应的
阻抗控制、等长约束、过孔数量、过孔残桩尺寸
整理为如下表格,方便大家在进行 PCB Layout 的时候随手查阅:
| PCIe 版本 | 阻抗控制要求 | 等长约束要求 | 过孔数量 | 过孔残桩尺寸 |
|---|---|---|---|---|
| PCIe 1.0 | 差分信号 100Ω ±10%,单端信号
50Ω ±10% |
差分对内等长 ≤5mil,通道 Lane
组间无严格等长要求 |
≤4个/对 |
≤30mil |
| PCIe 2.0 | 差分信号 100Ω ±8%,单端信号
50Ω ±8% |
差分对内等长 ≤5mil,通道 Lane
组间等长 ≤20mil |
≤4个/对 |
≤30mil |
| PCIe 3.0 | 差分信号 85Ω ±5%,单端信号
50Ω ±5% |
差分对内等长 ≤3mil,通道 Lane
组间等长 ≤10mil |
2~4个/对 |
≤16mil |
| PCIe 4.0 | 差分信号 85Ω ±5%,单端信号
50Ω ±5% |
差分对内等长 2~3mil,通道
Lane 组间等长 5~10mil |
2个/对 |
≤12mil |
| PCIe 5.0 | 差分信号 85Ω ±3%,单端信号
50Ω ±3% |
差分对内等长 1~2mil,通道
Lane 组间等长 3~5mil |
1~2个/对 |
≤10mil |
| PCIe 6.0 | 差分信号 85Ω ±2%,单端信号
50Ω ±2% |
差分对内等长 ≤1mil,通道 Lane
组间等长 ≤3mil |
1个/对 |
≤5mil |
在 PCIe 高频信号运行的时候,PCB 线路上的 过孔残桩(Stub)会引入额外的寄生电容,导致阻抗跌落,信号出现严重反射,所以对于 PCIe 4.0 及以上版本,建议采用背钻(Back Drill)工艺(需要控制残桩尺寸)。但是到了 PCIe 5.0/6.0 版本,背钻工艺也已经无法满足要求,此时更加建议采用 HDI 盲埋孔工艺,并且对过了进行填充电镀,从而彻底彻底消除过孔残桩的影响。
除此之外,PCIe 3.0 及以下版本可以使用普通 FR4 玻纤板材,但是 PCIe 4.0 版本就必须开始采用低介质损耗的 PCB 板材。如果是 PCIe 5.0/6.0 版本,就必须选用超低介质损耗的 PCB 板材。
注意:
PRSNT1#和PRSNT2#这两个用热插拔检测的引脚的布线必须比其余信号线稍短,确保热插拔信号总是率先被系统捕获。
详细解读 PCIe 外设组件互连快速总线



