4. 传输线理论在PCIe中的应用
做PCIe信号完整性,绕不开传输线理论。说白了,高速信号在PCB上走,走的不是一根铜线,而是一条有分布参数的传输线。我记得刚入行时,觉得这理论太抽象,直到第一次调试Gen3板卡,眼图闭合得厉害,才意识到传输线效应有多要命。这一章咱们就专门聊传输线理论在PCIe里是怎么落地应用的,哪些参数必须盯紧。
4.1 特征阻抗与反射
一根均匀的传输线,它的特征阻抗\(Z_0\)由单位长度的电感和电容决定:
\[ Z_0 = \sqrt{\frac{L}{C}} \]PCIe规范对差分阻抗要求很明确——85Ω差分,单端参考50Ω。为什么定这么死?因为我看到很多板卡在连接器处阻抗跳变到70Ω或100Ω,反射立刻就来了。
反射系数\(\Gamma = \frac{Z_L - Z_0}{Z_L + Z_0}\)。当负载阻抗不等于\(Z_0\),一部分能量被反射回去。反射波叠加到入射波上,对眼图就是灾难。我曾经在一个16GT/s的Gen4项目中,发现过孔反焊盘挖得不够,阻抗降到78Ω,反射系数算下来差不多-0.04,看着不大,但在长通道里多次反射叠加,直接让眼图高度塌了20mV。
4.2 时域反射(TDR)分析
TDR是做SI仿真和测试的“听诊器”。它往通道里发一个快沿脉冲,然后看反射回来的波形,就能读出阻抗沿线的变化。PCIe合规测试里,TDR是必做项,用来验证差分阻抗是否落在85Ω±15%的窗口内。
举个实际例子。我测过一块8层板,TDR曲线在靠近CPU的一段忽然上翘到96Ω。查下来是走线参考层被一条电源沟槽隔断,回流路径被迫绕道,等效电容变小、电感变大,所以阻抗飙高。修正layout后,阻抗回到了88Ω,眼图一下就开了。
4.3 传输线损耗
高速信号在PCB上跑,损耗来自两方面:
- 介电损耗:由介质材料的损耗角正切(\(\tan\delta\))引起,与频率成正比。PCIe常用低损耗材料如M6N、Megtron 6,\(\tan\delta\)一般在0.002-0.005之间。
- 趋肤效应损耗:高频电流集中在导体表面,有效截面积减小,电阻增大。铜箔粗糙度会加剧这个效应。
PCIe规范对通道总插损有硬性要求。我整理了一张常用表(不同Gen的典型插损预算):
| PCIe版本 | 数据速率 (GT/s) | 通道插损预算 (dB) | 典型对应走线长度 (inch, @M6N) |
|---|---|---|---|
| Gen3 | 8.0 | -8 | ~12 |
| Gen4 | 16.0 | -13 | ~8 |
| Gen5 | 32.0 | -18 | ~5 |
| Gen6 | 64.0 | -25 | ~3 |
你想想看,从Gen3到Gen6,速率翻4倍,允许的走线长度却缩到原来的1/4。这就是为什么高频仿真必须精确建模损耗——用理想无损线去算,结果会乐观得离谱。
在仿真中,我会用S参数提取或RLGC模型来包含频率相关的损耗。具体做法是把通道分成若干段,每段用W-element(适用于有损传输线)建模。代码参考(HSPICE语法):
.MODEL PCIe_DIFF W MODELTYPE=RLGC
+ R=0.12 L=0.35 G=0.002 C=0.16
+ N=2 RS=1e-3 GS=1e-12
.DATA FREQ
1e9 1e10 2e10
.ENDDATA
这里R、L、G、C都是从2D场求解器里提取出来的频率相关值。嗯,要注意:如果只用直流电阻值,仿真出来的眼图会比实际大很多,尤其是Gen4以上,误差能到30%。
4.4 差分传输线的关键考量
PCIe物理层用差分对。差分传输线有两条核心参数:
- 奇模阻抗(差分阻抗的一半):走线之间和地之间的几何关系决定了它。差分阻抗保持85Ω,意味着奇模阻抗为42.5Ω。
- 共模阻抗:两条线以相同模式驱动时的阻抗,通常比差分阻抗低,规范里也做了约束。
在layout中,差分对必须保持一致的间距和线宽。我记得有次Review,一个工程师在转弯处放宽了间距0.5mil,差模阻抗瞬间从85Ω跳到91Ω,反射系数直接翻了3倍。虽然只有一小段,但眼图裕量掉了10ps。
避坑指引(我曾踩过的坑):
差分对内等长也影响共模转换。我曾经在Gen4板上遇到SSN噪声增大,查半天发现一对差分线长度差了12mil,导致共模噪声窜到电源平面。后来加蛇形走线补等长,问题解决。所以,差分对内等长控制在5mil以内是底线。
4.5 传输线理论在SI仿真中的知识体系
为了让你更直观地理解各知识点的关系,我画了一张结构图。从传输线基本参数出发,依次延伸到反射、损耗、TDR表征,最后汇聚到眼图这一SI的最终判据。
从这张图可以看到,特征阻抗和反射是源头,TDR和损耗分析是工具,最终都服务于眼图这个“判决员”。做PCIe仿真时,每一步都不能跳。我经常跟团队讲:别只对着眼图调均衡,传输线本身没调好,均衡也救不了多少。
4.6 两个实战要点
- 仿真时务必建模过孔。 过孔的残桩、反焊盘尺寸都会引入阻抗不连续和额外损耗。我在一个Gen4项目里只用走线S参数仿真,眼图高度290mV,加上过孔模型后掉到210mV,差点达不到规范。从那以后我建模型都老老实实带上过孔。
- 差分阻抗的容差要留裕量。 PCB加工有制造误差,线宽和介质厚度会有±10%的波动。设计时把目标阻抗设在85Ω,但仿真时要cover 75Ω-95Ω的范围。我习惯做蒙特卡洛分析,看看最差情况眼图还够不够。
一句话总结: 传输线理论不是纸上数学,它是PCIe板材选择、层叠设计、走线规则、甚至焊盘尺寸的底层逻辑。搞懂了它,你的仿真才有“灵魂”。