第1章 引言:高速串行通信概述与信号完整性挑战

高速串行通信,说白了就是在一根线上把数据以几Gbps甚至几十Gbps的速率丢过去。我们日常用的USB、PCIe、SATA、以太网,都是这个套路。你想想看,为什么不用并行?布线简单、节省引脚、抗干扰强——但代价是接收端得把被信道糟蹋过的信号再“抢救”回来。

1.1 一个典型的串行链路长什么样

我早期做SerDes项目时,总以为把数据送进TX,再从RX拿出来就完了。直到第一次测眼图,彻底懵了——眼图基本闭上了。后来才真正理解链路的每个环节。

一条标准的高速串行链路包含三个部分:

  • 发送端(TX):把并行数据串行化,加上预加重/去加重,推上传输线。
  • 信道(Channel):PCB走线、过孔、连接器、电缆——这是信号被“摧残”的地方。
  • 接收端(RX):CTLE、CDR、DFE,一套组合拳把信号捞回来。

下面这张图是我习惯画给团队看的,把主要模块和信号流串起来:

高速串行通信链路结构 发送端 TX 串行化 预加重/去加重 信道 Channel PCB走线 + 过孔 连接器 + 电缆 接收端 RX CTLE + CDR + DFE 数据恢复 信号衰减 & 畸变

1.2 信号完整性,到底在挑战什么?

信道就像一个低通滤波器。高频分量被衰减,低频分量相对保留。结果就是——一个干净的方波,到了接收端变成了圆滚滚、抖动严重的波形。我遇到过最夸张的一次,14Gbps的信号走了一米长的背板,眼图张开度只剩20%。

主要挑战可以归纳为四大类:

挑战 成因 后果
码间干扰(ISI) 信道带宽不足,前一个比特拖尾叠加到后一个比特 眼图垂直张开度收缩,误码率升高
插入损耗 导体趋肤效应、介质损耗,频率越高损耗越大 信号幅度不足,CDR 锁定困难
抖动 时钟噪声、电源纹波、信道群延迟畸变 数据边沿不确定性,CDR 失锁或误采样
串扰 相邻信号线之间的电磁耦合 额外噪声注入,恶化信号裕量

核心矛盾:信道对信号的高频衰减,导致接收端眼图闭合。CTLE就是用来补偿这个衰减的。但CTLE补偿多少、怎么补偿,直接影响CDR能不能从闭合的眼图中锁出正确的时钟和数据——这是我们整个课程的核心。

1.3 为什么CTLE和CDR之间关系这么微妙?

CDR(时钟数据恢复)需要一个有足够幅度的信号边沿来锁定相位。CTLE把高频增益提上去,信号边沿变陡、眼图打开——CDR自然好锁。

但这里有个陷阱:CTLE过补偿。我在一个PCIe Gen4的项目中吃过亏——为了追求眼图张开度,把CTLE的直流增益压得太低,高频抬得太猛,结果信号过零点产生了巨大的群延迟畸变,CDR反而锁到了错误相位上,误码率飙到1e-4。

⚠️ 重要警示:CTLE不是增益越高越好。理想状态是“刚好补偿信道损耗”,让接收端信号频响接近平坦。过补偿引入的相位失真,会让CDR锁定更糟——而不是更好。

你想想看,CDR本质上是一个锁相环。它需要从数据流里提取过渡边沿。如果CTLE把边沿的位置都“推移”了,PLL就会追着假边沿跑。这就是为什么课程后面会花大篇幅讲CTLE的增益/零极点选择和CDR带宽的配合。

1.4 一点个人习惯:怎么开始分析这类问题

我拿到一个新项目的串行链路,会先做三件事:

  1. 看信道S参数——插损在奈奎斯特频率处是多少dB?滚降斜率多大?
  2. 测PRBS眼图——在不加均衡时,眼高还有多少mV?眼宽多少UI?
  3. 跑链路仿真——CTLE用默认设置,CDR用目标带宽,看看锁定裕量够不够。

这三步走完,基本就能判断CTLE需要调整的方向。别一上来就调均衡器,先让信道说话。我曾经见过有人花了三天调CDR环路参数,结果问题出在CTLE的零点频率选错了——查出来后十分钟就改好了。

💡 经验技巧:在PCB设计初期,尽量控制走线长度不要超过信道能容忍的极限。比如在10Gbps速率下,FR4板材的走线超过30英寸(约76cm)就需要非常强力的CTLE+DFE组合。把走线缩短10英寸,CTLE的负担能降低一个档次。

1.5 本章要点小结

在我们进入CTLE的具体设计之前,先记住这几条:

  • 高速串行通信的核心矛盾是信道衰减与接收端恢复能力之间的博弈。
  • 信号完整性的三大元凶:ISI、抖动、插损。它们全部通过CTLE和CDR产生影响。
  • CTLE是CDR的前置“清道夫”——清得好,CDR才能稳;清过头,CDR反而死得惨。
  • 分析问题从信道出发,不要陷入“先调均衡还是先调CDR”的循环。