3、信号完整性基础与眼图的关系:反射、串扰、损耗对眼图的影响

咱们做LVDS调试,最头疼的就是看到眼图一团糟。眼图是信号质量的“心电图”,而反射、串扰、损耗,就是导致心电图异常的三个元凶。

我经常跟团队说:“眼图不好看,别急着怀疑芯片,先看看通道上这几样东西有没有搞鬼。” 这一节,咱们就掰开揉碎了讲,它们到底怎么把眼图弄坏的。

下面这张图,是我自己画的影响关系框架,先有个整体印象。

信号完整性三大因素对眼图的影响框架 眼图 反射 串扰 损耗 ▶ 眼高降低 ▶ 眼宽收缩 ▶ 过冲/振铃 ▶ 眼图闭合 ▶ 抖动增加 ▶ 误码率上升 ▶ 眼高衰减 ▶ 上升沿变缓 ▶ 码间干扰 三个因素单独或叠加作用,最终都在眼图上留下痕迹

反射:眼图上的“鬼影”

反射是怎么来的?说白了就是阻抗不连续。信号走在线上,突然遇到一个阻抗突变点,一部分能量就弹回去了——我管这叫“信号撞墙”。

反射这个鬼东西,在眼图上会留下什么痕迹呢?你仔细看:

  • 过冲(Overshoot)和振铃(Ringing) —— 眼图的上方和下方会出现凸起的毛刺,像带了尖刺。
  • 眼高降低 —— 原本干净的“眼睛”变得窄小,左右不对称。
  • 台阶效应 —— 上升沿或下降沿中间出现一个台阶,使得眼图的交叉点偏移。

我记得有一次调试一款相机模组的LVDS链路。眼图测出来,眼高只有标称的70%,而且上升沿有明显的“二次台阶”。我顺着PCB布线一查,原来是中间有一个过孔,过孔阻抗才70Ω,而走线是50Ω。加上去耦电容放的太远,反射电压就一路窜回来了。后来把过孔背钻、调整过孔stub长度,眼高恢复到了92%。

反射对眼图的影响速查表:

阻抗突变类型典型反射系数眼图表现
电感式突变(过孔、连接器)0.1 ~ 0.3上升沿过冲 + 衰减振铃
电容式突变(焊盘、拐角)0.05 ~ 0.2下降沿台阶 + 眼宽变窄
开路/断路≈1眼图完全闭合,出现驻波

我的小经验: 调试时先看眼图的过冲量。如果过冲超过信号摆幅的20%,基本可以判定反射是元凶。用TDR(时域反射计)扫一下线,哪里阻抗跳变一眼就能看出来。

串扰:看不见的“隔壁老王”

串扰这个事,在高速LVDS链路里特别烦人。两条线离得太近,一根线上的信号就会通过电磁耦合干扰到另一根。你想想,那条被干扰的线上原本干干净净的眼图,突然就“长毛”了。

串扰在眼图上的特征很明显:

  • 眼睛左右抖动 —— 串扰通常引起时序抖动,眼图的交叉点宽度变宽(抖动直方图加宽)。
  • 随机毛刺 —— 在眼图中间出现不连续的散点,像被撒了一把芝麻。
  • 差分对内的共模噪声 —— 如果是差分信号,串扰会导致共模电压波动,眼图中心区域出现模糊带。

我们做过一个项目,4对LVDS并行走线,层间间距只有0.2mm。结果眼图一测,抖动超过0.3UI,完全没法用。我后来用仿真一看,近端串扰(NEXT)都到-25dB了。改设计把线间距拉到3W(线宽的3倍),中间加一条地线隔离,串扰降到了-40dB以下,眼图才稳定下来。

曾经踩过的坑: 不要在LVDS差分对之间走任何其他信号线,尤其是时钟线。我见过一个板子,为了节省布局空间,在相邻差分对之间走了一根SPI时钟,结果那根时钟的上升沿直接给旁边LVDS对带来幅度超过100mV的串扰脉冲。拆板飞线才解决。

串扰对眼图的影响可以用下面这个表格来定性地看:

串扰类型耦合机理眼图主要症状
NEXT(近端串扰)容性耦合为主眼图垂直张开度下降,毛刺出现在跳变沿
FEXT(远端串扰)感性耦合为主眼宽收缩,抖动增加,出现码间干扰
共模串扰不对线之间的共模回流眼图中心模糊,噪声基底抬高

损耗:眼图的“杀手”

损耗这件事,其实是最容易被忽视的。很多工程师觉得LVDS是差分信号,抗干扰强,线长点没关系。但实际上一根30cm的FPC排线,在500MHz以上的频率,损耗就能让信号幅度掉一半。

损耗主要包括三大类:

  • 导体损耗(趋肤效应) —— 高频电流只在导体表面走,等效电阻增加。
  • 介质损耗(介电损耗) —— PCB板材的Df(损耗因子)越高,高频能量被介质吸收得越多。
  • 辐射损耗 —— 尤其是在长走线和开放式连接器处,信号能量辐射出去。

损耗对眼图的影响,我总结为“三慢一闭”:

  1. 上升沿变慢 —— 信号高频分量被衰减,跳变沿从陡变缓。
  2. 眼高下降 —— 幅度衰减直接导致眼图垂直张开度变小。
  3. 眼宽收缩 —— 因为上升沿变缓,眼图的“右眼角”变得更圆,有效眼宽减小。
  4. 眼图最终闭合 —— 当损耗大到一定程度,眼图就完全闭合,误码率飙升。

经验数据: 在FR4板材上,500mm的差分走线,1Gbps信号损耗约3dB(幅度降为原来的0.707倍)。如果用FPC排线,同样线长损耗可达6dB。我建议LVDS单端线长尽量控制在300mm以内,超过的话一定要加预加重或均衡器。

说起这个,让我想起去年一个IoT网关项目。客户反馈LVDS链路偶尔丢包,而且温度一高就严重。我测了眼图,在常温下眼高还有800mV,但到了60°C,眼高掉到550mV,而且眼图中间出现了一个明显“闭合区”。后来排查发现,是PCB板材用了高Df的CEM-1(成本低),温度上去后介质损耗剧增。换成普通FR4,眼高稳定性就好了很多。

三者叠加:让眼图雪上加霜

实际系统里,反射、串扰、损耗往往同时存在。你别看单独一项可能都在容忍范围内,加在一起就会让眼图惨不忍睹。

举个例子:一个信号因为损耗已经慢了,再叠加一点点反射造成的过冲,那个过冲就会和后续的码元叠加,形成严重的码间干扰(ISI)。

我常用的排查思路是这样的:

  • 先看眼高和眼宽的值,如果接近芯片规格的极限,优先怀疑损耗。
  • 再看眼图上的毛刺和过冲,如果有明显的振铃,优先查反射。
  • 如果眼图整体抖动大、形状模糊,优先查串扰。

记住一条原则:眼图是结果,不是原因。你盯着示波器上的眼图再怎么调触发电平,也修不好一条坏的链路。咱们要做的,是透过眼图看出是哪个因素在作怪。

实用技巧: 在做眼图测试的时候,建议同时打开抖动分离功能(如TIE分析),看一下抖动是随机抖动(RJ)还是确定抖动(DJ)。如果是DJ占大头,90%是反射或串扰导致的;如果是RJ占大头,就要考虑电源噪声或片内PLL问题了。