CML电气特性详解:输出摆幅、共模电压与可调电流源
上一章我们把LVPECL的电气特性过了个遍,不少同学跟我说,LVPECL的功耗太高了,能不能有更省电的方案?CML(Current Mode Logic,电流模式逻辑)就是那个“吃得少、跑得快”的优等生。
行,咱们今天就来把CML的底裤扒透——输出摆幅多大、共模电压怎么定、那个可调电流源到底怎么玩,最后再拿它跟LVPECL硬碰硬比一场。我记得刚接触CML时,第一反应是:这玩意儿怎么连个固定的电平都没有?后来才懂,没有固定电平,恰恰是CML的精髓所在。
4.1 输出摆幅:由电流和电阻说了算
CML的输出级结构其实特别简单。我习惯把它想象成一个“电流开关”:
- 一对差分对管(通常是共源极)
- 两个上拉电阻(
R_load)到电源 - 一个尾电流源(
I_SS)到地或负电源
它的输出摆幅计算公式非常简单:
V_swing = I_SS × R_load
举个例子,如果你设置的尾电流是16mA,上拉电阻是50Ω,那么单端摆幅就是0.8V。没错,就这么直接。CML不像LVPECL那样有固定的电平依赖,你完全可以通过调整电流和电阻来定制自己的输出幅度。
💡 实际项目避坑: 我曾经在一个25Gbps的项目中,为了追求极致功耗把摆幅压到400mV,结果接收端因为噪声裕量不够,误码率直接飙到1e-6。后来我把摆幅提到600mV,一切就正常了。别为了省电牺牲信号质量,这个平衡点需要根据实际链路预算来权衡。
CML还有一个特性我很喜欢:它的输出摆幅对称性非常好。因为是电流全切换,差分对管要么全流到我这边,要么全流到你那边,不会出现单端波形失真得厉害的问题。
4.2 共模电压:跟随电源,别被误导
CML的共模电压跟LVPECL完全不是一个套路。LVPECL的共模电压是固定的(VCC-1.3V),而CML的共模电压则取决于:
V_CM = VCC - (I_SS × R_load) / 2
你想想看,这意味着什么?
一旦你改动了上拉电阻或者尾电流,共模电压就变了。
在我做过的几个10Gbps以上的项目中,这种“可调共模”特性既是优点也是坑。优点是你可以通过调整共模电压来匹配后续的接收器;坑就是如果没算清楚,AC耦合后偏置搞错,信号可能直接削顶。
⚠️ 特别注意: CML的输出共模电压对电源波动非常敏感。如果VCC有纹波,共模电压会跟着抖。我在调试一个40Gbps背板时,就因为电源纹波太大,共模电压跳了50mV,导致接收端CDR失锁。最后用了个低噪声LDO单独供电,问题才解决。
另一个实用的技巧是:如果两个CML芯片要DC耦合,务必让它们的共模电压匹配。不匹配会怎样?直流偏置不对,电流会一直灌到接收端,严重的话可能烧毁输入级。
4.3 可调电流源:功率与性能的博弈
CML的那个可调尾电流源,说白了就是让你在功耗和信号质量之间做选择题的旋钮。
大部分CML芯片都提供一个I_REF引脚或者通过寄存器来设置尾电流。常见的调节范围在2mA到20mA之间。
我建议你在设计前先想清楚这几个问题:
- 链路最差的通道损耗是多少?——决定了最小的摆幅需求
- 芯片允许的最大功耗是多少?——决定了电流的上限
- 是否要用预加重?——预加重通常需要更大的电流
为什么要调电流?这里有三个核心原因:
| 调整目的 | 增大电流的效果 | 减小电流的效果 |
|---|---|---|
| 输出摆幅 | 摆幅增大,信噪比更好 | 摆幅减小,更省电 |
| 上升/下降时间 | 更快的翻转速率 | 翻转速率变慢,抖动增大 |
| 共模电压 | 共模电压降低(离VCC更远) | 共模电压升高(靠近VCC) |
| 功耗 | 每通道功耗增加 | 每通道功耗降低 |
我记得有次一个12.5Gbps的项目,为了匹配接收器的输入共模范围,我硬是把8mA的默认电流调到了12mA,虽然功耗多了50mW,但眼图质量从0.25UI提升到了0.45UI,那点功耗也值了。
⭐ 我的经验法则:对于10Gbps以上的速率,强烈建议不要低于6mA。低于这个值,上升时间会变得非常糟糕,抖动也会显著增加。你可以在仿真里试试,把电流从16mA一路降到4mA,看看眼图是怎么塌的。
4.4 CML vs LVPECL:硬碰硬的对比
在实际选型时,我经常被问到:“CML和LVPECL到底怎么选?” 其实这完全取决于你的诉求。我把关键差异列在下面:
| 参数 | CML | LVPECL |
|---|---|---|
| 功耗(典型) | 低(10mW @ 16mA) | 高(一般在100mW以上) |
| 输出摆幅 | 可调(典型200mV ~ 800mV) | 固定(典型800mV ~ 1000mV) |
| 共模电压 | 随电流/电阻变化 | 固定(VCC - 1.3V) |
| 最大速率 | 超高(56Gbps+很常见) | 中高(通常到12Gbps) |
| 抖动性能 | 优秀,但吃电源质量 | 极其优秀,电源抑制比好 |
| 直流耦合 | 需要共模匹配 | 可直接DC耦合 |
| 成本 | 相对较高 | 相对较低 |
简单总结一下:
如果你做的是25Gbps以上的高速链,CML基本是唯一选择。LVPECL的优势在于它的电源抑制比好,共模电压固定,板级调试非常省心。
我在一个40Gbps回传项目中,最开始尝试用LVPECL改驱动,结果发现上升时间根本无法达到要求,眼图全是雾。换成CML后,同一个PCB,眼图立刻就打开了。从那以后,只要是25Gbps以上的串行链路,我毫不犹豫选CML。
但是,如果是一个3.125Gbps的背板,LVPECL的成熟和稳定反而是更好的选择,你没必要杀鸡用牛刀。
4.5 本章核心知识图
下面这张图把CML的三个核心特性和它与LVPECL的差异串在了一起,你可以把它当作一个速查工具。