首页 / 资讯中心 / 文章详情

PCB走线长度如何影响信号完整性:时延、损耗、串扰与等长匹配

PCB走线长度如何影响信号完整性:时延、损耗、串扰与等长匹配 ★ FEATURED ARTICLE
1. 走线长度到底在影响什么把五条作用链拆开走线长度对信号质量的影响是硬件设计里最容易被一句话带过、又最容易在后期把项目拖进泥潭的问题。我见过太多板子原理图没问题、器件选型没问题、叠层也算得像模像样最后卡在眼图张不开、误码率压不下去、某几颗颗粒间歇性读写失败上——拆到最后问题往往就落在某一段走线长了那么十几毫米或者蛇形绕得离自己太近。很多人把长度理解成一个单纯的数值约束只要等长误差小于±50mil就万事大吉。这个理解太浅了。走线长度这个东西同时挂在五条作用链上每一条链的物理机制完全不一样对它的敏感度也不一样甚至有些时候缩短长度并不解决问题反而要付出别的代价。第一条是时延链。电信号在板材上跑速度大约是光速除以介电常数平方根表层微带线大概在 150~165 ps/inch内层带状线大概 175~185 ps/inch。换算成日常好记的数字表层 1 mm 走线约等于 6 ps内层约 6.9 ps。这个换算关系是所有时序预算的地基长度一毫米一毫米地加上去时序裕量就一点一点被吃掉。第二条是传输线链。走线一旦超过临界长度它就不再是导线而是传输线源端、线、负载端构成一个阻抗不连续的系统。长度在这里决定的是信号往返的次数和周期决定了波形是干净的阶跃还是带振铃的台阶。第三条是损耗链。铜的趋肤效应让高频电流只贴在导体表面很薄的一层里跑等效电阻随频率的平方根增长板材的介质损耗则随频率近似线性增长。这两项损耗都是单位长度的量长度越长累积损耗越大高频分量衰减得越狠眼图的上边缘就被压得越低。第四条是耦合链。两条平行走线之间的容性耦合和感性耦合强弱直接和平行长度成正比。长度越长串进来的噪声能量越多——但这里有个反直觉的细节耦合会在饱和长度之后停止增长。第五条是谐振链。一段长走线、一个没背钻的过孔残桩、一条细长的支线本质上都是四分之一波长谐振器。长度决定了它们的谐振频率落在哪里一旦落在信号频谱的能量区间里就会在频域上捅出一个凹陷。这五条链里时延链和损耗链对长度是线性敏感的耦合链是分段敏感的传输线链和公振链是阈值敏感的。分不清这一点你抄来的规则就永远只是规则。下面我把每一条链单独摊开讲。1.1 时延链长度最先吃掉的是时序裕量时延链是最好理解的也是最难做好的因为它的计算极其简单但落地到约束上极其琐碎。基本公式只有一个t_pd L / v其中v c / √ε_effc 是光速 3×10⁸ m/s。关键在ε_eff这个有效介电常数——它不是板材的ε_r而是被走线几何结构调制过后的值。同样的 FR-4ε_r约 4.2~4.4表层微带线因为有一半电场暴露在空气里ε_eff只有 3.2~3.5内层带状线四周都是介质ε_eff基本等于ε_r。代入算一下ε_eff 3.3时v 3×10⁸ / 1.817 1.65×10⁸ m/s 165 mm/ns每毫米 6.06 ps每英寸 154 ps。ε_eff 4.2时v 1.464×10⁸ m/s 146 mm/ns每毫米 6.83 ps每英寸 174 ps。这个差异在短走线上无所谓在长走线上是致命的。我做过一个板子DDR 的地址线为了绕开一片电源模块一段走在表层、一段走在内层总长度控制在 ±30mil 以内结果时序就是不过。原因就是表层和内层每毫秒差 0.8 ps一段 3000mil 的表层线换成内层等效时延差了差不多 60 ps——比整条链的偏斜预算还大。所以做长距离等长的时候我现在的习惯是不按物理长度等长按时延长度等长。工具里把表层和内层分别设定不同的传播延迟因子让约束管理器去算等效时延比人肉换算可靠得多。Altium 的 Layer Stack Manager、Cadence 的 Constraint Manager、Mentor 的 Length/Phase 规则都支持这个只是默认参数经常没填或者按同一个值填了需要手动改。提示微带线的ε_eff会随线宽变化。线越宽电场越集中到介质里ε_eff越大传播越慢。同层不同线宽的长走线这条差异也要考虑进去。1.2 传输线链长度决定波形是平的还是振的一条走线什么时候开始表现得像传输线取决于上升时间和传播延迟的比值而不是取决于频率或者时钟周期。这是很多人第一个认知误区以为是频率高才需要阻抗控制其实 1 kHz 的方波只要上升时间够快、走线够长照样振铃。判断标准在工程上通常用两个门槛宽松一点用L t_r / (2 × t_pd)严格一点用L t_r / (6 × t_pd)。前者认为在上升沿期间信号跑了一个来回以内反射还没形成完整回波后者更保守认为线长只占上升沿传播距离的六分之一。拿t_r 500 ps、t_pd 154 ps/inch代入t_r / (2 × t_pd) 1.62 inch ≈ 41 mmt_r / (6 × t_pd) 0.54 inch ≈ 13.8 mm。也就是说一颗上升时间 500 ps 的驱动器接一条 41 mm 以上的表层线就必须按传输线处理小于 14 mm 的话基本可以当集总元件看。长度在这里的作用是决定反射的往返周期。源端阻抗不匹配产生第一次反射信号跑到负载端再反射回来这个往返时间2 × t_pd × L决定了振铃的频率。走线越长振铃周期越长振荡的鼓包越宽越容易在采样点上正好踩到过冲或者下冲的位置把建立时间或保持时间吃掉。1.3 损耗链长度是高频能量的抽水机损耗这件事短线上你完全看不到长线上它会毫不留情地把眼图按扁。导体损耗来自趋肤效应衰减系数大致正比于√f介质损耗来自板材分子偶极子在交变电场下的翻转摩擦衰减系数大致正比于f。两者叠加的结果是低频段导体损耗占主导高频段介质损耗迅速超过导体损耗。这也是为什么换低损耗板材对 10 GHz 以上的通道效果明显而对 1 GHz 以下的信号改善有限。长度在这里是最残酷的乘数。同一块板5 inch 的通道在 5 GHz 处损耗可能是 3 dB10 inch 就是 6 dB20 inch 就是 12 dB。而 12 dB 意味着幅度只剩四分之一眼图基本上已经闭合成一条线了。所以做高速通道长度规划的时候我会先算通道预算驱动器输出幅度、接收端灵敏度、连接器损耗、过孔损耗、AC 耦合电容损耗剩下的额度再除以单位长度损耗得到这条线最多能走多长。这个数字往往比等长误差重要得多但很多团队做约束的时候只写了等长没写最大长度。1.4 耦合链平行长度决定串进来多少噪声串扰的强弱由三个因素决定两条线的间距、平行耦合的长度、以及信号的上升时间。间距决定耦合系数长度决定耦合窗口。但这里有个特别值得记住的结论耦合长度超过饱和长度之后串扰不再增加。饱和长度大致等于上升时间在介质中传播距离的一半L_sat ≈ t_r × v / 2。取t_r 500 ps、v 165 mm/nsL_sat ≈ 41 mm。意思是两条线平行 41 mm 和并行 100 mm近端串扰的幅度基本一样。这个结论的实际价值在于你可以通过缩短平行段来改善串扰但只要降到饱和长度以下收益就非常明显一旦超过饱和长度再怎么缩短总长度也没用必须打断平行关系——拉开间距、插地线、换层、加隔离。1.5 谐振链长线、残桩与天线效应一段没有良好参考平面、末端悬空的走线本质上是一根天线。长度接近四分之一波长时它会谐振把能量辐射出去同时把外面的干扰收进来。谐振频率的计算很简单f_res v / (4 × L)。过孔残桩是典型场景——一个没背钻的过孔残桩长 3 mm介质里v ≈ 146 mm/nsf_res 146 / (4 × 3) 12.2 GHz。这个凹陷正好落在 25 Gbps 通道的奈奎斯特频率附近时通道的插入损耗曲线会突然掉一个坑眼图直接废掉。残桩 1.5 mm 的话谐振推到 24 GHz对大多数通道就没威胁了。这就是背钻存在的全部理由。它不是高端工艺炫技而是长度效应在三维结构上的直接体现。2. 关键参数怎么算传播延迟、临界长度与时延预算原理讲完之后落到实操就是几个数字每毫秒多少皮秒、临界长度多少毫米、时序预算怎么分。这一节我把算法和参考值都给出来可以直接拿去用。2.1 传播延迟与1 ps 等于多少毫米先建一张速查表这是所有后续计算的基础。假设 FR-4 板材表层ε_eff ≈ 3.3内层ε_eff ≈ 4.2。走线类型有效介电常数传播速度每 mm 时延每 inch 时延1 ps 对应长度表层微带线3.2 ~ 3.5约 165 mm/ns约 6.1 ps约 154 ps约 0.165 mm内层带状线4.1 ~ 4.4约 146 mm/ns约 6.8 ps约 174 ps约 0.147 mm低 Dk 板材表层2.8 ~ 3.0约 175 mm/ns约 5.7 ps约 145 ps约 0.175 mm低 Dk 板材内层3.4 ~ 3.7约 158 mm/ns约 6.3 ps约 161 ps约 0.158 mm这张表里的数字我建议直接背下两个粗略值表层 1 mm ≈ 6 ps内层 1 mm ≈ 7 ps。有了这个心算响应电平非常快。举例朋友问 DDR4-2400 的 DQS 和 DQ 之间允许 PCB 走线偏斜 100mil 吗tCK 1/1.2 GHz 833 ps100 mil 在表层是 15.4 ps占时钟周期的 1.8%。听起来不多但整个 DQS-DQ 偏斜预算控制器 封装 PCB 颗粒 时序余量通常只有0.15 tCK左右也就是 125 ps。PCB 分到 20~30 ps 已经算多的了。所以 100mil 这个数字在很多设计里是偏大的。2.2 临界长度什么时候可以把走线当导线看驱动器的上升时间通常可以从器件手册或者 IBIS 模型里查到。找不到的时候可以用t_r ≈ 0.35 / BWBW 是器件带宽估算再不行就按工艺节点经验值普通 MCU 的 GPIO 大约 2~5 nsDDR3 的驱动器大约 200~400 psDDR4 大约 100~200 psPCIe Gen3 驱动器大约 50~80 ps。拿到t_r之后套下表驱动器上升时间严格临界长度 (t_r/6)宽松临界长度 (t_r/2)典型场景5 ns约 5.4 mm约 16 mm普通 GPIO、低速总线2 ns约 14 mm约 41 mm中等速率接口1 ns约 27 mm约 81 mmSDRAM 类接口500 ps约 14 mm约 41 mmDDR3200 ps约 5.4 mm约 16 mmDDR4、千兆以太网80 ps约 2.2 mm约 6.5 mmPCIe Gen3、万兆网表里用的是表层 165 mm/ns 折算的。可以看到对 DDR4 和 PCIe 这类接口几乎所有的走线都超过临界长度都必须做阻抗控制。这个表的价值不在于让你决定要不要做阻抗控制而在于让你知道哪些原本以为可以随便走的线其实不能随便走。顺带说一句临界长度判断的是要不要按传输线处理不是要不要做等长。等长的阈值要低得多——通常只需要走线长度差异产生的时延超过时序预算的百分之几就得做等长。所以经常出现的情况是一条 20 mm 的线不需要阻抗控制但两条这样的线之间必须等长到 0.5 mm。2.3 时序预算怎么落到毫米上时序预算的分配逻辑是这样的先看接口总裕量再逐项扣除。以 DDR4-2400 的写时序为例tCK 833 ps。控制器和颗粒的规格书会给出一个建立时间窗口比如中心对齐方案下DQ 相对 DQS 的有效窗口大约是0.5 tCK附近但真正可用的裕量要扣掉控制器内部输出偏斜约 30~50 ps封装内走线偏斜约 10~20 psPCB 走线偏斜需要分配颗粒内部采样偏斜约 30~50 ps时钟抖动与电源噪声引起的抖动约 50~80 ps串扰与 ISI 引起的眼图收缩约 30~60 ps把这些扣掉留给 PCB 的通常只剩 20~40 ps单边合计 40~80 ps 的峰峰值偏斜预算。按表层 6.1 ps/mm 算就是总长度差控制在 6~13 mm 之间按内层 6.8 ps/mm 算是 6~12 mm。这就是±50mil这类数字的来源——50mil 约 1.27 mm表层对应 7.8 ps留了足够的余量。但如果你的控制器内部偏斜特别大或者叠层用的是低 Dk 板材这个数就要重算。抄数字而不抄推导过程是这个行业里最常见的事故来源。2.4 偏斜预算分配示例表下面这张表是我在某次 DDR4 项目里实际用过的预算模板可以作为参考框架。数字是估算值具体项目要按器件手册和自己叠层重新算。预算项分配值ps峰峰折算长度表层mm控制手段控制器输出偏斜40—器件选定不可控封装内偏斜15—器件选定不可控时钟树偏斜25约 4.1时钟走线严格等长同层布线PCB DQS-DQ 偏斜30约 4.9约束管理器等长规则PCB 字节组间偏斜60约 9.8组间等长规则适当放宽串扰与 ISI 余量40—3W 规则、孤立布线电源噪声余量50—去耦、平面完整合计260—占 tCK 的 31%这个 31% 是一个比较健康的值。超过 40% 我就开始担心了因为实际板子总会比仿真差一点。注意上表的折算长度只对表层有效。如果走线在内层同样的 ps 值对应的毫米数要乘 0.9 左右。混层布线的时候一定要分开算别直接用总长度差做等长。3. 损耗与眼图长度在频域里的代价时域上的振铃、过冲、时序偏移是一面频域上的插入损耗是另一面。而长度在频域上的表现往往比时域更早出问题——因为损耗是长度的线性函数而振铃只在特定长度区间显著。3.1 趋肤效应与介质损耗的两种增长曲线导体损耗的衰减系数大致正比于√f。铜在 1 GHz 时的趋肤深度大约是 2 μm5 GHz 时约 0.93 μm10 GHz 时约 0.66 μm。注意1 μm 这个量级已经比很多 PCB 铜箔的表面粗糙度还小了——铜箔粗糙度会让实际路径变长等效损耗进一步增加。这就是为什么高频板材会指定低粗糙度铜箔HVLP、RTF 之类。介质损耗的衰减系数大致正比于f × tanδ。FR-4 的tanδ在 1 GHz 时大约 0.025 GHz 时可能到 0.025中损耗板材tanδ ≈ 0.008~0.012低损耗板材tanδ ≈ 0.002~0.005。两条曲线叠加在 1 GHz 以下导体损耗为主5 GHz 以上介质损耗开始主导。这个转折点对信道规划很重要如果你的信号基频在 2 GHz 以下换低损耗板材收益有限重点应该放在加宽线宽、加厚铜、减少过孔如果基频在 5 GHz 以上板材就成了绕不过去的成本项。3.2 不同板材下的长度预算表这张表给的是量级参考实际数值必须靠自己叠层的 2D/3D 场求解器提取但用来做早期规划足够了。表格给的是插入损耗 dB/inch的近似值。板材类型1 GHz2.5 GHz5 GHz10 GHz15 GHz普通 FR-40.250.450.901.802.60中损耗板材0.150.280.551.101.60低损耗板材0.100.180.340.681.00超低损耗板材0.070.130.250.500.75怎么用这张表举几个典型场景。万兆以太网10GBASE-KR奈奎斯特频率 5.15 GHz通道总损耗预算通常按经验控制在 20~25 dB不含连接器。用普通 FR-4 的 0.9 dB/inch 算扣掉两个连接器各 1.5 dB、过孔合计 2 dB剩余 15 dB 左右允许走线长度约 16 inch。用低损耗板材 0.34 dB/inch 算可以走到 44 inch。这就是为什么背板和长距离互连必须换板材。PCIe Gen38 GT/s奈奎斯特 4 GHz规范允许的通道损耗大约 22 dB含连接器。普通 FR-4 大约 0.75 dB/inch 4 GHz扣掉连接器和过孔允许走线大约 20 inch 上下。听上去很宽裕但实际板子上还要加上 AC 电容、fanout 过孔、连接器引脚常常剩不到 8 inch。DDR4-3200奈奎斯特 1.6 GHz虽然速率高但它是并行总线单条走线通常很短一般在 6 inch 以内损耗反而不是首要问题时序和串扰才是。很多团队在 DDR 上花大价钱换低损耗板材其实收益很小——把钱花在缩短 stub、优化参考平面、减少过孔上更划算。3.3 眼图闭合是怎么一步步发生的眼图不是一个环节坏了才闭的它是所有损耗和噪声累加的结果。按长度算大概是这么个顺序第一步长走线带来的频率相关损耗把高频分量压下去眼图的上升沿变缓眼高开始下降。这个阶段波形还是干净的只是慢。第二步阻抗不连续点过孔、连接器、fanout、AC 电容产生的反射在慢速上升沿上叠加小幅度振铃眼图边缘出现毛刺和双沿。第三步串扰开始注入噪声眼图的上下边缘开始变模糊眼宽收缩。第四步电源噪声和时钟抖动进一步放大眼图的高频部分完全糊掉误码率抬头。这个顺序很重要因为它决定了排查方向。如果眼图是整体压扁但边缘清晰优先怀疑损耗和板材如果眼图边缘有明显振铃优先看阻抗不连续如果上下边缘毛糙优先查串扰和电源。3.4 均衡与预加重能不能救回来发送端预加重Pre-emphasis和接收端均衡CTLE/DFE本质上是在频域上反向补偿通道损耗通道把高频压掉多少 dB均衡就抬多少 dB 回来。但它们有物理极限。均衡抬高频的同时也把高频噪声抬了起来信噪比会恶化而且通道的插入损耗在深凹陷之后是急剧下降的均衡提不上来。经验上CTLE 能有效补偿的通道损耗大约在 15~20 dB 以内超过这个量级DFE 也救不回来。所以长度预算的结论是能缩短就缩短别指望均衡兜底。我见过为了省一层次、把 40 Gbps 通道硬拉到 20 inch 的设计最后眼图靠均衡勉强打开但批量生产时有百分之几的板子误码率超标返修成本远超多加一层的钱。4. 等长匹配实操蛇形走线不是随便绕等长匹配是走线长度这个题目里最落地的部分也是坑最多的部分。绕不好补偿带来的串扰和阻抗变化可能比原来的长度差更伤信号。4.1 对内偏斜与对间偏斜的区别差分对内偏斜intra-pair skew和对间偏斜inter-pair skew是两个完全不同量级的事情约束值差了十倍以上。对内偏斜直接破坏差分信号的对称性。理想差分信号的正负两端共模分量相互抵消一旦出现偏斜共同分量就转成了差模残留表现为眼图上的共模抖动和辐射增加。所以对内偏斜的约束通常很紧5~10 ps对应表层 0.8~1.7 mm。在 10 Gbps 以上可能要求 2 ps 以内也就是 0.3 mm。对间偏斜只影响多对信号之间的到达时间差对单对信号的波形质量没有影响。约束值通常是几十 ps 到几百 ps取决于接口协议有些协议要求严格比如 100G 背板的某些通道要求对间 10 ps 以内。实操建议对内偏斜优先保证实在绕不开的时候牺牲对间偏斜。因为对内偏斜会直接恶化波形而对间偏斜最多影响通道之间的相位关系。4.2 蛇形走线的自耦合与阻抗塌陷蛇形meander是最常用的补偿手段但它本质上是把一条线折成密集的平行段而平行段之间会耦合。蛇形的两个主要问题自耦合。相邻的两段弧线之间属于同一条网络理论上不会像相邻网络那样产生串扰但耦合会改变局部特征阻抗。蛇形段的间距越小、弯折越密阻抗下降越明显。实测中间距 1W 的蛇形局部阻抗可能从 50 Ω 掉到 45 Ω 甚至更低形成一串小的反射点。等效时延偏差。蛇形段的拐角处会额外增加寄生电容实际时延比直线长度算出来的要长一点。绕得特别密的时候这个偏差可以达到百分之几。所以约束计算里的长度如果是按几何路径算的跟实际时延会有出入。常见的规避手段蛇形段之间的间距 ≥ 3W条件允许时用 4W单段蛇形长度限制在 200 mil约 5 mm以内避免单段形成有效的谐振结构采用 45° 折角或圆弧拐角避免直角整段蛇形的累计长度尽量均匀分布在走线路径上而不是集中在末端蛇形区域尽量放在远离其他敏感信号的地方并保证下方参考平面完整注意蛇形走线不要跨分割。如果蛇形段所在的区域参考平面被挖空或者跨了两个电源域回流路径被打断阻抗会剧烈变化反而制造了更严重的问题。这在多层板密集布线区非常常见。4.3 补偿位置的选择就近补还是末端补假设一条线比它的匹配伙伴短了 10 mm这 10 mm 补在哪儿选择有三个信号源附近、走线中段、接收端附近。源端附近补偿的优点是从源端出来的信号立刻经历了完整长度时序和伙伴线一致缺点是信号还没经过衰减在源端附近的过冲和振铃最大补偿段的反射也是全幅度入射。如果源端有串阻情况会好一些。接收端附近补偿的优点是信号已经衰减反射幅度小缺点是整条线在大部分路径上是不等长的只有在末端才被拉齐对时序的帮助有限——严格说这不叫等长只是长度相等。中段补偿是折中方案也是我最常用的。把补偿段分散成几段均匀分布在路径中段既避免了源端的全幅度反射也保证了两条线在整个路径上都是渐进同步的。有一个例外对于源同步接口补偿位置在时序上其实影响不大因为最终看的是到达接收端的时间。真正影响的是补偿段的阻抗不连续性和串扰。所以选择依据应该是哪里的布线空间更宽松、参考平面更完整。4.4 参考平面与跨分割带来的额外等效长度这一点经常被忽略但它对信号质量的影响可能超过几十毫米走线。走线下面的参考平面是回流电流的路径。如果走线跨越了平面分割比如从 3.3 V 区域跨到 1.8 V 区域回流路径被迫绕行绕行的那段路径就相当于给信号额外串联了一段电感。表现上就是明显的阻抗突变、上升沿畸变、以及大幅度的共模辐射。从长度的角度看跨分割相当于给信号路径增加了额外的等效长度——不是几何上的而是电气上的。这段等效长度可能只有几毫米但产生的反射和辐射远比几毫米的正常走线严重。实操上的处理原则很简单任何高速信号都不要跨分割。如果实在躲不开就在跨分割的位置加缝合电容两个平面之间就近放 0.1 μF越近越好给回流电流提供一条低阻抗的桥上通道。缝合电容到跨分割点的距离建议控制在 100 mil 以内超过这个距离效果迅速衰减。5. 串扰、EMI 与过孔残桩容易被忽略的长度效应前面讲的三条链时延、传输线、损耗是主线这一节讲几个边缘但经常致命的长度效应。5.1 耦合饱和长度串扰并不随长度线性增长前面提过饱和长度的概念这里展开说说它怎么用。近端串扰NEXT的幅度随耦合长度增长但在L_sat ≈ t_r × v / 2处饱和。以t_r 200 psDDR4 量级、v 165 mm/ns为例L_sat 200 × 10⁻¹² × 165 × 10⁶ / 2 16.5 mm。也就是说两条线平行超过 16.5 mm近端串扰就不再增加了。远端串扰FEXT的行为稍微不同它和耦合长度、传输线时延差、以及奇偶模速度差都有关。在均匀介质带状线里奇偶模速度相同FEXT 理论上是零主要剩下的是 NEXT。在非均匀介质微带线里奇偶模速度不同FEXT 才会显著。这也是为什么高速信号更倾向于走内层带状线——不是因为内层屏蔽好而是因为内层奇偶模速度匹配远串扰天然小。实操结论缩短平行段到饱和长度以下是改善串扰最有效的手段除非需要同时改善串扰和损耗否则超过饱和长度之后再缩短总长度对串扰无益高速差分对优先走内层远串扰天然小5.2 走线长度与辐射效率一段末端悬空或者参考不完整的走线辐射效率随长度增加而增加在接近四分之一波长时达到峰值。一般规则当走线的物理长度超过λ/20时辐射开始变得不可忽略超过λ/4时进入谐振区辐射显著。算一下常见频率100 MHz 时v 165 mm/nsλ 1.65 mλ/20 82 mmλ/4 412 mm。300 MHz 时λ/20 27 mmλ/4 137 mm。所以对于 300 MHz 的时钟信号一条 30 mm 的天线走线就已经值得警惕了如果这条线还恰好是个悬空 stub那更糟。这也是为什么时钟线、复位线、使能线这些看起来不重要的单端信号反而是 EMI 测试最容易出问题的网络。实操上我会做三件事所有时钟和周期信号走线尽量短、尽量靠近参考平面、不跨分割悬空的 stub 一律删除包括测试点引线、未使用的分支板边区域避免布置时钟和高速走线边缘辐射最容易超标5.3 过孔残桩的 λ/4 谐振计算过孔残桩stub是长度效应在三维结构上最典型的体现。一个从表层贯穿到内层的过孔多出来的那一段没有连接任何走线的铜柱就是残桩。它的谐振频率f_res v / (4 × L_stub)。残桩长度谐振频率内层v 146 mm/ns影响的典型速率1.0 mm36.5 GHz影响极小1.5 mm24.3 GHz56 Gbps PAM4 需关注2.0 mm18.3 GHz25 Gbps 需关注3.0 mm12.2 GHz严重4.0 mm9.1 GHz严重6.0 mm6.1 GHz10 Gbps 通道受影响这张表就是背钻工艺的判据来源。当信号速率对应的奈奎斯特频率接近或者低于残桩谐振频率时就必须背钻。一个常见的做法是过孔换层次数越少越好。每多一次换层就多一个残桩多一个阻抗不连续点。在高速通道上我通常会把换层限制在两次以内并且尽量把换层位置放在接收端附近信号已经衰减反射影响小。提示背钻深度不能太深否则会削掉内层焊盘造成连接可靠性问题。一般背钻后残余 stub 控制在 8~12 mil0.2~0.3 mm比较稳妥具体要和板厂确认他们的加工能力。6. 从叠层到约束把长度规则落到工具里前面讲的都是为什么这一节讲怎么在工程里落地。走线长度的控制不是靠人肉检查而是靠叠层设计 约束规则 布线规范三层配合。6.1 叠层与阻抗设计是前提所有长度规则都建立在阻抗已经被明确定义的基础上。如果叠层还没定阻抗都没谱谈等长没有意义。叠层设计要确定的东西层数、介质厚度、铜厚每一层的用途信号层、平面层、混合层目标阻抗单端 50 Ω、差分 90 Ω 或 100 Ω线宽和线间距由阻抗反推板材型号决定 Dk 和 Df一个实际的经验值FR-4 上做 50 Ω 单端表层微带线大约需要W ≈ 2 × H线宽约为介质厚度的两倍内层带状线大约需要W ≈ H/2取决于上下介质是否等厚。做 100 Ω 差分表层间距大约S ≈ 2 × W内层S ≈ 1.5 × W。这些是粗略起点最终还是要用场求解器算。叠层定完之后把它固化到工具的 Layer Stack Manager 里包括ε_r和损耗角正切。这一步很多人都跳过了直接按默认的 FR-4 参数导致工具算出来的时延和实际不符。特别是用了低 Dk 板材的项目不改参数的话时延换算会差 10% 以上。6.2 约束管理器里的长度与偏斜规则以常见的几种工具为例规则设置的核心是三组数字最小长度、最大长度、偏斜容差。最小长度常常被忽略。有些接口比如源同步总线的某些场景要求走线至少有一定的长度以匹配驱动器的输出阻抗建立时间有些则是因为信号在太短的线上无法形成有效匹配。一般经验值是对于采用源端串联匹配的信号走线长度建议不小于 200 mil否则串联电阻起不到应有的阻尼作用。最大长度主要由损耗预算决定前面已经讲过算法。偏斜容差分三类对内偏斜intra-pair、组内偏斜intra-group比如同一个字节通道的 DQ、组间偏斜inter-group比如不同字节通道之间。在 Cadence Allegro 的 Constraint Manager 里这三类规则分别对应 Relative Propagation Delay 下的 Pin Pair、Match Group、以及 Class 之间的规则在 Altium 里对应 Length Tuning 规则和 Matched Length 规则。设置的时候有个技巧把最紧的约束给最长的走线。因为长走线上的偏斜容忍度受到损耗和串扰的侵蚀更严重裕量更小。短走线可以适当放宽。6.3 常见接口的长度与偏斜参考值下表是常见的参考量级不是可以直接照抄的规范值每个项目都要按器件手册重算。接口类型单端阻抗差分阻抗推荐最大长度对内偏斜组内偏斜DDR4-240040~50 Ω—6 inch5 ps15 psDDR4-320040~50 Ω—5 inch3 ps10 psPCIe Gen3—85 Ω20 inch含连接器5 ps—PCIe Gen4—85 Ω14 inch含连接器2 ps—千兆以太网—100 Ω6 inch10 ps—USB 3.0—90 Ω8 inch5 ps—HDMI 2.0—100 Ω6 inch10 ps30 psSATA 3.0—100 Ω12 inch5 ps—MIPI D-PHY 2.5G—100 Ω4 inch5 ps20 ps再次强调这些数字是量级参考用来做早期规划。正式设计必须按器件手册里的具体规格、叠层的具体参数、以及仿真结果来定。6.4 布线阶段的取舍顺序实际布线时各种约束会打架等长要求绕蛇形蛇形又占地方挤走了参考平面参考平面不完整又导致阻抗变化。这时候需要一个优先级。我的经验优先级是这样的第一优先参考平面完整性。任何情况下都不要为了等长而把参考平面挖得七零八落。宁可等长差一点也不要跨分割。第二优先对内偏斜。差分对内偏斜直接破坏波形代价最直接。第三优先串扰隔离。拉开间距、加隔离地、走内层这些都是一次性投入长期收益。第四优先阻抗连续性。减少换层、优化过孔、避免线宽突变。第五优先等长补偿。在上述条件都满足的前提下用蛇形把长度拉到约束范围内。第六优先绝对长度最小化。能短就短但不要在违反前五条的前提下去追求。这个顺序不是教条但它能帮你在布线卡住的时候快速做决定。我见过太多为了凑 5 miln 的等长把蛇形绕到了电源平面挖空区上方结果眼图比不等长还糟糕的例子。7. 仿真与实测怎么验证长度带来的影响约束定完了接下来要验证。仿真和实测是两条腿缺一不可。7.1 前仿真的最小闭环前仿真的目的是在投板之前把通道的频域和时域特性算出来。最小闭环包括三步第一步提取通道 S 参数。用 2D 场求解器算走线段的 S 参数用 3D 求解器算过孔、连接器、fanout 的 S 参数然后在通道仿真器里级联起来。注意频率扫描范围要覆盖信号频谱的三次谐波以上否则眼图会偏乐观。第二步用 IBIS 或 IBIS-AMI 模型驱动。IBIS 用于低速接口上升时间较慢、不需要均衡IBIS-AMI 用于高速串行接口包含均衡算法。模型的质量直接决定仿真可信度我一般会要求供应商提供经过验证的模型并且用厂商提供的参考眼图先做一次模型校准——用同样的通道条件跑一遍看能不能复现厂商的参考结果。这一步很关键模型不准的话后面所有仿真都是白做。第三步扫描长度变量。这是验证长度影响的核心环节把走线长度从最小值扫到最大值每一步记录眼高、眼宽、抖动。得到的结果是一条曲线可以看出长度增加到多少时眼图开始不合格。这条曲线比单点仿真有价值得多它能告诉你裕量还有多少。7.2 TDR 测阻抗、看长度板子回来之后最直接的验证手段是 TDR时域反射。TDR 的原理是发一个快速上升沿看反射回来的波形。阻抗不连续点会产生反射反射的极性反映阻抗是偏高还是偏低反射出现的时间位置反映不连续点距离测试点的电气距离。所以 TDR 不只是测阻抗它还能测长度。比如你在 TDR 波形上看到 3 ns 处有一个阻抗凹陷按内层 6.8 ps/mm 算这个凹陷大约在 3 ns / 6.8 ps/mm 441 mm 的位置——当然实际板子不会这么长这个例子只是说明换算关系。实操中我常用 TDR 做三件事验证叠层阻抗测一段已知长度的标准走线看阻抗是否落在设计值 ±10% 以内定位不连续点通过反射出现的时间位置反推是哪个过孔、哪个连接器出了问题间接验证对长对差分对的两根线分别做 TDR比较反射波形的时间偏移如果偏移超过预期说明对内偏斜超标TDR 的上升时间要选得比信号上升时间更短才能分辨细节。一般 TDR 模块的上升时间在 30~50 ps对应分辨率约 5~8 mm。要看更细的结构就需要更快的 TDR 或者用 VNA 做频域测量再反变换。7.3 眼图与抖动分解眼图是最终的验收指标。看眼图的时候除了眼高和眼宽还要关注抖动的构成。总抖动TJ通常分解为确定性抖动DJ和随机抖动RJTJ DJ n × RJ其中 n 取决于目标误码率BER 10⁻¹² 时 n ≈ 14。确定性抖动是有界的来源包括占空比失真、ISI码间干扰、周期性抖动来自开关电源、时钟耦合、串扰。这些抖动里ISI 和串扰都跟走线长度强相关——ISI 因为长走线的高频损耗而加剧串扰因为平行长度而加剧。随机抖动是无界的主要来自热噪声和长度关系不大。所以当你看到抖动超标时先看是 DJ 还是 RJ 占主导。如果 DJ 占大头而且眼图有规律性的收缩那基本可以锁定为长度相关的损耗或串扰问题如果 RJ 占大头那就要去看电源完整性、参考时钟质量、接收端灵敏度。一个实测的小技巧把眼图的采样点固定在眼中心做长时间的 BER 测试同时用示波器的抖动分解功能看 DJ 的频谱。如果 DJ 频谱上有明显的峰值说明是周期性的干扰源可以反查板上的时钟和开关电源频率。8. 常见问题与排查实录这一节全是踩过的坑。我把它们整理成表格方便对照排查。8.1 排查速查表现象可能的长度相关根因定位手段处理方式眼图整体压扁边缘清晰走线总长度超过损耗预算提取通道 S 参数看插入损耗曲线缩短长度、换低损耗板材、减少过孔眼图边缘有明显振铃阻抗不连续点过多或走线超过临界长度未做匹配TDR 定位不连续点加源端串阻、优化过孔、缩短线长眼图上边缘毛糙串扰注入平行段超过饱和长度近场扫描、串扰仿真拉开间距、加隔离地、打断平行段时序随机失败冷热差异大等长补偿不足或表内层混用未做时延校正查约束报告、TDR 对比按时延而非几何长度重新等长差分对内偏斜超标蛇形补偿不对称、过孔长度不一致TDR 对比正负端波形重新对称绕线、优化过孔对称性特定频点插入损耗突然凹陷过孔残桩 λ/4 谐振VNA 扫频计算残桩长度背钻或减少换层次数EMI 测试在特定频点超标长走线或悬空 stub 形成天线近场探头定位辐射源删除 stub、缩短走线、加屏蔽同一条总线部分位出错组内偏斜超标或串扰差异分组测眼图对比各组差异重新等长独立布线高速通道在高温下误码率上升板材损耗随温度变化长度裕量不足高低温循环测试预留更多损耗裕量换稳定性更好的板材蛇形段附近信号质量异常蛇形自耦合导致阻抗塌陷局部 TDR 测蛇形段阻抗加大蛇形间距至 4W缩短单段长度8.2 几个反直觉的坑坑一等长做过了头。有一次做 PCIe 通道为了满足±5 mil 的等长把一段本来很直的走线绕了一大圈蛇形长度从 8 inch 拉到了 11 inch。结果损耗增加了 3 dB眼图反而不合格。后来改成允许等长误差放宽到 ±15 mil但总长度必须控制在 9 inch 以内问题就解决了。等长是手段不是目的。坑二表层和内层直接比长度。约束报告里显示两条线长度相等但一条在表层一条在内层实际时延差了 12%。这个坑我在早期的项目里踩过后来所有约束都改成按延迟或层校正后的长度计算。坑三蛇形绕在参考平面挖空区。电源平面为了走大电流挖了槽蛇形正好绕在上面局部阻抗从 50 Ω 掉到 40 Ω 以下。眼图上是明显的双沿。这个问题的隐蔽性在于约束报告完全合格只有 TDR 才能发现。坑四以为缩短就能解决一切。有一次通道眼图不达标第一反应是缩短走线从 12 inch 缩到 8 inch眼高只改善了 15%。后来发现主要问题是两个过孔的残桩谐振背钻之后眼图直接合格。所以在动长度之前先排除其他更严重的因素。坑五忽略过孔本身也是长度。一个贯穿整个板厚的过孔长度可能有 60~80 mil对 25 Gbps 信号来说这就相当于额外增加了好几毫米的走线。做通道预算的时候过孔的数量和长度一定要单列一项。提示做大批量项目的时候建议把长度与偏斜的约束做成模板按接口类型分类保存。每次新项目直接套模板再按器件手册微调能省掉大量重复劳动也能避免遗漏。9. 我在实际项目里总结的几点体会走线长度这件事说到底是物理规律不给你商量的余地。你可以不听它的但它一定会在某个环节让你付出代价——可能是一次投板失败可能是批量生产的良率问题也可能是客户现场偶发的死机。我自己这些年形成的几条习惯分享出来供参考。第一条先算再布不要先布再算。叠层、阻抗、长度预算、偏斜预算这几件事必须在布线开始前确定。布到一半发现阻抗不对要改叠层等于重来。我见过最惨的一次是板子已经发出去才发现差分对内偏斜的预算算错了只能靠约束文件里的补偿值硬撑最后只能靠接收端均衡兜底量产良率一直上不去。第二条长度不是越短越好而是刚好够用最好。太短的走线在某些源端匹配场景下反而会出问题比如串联电阻起不到阻尼作用太长的走线损耗又扛不住。中间那个黄金区间因接口而异要算出来。第三条约束报告合格不等于信号合格。约束只能管住长度和偏斜管不住阻抗不连续、参考平面、串扰耦合。每次投板前我会在约束报告之外再做一次物理审查蛇形有没有跨分割、过孔残桩多长、平行段有没有超饱和长度、边缘走线有没有做隔离。这几项检查发现问题远比约束报警更有价值。第四条把时延换算表贴在工位上。表层 6 ps/mm、内层 7 ps/mm这个数字每天都会用到。心算快一点判断就快一点很多低级问题在画图阶段就能避开。第五条仿真和实测要对着看。仿真说裕量 30%实测只有 10%这里面差的 20% 一定藏着问题可能是模型不准可能是叠层参数填错了可能是板厂工艺偏差。把这个差异找出来比单纯看眼图合不合格更有收获。最后再补一个容易忽略的点板材的 Dk 和 Df 是频率相关的而且不同批次会有波动。标称 Dk 4.2 的板材实际可能在 4.1~4.35 之间波动批次之间还有差异。对于长度裕量特别紧张的项目建议在叠层设计时按最坏情况的 Dk 算一遍看看长度预算还能不能撑住。这个动作花不了多少时间但能避免量产阶段出现某些批次板子时序不对的诡异问题。走线长度本质上是一个把电信号的物理速度和工程可实现的几何尺寸连接起来的桥梁。理解了这座桥的承重极限在哪你才能在布线的时候既不浪费空间也不越界。
阅读完成 · 觉得有帮助?
咨询建站