
1. 为什么硬件工程师都绕不开Polar Si9000做硬件这行十几年画过的板子从两层板到十几层背板都有但真正让我意识到阻抗控制重要性的是早年一块DDR3的板子。板子打样回来功能跑不起来折腾了整整两周最后定位到是时钟线的阻抗偏差太大信号反射严重导致时序余量不够。那次之后Polar Si9000就成了我电脑里必装的工具之一。Polar Si9000本质上是一个传输线阻抗计算软件专门用来算PCB走线的特性阻抗。你给它叠层结构、线宽、介质厚度、铜厚、介电常数这些参数它告诉你这条线走出来的阻抗是多少欧姆。反过来你告诉它你要50欧姆它帮你反推线宽该画多宽。听起来简单但实际用起来里面门道不少。这个工具适合谁硬件工程师、PCB Layout工程师、SI信号完整性工程师甚至做射频板的朋友也经常用。尤其是现在DDR、USB、HDMI、PCIe这些高速接口满天飞阻抗不控好板子就是废的。很多刚入行的朋友觉得阻抗计算很神秘其实搞懂了原理用Si9000就是几分钟的事。我写这篇东西就是想把我这些年用Si9000的经验完整地捋一遍。从最基础的微带线、带状线模型选择到叠层设计怎么配合再到实际打样时怎么跟板厂沟通都会讲到。你看完之后应该能独立完成一块高速板的阻抗设计和叠层规划。2. 阻抗计算的核心逻辑与模型选择2.1 特性阻抗到底是什么为什么是50欧姆先把这个概念说清楚。特性阻抗Characteristic Impedance不是电阻你用万用表量是量不出来的。它描述的是信号在传输线上传播时每一瞬间看到的“等效阻抗”。你可以把它想象成一根水管管径大小决定了水流通过的难易程度特性阻抗就类似这个“管径”的电气版本。信号在走线上传播如果走线各处的特性阻抗一致信号就能安安稳稳地到达接收端。但如果中途阻抗变了——比如线宽突然变粗、经过一个过孔、或者参考平面不完整——信号就会在变化的地方产生反射一部分能量弹回去跟后面的信号叠加造成振铃、过冲、眼图闭合。速率越高这个问题越致命。那为什么大多数单端信号都定50欧姆这其实是个历史沿革加工程折中的结果。早年射频领域发现50欧姆在功率容量和损耗之间取得了比较好的平衡。同轴线用50欧姆后来PCB上的微带线也沿用了这个标准。另外50欧姆对应的线宽在常规叠层下比较适中既不会细到蚀刻困难也不会粗到布线密度太低。差分信号则通常用90欧姆、100欧姆或120欧姆具体看接口标准。注意不是所有线都要控阻抗。低速的GPIO、I2C、SPI这些除非走线特别长一般不用管。但USB、HDMI、DDR、以太网、PCIe这些必须控。2.2 微带线与带状线的本质区别Si9000里模型一大堆但最常用的就两个微带线Microstrip和带状线Stripline。微带线是走线在PCB表层一边是空气一边是介质参考平面在下面。它的优点是走线方便过孔少缺点是表层走线容易受外界干扰而且空气和介质的介电常数不一样计算时要用“有效介电常数”。微带线的阻抗一般比带状线高同样的线宽下微带线阻抗更大。带状线是走线夹在两个参考平面之间上下都是介质。它的优点是屏蔽好阻抗稳定缺点是走线在内层过孔多布线灵活性差。带状线的阻抗一般比微带线低因为两边都是介质电场分布更集中。选哪个看你的信号速率和布线空间。一般DDR的数据线走内层带状线时钟线可能走表层微带线。USB差分对如果走表层用微带线模型如果走内层用带状线模型。Si9000里对应的模型分别是Surface Microstrip和Edge-Coupled Stripline。还有一个常见的坑共面波导Coplanar Waveguide。有些射频板会在走线旁边加地铜皮这时候用普通微带线模型算就不准了得用共面波导模型。Si9000里有带地共面的模型选的时候看清楚。2.3 叠层参数怎么影响阻抗结果Si9000的输入参数就那么几个但每一个都直接影响结果。我逐个说。线宽W线越宽阻抗越低。这个最直观线宽增加等效电容增大阻抗下降。介质厚度H走线到参考平面的距离。H越大阻抗越高。因为距离远了电容减小阻抗上升。铜厚T一般用盎司表示1oz约等于35微米。铜越厚阻抗越低因为导体截面积大了电感减小。但铜厚对阻抗的影响相对小一些除非是特别厚的铜。介电常数Er板材的固有属性。FR-4的Er一般在4.2到4.6之间高频板材如 Rogers 4350B 的Er在3.48左右。Er越大阻抗越低。因为介电常数大电场被更多地束缚在介质里电容增大。阻焊层厚度C1/C2表层微带线上面会盖阻焊油墨阻焊的介电常数和厚度也会影响阻抗。Si9000里有C1、C2参数分别对应阻焊厚度和阻焊介电常数。很多人算表层阻抗时忽略这个结果打样回来偏差几个欧姆。阻焊一般会让表层阻抗降低1到3欧姆具体看油墨厚度。差分对间距S算差分阻抗时用。间距越小差分阻抗越低。因为两根线靠得近耦合增强等效电容增大。这些参数里介质厚度和介电常数是最关键的因为它们由板材和叠层决定一旦投板就没法改了。线宽可以在Layout时调整但调整范围受布线密度限制。3. 从零开始用Si9000算一条50欧姆微带线3.1 确定叠层结构假设我们要做一个四层板叠层是这样的顶层信号层第二层GND平面第三层电源平面底层信号层顶层到第二层的介质厚度假设用FR-4芯板厚度0.2mm约8mil。铜厚用1oz即1.4mil。阻焊厚度按0.5mil算阻焊介电常数取3.5。这些参数从哪来问板厂。每个板厂的叠层能力不一样常用的芯板厚度有0.1mm、0.15mm、0.2mm、0.3mm等。你直接找板厂的工艺文件或者问他们的工程师要推荐叠层。嘉立创、华秋这些都有在线叠层工具可以直接查。提示不要自己瞎编叠层参数。板厂的实际压合厚度和理论值可能有偏差尤其是半固化片PP的厚度压合后会变薄。用板厂给的参数最靠谱。3.2 在Si9000里输入参数打开Si9000选Surface Microstrip模型。输入W1线宽先填6mil试试W2线宽顶部一般跟W1一样除非考虑蚀刻因子H1介质厚度填8milT1铜厚填1.4milEr1介电常数填4.4C1阻焊厚度填0.5milC2阻焊介电常数填3.5点计算看结果。如果算出来是55欧姆说明线宽太细了加宽到7mil再试。如果算出来是45欧姆说明线宽太粗了减到5mil。反复调直到接近50欧姆。我实测下来8mil介质、1oz铜厚、FR-4板材50欧姆对应的线宽大约在5.8到6.2mil之间。但不同板厂的Er有差异有的FR-4 Er是4.2有的是4.6算出来线宽能差0.5mil。所以一定要用板厂的实际Er值。3.3 蚀刻因子与线宽补偿这里有个细节Si9000里的W1和W2。实际蚀刻出来的走线不是矩形而是梯形顶部窄底部宽。W1是底部线宽W2是顶部线宽。如果你只填一个W软件默认是矩形。但实际生产中蚀刻会让顶部变窄。一般蚀刻因子取0.5到1mil。也就是说如果你设计线宽是6mil实际顶部可能是5.5mil底部是6.5mil。这个差异对阻抗有影响尤其是线宽比较细的时候。我的做法是在Si9000里把W1和W2都填设计线宽先算个大概。然后跟板厂确认他们的蚀刻补偿策略。有些板厂会自动补偿你给6mil他们工程处理时会加到6.5mil蚀刻后刚好6mil。有些板厂不补偿那你得自己把设计线宽加大0.5mil。注意线宽越细蚀刻因子的影响越大。3mil的线蚀刻后可能变成2.5mil阻抗偏差能到5欧姆以上。所以细线阻抗控制难度大能粗尽量粗。3.4 差分阻抗的计算要点差分对用Edge-Coupled Microstrip或Edge-Coupled Stripline模型。除了单端的参数还要填间距S。假设USB 2.0的差分阻抗要求90欧姆差分对走表层微带线。线宽6mil间距6mil介质8mil铜厚1ozEr 4.4。算出来差分阻抗可能是85欧姆偏低了。怎么办两个办法加大间距或者减小线宽。加大间距到8mil差分阻抗升到90欧姆左右。但间距大了差分对的耦合减弱共模抑制变差。减小线宽到5mil阻抗也能升但线宽细了损耗大。实际工程中通常是两者折中。差分阻抗的公式比较复杂Si9000帮你算但你得理解趋势间距增大差分阻抗增大线宽增大差分阻抗减小介质厚度增大差分阻抗增大。还有一个坑差分对内的两根线要等长。不等长会导致差分信号变成共模信号EMI变差。Si9000不算等长这个得在Layout时用等长绕线搞定。4. PCB层叠设计的实战配合4.1 层叠设计的基本原则阻抗计算不是孤立的它跟层叠设计是绑在一起的。你算出来的线宽得能在Layout里布得下你选的叠层得能满足所有信号的阻抗要求。层叠设计有几个基本原则参考平面要完整。信号层旁边一定要有GND或电源平面而且这个平面要连续不能有大的开槽。如果参考平面不完整阻抗会突变信号质量直接崩。电源和地要成对。四层板一般是Top-GND-Power-Bottom六层板可能是Top-GND-Signal-Power-GND-Bottom。电源平面和地平面尽量靠近减小电源阻抗。高速信号走内层。内层有上下两个参考平面屏蔽好阻抗稳定。表层走线方便但容易受干扰一般走低速信号或短距离高速信号。叠层要对称。不对称的叠层容易翘板尤其是多层板。芯板和PP的厚度要尽量对称分布。4.2 四层板的典型叠层与阻抗规划四层板是最常见的。典型叠层层类型厚度Top信号1oz铜介质FR-40.2mmInner1GND1oz铜芯板FR-41.2mmInner2Power1oz铜介质FR-40.2mmBottom信号1oz铜Top到Inner1的介质厚度0.2mm约8mil。Bottom到Inner2也是8mil。这个叠层下表层微带线50欧姆对应线宽约6mil内层没有信号层所以不用算带状线。如果要把信号走内层得改成六层板。四层板的内层一般是平面不走线。有些设计会把Inner2走线但那样电源平面就不完整了得不偿失。4.3 六层板的叠层方案与阻抗分配六层板常见叠层层类型Top信号Inner1GNDInner2信号Inner3信号Inner4PowerBottom信号Top到Inner1的介质厚度假设0.1mm4milInner2到Inner3的芯板厚度0.5mmInner3到Inner4的介质0.1mm。这样表层微带线H4mil50欧姆线宽约3.5milInner2带状线参考Inner1和Inner3H14milH24mil50欧姆线宽约4milInner3带状线参考Inner2和Inner4H14milH24mil50欧姆线宽约4mil注意Inner2和Inner3之间的芯板厚度不影响阻抗因为带状线的参考平面是上下相邻的平面。但如果Inner2和Inner3之间没有平面那它们之间的耦合会影响阻抗这时候要用差分带状线模型或者双带状线模型。提示六层板的内层信号层最好上下都有完整的参考平面。如果某个信号层只有一边有参考平面那就变成微带线了阻抗计算要用微带线模型。4.4 叠层与板厂的沟通要点你设计的叠层板厂不一定能做。每个板厂的标准叠层库不一样芯板和PP的厚度组合有限。所以设计叠层时先拿板厂的叠层表来看从他们的标准叠层里选或者让他们推荐。跟板厂沟通时要提供这些信息层数每层的铜厚每层的介质厚度板材类型FR-4、高频板等阻抗要求哪些线控多少欧姆允许偏差多少阻抗测试要求是否要测试报告板厂会根据你的要求调整叠层给出他们的推荐方案。你拿到方案后用Si9000重新算一遍阻抗确认线宽。如果板厂调整了介质厚度你的线宽也得跟着调。我遇到过好几次板厂为了凑标准叠层把介质厚度从8mil改成7.5mil结果阻抗从50欧姆变成52欧姆。虽然偏差不大但对时序要求严的信号还是得重新算线宽。5. 常见问题与排查技巧实录5.1 算出来的线宽太细怎么办有时候算出来50欧姆对应3mil线宽但你的布线密度要求线宽至少4mil。怎么办第一减小介质厚度。介质越薄同样阻抗下线宽越宽。把8mil改成4mil线宽能从6mil降到3.5mil不对介质薄了阻抗降低要维持50欧姆线宽得减小。所以减小介质厚度反而让线宽更细。这个方向反了。第二增大介质厚度。介质厚了阻抗升高要维持50欧姆线宽得加宽。所以把8mil改成10mil线宽能从6mil加到7mil。但介质厚了走线到参考平面的距离远了信号回流路径变长EMI可能变差。第三换低介电常数的板材。Er小了阻抗升高线宽加宽。FR-4的Er是4.4换成Er 3.5的板材线宽能加宽0.5到1mil。但高频板材贵。第四用共面波导。走线旁边加地铜皮等效阻抗降低要维持50欧姆线宽可以加宽。但共面波导的阻抗对地铜皮间距敏感设计时要小心。实际工程中通常是组合使用。比如介质厚度加到10mil同时换Er 4.0的板材线宽能到7mil左右。5.2 打样回来阻抗偏差大怎么排查板子打样回来用TDR测阻抗发现偏差10%以上。怎么查先看测试点。TDR测试需要探头接触走线如果测试点有阻焊或者探头接触不良测出来不准。最好在走线上留裸露的测试焊盘。再看走线是否经过过孔。过孔处的阻抗会突变TDR波形上会有尖峰。如果测试点包含过孔测出来的阻抗不是纯走线阻抗。然后看参考平面是否完整。如果走线下面的GND平面有开槽阻抗会偏高。用X光或者切片看叠层确认介质厚度和铜厚是否符合设计。最后看板材的Er。FR-4的Er批次间有波动尤其是不同厂家、不同批次的板材。如果板厂换了板材供应商Er可能从4.2变成4.6阻抗偏差5%以上。这种情况只能让板厂提供板材的Er实测值重新算线宽。注意阻抗偏差在±10%以内通常可以接受但USB、HDMI这些要求±10%DDR要求±10%到±15%。如果要求±5%得用高频板材FR-4很难做到。5.3 差分对阻抗偏低的调整方法差分阻抗偏低最常见的原因是间距太小。加大间距是最直接的办法。但间距大了差分对的耦合减弱共模抑制变差EMI可能变差。另一个办法是减小线宽。线宽减小单端阻抗升高差分阻抗也升高。但线宽细了损耗大而且蚀刻因子影响更大。还可以增大介质厚度。介质厚了阻抗升高。但介质厚度由叠层决定改叠层成本高。实际调整时先调间距再调线宽。间距调整范围大对阻抗影响明显。线宽调整范围小而且影响损耗。我一般会留一定的余量。比如要求90欧姆我算的时候按92欧姆算打样回来即使偏差3%还有89欧姆在允许范围内。5.4 常见问题速查表问题可能原因排查方法解决措施阻抗偏高线宽太细检查设计线宽加宽线宽阻抗偏高介质太厚检查叠层减小介质厚度阻抗偏高Er偏低问板厂要Er值换板材或调线宽阻抗偏低线宽太粗检查设计线宽减小线宽阻抗偏低介质太薄检查叠层增大介质厚度阻抗偏低阻焊太厚检查阻焊工艺减薄阻焊或调线宽差分阻抗偏低间距太小检查差分间距加大间距差分阻抗偏低线宽太粗检查差分线宽减小线宽测试偏差大测试点不良检查测试焊盘重新测试测试偏差大过孔影响检查测试路径避开过孔测试5.5 几个容易忽略的细节铜箔粗糙度。高频下铜箔表面的粗糙度会影响阻抗。普通铜箔粗糙度大高频损耗大阻抗也略低。高频板材用低粗糙度铜箔阻抗更稳定。Si9000里没有铜箔粗糙度参数但高频设计时要考虑。温度影响。板材的Er随温度变化FR-4在高温下Er会略微增大阻抗降低。一般消费级产品不用太在意但工业级、汽车级产品要考虑温度循环下的阻抗稳定性。阻焊开窗。走线上如果阻焊开窗比如测试点或焊盘那一段的阻抗会变。因为空气的Er是1阻焊的Er是3.5开窗后等效Er降低阻抗升高。所以测试点最好放在走线末端不要放在中间。过孔阻抗。过孔也有阻抗而且通常比走线低。高速信号经过过孔时阻抗不连续会导致反射。Si9000不算过孔阻抗得用专门的过孔阻抗计算工具或者用3D电磁仿真。一般速率不高的信号不用管但10Gbps以上的信号过孔要优化。6. 从计算到投板完整流程复盘6.1 前期准备板材与叠层确认项目开始先确定板材。低速板用FR-4高速板用高频板材。FR-4便宜但Er波动大损耗大。高频板材Er稳定损耗小但贵。然后找板厂要叠层表。板厂的标准叠层表里芯板和PP的厚度组合是固定的。你从里面选一个接近你需求的或者让板厂推荐。拿到叠层表后用Si9000算阻抗。先算单端50欧姆再算差分90/100欧姆。算出来的线宽记下来Layout时用。6.2 Layout阶段的阻抗控制Layout时阻抗线要单独设置规则。在Cadence Allegro或Altium Designer里可以设置阻抗规则软件会自动检查线宽和间距。阻抗线尽量走直线少拐弯。拐弯用45度角或圆弧不要用90度角。90度角会导致阻抗突变。差分对要等长间距要一致。不等长会导致差分信号 skew间距不一致会导致差分阻抗波动。参考平面要完整。阻抗线下面的GND平面不能有开槽不能跨分割。如果必须跨分割要在跨分割处加缝合电容。6.3 投板文件与阻抗测试要求投板时在Gerber文件里标注阻抗要求。一般是在钻孔层或专门的阻抗标注层里写清楚哪些线控多少欧姆允许偏差多少。同时提供叠层图标明每层的铜厚、介质厚度、板材类型。板厂会根据你的叠层图调整他们的标准叠层。如果要求阻抗测试要提供测试 coupon。测试 coupon 是一块单独的测试板上面有跟你设计一样的阻抗线板厂用它来测阻抗。测试 coupon 要跟你的板子一起做用同样的叠层和工艺。6.4 打样回来后的验证板子回来先看外观再看阻抗测试报告。如果板厂提供了测试报告看实测阻抗是否在允许范围内。如果没有测试报告自己用TDR测。TDR比较贵一般小公司没有。可以送第三方实验室测或者用矢量网络分析仪VNA测S参数反推阻抗。实测阻抗如果偏差大先排查测试方法再排查设计。如果是设计问题下一版改线宽或叠层。如果是板厂工艺问题跟板厂沟通让他们调整。我个人的经验是FR-4的阻抗偏差一般在±8%以内高频板材能到±5%以内。如果要求±5%得用高频板材而且跟板厂确认他们的工艺能力。6.5 一个完整的计算实例最后给一个完整的例子。四层板FR-4Er 4.4Top到Inner1介质厚度0.2mm8mil铜厚1oz阻焊厚度0.5mil阻焊Er 3.5。目标单端50欧姆差分100欧姆。单端微带线Si9000 Surface MicrostripW1W26milH8milT1.4milEr4.4C10.5milC23.5。算出来Z050.2欧姆。线宽6mil。差分微带线Si9000 Edge-Coupled MicrostripW1W26milS6milH8milT1.4milEr4.4C10.5milC23.5。算出来Zdiff88欧姆。偏低。调整S8milZdiff92欧姆。再调W5.5milS8milZdiff95欧姆。再调W5milS9milZdiff100欧姆。最终差分线宽5mil间距9mil。这个例子说明差分阻抗的调整需要反复试。Si9000的好处就是快改个参数点一下就算出来了比手算快得多。提示Si9000的试用版功能有限但基本计算够用。正版贵小公司可以用试用版或者找替代工具。嘉立创的在线阻抗计算器也能算但模型少一些精度差一点。7. 我这些年踩过的坑和总结的经验说几个我实际踩过的坑。第一个坑忽略阻焊影响。早年算表层阻抗没填C1和C2算出来50欧姆打样回来测出来47欧姆。后来才知道阻焊让阻抗降了3欧姆。现在算表层阻抗必填阻焊参数。第二个坑用错模型。有一次算内层差分线用了Edge-Coupled Microstrip模型算出来100欧姆结果打样回来测出来85欧姆。后来发现内层应该用Edge-Coupled Stripline模型。模型选错结果差很多。第三个坑没跟板厂确认Er。用FR-4默认Er 4.4算的线宽板厂实际用的板材Er是4.2阻抗偏高5%。后来每次投板前都问板厂要板材的Er实测值。第四个坑测试点位置不对。TDR测试点放在走线中间旁边有分支线测出来阻抗偏低。后来把测试点放在走线末端避开分支测出来就准了。第五个坑叠层不对称。六层板叠层不对称打样回来板子翘了贴片时不好处理。后来叠层尽量对称芯板和PP厚度对称分布。这些坑说到底都是细节。阻抗计算本身不难难的是把细节都考虑到。Si9000是个好工具但它只是工具你得理解背后的原理才能用好。最后分享一个小技巧Si9000里可以保存不同的叠层配置下次用的时候直接调出来不用重新输参数。我一般会按板厂和板材分类保存比如“嘉立创-FR4-四层”、“华秋-FR4-六层”用的时候直接选省时间。另外Si9000的场求解器精度不错但它是2D的不考虑走线拐弯、过孔、平面开槽这些3D效应。如果信号速率很高比如25Gbps以上最好用3D电磁仿真工具验证一下。但大多数消费级产品Si9000够用了。