3. 物理层基础:CML驱动、交流耦合、接收端均衡、眼图要求
物理层是整个 JESD204B 链路的地基。串行信号从发送芯片出来,经过 PCB 走线、连接器、电缆,再进入接收芯片,这一路充满了各种不理想因素。我调试过不下二十块 JESD204B 板卡,至少有一半的问题最终都出在物理层。所以这块基础打不牢,后面 lane 对齐、Subclass 时钟同步都会跟着出乱子。
核心脉络:CML 驱动输出 → 交流耦合隔直 → 通道损耗 → 接收端均衡 → 眼图合格。每一步都有坑,咱们一个一个来拆。
3.1 CML 驱动——发端必须稳
JESD204B 的物理层驱动器是 CML(Current Mode Logic)。说白了,就是用恒流源在差分对上拉出电压摆幅。典型共模电压是 VCC - 0.4V(比如 1.2V 电源时共模约 0.8V),差分摆幅一般 800 mVpp 到 1.2 Vpp。输出阻抗需要匹配 100Ω 差分。
我在一个 12.5Gbps 的项目里遇到过共模电压漂移。现象是某些板卡偶尔 lane 失锁,抓眼图发现共模从 0.78V 飘到了 0.85V。最后发现是电源退耦不足,CML 驱动器的共模反馈环路被高频噪声干扰了。换了个低ESR电容就稳了。
这里有个容易忽略的点:CML 输出摆幅不能太大也不能太小。摆幅太大,信号边缘过冲严重,EMI 和反射都上来;摆幅太小,接收端灵敏度不够,BER 飙升。JESD204B 标准建议差分摆幅在 800 mV 到 1200 mV 之间,我个人习惯做到 900 mVpp 左右,留一点余量。
3.2 交流耦合——电容选不对,眼图全白费
JESD204B 要求通道必须交流耦合。原因很简单:发送端和接收端的共模电压可能不一样,直流耦合会把共模差直接传过去,导致接收端输入共模超出范围。
耦合电容的选型有几个关键参数:
- 容值:一般在 100 nF 到 1 µF 之间。容值太小,低频分量衰减严重,影响直流平衡恢复;容值太大,瞬态响应变慢,且 PCB 布局占空间。
- 自谐振频率:要远高于数据速率。比如 12.5 Gbps 的第三谐波大约 18.75 GHz,至少选 SRF > 25 GHz 的 0402 或 0201 电容。
- 电压等级:留 2 倍裕量,防止 DC 偏置导致容值下降。
我曾经在一个 10 Gbps 链路上,用了 0603 封装的 100 nF 电容,结果眼图 T₃ 位置出现一个凹陷。查了半天,原来是那个电容的 SRF 只有 4 GHz,在 10 Gbps 的高频分量下已经呈感性了。换成 0402 的 100 nF 电容,立马解决。
避坑:交流耦合位置。如果链路中有连接器或电缆,最好在 接收端 放置耦合电容。放在发端的话,共模反馈环路可能受影响。标准里没强制,但我建议按接收端拓扑走。
3.3 接收端均衡——把被损耗的信号拉回来
PCB 走线、连接器、电缆对高频信号都有损耗。尤其是 FR4 板材,10 Gbps 以上每英寸损耗可能超过 1 dB。如果不做均衡,接收端看到的眼图基本是闭的。
JESD204B 接收器通常包含两种均衡器:
- CTLE(连续时间线性均衡器):对高频分量做增益补偿,提升带宽。CTLE 的增益曲线需要根据通道损耗特性来调。
- DFE(判决反馈均衡器):消除 ISI(码间干扰)的后标,利用前一个码元的判决结果来修正当前码元。DFE 的 tap 数量决定了它能消除多长的 ISI 尾巴。
调试均衡器的时候,我习惯的做法是:先用示波器点测通道 S 参数,算出总的插损曲线。然后让芯片的 CTLE 自动调谐(如果有),再手动微调 DFE 的 tap 系数。如果眼图打开度不够,优先检查 CTLE 的增益是否饱和,再看 DFE 的 tap 权重是不是收敛了。
对了,还有个细节:均衡器的训练序列。JESD204B 在链路初始化阶段有专门的训练模式(Subclass 1 的 SYSREF 对齐后跟着发训练码),接收端利用这段训练码来自适应调整均衡参数。如果你发现链路训练失败,八成是均衡没收敛,这个时候先看接收端的 EQ 状态寄存器。
3.4 眼图要求——合格标准与实测要点
眼图是物理层健康度的直观反映。JESD204B 标准并不直接规定眼图的数值,而是通过 BER(误码率)来间接约束。但实际项目中,我们通常会参考 JEDEC 或厂家建议的眼图模板。
以下是一组常见的高速串行链路眼图要求(以 12.5 Gbps 为例):
| 参数 | 典型要求 | 说明 |
|---|---|---|
| 眼高(Eye Height) | ≥ 100 mV | 差分信号,在 25% 到 75% 的 UI 段内测量 |
| 眼宽(Eye Width) | ≥ 0.25 UI | 以 10⁻¹² BER 为界,等效于 > 20 ps |
| 抖动(RJ + DJ) | ≤ 0.3 UI pp | 其中确定性抖动 ≤ 0.15 UI |
| 上升/下降时间 | 20% – 80% ≤ 0.3 UI | 控制过冲和 EMI |
实测的时候,我建议用示波器打开无限余辉模式,采集至少 1 百万个 UI 的数据,再用抖动分析软件导出浴盆曲线。别只看热眼的瞬时眼图,那玩意会骗人——你以为眼开很大,实际抖动已经把 BER 推上去了。
实用技巧:如果眼图在中心区域有“鬼眼”或者分叉,通常说明均衡器没有完全消除前标或后标 ISI。试试 DFE 的 tap 系数再加一阶,或者增加 CTLE 的高频提升量。
3.5 物理层链路信号流图
下面这张图把整个物理层的信号流程串起来了。从 TX CML 驱动开始,经过交流耦合、PCB 通道、接收端均衡,最后恢复出干净的采样点。每个环节的波形变化我用绿色/蓝色标明了。
3.6 实测避坑经验
总结几个我在现场调试中踩过的坑:
- 电容极性:交流耦合电容肯定用无极性 MLCC,但如果是钽电容或者电解电容(极少用于高速),反接会短路。我见过有人误把有极性的电容串进差分线,直接烧了驱动芯片。
- 回流地孔:高速信号的参考地平面要连续,过孔旁边打地孔。如果差分对跨了参考层,必须加地孔。否则共模辐射和串扰会让你怀疑人生。
- 测试点影响:示波器探头(或者 SMA 接头)会引入额外的容性负载。我习惯在链路中预置测试点,平时用 0Ω 电阻短路,测试时才焊掉电阻接探头。
- 温度漂移:CML 驱动器的共模电压和摆幅会随温度变化。升到 85°C 后,眼高可能下降 20 mV。所以一定要做高低温验证。
如果你在调试时发现眼图符合模板要求但 BER 仍然偏高,先别急着怀疑芯片——检查一下参考时钟的抖动。JESD204B 对参考时钟的抖动要求非常苛刻,很多物理层问题其实是时钟源头带进来的。
最后一个小建议:拿到新板卡,第一件事就是点测每个通道的差分 S 参数(Sdd21)。看看 10 GHz 处的插损是不是在 -15 dB 以内。如果超过了,赶紧改 PCB 叠层或者换低损耗板材。别指望均衡器能补回 20 dB 的损耗——它补得了 ISI,补不了反射。