第三章 高频补偿原理:预加重与均衡,CTLE的传递函数
各位好,我是老张。今天咱们聊聊高频补偿背后的那点事。很多刚入行的朋友总觉得CTLE就是个高通的RC电路,调几个电阻电容就行了。说实话,我当年也这么想,直到有一次在10Gbps的项目上眼睁睁看着眼图怎么都打不开,才老老实实把传递函数从头捋了一遍。
高频补偿的核心,说白了就是和通道损耗对着干。你想想看,一块FR4板子,10cm的走线就能把10GHz的信号吃掉一大半。不用点手段,接收端根本认不出是1还是0。
3.1 预加重与去加重:发端先动手
补偿可以放在发端,也可以放在收端。发端的手段主要是预加重和去加重。
- 预加重(Pre-emphasis):发送端把高频分量额外放大,让它们通过通道后刚好和低频平齐。但代价是增大了总发射功率。
- 去加重(De-emphasis):保持高频不变,压低低频分量。这样做的好处是总功率不增加,而且很多高速标准(比如PCIe、USB)都用它。
我在项目中遇到过一个坑:某芯片手册写了“预加重3dB”,结果文档里附的波形图明明是低频被压低了。后来查标准才发现,人家说的是去加重。所以拿到芯片资料先别急着调参数,看清楚是pre还是de。
| 特性 | 预加重 | 去加重 |
|---|---|---|
| 高频处理 | 提升幅度 | 保持不变 |
| 低频处理 | 保持不变 | 降低幅度 |
| 总功率 | 增大 | 基本不变 |
| 常用标准 | 一些专用链路 | PCIe / USB / SATA |
3.2 均衡的概念
均衡是个更大的范畴:在接收端用一个滤波器,把通道扭曲的波形“拉回来”。CTLE是其中最简单、最常用的一种线性均衡器。
我习惯把均衡看成反向成型。通道是个低通,CTLE就做个高通,让它们的级联响应尽量平坦。这听起来简单,但实际中要考虑噪声,因为高通会把高频噪声也放大。
3.3 CTLE的传递函数
CTLE的经典传递函数长这样:
H(s) = A0 × (s + ωz) / (s + ωp)
其中 ωz 是零点频率,ωp 是极点频率。为了让CTLE提升高频,必须让 ωz 小于 ωp。这样在 ωz 到 ωp 之间的频率段,增益会以约20dB/dec的斜率上升。
如果电路里多用一对零极点(二阶CTLE),传递函数就变成:
H(s) = A0 × (s + ωz1)(s + ωz2) / (s + ωp1)(s + ωp2)
二阶能提供更陡的补偿斜率,但也更容易引入相位失真和过冲。我个人觉得,除非通道损耗特别陡(比如超过15dB @ Nyquist),否则一阶CTLE够用了。
关键参数:
- A0 — 直流增益,通常设置为0~6dB,不要太大,否则低频噪声也放大。
- fz = ωz / 2π — 零点频率,应大致等于通道的-3dB拐点。
- fp = ωp / 2π — 极点频率,一般放在信号带宽附近(比如0.75×符号速率)。
3.4 频率响应与补偿效果
把CTLE传递函数画成波特图,你就能看到一条从低频平直段、到零点开始上升、再到极点处变回平直的曲线。CTLE的补偿能力就是这段上升带的宽度和斜率。
图中清晰展示了预加重、通道、CTLE和恢复信号的流程。右下角的幅频曲线说明,零点 fz 到极点 fp 之间的区域就是CTLE发力的地方。提升量等于A0乘以fp/fz,当然前提是极点足够远。
3.5 设计中的经验法则
说了这么多理论,落地时我一般这样操作:
- 先仿真或用测量得到通道损耗 @ Nyquist频率,记作 L(dB)。
- 估算CTLE需要提供的增益 G ≈ L - 几dB(留点余量给噪声和抖动)。
- 选定零点频率 fz = 0.1~0.3×符号速率,极点频率 fp = 0.7~1.0×符号速率。
- 用公式 G = 20log10(fp / fz) + A0 反算出直流增益 A0,通常不超过6dB。
另外,CTLE后面通常跟着一个限幅放大器或DFE,所以CTLE不追求完美补偿,只要把眼图打开到足够识别即可。过补偿会导致高频噪声过大,反而误码。
一句话总结本章要点:
- 预加重和去加重是发端补偿,CTLE是收端均衡。
- CTLE传递函数 H(s) = A0 × (s+ωz)/(s+ωp),零点<极点才有效。
- 补偿量 = 零点—极点之间的增益差 + 直流增益。
- 避免过补偿,留噪声裕量。