
做了这么多年PCB我几乎每次画完板子都要被一件事折磨——明明铺铜铺得满地也连了可EMC预测试就是不过辐射超标、底噪偏高。后来拆开板子一层一层看才发现问题往往不是铺铜没铺而是层与层之间的地铜压根没“真正连起来”。说得直白点你的地平面像两层楼中间却没几部楼梯信号回流的时候只能绕着走远路绕出来的回路面积就是一根根天线。这个问题的标准解法就是加缝合孔Stitching Via。今天这篇就以PADS VX2.4为工具把从铺铜设置到阵列过孔的完整流程捋一遍包括每个参数怎么填、每个步骤为什么这么做以及我在实际项目里踩过的坑。不管你用的是VX2.4还是更高的VX版本流程和底层逻辑基本通用准备入坑或者已经在坑里的朋友都可以直接照着操作。1. 缝合孔到底在解决什么问题理解回流与EMC的底层关系1.1 电流走的不只是“路”而是“回路”很多人对信号的认知是从驱动端出发沿着走线到达接收端结束。但物理世界不是这样的信号必须以回路的形式存在有去必有回。高频信号的回流电流并不会老老实实沿着地走线回来而是会寻找阻抗最低的路径通常就是紧贴在信号走线下方的参考平面上。这里有个关键点当信号走线在顶层参考平面在第二层时回流电流主要分布在第二层平面靠近顶层走线的位置。如果信号换到第三层走回流电流就要换到第三层附近的参考平面。如果这两层地平面之间的连接过孔很少回流电流就得在某个地方“爬上爬下”这个换层的位置如果没有过孔回流电流就只能绕一个大圈到远处有孔的地方再换层。绕行意味着环路面积变大环路面积大意味着辐射强EMC指标自然就崩了。缝合孔做的事情就是在地平面的不同层之间密集地打上过孔让回流电流随时可以就近换层不需要绕远路。你可以理解为给上下两层地板之间安了足够多的楼梯人回流电流随时可以下楼不用跑到楼道尽头去绕。1.2 缝合孔、普通信号过孔和散热孔的区别很多初学者会把缝合孔和普通过孔混为一谈实际上它们的定位完全不同。类型主要连接对象核心目标网络归属间距特点缝合孔不同层的参考地铜降低回流路径阻抗、抑制EMC通常为GND密集均匀2.5mm到5mm常见普通信号过孔信号走线跨层引导信号换层传输信号网络随走线走无固定间距散热孔发热器件到内层铜皮导热、降低热阻多接GND或电源紧贴器件焊盘附近缝合孔的核心价值是“电气性能”不是为了过信号也不是为了散热。把它当普通过孔用当然也能导通但如果不注意间距均匀性和与回流路径的配合效果会大打折扣。1.3 哪些板子必须认认真真加缝合孔我不是说所有板子都要疯狂打孔但以下几种情况缝合孔是刚需。第一四层板及以上、有完整内层地平面的板子。这是缝合孔的主战场。两层板因为缺少完整参考平面缝合孔的收益相对有限但仍然可以在板边和接口附近起作用。第二高速信号密集的区域比如DDR、USB、HDMI、以太网等接口附近。信号换层时紧邻的过孔位置必须放置回流过孔否则信号的回流路径断裂信号完整性问题马上显现眼图质量差、误码率高。第三板边、螺丝孔、结构件附近。这些位置容易受到外部干扰也容易向外辐射。沿板边每隔一段距离放置缝合孔相当于在板子边缘竖起一道“法拉第笼”式的屏障把板内辐射关在笼子里。第四射频电路周围。射频电路对地阻抗极其敏感缝合孔能显著降低接地电感让参考地更加“实”。我见过一个2.4G模块的案例天线附近地铜的缝合孔从稀疏改成密集后发射功率和接收灵敏度都有可测的改善。2. 动手之前先做好铺垫铺铜与设计规则的准备工作2.1 在PADS里先把过孔类型和间距规则定义好缝合孔的添加不能靠临时抱佛脚必须在设计规则阶段就预留好合适的过孔类型。否则你边画边建过孔容易因为参数错误导致后面批量放置后DRC一堆报错返工到怀疑人生。在PADS Layout中从“工具”菜单进入“PCB设计规则”或者是直接双击“设计规则”图标。重点设置的项目有这么几个过孔焊盘直径。缝合孔不需要承载大电流所以没必要做得很大。我常用的规格是钻孔0.3mm、焊盘0.55mm如果板厂工艺支持0.25mm钻孔也可以进一步缩小但没必要0.3mm是性价比和可靠性都很好的选择。过孔到铜皮的安全间距。这个值决定了缝合孔密集排列时会不会触发间距规则报错。一般设置0.2mm到0.25mm如果使用0.3mm钻孔的过孔过孔中心距最小可以做到0.550.40.95mm但实际使用时我们不会放这么密后面细说。还要确认过孔是否允许连接铺铜。在PADS的规则里过孔与铜皮的连接方式有直连和热焊盘两种缝合孔强烈建议用直连一字不差地说就是“Direct”。如果用热焊盘过孔与铜皮之间只有四条细小的热桥连接电气上等于变相增加了过孔电感缝合效果会大幅削弱。2.2 铺铜的操作细节与常见误区缝合孔是长在铺铜上的铺铜的质量直接决定缝合孔的效果。在PADS VX2.4里铺铜的基本操作是点击“铜皮”工具在“绘图工具”工具栏里选择Copper Pour图标然后画一个闭合的边框。画完以后双击这个铜皮区域给它分配网络例如GND再点击“填充”按钮软件就会按规则生成实心铜。这里有一个非常常见的误区很多人图省事直接使用“铜皮”工具里的Copper非Pour类型这种铜皮不会自动跟随规则变化也不会和过孔建立动态连接。缝合孔放在这种静态铜皮上虽然物理上连通了但如果你后面修改走线或移动器件静态铜皮不会自动避让DRC检查时你会看到一片红。正确做法是使用“Copper Pour”动态铜皮让铜皮保持“活性”自动避让过孔和走线。另一个误区是网格铜和实心铜的选择。有些工程师习惯把整板都铺成网格铜觉得好看、省铜、板材附着好。但如果你的板子有大量缝合孔网格铜的连接效率远不如实心铜因为网格线条本身就窄过孔与网格的交点可能只有一两个导电截面严重不足缝合效果接近零。我的建议是常规板子老老实实用实心铜只有在需要控制板材翘曲、或者某些高频模拟板有特殊需求时才用网格铜而且要专门对缝合孔区域做实心处理。2.3 铺铜禁区Keepout的正确画法热词里有一条“cadence禁止铺铜区”虽然说的是Cadence工具但PADS里同样有对应的概念叫Keepout。Keepout的作用是定义一个禁止区域在这个区域内不允许铺铜、不允许走线、不允许放过孔。在PADS中点击“禁止区域”工具Keepout图标画一个闭合图形然后双击设置属性。在“图层”选项卡中选择作用范围比如顶层、底层或所有层在“选项”中勾选允许或禁止的对象类型例如禁布走线、禁布过孔、禁布铜皮。画Keepout的时机要在铺铜之前完成。因为动态铜皮会自动避让Keepout区域如果先铺铜再画Keepout铜皮不会自动掏空需要重新填充或者手动画Copper Cutout才能修正操作起来事倍功半。所以我的习惯是铺铜前先把板子上的结构禁布区、高隔离区域、天线净空区全部用Keepout框出来然后再铺铜一步到位。3. PADS VX2.4缝合孔添加全流程每个步骤的参数和意图3.1 在PADS Router中调出缝合孔功能PADS的缝合孔功能藏在PADS Router里不是在PADS Layout的界面直接操作。这也是很多新手卡住的地方在Layout里翻遍了菜单找不到缝合孔以为软件没有这个功能就开始手动一个一个放孔。正确路径是这样的先用PADS Layout打开板子然后在“工具”菜单中选择“PADS Router”打开布线器。进入Router界面后加载的仍然是同一块板但是多了一些高级布线相关功能其中就包括缝合孔。在Router中先框选需要添加缝合孔的区域。我习惯的做法是直接选中整块铺铜区域或者在板框内全选。然后点击右键在弹出的菜单里找到“添加缝合过孔”Add Stitching Vias选项。需要注意的是不同小版本之间菜单位置可能略有差异有的版本里这个功能在“编辑”下拉菜单中有的在右键菜单里如果你找不到就在菜单栏里点一遍“编辑”看看有没有“Stitching”相关选项。点击后会弹出缝合过孔设置对话框这是整个流程的核心后面单独花一节讲清楚。3.2 缝合过孔对话框参数逐一拆解在“添加缝合过孔”对话框中需要设置的参数主要有以下几项每一项的含义和推荐值如下。过孔类型。这里要选择你在设计规则里预先定义好的缝合孔专用过孔即0.3mm钻孔、0.55mm焊盘那个。不要随手选一个大号的电源过孔缝合孔的体积小、寄生电容和电感都更低密集放置时对设计的影响也更小。网络。一般选择GND。缝合孔的核心任务是把各地网络连成一个低阻抗整体所以网络必须指向地。如果你的板子上有地分割需要特别注意缝合孔不要跨越分割区域否则等于直接桥接了两个地平面破坏了分割的意义。间距。这是缝合孔的相邻过孔中心距。推荐值是2.5mm到5mm。具体取舍看你的工作频率频率越高回流电流越集中在表层需要的缝合孔越密集普通数字电路板取3mm左右比较稳妥高速板可以做到1.5mm到2mm但要注意别太密导致板子强度下降。经验法则是缝合孔间距不超过最高关注频率对应波长的二十分之一举个例子1GHz信号对应波长300mm二十分之一就是15mm看起来3mm绰绰有余但实际因为介质常数和回流集中效应工程上会用更保守的间距。离边界距离。这个参数控制缝合孔距离铺铜区域边界的最小距离一般设置为0.5mm到1mm即可。太贴边会导致过孔半悬在铜皮边缘焊接和阻抗特性都不理想。设置完成后点击确认Router就会在选中的区域内自动按照设定间距生成一排排整齐的缝合孔像稻田插秧一样均匀。这个操作对大面积地铜特别高效几百个孔几秒钟就全部放好了纯手动放孔的话得点半个小时。3.3 缝合孔生成后的微调手法自动生成的缝合孔整体很规整但总有个别位置需要手动干预。比如有些过孔落在了螺丝孔附近或者与结构件干涉这时候不需要删掉整个缝合孔集直接单独选中这几个过孔删除即可。如果发现局部区域缝合孔太稀疏或太密集也可以单独选中区域内的过孔删除后重新在局部执行一次缝合孔操作。PADS的缝合孔功能支持多次添加后添加的会和原有孔自动避让实际上并不会自动避让它只会按网格生成所以局部重做时最好把旧孔先删除否则可能出现重叠或间距违规。我常用的方式是用“选择过孔”过滤器框选出局部区域内的缝合孔删除后再重新添加。还有一个实用技巧有些缝合孔生成后发现没有连接到地铜检查网络属性时显示为“无网络”或者孤儿过孔。出现这种情况多半是因为对面层的铜皮是静态铜皮或者铜皮有破损过孔没有与铜皮建立连接关系。解决方法就是在Layout中重新填充一遍铜皮让过孔与铜皮重新建立连接然后再回Router里确认网络。4. 阵列过孔的独立应用另一种批量打孔思路4.1 缝合孔功能与阵列过孔的分工缝合孔功能是“软件按规则自动生成”适合大面积、规则网格的场景。但PCB设计里并不是所有需要过孔的场景都适合这种全自动方式。比如我要在某个电源模块下面放一片散热过孔或者在USB接口的滤波电路附近放一圈接地过孔这种局部强调的场景用“阵列过孔”的方式反而更灵活可控。阵列过孔的本质是先手动放置一个过孔然后按照指定的行数、列数和间距一次性复制出一片过孔阵列。它和缝合孔的区别在于缝合孔会自动跟随铺铜区域形状、自动避让障碍物而阵列过孔是纯粹的机械式行列复制不会考虑你旁边有没有走线、有没有器件完全按你给的数字来。4.2 手工放置基本过孔并批量复制的操作步骤第一步先确认当前层和网络。在PADS Layout中选择走线层为需要连接的地层从“设计”工具栏中选择“过孔”工具在目标区域放置第一个缝合孔。放置时立即按Tab键或直接在设计规则中确认网络为GND。第二步选中这个已放置的过孔点击右键在弹出的菜单中寻找“阵列”Array或“重复放置”Step and Repeat选项。我用的VX2.4版本里右键菜单有“Add Array”的入口点击后弹出的对话框需要填写这些参数列数/行数根据区域大小临时估算比如我要覆盖一个10mm×8mm的区域过孔间距3mm那么大约需要4列×3行计算方式是区域长度除以间距后向上取整再加一。列间距/行间距这里输入3mm与缝合孔的间距保持一致保证电气性能均匀。递增方向往X方向和往Y方向递增通常选择90度方向展开。确认后PADS会按设定生成一排整齐的过孔阵列。如果阵列生成后发现有局部与器件干涉直接选中干涉位置附近的过孔删除即可。4.3 阵列过孔时的参数计算与实操建议阵列过孔虽然简单但有几个细节值得注意否则容易返工。阵列的方向要和板子的实际方向对齐。如果板子是斜的就不要凭感觉输入行列数最好先测量区域的角度在阵列参数中输入对应的旋转角度否则阵列整体是斜的看起来会非常难受。间距取值要结合板厚和过孔孔径。板厚1.6mm、钻孔0.3mm的过孔阵列间距3mm完全没问题。但如果板子很厚比如2.4mm过孔的长细比变大钻孔时容易偏斜阵列间距可以适当放宽到3.5mm以上保证成品率和结构强度。还有一点阵列过孔生成后网络属性可能因为复制操作而丢失变成“无网络”。我踩过这个坑在板厂回来检查时发现一堆过孔和地铜没有连通看起来在铜皮上但实际上是“假连接”。解决方法是全选阵列过孔在属性对话框中统一将网络修改为GND然后再重新填充铜皮确保过孔与铜皮建立真实的连接关系。4.4 阵列过孔和缝合孔如何配合使用实际工程项目中两者常常是配合关系而不是二选一。大面积的核心地平面区域用PADS Router的缝合孔功能全自动生成保证整体均匀性局部重点区域比如电源模块、接口滤波地、天线净空边界用阵列过孔做针对性加强。举个例子DC-DC电源下方通常需要多个过孔把顶层和底层地连接起来降低回路电感我会用阵列过孔在模块下方放两排10个孔间距2mm左右——这种局部高密度用缝合孔反而不容易控制位置它可能给你放得歪七扭八。配合使用时的经验是“缝合孔打底阵列孔强化”。底子均匀局部够密EMC性能和信号完整性都能兼顾。5. 缝合孔做完之后的验证与高频踩坑点5.1 如何检查缝合孔是否真的“缝”上了打完缝合孔这件事不算完关键要检查它是否真的和地铜建立了连接。我见过太多板子表面上过孔密密麻麻非常漂亮实际一测网络属性要么是孤立过孔No Net要么是悬空过孔Unrouted。快速检查方法很简单在PADS中打开“无网络”过滤显示在“视图”菜单的“网络”颜色显示里把所有无网络的过孔用高亮颜色显示出来。如果缝合孔区域出现了高亮的“无网络”过孔说明这些过孔没有和任何铜皮建立连接需要处理。处理办法我之前已经提到先在属性中给这些孤孔分配GND网络然后返回PADS Layout点击“填充管理”执行一次全面的铜皮重新填充。重新填充后过孔就会真正“咬”进铜皮里。之后再到Router里检查一遍网络确认不再是No Net状态。另一个检查维度是DRC。运行PADS的“验证设计”功能重点看“过孔到过孔间距”的报错。缝合孔密集区域如果报出一堆间距违规说明你的设计和规则有冲突调整规则或者调整过孔位置不要硬着头皮忽略报错。缝合孔的位置违规在PCB生产时可能会直接导致钻孔偏孔、焊环断裂这种可靠性问题在恶劣环境下非常致命。5.2 热焊盘、孤儿铜和分割地平面三个容易忽略的坑热焊盘问题。前面提到过缝合孔要求直连铜皮但如果你在设计规则里没有修改连接方式默认可能还是热焊盘连接。这种情况下过孔和铜皮之间的连接截面积非常小回流电流通过时相当于经过了一个瓶颈缝合效果大打折扣。检查方法选中缝合孔看属性中的“连接方式”如果是Thermal改成Direct。批量修改的方式是选中所有缝合孔右键打开属性对话框统一调整。孤儿铜问题。动态铜皮在某些狭窄区域可能无法完全填充形成孤立的“铜岛”即没有通过任何过孔或走线与网络主体连接的铜皮。这种铜岛在电气上是浮空的等于一个随机天线反而恶化EMC。缝合孔如果打在铜岛上等于给浮空铜皮加了一根天线问题更严重。处理方式是在PADS中执行“铜皮检查”把孤儿铜皮删除或手动补过孔连接。分割地平面问题。在前置准备时就应该规划好地平面的分割安装缝合孔后更要检查缝合孔是否跨越了分割区域。如果缝合孔把割开的地平面又桥接起来那分割就白做了模拟地和数字地之间的噪声会通过缝合孔串通导致信号质量灾难。5.3 关于缝合孔间距的一些实测体会经常有人问我“缝合孔间距到底多少合适”我给不出一个精确数字因为这完全取决于你的叠层、频率和EMC要求但可以说几个实测规律。在普通四层板、数字时钟频率在100MHz上下的板子上缝合孔间距3mm和间距5mmEMC测试结果差异大概在2到3dB。如果你的产品余量很紧张把间距缩小比换更高成本的滤波器更划算。在射频区域间距2mm以内是常见做法。射频工程师对地的抠门程度超出一般想象我能理解因为每增加0.1nH的接地电感对射频性能都是可见的损失。还有一个被很多人忽略的细节缝合孔不要在地平面的正中央铺得太密。回流电流天然集中在走线下方和板边地平面中央的缝合孔贡献有限。把有限的过孔预算优先分配给走线密集换层处、板边、接口和器件下方性价比远高于全板均匀分布。6. 回到工具本身VX2.4版本的一些使用心得用PADS VX2.4做缝合孔已经有几年时间整体来说这个版本的功能完成度已经相当高几个大的坑基本都被Mentor填完了。但一些小问题还是存在比如在Router里添加缝合孔时如果板子上有大量未布完的走线软件会明显卡顿尤其是框选大面积铜皮时。我的建议是缝合孔操作尽量放在布线接近完成阶段这时候动态铜皮数据量更小Router运行更流畅。另一个心得是给多块相同结构的板卡做设计时缝合孔的参数和规则可以保存为一份独立的规则文件。PADS支持从已有的PCB文件导出规则在“文件”菜单里选择“导出”中的“规则”下一次新板子直接导入这套规则缝合孔类型、间距、安全距离全部自动载入不用重新设置一遍。这个习惯帮我省了大量的重复劳动强烈推荐。还有一个和结构工程师协同的小技巧板子上如果有金属屏蔽罩建议在屏蔽罩焊盘下方加一圈缝合孔。金属屏蔽罩通过焊盘连接地后如果下方没有缝合孔把顶层地铜和内地平面连通屏蔽罩就会成为一个巨大的浮空金属体不仅起不到屏蔽作用反而可能辐射增强。加一圈缝合孔后屏蔽罩真正变成“接地的笼子”屏蔽性能才能发挥出来。最后说一下我个人的工作习惯缝合孔不是在布线完全结束后才想起来加的而是在布局基本确定、关键走线扇出完成的时候就开始规划。哪几个区域需要密集缝合哪几个区域只需要稀疏布置心里提前有数。等PCB布线全部走完、铺铜全部填充完毕再统一执行缝合孔操作。这样节奏清晰不需要中途反复调整过孔位置和数量效率最高。毕竟缝合孔看起来只是“点一下的事”但其背后的信号回流设计、平面完整性保障和制造工艺适配才是影响板子最终性能的关键。