3. 幅度参数定义:摆幅、VOD、VSE 与预加重

大家好,我是做信号完整性测试的老工程师。今天咱们来聊聊 PHY 发射幅度那几个关键参数。说实话,这章内容可能看着有点枯燥,但实际调试时,它们就是你的眼睛和耳朵。测不准幅度,后面全白搭。

核心观点: 摆幅、差分输出电压(VOD)、电压摆幅效率(VSE)以及预加重的幅度变化,共同决定了链路能否在损耗下正确传数。少一个参数,排查问题都费劲。

3.1 摆幅(Vswing)—— 信号的最大“嗓门”

摆幅,说的就是信号从最低点到最高点能跳多高。单端信号看的是对地电压范围;差分信号看的是正负端之间,就是 Vod 的峰峰值。我习惯叫它“信号嗓门”。嗓门太小,接收端听不清;嗓门太大,EMI 又压不住。

你想想看,PCIe Gen5 的发射器要求差分摆幅 0.8V ~ 1.2V(峰值)。如果测出来只有 0.6V,多半是驱动能力调弱了,或者链路里有个阻抗塌陷。我在某款 FPGA 项目里就遇到过:芯片内部 LDO 压降导致摆幅比 spec 低了 15%,结果后端误码率直接飙到 1e-6。

标准单端摆幅典型值差分摆幅典型值测试条件
PCIe Gen30.5V ~ 0.6V1.0V ~ 1.2VCTLE 关断, 50Ω 负载
USB 3.00.4V ~ 0.5V0.8V ~ 1.0V无预加重, 短测试码
10GBASE-KR0.55V ~ 0.75V1.1V ~ 1.5VAN 阶段, 自动协商幅值
小技巧: 摆幅波动的根源往往是电源纹波。测试时用 DC 耦合再减去直流分量,能看得更清楚。

3.2 差分输出电压 VOD —— 驱动器的“力气”

VOD,全称 Differential Output Voltage。跟摆幅不一样,摆幅说信号能跑多宽,VOD 说的是驱动器稳定输出时正负之间的电压差。说白了,就是驱动器有多“大力”。

按 IEEE 规范,VOD 测量是有时间窗的。通常在 UI 中间取一段,比如 0.25UI 时段的平均值。我早期不懂,直接用全波形峰峰值当 VOD,结果跟 spec 对不上,被客户问得一愣一愣的。

// 伪代码:VOD 测量门限
VOD_high = median(v_od[t] for t in range(0.4UI, 0.6UI))
VOD_low  = median(v_od[t] for t in range(0.9UI, 1.1UI))
VOD      = VOD_high - VOD_low

为什么要在 UI 中间取值?因为过冲、振铃干扰都在转换区。避开它们,才能拿到真正的直流驱动能力。嗯,这里要注意,如果预加重打开,VOD 会跟着变化,后面会聊。

曾经踩过的坑: 某次测试 SATA 3.0,示波器参考地没接好,VOD 读数忽高忽低。折腾半天才发现是共模噪声偏了 50mV。之后我每次测 VOD 都先看共模电压——稳定了再采数据。

3.3 VSE(电压摆幅效率)—— 每一伏特花的“性价比”

VSE 全称 Voltage Swing Efficiency,计算公式很简单:

VSE = (差分摆幅) / (电源电压) × 100%

它反映的是 PHY 把电源效率转换成信号幅度的能力。1.8V 电源,差分摆幅只做到 1.0V,那 VSE ≈ 55.6%。如果同样电源能做到 1.4V,VSE ≈ 77.8%,说明驱动级设计更高效。

我个人习惯把 VSE 当作功耗优化的路标。做 100G 以太网的时候,PHY 总功耗空间很小,VSE 每提高 5%,能省下大约 30mW 散热预算。但别盲目追求高 VSE——预加重、de-emphasis 都会消耗额外的电压裕量。

电源电压差分摆幅VSE典型场景
1.8V1.0V55.6%低功耗 USB 3.2
1.8V1.2V66.7%PCIe Gen3
1.8V1.4V77.8%高性能短链路
另一个视角: VSE 越低,说明信号链路里“浪费”在共模、偏置、过冲上的电压越多。调试时如果 VSE 异常偏高(超过 85%),那可能驱动管已经进入饱和区,波形会削顶。

3.4 预加重幅度 —— 人为“加重”的信号技巧

预加重,也叫发射均衡(Transmitter Equalization)。说白了,就是让第一个比特跳变时幅度大一点,后面连续的稳定电平幅度降一点。这样经过有损耗的通道后,频率响应被补偿,接收端看到的信号边缘更陡、眼图更张开。

预加重的幅度通常用 dB 表示。比如 +3dB pre-emphasis 表示第一个比特幅度是后续幅度的 1.41 倍。幅度缩减后的电平叫 de-emphasis 电平,我习惯把这两个合起来叫“预加重幅度变化”。

// 预加重幅度计算
pre_emp_dB = 20 * log10(V_first / V_steady)
// 例如 V_first=1.2V, V_steady=0.9V => pre_emp ≈ 2.5dB

测试时怎么测预加重幅度?方法很直接:抓一个跳变序列(比如 0 1 0 1 0 0 0 0 1 0 1 0),取第一位电压和稳定后的电压,做比值。我曾经在 Thunderbolt 4 验证中遇到过:预加重度设置正确,但实际波形里第一个比特幅度明显偏小,最后发现是 TX 端的 de-emphasis 编码表烧错了。

建议: 预加重幅度最好用长伪随机码(PRBS31)测,不要只测单一跳变模式。因为工艺偏差会导致不同码型的 pre-emphasis 响应不一致。
注意: 预加重并非越重越好。过大的预加重会在接收端产生 ISI 下冲,反而恶化眼高。我见过某 25G 链路加了 6dB 预加重,眼高从 300mV 降到 180mV——因为过冲后的振铃抵消了信号能量。经验值:Channel Insertion Loss 每增加 3dB,预加重大概多调 1dB。
PHY发射幅度参数关系图 PHY发射幅度参数核心关系 PHY发射信号 摆幅(Vswing) 差分输出电压(VOD) 预加重幅度(dB) VSE(效率) 三个幅度参数 + VSE,共同决定信号能否在有损信道中被正确接收

这张图把四个参数的关系理清楚了:摆幅是基调,VOD 是稳定力量,VSE 是效率标尺,预加重幅度是应对损耗的“变调”。测试时,不仅要看每个参数是否在 spec 内,还要看它们之间的耦合。比如预加重开大了,摆幅可能变矮、VOD 可能抖动——这些变化都可能影响眼图模板的测试结果。

总结: 幅度参数不是孤立指标。摆幅决定眼高上限,VOD 决定直流电平稳定性,VSE 体现设计效率,预加重幅度决定频率补偿强弱。我在做 112G PAM4 项目时,这四个参数改了又改,最后靠它们之间的平衡找到了眼图最优解。