3、均衡原理:CTLE、FFE、DFE 三种均衡器的工作原理与数学模型
高速串行链路上,信号经过长距离 PCB 走线、连接器、电缆后,会被信道严重「揉捏」——高频衰减、码间干扰(ISI)、反射……说实话,没有均衡器的话,10Gbps 以上几乎没法正常通信。你想想看,眼图可能完全闭合,CDR 根本无法锁定。
我这几年做的项目里,从 12Gbps SAS 到 56Gbps PAM4 链路,或多或少都离不开三种基础均衡器:CTLE、FFE、DFE。它们的定位不一样,数学本质也不一样。今天我把它们揉碎了讲清楚,顺便聊聊我踩过的那些坑。
3.1 CTLE —— 连续时间线性均衡
CTLE 本质是个高通滤波器,或者说是一个带 peaking 的放大器。它的传递函数长这样:
H(s) = A * (s/ωz + 1) / (s/ωp + 1)
通常 ωz < ωp,所以中频段增益被抬起来,补偿信道的高频损失。我在做 25Gbps NRZ 链路时,CTLE 的 peaking 频率设在了 6GHz 左右,但一开始增益给太大,结果把非理想反射的高频噪声也放大了,反面教材啊。
数学模型上,CTLE 是连续时间域的。它不依赖时钟,也不产生闭环稳定性问题。缺点也很明显:它只能做固定形状的频响补偿,对长尾 ISI 效果有限。
3.2 FFE —— 前馈均衡
FFE 是离散时间域的均衡器,结构上就是 抽头延迟线 + 加权求和。你看这张图就明白了:
FFE 的数学表达式是一个 FIR 滤波器:
y[n] = c0·x[n] + c1·x[n-1] + c2·x[n-2] + … + cN·x[n-N]
抽头系数 c0~cN 决定了均衡效果。实际中,FFE 能消除前标 ISI(pre-cursor)和后标 ISI(post-cursor),但会放大噪声,因为它是线性系统。
3.3 DFE —— 判决反馈均衡
DFE 是非线性的——它用历史判决结果来消除当前符号的后标 ISI。数学模型:
y[n] = x[n] - d1·ŷ[n-1] - d2·ŷ[n-2] - … - dM·ŷ[n-M]
其中 ŷ 是判决后的符号(±1 或 ±3 等)。你没看错,它反馈的是判决值,不是原始模拟值。这样做的好处是:不会放大噪声。但风险也很明显——一旦发生误码,错误会传递下去。
我在一个 56Gbps PAM4 项目里就吃过这个亏。信道低频频偏严重,DFE 系数收敛后一直偏高,偶尔一个突发误码导致一连串错误,BER 直接爆了。后来我在 DFE 前面加了 CTLE+FFE,把后标 ISI 的主要部分先处理掉,DFE 只用来擦屁股,情况就好多了。
| 均衡器 | 类型 | 消除 ISI | 放大噪声 | 自适应 | 我见过的坑 |
|---|---|---|---|---|---|
| CTLE | 模拟线性 | 高频补偿 | 是(高频噪声) | 通常固定 | peaking 过大导致自激 |
| FFE | 数字线性 | 前标+后标 | 是(全频带) | 可以(LMS) | 抽头太多不收敛 |
| DFE | 数字非线性 | 后标 | 否 | 可以(LMS) | 误码传播 |
你可能会问:为什么不用 DFE 搞定所有 ISI?因为 DFE 是闭环反馈,误差累积起来很危险。而且它无法处理前标——前标出现在判决之前,DFE 根本看不到。所以实际链路中,CTLE+FFE 先打开一道缝,DFE 再撬开剩下的。