4. 信号完整性与眼图:损耗、反射、串扰对眼图的影响

好了,我们直接进入正题。

眼图不是凭空产生的,它背后反映的是实实在在的物理信道问题。很多工程师盯着眼图看半天,觉得“咦,眼睛睁不开了”,但说不清楚到底是谁在捣乱。我告诉你,信号完整性里的三大元凶——损耗、反射、串扰,基本能把眼图给毁干净。

这一节我们就把这三大元凶一个个拎出来,看看它们是怎么在眼图上“画符”的。

4.1 损耗——眼图闭合的罪魁祸首

损耗这个词,说白了就是信号越跑越弱。

高频信号在PCB走线或者电缆里传播时,能量会慢慢消耗掉。尤其是高频分量,损耗比低频严重得多。你在发送端看到一个方方正正的信号,到了接收端,边沿变圆了,幅度变矮了,眼高掉了,眼宽缩了。

为什么?因为信号的上升沿和下降沿包含大量高频成分。这些高频成分被损耗吃掉后,边沿就钝了,眼图的“眼皮”就塌下来了。我在一个25Gbps的项目里遇到过,背板走线长了40厘米,接收端的眼图几乎闭合,当时以为是芯片问题,查了一个礼拜,最后发现就是损耗惹的祸。

关键指标:

  • 插损(Insertion Loss):直接决定眼高和眼宽。单位是dB,越大越糟糕。
  • 回损(Return Loss):反映阻抗匹配,影响眼图抖动。

你想想看,一个10Gbps的NRZ信号,奈奎斯特频率是5GHz。如果走线在5GHz处的插损达到15dB以上,接收端看到的信号幅度连发送端的三分之一都不到。这时候眼图就是一条窄窄的缝。

我的经验:判断是不是损耗导致的眼图闭合,有一个简单办法——看眼图的交叉点。如果是损耗主导,交叉点附近会很干净,只是眼高变矮;如果交叉点附近出现毛刺或抖动放大,那通常还有别的问题。

4.2 反射——眼图里的“鬼影”

反射这个东西,我刚开始做SI的时候吃过不少亏。

反射的本质是阻抗不连续。信号在传输线上跑,突然遇到一个阻抗变化的地方——比如过孔、连接器、线宽突变——一部分能量就被弹回来了。这个弹回来的信号会和原来的信号叠加,在眼图上形成一些莫名其妙的“鬼影”。

具体表现是什么?

  • 过冲(Overshoot):眼图的上眼皮会多出一截尖峰。
  • 振铃(Ringing):信号跳变之后来回震荡,眼图上方和下方出现波纹。
  • 台阶(Steps):眼图的眼皮不是平滑的,而是有台阶状突起。

我曾经调试一个PCIe Gen4的链路,眼图在过冲处比正常值高了将近200mV。查来查去,是一个BGA焊盘处的阻抗没控制好,走了50Ω的线,焊盘却变成70Ω。改了焊盘形状之后,过冲立刻降下来了。

注意:反射导致的问题有时和损耗很相似。但有一个典型区别——反射会在眼图的不同比特位上产生不同影响,比如“101”和“110”组合的眼孔形状不一样。如果每个比特眼开度差不多,那多半是损耗;如果某些比特眼开明显更差,反射就在捣鬼。

4.3 串扰——眼图上的“噪声毛刺”

串扰,这词听着就让人头疼。它是指相邻信号线之间的电磁耦合。一条线上跳变的时候,会通过互感和互容在相邻线上感应出噪声。

串扰在眼图上怎么体现?你会在眼图的眼皮上看到一些细碎的毛刺,或者眼图中间出现额外的抖动。严重的时候,眼图会被这些毛刺切割得支离破碎。

我以前做过一个DDR4的设计,数据线之间的串扰导致了大约30ps的抖动。本来时序余量就紧张,这一下直接让眼图报废。后来加粗了线间距,把微带走线的线距从4mil改到6mil,串扰降低了将近40%。

串扰的种类你需要知道:

类型 成因 眼图影响
远端串扰(FEXT) 容性和感性耦合叠加 在接收端产生脉冲噪声,眼图出现尖锋毛刺
近端串扰(NEXT) 容性和感性耦合相减 在发送端产生噪声,通过反射传到接收端,增加抖动

记住:串扰的大小和线间距、耦合长度、信号边沿速率都有关系。边沿越陡,串扰越大。这也是为什么现代高速设计里要控制信号摆率和加长线距的原因。

你可能会问:损耗、反射、串扰,这三个同时出现怎么办?

嗯,这种情况在真实项目中非常常见。我见过一块板子,损耗让眼高只剩200mV,反射在眼图中间加了大概50ps的抖动,串扰又在眼皮上弄了些毛刺。三个因素凑在一起,眼图基本就是一个“眯着眼的熊猫”。

判断顺序:我自己的实践顺序是——先看损耗,因为它是长期积累性的;再看反射,它造成的非对称性最明显;最后看串扰,尤其是在高速多通道场景下。用眼图你没法直接区分三者的贡献,但可以借助仿真和测量来分离。比如用TDR看反射峰,用S参数看插损和串扰。

4.4 三者的综合影响——知识图

下面这张图把三个因素的影响和对应的眼图表现画了出来,你一看就明白。

信号完整性三因素对眼图的影响 损耗 高频能量衰减 反射 阻抗不连续 串扰 相邻信号耦合 眼图表现 • 眼高下降 • 边沿变缓 • 眼宽收缩 眼图表现 • 过冲振铃 • 眼皮台阶 • 非对称闭合 眼图表现 • 毛刺噪声 • 抖动增加 • 眼图切割 综合决定眼图质量

这张图我想强调一点:三个因素不是各自为战的,它们会互相影响。比如,串扰引起的噪声经过反射之后会被放大,损耗让信号变弱之后对噪声更敏感。你调CTLE和DFE的时候,不能只看一个方面。

最后提醒一句:眼图只是一个“症状”的展示,不是“病因”。看到眼图不好,不要急着上均衡器。先把信道本身的损耗、反射、串扰问题处理好,才是正路。我在项目里吃过这个亏——上来就调CTLE的增益,结果串扰噪声也跟着放大了,眼图反而更差了。