2. 信号完整性基础:传输线理论、反射、串扰、时序,以及叠层如何影响这些参数
做高速PCB设计,说白了就是处理信号在传输过程中的各种“坏脾气”。信号不是理想化的,它在传输线上跑的时候,会遇到反射、串扰、时序问题。而这些问题的根源,都藏在叠层结构里。这一章,我们把基础打牢。
一句话概括:高速信号是“波”,不是“直流电”。叠层结构决定了这个波的传输环境——阻抗、回流路径、耦合方式。这三个搞定了,一半的信号完整性问题就解决了。
2.1 传输线理论:信号不是瞬间到达的
很多人刚做PCB时,总觉得信号从驱动端到接收端是“一下子就到了”。但实际上,信号本质上是电磁波在介质中的传播。我记得第一次调试一个2GHz的时钟线,示波器上看到的波形比预想晚了将近1ns,我当时还不信,拿尺子量了走线长度,一算,还真是。
传输线的两个核心参数:特性阻抗Z₀和传播延迟Td。叠层结构直接影响这两个参数。
- 特性阻抗Z₀:信号线在高频下呈现的阻抗。由线宽、介质厚度、介电常数决定。叠层越厚,Z₀越高;介电常数越大,Z₀越低。
- 传播延迟Td:信号在介质中传播的时间。Td ≈ 84.72 × √εr (ps/inch)。内层走线用FR4时,延迟大约180ps/inch。
我个人的习惯是:在叠层设计初期,就用层叠计算器估算每一层的阻抗和延迟,而不是等Layout完了再调。你想想看,等到走线都拉好了再改层叠,那代价就大了。
| 参数 | 影响因素(由叠层决定) | 典型值(FR4,4层板) |
|---|---|---|
| 特性阻抗Z₀ | 线宽、介质厚度H、介电常数εr、铜厚 | 50Ω ± 10% |
| 传播延迟Td | 介电常数εr | ~180 ps/inch (内层) |
| 介质厚度H | 决定Z₀的关键 | 4~6 mil (信号到参考层) |
我的经验:介电常数不是固定的。FR4在1GHz时约4.2,到了10GHz可能降到3.8。设计10Gbps以上的链路时,记得用高速板材(如Megtron 6)并采用实际测量的Dk值。
2.2 反射:阻抗不匹配的后果
反射是怎么回事?说白了就是信号走到一个“阻抗突变”的地方,一部分能量被弹回来了。我刚开始做设计时,总以为信号到了负载端就完事了,直到有一次调试高速串行总线,波形乱七八糟的,量了半天才发现终端电阻焊错了值。
反射系数公式:Γ = (ZL - Z₀) / (ZL + Z₀)。当ZL = Z₀时,Γ=0,没反射。叠层结构决定了Z₀,也就决定了终端匹配的难易程度。
这里有一个常见的坑:
我曾经遇到过:一个4层板项目,表层走50Ω线,内层走线走同样的宽度,结果阻抗变成了70Ω。为啥?因为内层参考平面上下都有,介质厚度变了。后来我养成了习惯:每一层单独算阻抗,永远不偷懒用同一套参数。
减少反射,叠层上要注意:
- 信号层紧邻参考平面,保证阻抗连续。间距最好在4~6 mil。
- 避免跨分割。信号换层时,旁边要有回流地过孔。
- 对于高速信号,尽量走内层。内层信号受上面下参考平面约束,阻抗更稳定。
2.3 串扰:能量的“邻里纠纷”
串扰就是一条线上的信号干扰了旁边的线。你想想看,两条线靠得那么近,就像两个人贴在一起说话,难免会串音。串扰的机制有两个:互容和互感。
互容产生耦合电流,互感产生耦合电压。叠层结构能很大程度上控制串扰。
降低串扰的叠层设计原则(我自己的经验口诀):
- 增加间距:3W规则(间距≥3倍线宽)是最基础的。但对于10Gbps以上信号,我建议用5W。
- 减小介质厚度:信号到参考平面的距离H越小,串扰越小。H小,电场线很快被参考平面吸走,不会跑到旁边去。
- 合理分层:高速信号放在内层,相邻层放地平面。千万千万不要让两个高速信号层相邻。
- 加地线隔离:对串扰要求极高的信号(比如时钟),可以在两侧铺地铜并打地过孔。
| 叠层参数变化 | 对串扰的影响 | 建议 |
|---|---|---|
| 信号间距S增加 | 串扰下降(约与S²成正比) | 高速信号间距 ≥5H(H为介质厚度) |
| 介质厚度H减小 | 串扰下降 | 高速层用薄介质(3~4 mil) |
| 参考平面完整 | 大幅降低远端串扰 | 严禁信号层跨分割 |
一个小技巧:如果你在评估串扰,可以跑个简单的现场测试。让一根线发信号,旁边的线什么都不接,示波器量旁边的线上有没有串扰噪声。我在一个8层板项目上就是这么抓出过问题:两根DDR数据线靠太近,串扰导致读写错误。
2.4 时序:信号必须准时到达
时序就是信号在接收端被采样的时刻是否满足建立时间和保持时间。这里叠层主要通过传播延迟影响时钟偏斜和数据偏斜。
举个例子:DDR3的地址/控制信号和时钟信号必须保持特定的时序关系。如果一组信号走的层不同,介质不同,延迟差就会出来。我见过一个惨案:一组16位DDR数据线,有的走外层,有的走内层,结果数据到的时间差了好几百皮秒,怎么调也调不回来。
叠层设计对时序的直接影响:
- 等长走线:为了保证时序,同一组信号需要等长。但注意,不同层的传播延迟不同。内层通常比表层慢10%~15%。所以等长计算时,要按层分配不同标准。
- 参考平面完整性:如果参考平面被分割,信号的回流路径变长,实际延迟也会增加,而且不稳定。
- 介电常数波动:工艺上FR4的Dk值可能偏差5%~10%,导致传播延迟随之波动。
注意:不要只看走线长度,要看“电气长度”。我曾经算过一个DDR接口,所有走线物理长度对得很齐,但有一条线走了表层,其他走了内层,结果因为延迟差异,系统跑不到目标频率。后来我把所有DDR信号都约束在同一层,问题才解决。
2.5 叠层如何统一影响这些参数?
现在我们把前四个概念串起来。叠层结构是一个“一举一动”都影响信号完整性的核心。
这里我画了一张知识结构图,把这几块的关系理清楚。
你看,叠层结构通过介质厚度、介电常数、铜厚、层间距离,直接影响了传输线的特性阻抗和传播延迟。而这两个参数又是反射、串扰、时序的基础。
总结我的经验,一句话:叠层设计的本质,就是为信号提供一个可控、稳定、低干扰的传输环境。
设计师自查清单:
- ✅ 高速信号层是否紧邻参考平面?(间距4~6 mil最佳)
- ✅ 相邻信号层之间是否有地平面隔离?
- ✅ 同一组信号的走线是否在同一层或延迟匹配的层?
- ✅ 参考平面是否完整,没有跨分割?
- ✅ 阻抗计算是否按实际层叠参数(Dk、铜厚)进行?