1、SerDes接收端概述
先聊聊SerDes这个东西。说白了,就是一根铜线上同时跑高速数据。发送端把并行数据串成高速串行流,接收端再把它变回并行。听起来简单,但接收端才是真正考验功力的地方。
1.1 SerDes基本原理
SerDes的核心就两个字:串并转换。不过串行之后的信号是通过差分线传输的,两根线互为镜像。好处是抗共模干扰强,信号摆幅还能做得很小。
我早年调一个10Gbps的链路,发现眼图一直睁不开。查了好几天,结果是发送端预加重没打开,接收端均衡再怎么拉都没用。所以记住:SerDes是收发一体的系统,接收端问题常要从发端找。
1.2 接收端架构
接收端由三颗核心模块组成:均衡器(EQ)、时钟数据恢复(CDR)、解串器(Deserializer)。信号进来先过了均衡器,把被信道衰减的高频分量补回来。然后送到CDR,CDR从数据里提取出时钟,再用这个时钟去采样数据。最后解串器把高速串行流转回并行。
我习惯把这三个模块比作接力赛。均衡器是第一棒,把信号“洗”干净。CDR是第二棒,调好节奏。解串器是第三棒,完成格式转换。哪一棒出问题,整条链路就不通。
下面这张图把接收端架构画清楚了,信号从左到右走一遍。
1.3 CDR(时钟数据恢复)
CDR的任务是从随机数据流里挖出时钟。常用的是PLL型CDR和相位插值型CDR。PLL型用VCO去锁,相位插值型借用参考时钟再微调。
我个人更偏好PLL型,因为抖动抑制好。但是PLL锁定时间比较长,功耗也大。如果是多通道应用,相位插值型可以共享PLL,面积和功耗更友好。
1.4 均衡器
均衡器分两种:CTLE和DFE。CTLE是线性模拟滤波器,提升高频增益。DFE是非线性的,靠判决反馈消除码间干扰。通常两者配合使用。
| 类型 | 工作原理 | 优点 | 缺点 |
|---|---|---|---|
| CTLE | 模拟高通/带通滤波 | 功耗低、面积小 | 抑制噪声能力弱 |
| DFE | 前一个判决符号反馈抵消后一个ISI | 对白噪声不敏感 | 会错误传播 |
你想想看,信道损耗越严重,均衡器就要扛越大的增益。但增益太大,CTLE会放大噪声,DFE又容易误码。所以均衡器自适应算法就成了关键。
1.5 解串器
解串器其实就是一组移位寄存器和FIFO。高速串行数据进来,按CDR恢复的时钟移位,存满一个并行字宽度后,用慢速并行时钟取走。
这里容易踩的坑是FIFO的深度和跨时钟域同步。如果读时钟和写时钟不同源,FIFO要么溢出要么读空。我建议直接做异步FIFO,深度至少8个并行字。
1.6 PAM4与NRZ对比
NRZ就是0和1,一个符号传1比特。PAM4用四个电平(00、01、10、11),一个符号传2比特。速率大一倍,但信噪比降了约9.6dB。
| 参数 | NRZ | PAM4 |
|---|---|---|
| 符号速率 | 等于数据速率 | 数据速率的一半 |
| 电平数 | 2 (0/1) | 4 (00/01/10/11) |
| 需要的信噪比 | 低 | 高 (~9.6dB penalty) |
| 均衡复杂度 | 低 | 高 (需要非线性均衡) |
| 典型应用 | ≤56Gbps | ≥56Gbps |
说白了,PAM4就是用更低的信号裕量换取翻倍的速率。我刚开始接触PAM4时很不适应,因为眼图不再是清晰的一个大“眼睛”,而是上下三个小眼。测眼高、眼宽都得用新方法。
嗯,这里要注意PAM4的线性度要求极高。如果发送端或者通道的非线性失真严重,PAM4的四个电平间距就不均匀,误码率会飙升。我曾在调一个56Gbps PAM4链路时,发现中间两个电平几乎叠到一起了,最后查出是接收端TIA的增益非线性造成的。
1.7 本章小结
SerDes接收端是高速链路里最难啃的骨头。均衡器负责修复信号,CDR负责找回时钟,解串器负责格式还原。PAM4因为效率高正成为主流,但测试复杂度也翻倍。掌握好这些基础,后面调试时才能对症下药。