3. PCIe Gen3/4/5/6 Margining规范演进:各代协议对Margining的要求变化
PCIe Margining 测试并非从 Gen1 开始就存在,而是随着高速串行链路信号裕量的急剧压缩,逐步被引入并强化的测试项目。从 Gen3 的接收端抖动容限测试雏形,到 Gen4 正式定义 Margining 流程,再到 Gen5/6 对精度、时延和自动化程度的极致要求,每一代协议都在推动 Margining 从“可选验证”走向“必选量产筛选”。
核心演进趋势: 测试精度从 ±2.5% → ±0.5%;测试时间从分钟级 → 亚秒级;测试对象从 Rx 单一维度 → Tx/Rx 双向 Margining;测试模式从手动触发 → 协议内建自动化(LTSSM Margining)。
3.1 Gen3:Margining 的萌芽与 Rx 抖动容限
PCIe Gen3(8 GT/s)首次面临严重的信号闭合挑战。由于采用 128b/130b 编码并移除扩频时钟(SSC)的强制要求,接收端必须对抖动和噪声有更强的容忍能力。Gen3 规范并未直接命名“Margining”,而是通过 Rx Jitter Tolerance(Rx JTOL) 测试来间接评估接收裕量。
- 测试方法: 在 Rx 输入端注入受控的抖动(RJ + SJ + DJ),观察误码率是否超过 1E-12。
- 局限性: 无法直接测量 Rx 内部的 Eye 开度;测试依赖外部误码仪(BERT),无法在系统级实现。
- Margining 状态: 无协议层 Margining 命令,所有裕量评估依赖物理层测试设备。
工程提示: Gen3 时代,工程师通常通过“抖动容限曲线”来反推 Rx 裕量。如果 Rx 在 0.3 UI 的 SJ 注入下仍能保持 BER < 1E-12,则认为裕量充足。这种方法在 Gen4 后被正式 Margining 流程取代。
3.2 Gen4:Margining 正式定义与 Rx Eye 测量
PCIe Gen4(16 GT/s)是 Margining 测试的里程碑。规范首次在 PHY 层定义了一套完整的 Margining 流程,允许通过软件命令直接控制 Rx 内部的采样器偏移,从而测量接收端眼图的宽度和高度。
| Gen4 Margining 关键特性 | 描述 |
|---|---|
| Margining 命令 | 通过 Sideband 或 Configuration 空间下发 Margining 指令,控制 Rx 采样点偏移。 |
| 测量维度 | 水平(UI 偏移)和垂直(电压偏移)两个方向。 |
| 精度要求 | 步进 ≤ 2.5% UI(水平)和 ≤ 25 mV(垂直)。 |
| 测试模式 | 需进入 Loopback 或特定的 Margining 训练状态。 |
| 结果上报 | Rx 返回左/右/上/下四个方向的裕量值(单位:UI 或 mV)。 |
Gen4 工程陷阱: 许多早期 Gen4 设备虽然宣称支持 Margining,但实际步进精度不达标(例如步进为 5% UI 而非 2.5%),导致测试结果无法用于量产筛选。务必在测试前通过 Margining 精度校准 验证设备能力。
3.3 Gen5:精度提升与 Tx Margining 引入
PCIe Gen5(32 GT/s)将数据速率翻倍,信号损耗和串扰更加严重。规范在 Gen4 基础上做了两项关键升级:提高 Margining 精度 和 引入 Tx Margining。
3.3.1 精度要求对比
| 参数 | Gen4 | Gen5 |
|---|---|---|
| 水平步进 | ≤ 2.5% UI | ≤ 1.0% UI |
| 垂直步进 | ≤ 25 mV | ≤ 12.5 mV |
| 测量重复性 | ± 5% | ± 2% |
| Tx Margining | 不支持 | 支持(Tx 去加重/摆幅调整) |
3.3.2 Tx Margining 机制
Gen5 允许 接收端通过协议命令请求发送端调整其输出参数(如去加重系数、摆幅电压),从而在链路层面实现双向裕量优化。Tx Margining 的引入使得测试不再局限于 Rx 端,而是可以评估整个通道的发送能力。
- 请求方向: Rx → Tx(Rx 发现裕量不足时,请求 Tx 调整)。
- 调整参数: 去加重(De-emphasis)、摆幅(Swing)、预加重(Pre-shoot)。
- 应用场景: 长通道、多连接器、背板场景下的链路自适应。
测试策略建议: Gen5 测试应同时进行 Rx Margining(评估接收端眼图开度)和 Tx Margining(评估发送端调整能力)。如果 Tx Margining 无法通过,通常意味着通道损耗过大,需要重新设计 PCB 或选择更优的 Re-timer。
3.4 Gen6:PAM4 下的 Margining 革命
PCIe Gen6(64 GT/s)采用 PAM4 调制,将传统 NRZ 的两电平信号变为四电平。这一变化彻底改变了 Margining 的测量对象和方法。
3.4.1 PAM4 Margining 核心挑战
- 三个眼图: PAM4 信号包含上眼(MSB)、中眼(Mid)、下眼(LSB),需分别测量。
- 眼高不对称: 由于非线性,三个眼图的垂直开度可能不同,需独立 Margining。
- 电平失配: 发送端的三电平摆幅必须精确匹配,否则会导致眼图闭合。
3.4.2 Gen6 规范新要求
| Gen6 Margining 特性 | 要求 |
|---|---|
| 眼图数量 | 3 个独立眼图(Upper/Middle/Lower) |
| 水平步进 | ≤ 0.5% UI(约 0.78 ps @ 64 GT/s) |
| 垂直步进 | ≤ 6 mV |
| 电平线性度 | RLM(Ratio Level Mismatch)≥ 0.95 |
| Margining 模式 | 支持 NRZ 兼容模式 + PAM4 原生模式 |
Gen6 测试难点: PAM4 信号的 SNR 比 NRZ 低约 9.5 dB,Margining 测试必须在更小的眼图开度下保持测量精度。建议使用 50 GHz 以上带宽的示波器 和 PAM4 专用 BERT,并配合协议分析仪验证 Margining 命令交互。
3.5 各代 Margining 规范演进总结
| 协议代 | 速率 | 调制方式 | Margining 状态 | 水平步进 | 垂直步进 | Tx Margining |
|---|---|---|---|---|---|---|
| Gen3 | 8 GT/s | NRZ | 无(Rx JTOL 替代) | — | — | 不支持 |
| Gen4 | 16 GT/s | NRZ | 正式定义 Rx Margining | ≤ 2.5% UI | ≤ 25 mV | 不支持 |
| Gen5 | 32 GT/s | NRZ | Rx + Tx Margining | ≤ 1.0% UI | ≤ 12.5 mV | 支持 |
| Gen6 | 64 GT/s | PAM4 | 三眼图独立 Margining | ≤ 0.5% UI | ≤ 6 mV | 支持(含电平线性度) |
工程总结: Margining 规范从 Gen3 的“无”到 Gen6 的“三眼图精密测量”,反映了 PCIe 链路裕量随速率提升而急剧下降的现实。对于测试工程师而言,必须根据被测设备的协议代选择对应的 Margining 测试方案:Gen4 关注 Rx 眼图开度,Gen5 增加 Tx 调整能力验证,Gen6 则需同时处理 PAM4 的三眼图非线性问题。