3. 眼图退化指标:眼图闭合原因与信号完整性退化

好,咱们直接切入正题。眼图闭合这件事,是我在测试台上最不想看到的画面。说白了,眼图就是信号质量的“心电图”。一旦它开始闭上,就意味着链路里出问题了。

3.1 眼图闭合的核心指标

评判眼图好坏,不是光用眼睛看。我有几个必看的量化指标,你可以把它当成“体检报告”。

指标 定义 什么情况算“退化”
眼高 眼图垂直开口的高度 低于接收端灵敏度阈值
眼宽 眼图水平开口的时间宽度 小于1个UI(单位间隔)的70%
抖动 信号边沿相对于理想位置的偏差 抖动超过UI的10%就会很麻烦
信噪比 信号幅度与噪声幅度之比 低于6dB容易误码

我的经验: 有一次在实验室测一个PCIe Gen4的板子,眼高明明有250mV,按理说没问题。结果眼宽只有0.55 UI,数据死活通不过。后来发现是驱动器的预加重没调好,边沿过冲导致抖动暴增。所以,看眼图不能只看高度,宽度和抖动同样致命。

3.2 眼图闭合的物理原因

为什么会闭合?我归纳为三大类。你想想看,任何一个高速信号从发送端跑到接收端,路上全是坑。

3.2.1 阻抗不连续

这个最常见。信号走在50欧的走线上,突然遇到一个过孔或者连接器,阻抗跳到了70欧。这一跳就产生反射,反射回来的信号会叠加到下一个比特上。

  • 过孔残桩: 我之前做一个25Gbps的项目,就因为差分过孔的残桩没背钻,眼图里直接多了一个“鬼影”眼。测量时吓一跳,以为芯片坏了。
  • 连接器阻抗: 连接器的寄生电容在高速下会产生阻抗凹陷。我曾经遇到一个情况,连接器厂家给的S参数看着挺好,但实际焊上去,眼图就缩了。后来发现是测试夹具的焊盘设计不合理,寄生电容把高频能量都吸走了。

3.2.2 损耗与趋肤效应

信号高频分量在传输过程中衰减比低频快。这就是趋肤效应和介质损耗。结果就是:跳变沿变缓,眼图垂直方向缩小,水平方向抖动增加。

避坑指南: 我曾经为了省成本,在一条长走线上用了普通FR4板材,中间还没加均衡。结果码间干扰(ISI)严重到眼图完全闭上了。后来换了低损耗材料,并加了CTLE,眼图才重新张开。记住:长走线必须配均衡,绝不是把线走通就行。

3.2.3 串扰与电源噪声

串扰分为近端串扰(NEXT)和远端串扰(FEXT)。电源噪声也会通过芯片的供电网络调制到信号上。

  • 串扰影响: 耦合过来的能量会作为共模噪声,直接降低信噪比。我在调一个DDR4的信号时,发现眼图上有规律的毛刺。一查,是旁边的时钟线与数据线距离太近了,串扰导致数据眼图出现周期性塌陷。
  • 电源纹波: 电源上的100mV纹波,会通过输出驱动器直接窜到信号上。我建议测眼图时,顺便看一下PDN(电源分配网络)的阻抗曲线。

3.3 信号完整性退化如何影响眼图

好,现在把上面的原因串起来,看看眼图是怎么一步步“生病”的。

  1. 损耗导致上升沿变慢: 信号跳变不够陡,眼图垂直开口变小。
  2. 反射导致过冲/下冲: 眼图顶部和底部会变“毛躁”,甚至出现台阶。
  3. 抖动导致边沿模糊: 多个比特累积的抖动叠加,让眼图的交叉点变粗,水平开口收窄。
  4. 噪声导致眼瞳模糊: 随机噪声让眼图内部的“亮区”不再干净,而是变成一片灰雾。
眼图退化路径图 眼图退化路径图 发送端信号 阻抗不连续 趋肤/介质损耗 串扰 + 电源噪声 反射/过冲/下冲 抖动累加/边沿模糊 眼图闭合 眼高↓ 眼宽↓ 抖动↑ 噪声↑ 提示:信号从发送端到接收端,无论哪个环节出问题,最终都会反映到眼图中。

特别注意: 眼图闭合不是突然发生的。它是一个渐变过程。我曾经遇到过调试人员说“眼图昨天还好好的,今天突然闭了”。其实不是突然,而是温度变化或者电源偏移让余量耗尽。所以,建议做眼图应力测试,即在极限工况下看它是否能撑住。

3.4 如何量化评估退化程度

量化能避免拍脑袋。我个人习惯用这个步骤来评估退化严重程度:

  1. 测眼高: 用示波器读取眼图的中点电压。如果低于接收端规格,直接判死刑。
  2. 测眼宽: 看交叉点之间的时间宽度。如果低于0.7 UI,大概率会误码。
  3. 测抖动峰峰值: 分离随机抖动和确定性抖动。如果总抖动超过0.1 UI,必须找原因。
  4. 测眼图模板: 模板测试能直观告诉你哪些区域触碰到禁区了。
评估等级 眼高(mV) 眼宽(UI) 动作建议
良好 大于300 大于0.85 可以量产
一般 200 ~ 300 0.70 ~ 0.85 需关注,建议优化
危险 小于200 小于0.70 必须改设计,否则批量返工

嗯,这里要注意。上面这个表只是参考。不同协议有自己的容限。比如USB 3.2的眼图模板和DDR4的完全不一样。你干活的时候,得先看协议规范。

3.5 一个真实的案例

分享一个我踩过的坑。

有次做一款SerDes芯片的验证。PCB布局时,为了节省空间,把一组高速差分线绕了一个大弯。结果在示波器上一看,眼图交叉点上的抖动特别大,眼宽只有0.61 UI。

  • 排查过程: 一开始怀疑是芯片驱动问题。换了芯片还是一样。后来用TDR一测,发现那个大弯的位置阻抗降到了42欧姆。
  • 根因: 走线转弯时没有做圆弧处理,直角拐弯导致特性阻抗突变,产生了反射。这种反射叠加后,数据边沿来回振荡,抖动就上去了。
  • 修复: 改版后把锐角改成了圆弧走线,并在拐弯处添加了共面地过孔。
  • 结果: 眼宽恢复到了0.88 UI,抖动大幅下降。那批出货再也没出问题。

我的习惯: 现在每次画高速走线前,我都会先规划好阻抗连续区域。过孔、连接器、拐角的地方,我一定会留出TDR测试点。别看这多一步,能省好多排查时间。