4. PCIe Gen5 电气参数要求

PCIe Gen5 跑在 32 GT/s,这个速率下电气参数稍微漂一点,眼图就闭上了。我经常在项目评审时看到新手拿着规范表却不知道怎么落地,所以这一章我用实战角度把电压、时序、损耗这三个硬指标拆开聊。

4.1 电压参数:差分摆幅与共模电压

Gen5 的差分输出摆幅分两种档位:低摆幅(0.4~0.7 Vppd) 和 高摆幅(0.8~1.2 Vppd)。我个人习惯在链路损耗超过 25 dB 时果断选用高摆幅,否则接收端眼高不够。

参数低摆幅高摆幅说明
差分输出电压 (Vppd)0.4 ~ 0.7 V0.8 ~ 1.2 VTx 脚输出
共模电压 (Vcm)0 ~ 0.4 V0 ~ 0.4 V接收端 AC 耦合前
Vcm 容差±50 mV±50 mV包含 DC 偏移

注意!Gen5 TX 的共模电压不能超过 0.4 V,否则 RX 端共模抑制会告警。我曾经遇到一块板子,因为 DC 偏置电阻配错,Vcm 飙到 0.52 V,眼图直接塌了半边。

还有一个容易踩的坑:去耦电容的 ESL。Gen5 的上升沿不到 20 ps,寄生电感会拉低高频瞬态电流。我在测试中见过因为电容封装太大导致摆幅下降 150 mV 的情况。尽量用 0201 甚至 008004 的 MLCC。

4.2 时序参数:眼图、抖动与误码率

时序说白了就是让数据采样点落在眼睛最宽的地方。Gen5 的 UI 只有 31.25 ps,相比 Gen4 直接砍半。抖动分配必须严格。我习惯用下面这张表跟 SI 工程师对齐目标:

时序项目Gen5 要求实战余量建议
总抖动 (TJ@1e-12)≤ 0.3 UI留 15% margin
随机抖动 (RJ, σ)≤ 0.5 ps≤ 0.35 ps
确定性抖动 (DJ)≤ 2.0 ps≤ 1.5 ps
眼高 (Eye Height)≥ 100 mV≥ 120 mV
眼宽 (Eye Width)≥ 0.5 UI≥ 0.6 UI
误码率 (BER)≤ 1e-12目标 ≤ 1e-14

我有个心得:时钟恢复环路带宽对抖动分离影响很大。在仿真中故意调大 PLL 带宽能帮你看到更多低频抖动,便于提前优化走线长度差。

为什么会重点看 DJ?因为过孔、连接器、PCB 介质粗糙度都会引入 ISI 和串扰。我记得一个项目,Gen5 通道里有对 BGA 过孔反焊盘没做,DJ 直接多出 1.3 ps,加上去后眼图就闭上了。

4.3 损耗参数:插损、回损与串扰

Gen5 的损耗预算比 Gen4 苛刻得多。芯片到芯片的通道插损通常要控制在 ≤ 25 dB @ 16 GHz。注意,这里说的是奈奎斯特频率 16 GHz,不是 32 GHz。

损耗类型目标值 @16GHz我的工程经验
插入损耗 (IL)≤ 25 dB最好留 2~3 dB 余量
回波损耗 (RL)≥ 12 dB过孔阻抗跳变区容易超标
差分-差模串扰 (NEXT/FEXT)≤ -35 dB≤ -40 dB 更稳妥
共模抑制 (CMRR)≥ 20 dB来自 TX 共模不平衡

核心逻辑:IL + RL + 串扰 < 损耗预算。 我做过一个 10 层板案例,背钻深度误差造成过孔余桩 5 mil,插损在 16 GHz 多出了 2 dB,直接导致通道裕量不足 0.2 dB。最后换了一家 PCB 厂才解决。

哦对了,走线宽度公差也容易被忽视。Gen5 差分线阻抗通常要求 85±5% 欧姆,但厂家的蚀刻补偿不准可能让实测阻抗跑到 95 欧姆,回损就掉下来了。我建议在 layout 阶段就跟 PCB 供应商确认线宽和铜厚统计分布。

4.4 知识体系一览

PCIe Gen5 电气参数知识框架 PCIe Gen5 电气参数要求 电压参数 差分摆幅 · 共模电压 去耦 · 容差 时序参数 眼图 · 抖动(TJ/RJ/DJ) BER · 时钟恢复 损耗参数 IL · RL · 串扰 共模抑制 · 损耗预算 设计注意点: 1. 电压:实际摆幅需补偿 PCB 损耗,共模噪声 ≤ 50 mVpp 2. 时序:总抖动 0.3 UI 上限包含 ICC 和通道 ISI 3. 损耗:优先控制过孔背钻精度和介质粗糙度 4. 三者相互制约:高损耗 → 回波变差 → 抖动增加 → 眼高降低

我画这张图时特意把电压、时序、损耗连接起来,因为实际调板子时它们是一个闭环。比如你改善过孔阻抗,回损好了,抖动也跟着降,眼高自然上去。所以别只盯着一个参数看。