第3章 物理层基础:高速串行收发器(SerDes)原理、差分信号与共模电压、预加重/去加重技术

JESD204B 跑得再快,最终也得落到物理线上。我习惯把物理层比作通信系统的“地面”——协议栈往上叠多高,地面不稳全都白搭。这一章咱们就聚焦 SerDes、差分信号和预加重这三个硬家伙。

3.1 高速串行收发器(SerDes)的核心原理

SerDes 全称 Serializer/Deserializer,干的事很简单:把多路并行数据变成一串高速差分信号发出去,收端再拆回并行。为什么非要这么折腾?你看看 PCB 上走 12 位并行总线,时钟频率 1GHz,光是等长、串扰、时序就能把人逼疯。

JESD204B 用的 SerDes 通常基于 8B/10B 或 64B/66B 编码。我个人更偏爱 8B/10B——直流平衡、游程控制、内嵌时钟恢复,虽然开销 25%,但调试时眼睛图一看就知道链路好不好。

核心逻辑: 发送链路 → 并行数据 → 编码 → 并串转换 → 差分驱动 → 信道 → 接收均衡 → CDR → 串并转换 → 解码 → 并行数据

3.2 差分信号与共模电压

JESD204B 物理层强制使用差分信号。为什么?抗干扰能力强啊——外部噪声同时耦合到 P 和 N 两条线上,差模接收端一减就抵消了。实际项目中我在 Xilinx 的 GTH 上遇到过共模电压漂移导致误码率飙升的情况,查了半天发现是参考电容焊错了位置。

差分信号的两个关键参数:

  • 差模摆幅(VOD):一般 200~1200mV,JESD204B 推荐 800mV(3.3V 电源下)
  • 共模电压(VOCM):发送端输出共模,通常 0.1~1.5V,AC 耦合后由接收端终端电阻偏置决定

你想想看,差分对的两条线如果长度不一致,或者阻抗不连续,共模就会转成差模噪声。我建议 PCB 走线时严格等长,并保持 100Ω 差分阻抗。

经验之谈: JESD204B 的 RX 端通常内置 100Ω 终端电阻和固定共模偏置。如果你用直流耦合,必须确保 TX 和 RX 的共模电压匹配;用 AC 耦合则可以忽略直流共模,但要注意低频截止频率不要影响信号质量。
差分信号 vs 单端信号关键对比
参数差分信号单端信号
抗干扰能力强(共模抑制)弱(噪声直接叠加)
EMI 辐射低(磁场互相抵消)高
信号摆幅可低至数百 mV通常 1.8V~3.3V
功耗低(小摆幅)较高
PCB 走线需要等长、差分阻抗单线 50Ω

3.3 预加重与去加重技术

高速信号在 PCB 上走,高频分量衰减比低频严重得多——这就是信道损耗。结果就是 0→1 的跳变变得圆滚滚,眼睛图闭合。怎么办?预加重(Pre-Emphasis)和去加重(De-Emphasis)就是用来对抗这个的。

两者本质一回事:发送时增强高频分量,提前补偿信道的高频损耗。预加重是提高第一个符号的幅度,去加重是降低后续符号的幅度。

我记得有一次调试 12.5Gbps 的 JESD204B 链路,眼图完全闭合。我尝试打开-3.5dB 的去加重,眼睛立刻睁开。那感觉就像近视眼戴上眼镜。

避坑指南: 我曾经在一个项目里把预加重加过头,导致低频分量不足,接收端 PLL 锁相失败。预加重不是越大越好,建议从 0dB 开始,按 0.5dB 步进往上调,同时看误码率(BER)和眼图。

3.4 物理层知识体系图

下面这张图把本章几个核心概念串起来——收发器结构、差分信号、均衡环节。你一看就明白它们的层级关系。

JESD204B 物理层知识体系 发送端 SerDes 并转串 + 8B/10B 编码 差分驱动 VOD = 800mV, 100Ω 预加重 / 去加重 补偿信道高频损耗 传输信道(PCB 走线 + 连接器) 损耗 ≈ 0.5dB/GHz/inch,高频衰减严重 接收均衡 CTLE + DFE CDR 时钟恢复 从数据边沿提取时钟 接收端 SerDes 串转并 + 8B/10B 解码 要点总结 差分信号抑制共模噪声,预加重补偿信道损耗,CDR 从数据中恢复时钟 三者共同保障 JESD204B 在 12.5Gbps+ 速率下可靠运行

3.5 共模电压的实战考量

共模电压容易出问题,我得多说两句。JESD204B 发送端输出共模典型值约 0.6V(以 3.3V 电源为例),但接收端内部偏置可能不同。如果直流耦合,共模不匹配会让电流注入接收端前端放大器,轻则降低灵敏度,重则烧毁器件。

我建议你在链路调试初期一律使用 AC 耦合电容(典型值 100nF)。这能切断直流共模通路,让两端共模独立。代价是瞬态响应变慢——上电后需要等 RC 建立时间才能传输数据。

小技巧: 检查共模电压是否合适的一个土办法:在差分对的单端信号线上挂示波器,看高低电平是否对称。如果上下幅度不一致,共模可能偏了。

3.6 预加重 / 去加重的实际配置

不同芯片厂商的预加重实现方式略有差异,但概念统一。我整理了一个常见去加重配置参考表:

数据速率 (Gbps)PCB 走线长度 (inch)推荐去加重 (dB)备注
3.125<100 ~ -1.0短距可不开
6.2510~20-1.5 ~ -3.0中等长度
12.520~30-3.0 ~ -5.0长距需配合 CTLE

调预加重要关注两个点:一是看眼图高度和宽度,二是看误码率。我习惯先调接收端的 CTLE,把眼图初步打开,再去微调发送端去加重——因为接收端的均衡更贴近实际情况。

再提醒一次: 预加重不是万能的。过强的预加重会产生过冲,反而引起接收端限幅失真。我曾经被一块板子折腾了两天,最后发现只是预加重设大了 1dB——眼图从闭合变成了“蝴蝶结”,根本收不回来。

好了,物理层这些基础概念你心里有数了。接下来就要面对真正的链路建立过程——码组同步、初始 lane 同步,那才是 JESD204B 协议最精髓的部分。