4. 发送端电气参数
好了,咱们今天来聊聊发送端的电气参数。这一块,说白了就是看芯片往外吐的信号到底干不干净。我刚开始做PCIe测试那会儿,第一反应就是——这眼图怎么这么难闭上?
信号质量要是不过关,链路训练练到天荒地老也练不通。**CTS里的这些电气参数测试,就是给发出去的信号做个体检。**
4.1 电压幅度(Voltage Swing)
幅度,就是信号的差动输出电压(Vdiff)。它反映的是信号的“力道”。Gen4规定在 400mV ~ 1200mV 之间,典型值是800mV。
- 标准出处: PCIe Gen4 CTS 4.2.1.1.
- 测试工具: 实时示波器(带宽≥20GHz)+ 差动探头。
- 测量方法: 直接测量差动波形中“+1”和“-1”电平之间的差值。
这里有个地方我得提醒你。你探头点下去那个瞬间,测到的幅度其实已经包含了PCB走线和探头本身的衰减。如果衰减太大,测出来的值可能就不达标了。我的习惯是,在板上留一个近端测试点,用SMA头引出,这样能最大程度保证信号完整性。
4.2 上升/下降时间(Rise/Fall Time)
这个参数描述的是信号从0变到1,或者从1变到0到底有多快。你想想看,如果信号过渡太慢,接收端在采样的时候就容易懵掉,不知道你给的到底是0还是1。
标准定义是20%到80%。Gen4的速率是16 GT/s,一个UI(单位间隔)大概是62.5 ps。上升/下降时间如果超过0.3个UI(大约18.75 ps),就容易出问题。
测试方法很直接,在示波器上打开测量项就行。但我必须要说一句——避坑指南在这里:探头的地线一定要短!
4.3 抖动(Jitter)
抖动,是信号边沿没有踩在准确的时间点上。说白了,就是信号“不听话”。
抖动一般分两类:
| 类型 | 来源 | 特征 |
|---|---|---|
| 随机抖动(RJ) | 热噪声、散粒噪声 | 高斯分布,无界,无法根除 |
| 确定性抖动(DJ) | 串扰、电源纹波、阻抗不匹配 | 有界,有规律可循 |
测试方法一般是用示波器测 TIE(时间间隔误差)。采集足够多的边沿位置,跟理想位置做差,然后统计分析。
我个人习惯重点看 DJ。为啥?因为 RJ 可以通过收发端的 CDR(时钟数据恢复)在一定程度上容忍掉,但 DJ 是实打实的系统问题。有一次,一个待测件的总抖动总是超标,我用频谱分析发现,是隔壁电源模块的开关频率(3 MHz)耦合到了高速线上,形成了明显的周期性抖动。
4.4 眼图裕量(Eye Diagram Margin)
眼图,是衡量信号质量最直观的指标。眼图睁得越大,系统越稳定。
关键要看两个东西:
- 眼高(Eye Height): Gen4 CTS要求 > 175 mV。
- 眼宽(Eye Width): Gen4 CTS要求 > 0.3 UI。
设置示波器到眼图模式(余辉显示),用 PRBS7 测试码型。为什么用 PRBS7?因为它产生的比特流足够随机,能模拟真实数据的统计特性,又比 PRBS31 短很多,测试时间快。
经验分享:看眼图不要只盯着眼高眼宽,还要注意眼图中间的 “双线”。双线很粗,说明抖动大。我见过好几个项目,眼图高度是够的,但因为抖动太大,导致误码率就是下不去。
4.5 测试体系知识图谱
为了让你直观理解这四个参数怎么协同作用,我画了张图。你一看就明白了。
4.6 参数间的关系
上面这张图,我想跟你强调两个逻辑关系:
- 眼图裕量 = f(幅度, 上升/下降时间, 抖动)。 这三个参数直接决定了眼图的睁开程度。幅度太小,眼高不够;边沿太缓,眼宽不够;抖动太大,眼图直接模糊掉。
- 测试平台(示波器、探头、BERT) 是所有这些测试的基础。仪器不行,你测得再认真也是白搭。我个人建议,测 Gen4 的示波器至少要有 20 GHz 带宽,探头地线要小于 5 mm。