2. 差分信号基础:差模与共模,差分对特性,眼图概念
做高速PCB设计,你迟早会跟差分信号打交道。我刚开始接触的时候,看着两条线并排走,心想这不就是两根普通的信号线嘛?后来踩了坑才明白——差分信号的精髓,藏在差模与共模这两个概念里。
2.1 差模信号与共模信号
先看定义。差分传输用两根线传一路信号:一根叫P(正),一根叫N(负)。接收端看的是V(P) - V(N),这就是差模信号。而两个信号的平均值,(V(P)+V(N))/2,叫共模信号。
简不简单?但实际设计里,大家经常把共模当成「噪声」来看。为什么?因为差模才是我们想要的信息,共模往往是干扰耦合进来的。比如附近有一条高频时钟线,它会在差分对上感应出相同的噪声,P和N同时被抬高——这个抬高量就是共模。
| 参数 | 差模 (Differential Mode) | 共模 (Common Mode) |
|---|---|---|
| 定义 | V(P) - V(N) | (V(P)+V(N))/2 |
| 信号方向 | P与N方向相反 | P与N方向相同 |
| 辐射特性 | 近场抵消,辐射小 | 远场叠加,辐射大 |
| 抗干扰能力 | 强(共模抑制) | 弱 |
| 设计目标 | 保持幅度、时序 | 尽量抑制到0 |
说个真事。有一回我调试一个USB 3.0的板子,眼图一直闭合。用示波器一量,差分对上的共模电压有800mV的纹波。查了半天,原来是跨越了一个电源分割槽,返回路径被切断了。加了一对缝合电容,共模纹波降到100mV以内,眼图立刻打开了。你看,共控好坏就在那么一点点细节。
2.2 差分对的特性参数
设计差分线,不能只盯着单端阻抗。真正关键的是差分阻抗和共模阻抗。
- 差分阻抗(Z_diff):两根线之间的阻抗,通常为90Ω(USB)、100Ω(LVDS、HDMI)、85Ω(PCIe Gen4等)。
- 共模阻抗(Z_comm):每根线对参考平面的阻抗,通常是差分阻抗的一半(如果均匀耦合,Z_comm ≈ Z_diff/2)。
- 耦合系数(K):描述两根线之间的电磁能量交换。K越大,差分阻抗受线间距变化越敏感。
常用的近似公式(微带线):
Z_diff ≈ 2 * Z_single * (1 - 0.48 * exp(-0.96 * s/h))
其中:
Z_single = 单端特性阻抗
s = 线间距(edge-to-edge)
h = 介质厚度
用这个公式可以快速估算,但真要量产,还是得用场求解器(像Polar SI9000、SiWave)算一遍。
2.3 眼图概念
眼图是高速信号的「心电图」。你把它叠在很多个bit周期上,就能看到信号的幅度抖动、时序抖动、过冲、下冲。
眼图怎么看?
- 眼高:信号幅度裕量,越高越可靠。低于200mV就容易出错。
- 眼宽:采样窗口的宽度,越宽时序裕量越大。
- 抖动(Jitter):眼图交叉点的模糊程度。抖动分随机抖动(RJ)和确定性抖动(DJ)。
- 眼图模板(Mask):规定眼图不能碰到的区域。碰到就说明设计不合格。
工作中我习惯用示波器看四个参数:眼高、眼宽、抖动(RMS和峰峰值)、模板裕量。如果眼高低于规范值的80%,我会先查阻抗连续性,再查串扰。
| 参数 | 理想值 | 常见问题 | 改善方向 |
|---|---|---|---|
| 眼高 | ≥ 规范值90% | 衰减过大、阻抗失配 | 减小损耗、匹配端接 |
| 眼宽 | ≥ 0.7UI | 抖动、时序偏移 | 减短走线、控制等长 |
| 抖动(峰峰值) | ≤ 0.3UI | 电源噪声、串扰 | 去耦、隔离、控制阻抗 |
好了,这一章的内容就这些。弄懂了差模、共模,搞清楚了差分阻抗和耦合系数,再看眼图,你心里就有底了。下回咱们聊聊实际走线中的阻抗控制——怎么算线宽线距,怎么选参考层。你在项目里见过哪些奇怪的眼图问题?欢迎带着疑问来继续看。