均衡技术基础
做 USB 3.0 链路调试,绕不开均衡。说白了,高速信号在 PCB 和线缆上跑,高频分量衰减得很厉害。你想想看,5 Gbps 的信号,眼图基本是闭的。要想睁开眼,就得靠均衡技术把它救回来。
我个人习惯把均衡分成两类:发射端干的活,和接收端干的活。发射端负责提前整形,接收端负责补偿。下面一个个说。
为什么需要均衡?
信号过信道,高频部分(陡峭的上升/下降沿)损失最大。结果就是:单个 bit 变圆、变矮,还容易拖个尾巴(ISI,码间干扰)。USB 3.0 的 5 Gbps,符号时长只有 200 ps,这点时间根本不够让信号稳定下来。
我在项目里遇到过一块板子,走线 8 英寸,没加均衡,眼图完全闭合。加上发射端的去加重和接收端的 CTLE 之后,眼高直接拉到 200 mV。所以,均衡不是锦上添花,是必备手段。
发射端均衡:预加重与去加重
发射端均衡就两个派系:预加重和去加重。它们本质是一回事,只是参考电平不同。
- 预加重:把信号翻转后的第一个 bit 幅度抬得更高。例如正常摆幅 400 mV,预加重后第一个 bit 摆到 600 mV,后续 bit 恢复 400 mV。效果上,高频分量被加强。
- 去加重:保持第一个 bit 幅度不变(比如 400 mV),把后续连续的相同 bit 幅度压低(比如压到 200 mV)。效果同样让第一个 bit 相对更高。实际 USB 3.0 规范里多数用去加重,因为容易实现。
你可以在主控的寄存器里配去加重幅度和持续时间。我调试过一个平台,去加重设成 -3.5 dB,眼图张开度最佳;改成 -6 dB 反而过冲太大,接收端受不了。
接收端均衡:CTLE 与 DFE
接收端的活更重。信号经过长距离衰减后,发射端那点补偿不够用,需要接收端再拉回来。
CTLE(连续时间线性均衡器)
CTLE 是个模拟滤波器,对高频信号施加额外增益,对低频信号压低或保持。它的核心是高频提升。USB 3.0 接收器里一般有多个 CTLE 档位,每个档位对应不同的零点/极点频率和直流增益。
我曾经在实验室里扫 CTLE 档位,发现 0 档(不均衡)眼高只有 80 mV,换到 3 档直接跳到 220 mV。但要注意,CTLE 也会放大噪声,所以不能开到最大。
DFE(判决反馈均衡器)
DFE 是数字域的非线性均衡。它根据前面判决出来的 bit 结果,去抵消当前 bit 上的 ISI 尾巴。实现上,DFE 有若干抽头,每个抽头对应一个前 bit 的权重系数。
举个例子:前一个 bit 是 1,它会在当前 bit 上留下一个正尾巴。DFE 就减去一个估计值。USB 3.0 的 Rx 通常用 1~3 个抽头。抽头越多,能处理的 ISI 长度越长,但收敛也更慢。
四大均衡技术对比
| 技术 | 位置 | 域 | 核心特点 | 优点 | 缺点 |
|---|---|---|---|---|---|
| 预加重 | Tx | 模拟 | 提高跳变沿幅值 | 简单,直接推高频能量 | 功耗高,可能过冲 |
| 去加重 | Tx | 模拟 | 压低连续同码幅值 | 易于实现,规范首选 | 低功耗模式下效率低 |
| CTLE | Rx | 模拟 | 高频增益提升 | 无延迟,宽频带 | 放大噪声;固定频响 |
| DFE | Rx | 数字 | 基于前 bit 抵消 ISI | 不放大噪声,适应性强 | 有反馈延迟;收敛问题 |
经验之谈:实际调试中,我习惯先把 Tx 去加重固定在一个中间档位(比如 -3.5 dB),然后扫 Rx CTLE 档位,直到眼图睁开、眼高超过 150 mV。最后再微调 DFE 抽头。顺序别搞反,否则 DFE 被 CTLE 的噪声干扰,收敛极慢。
还有一个容易被忽视的点:CTLE 的直流增益。有些接收器在低频率段也有增益提升,这会把低频噪声也带进来。所以 CTLE 的 DC 增益一般设为 0 dB 或负增益。我在某款主控上遇到过,CTLE 的高频增益提上去了,但直流增益也跟着 +2 dB,结果低频噪声把 DFE 的抽头系数给冲偏了。后来被迫手动关闭了低频增益通路。
均衡不是孤立的。Tx 和 Rx 的参数要匹配。链路训练时,双方会交换各自的能力(去加重幅度、CTLE 档位等),然后找到一个双方都接受的配置。这个握手过程,我们下个话题再展开(注:仅内部逻辑,不作为章节预告)。