一、信号完整性与链路概览:为什么需要CTLE和CDR?

大家好,我是你们的讲师。今天咱们聊聊高速串行链路里最基础、也最绕不开的问题——信号完整性。说白了,就是信号从发送端到接收端,这一路上到底经历了什么?为什么非得加上CTLE和CDR这两个“救火队员”?

我个人习惯,讲任何系统之前,先看它为什么存在。你想想看,如果信号在芯片内部传输,距离短、干扰小,那根本用不着这么复杂。但一旦信号要跑出芯片,经过PCB走线、连接器、背板,再到另一颗芯片,问题就来了。

1.1 信号在链路中经历了什么?

我刚开始做SerDes那会儿,总觉得信号就是方波,1就是1,0就是0。直到第一次拿示波器看眼图,才发现现实有多残酷。信号经过一段长走线后,眼图几乎闭上了,像一团模糊的毛线。

为什么会这样?主要有三个原因:

  • 高频损耗:PCB板材、铜箔对高频分量有天然的衰减。频率越高,衰减越厉害。结果就是信号的上升沿变缓,像被“磨圆”了。
  • 反射与阻抗不连续:过孔、连接器、走线拐角,这些地方阻抗会突变。信号走到这里,一部分能量被反射回来,造成振铃和过冲。
  • 串扰与噪声:相邻信号线之间的耦合,电源噪声的干扰,都会叠加到信号上。

核心结论:信号经过链路后,幅度变小、边沿变缓、抖动增加。接收端看到的,已经不是发送端那个干净的数字信号了。

1.2 高速串行链路的基本架构

好,既然信号会变差,那接收端就得想办法把它“救回来”。一个典型的高速串行链路架构,我习惯把它分成三段:

发送端(TX):负责把并行数据转成串行,加上预加重或去加重,补偿一部分高频损耗。

信道(Channel):就是PCB走线、连接器、电缆这些物理介质。它是信号劣化的主要来源。

接收端(RX):这是咱们课程的重点。接收端内部有一个处理链,通常包括:

  • CTLE(连续时间线性均衡器):先对信号做高频补偿,把被衰减的高频分量抬起来。
  • VGA(可变增益放大器):调整信号幅度到合适的范围。
  • DFE(判决反馈均衡器):消除码间干扰(ISI),尤其是后标干扰。
  • CDR(时钟数据恢复):从数据中恢复出时钟,并用这个时钟去采样数据。

下面这张图,是我用SVG画的链路架构,你可以直观地看到信号是怎么一步步被“修复”的。

TX 信道 CTLE VGA DFE CDR 发送端 信道 接收端均衡与恢复 眼图:张开 眼图:闭合 眼图:重新张开

1.3 为什么需要CTLE?

CTLE,全称连续时间线性均衡器。它的作用说白了就是“高频补偿”。信道像一个低通滤波器,把信号的高频分量衰减了。CTLE就反过来,提供一个高通特性,把高频分量抬起来。

我在项目中遇到过一种情况:某款芯片在10Gbps速率下,眼图完全闭合。一开始以为是DFE没调好,后来发现是CTLE的增益不够。把CTLE的峰值频率从2GHz调到4GHz,眼图一下就睁开了。嗯,这里要注意,CTLE不是增益越高越好,增益太高会把高频噪声也放大,反而恶化信噪比。

小技巧:CTLE的增益通常用“dB”表示。比如6dB的CTLE,意味着高频分量被放大了2倍。实际调试时,可以从低增益开始,逐步增加,直到眼图张开到满意为止。

1.4 为什么需要CDR?

CDR,时钟数据恢复。它的任务是:从数据信号里提取出时钟,然后用这个时钟去采样数据。

你可能会问:为什么不能直接用发送端的时钟?因为发送端的时钟经过信道传输后,会有抖动和相位偏移。接收端必须自己恢复出一个与数据同步的时钟,才能正确采样。

CDR的核心是一个锁相环(PLL),它通过鉴相器比较数据边沿和本地时钟的相位差,然后调整压控振荡器(VCO)的频率,让时钟始终跟踪数据。

我曾经调试过一个CDR,发现它总是锁定失败。排查了半天,原来是CTLE的输出信号幅度太小,鉴相器根本检测不到数据边沿。所以CTLE和CDR是联动的,CTLE没调好,CDR也工作不了。

避坑指南:我曾经在12.5Gbps的链路中,因为CDR的环路带宽设置太窄,导致它跟不上数据的频率漂移。结果就是误码率飙升。后来把环路带宽从1MHz调到5MHz,问题解决。但带宽也不能太大,否则会引入更多抖动。

1.5 链路预算:一个简单的例子

咱们用数字说话。假设一个链路的参数如下:

参数 数值 说明
发送端摆幅 800 mVpp 差分信号峰峰值
信道损耗@5GHz -15 dB PCB走线+连接器
CTLE增益 +10 dB 高频补偿
接收端灵敏度 50 mVpp CDR能正确采样的最小幅度

计算一下:发送端800mV,经过信道衰减15dB,到达接收端时幅度约为800mV × 10^(-15/20) ≈ 142mV。再经过CTLE放大10dB,变成142mV × 10^(10/20) ≈ 450mV。嗯,远大于50mV的灵敏度,链路预算充足。

但如果信道损耗是-20dB,CTLE只有+8dB,那接收端幅度就只有800mV × 10^(-20/20) × 10^(8/20) ≈ 201mV。虽然还是大于50mV,但别忘了还有抖动和噪声的余量。实际设计中,通常要留6dB以上的余量。

1.6 总结一下

这一章咱们把高速串行链路的基本架构捋了一遍。核心就三句话:

  • 信道会劣化信号,所以需要均衡器(CTLE、DFE)来补偿。
  • 数据需要时钟来采样,所以需要CDR来恢复时钟。
  • CTLE和CDR是联动的,一个没调好,另一个也白搭。

下一章,咱们会深入CTLE的电路实现和参数设计。到时候我会拿一个实际的项目案例,带大家一步步调参数。今天就到这儿,有问题随时交流。


专注资料整理