ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

PCB铺铜与过孔设计:立创EDA批量过孔方法与EMC抗干扰实战

PCB铺铜与过孔设计:立创EDA批量过孔方法与EMC抗干扰实战 1. 铺铜和过孔到底在解决什么问题很多人画PCB的时候铺铜这个动作是顺手就做了——画完走线选中板框一键铺铜完事。过孔更是随手就放觉得反正多打几个孔总没坏处。但如果你真的遇到过下面这些情况就会知道铺铜和过孔远没有想象中那么简单板子打样回来功能都正常但一过EMC测试就超标辐射发射在某个频点死活压不下去同一个电路第一版没问题第二版改了布局之后ADC采样噪声突然变大读数跳来跳去板子上某个电源芯片发热严重查了半天发现是铺铜把热量全闷在里面散不出去信号线上出现了莫名其妙的振铃示波器一测发现是参考平面不完整导致的回流路径断裂。这些问题的根源十有八九跟铺铜策略和过孔布置有关。铺铜不只是填满空白区域这么简单它涉及到参考平面完整性、回流路径设计、散热管理、EMC屏蔽等多个维度。而过孔则是连接不同层铜皮的关键通道它的数量、位置、孔径直接影响着电流路径和阻抗特性。这篇文章面向的是有一定PCB设计基础、正在使用立创EDA或者准备迁移到立创EDA的硬件工程师和电子爱好者。我会从实际项目出发把铺铜和批量过孔的操作拆解成三种可落地的方法同时把我在实际项目中踩过的坑和总结的经验一并分享出来。不管你是画两层板还是六层板不管你是做消费电子还是工业控制这些内容都能直接用到你的项目里。注意本文所有操作基于立创EDA专业版标准版的部分菜单路径可能略有差异但核心逻辑是通用的。2. 铺铜之前必须想清楚的三个设计决策在动手铺铜之前有几个关键决策必须先确定。这些决策一旦做错后面打样回来就是废板不是改改参数就能救回来的。2.1 铺铜网络的选择GND还是电源网络新手最常见的做法是所有空白区域全部铺GND这本身没错但在某些场景下需要更细致的考虑。纯GND铺铜适用于大多数数字电路和混合信号电路。GND铺铜的好处是提供完整的参考平面为高速信号提供稳定的回流路径同时起到一定的屏蔽作用。但要注意如果你的板子上有多个地模拟地、数字地、功率地直接全部铺成一个GND反而会引入地环路噪声。电源网络铺铜在某些场景下更合适。比如你的板子上有一路3.3V的大电流供电走线宽度不够这时候可以用铺铜的方式来做电源平面。但这样做的前提是电源平面和地平面之间要有足够的耦合电容否则会形成天线效应。我的建议是两层板优先铺GND四层及以上优先做完整的GND平面层。如果空间允许电源也单独走一层平面。两层板做电源铺铜时务必确保电源铜皮和GND铜皮之间有密集的去耦电容连接。2.2 铺铜与走线的间距设定立创EDA默认的铺铜间距是10mil这个值在大多数情况下是安全的。但如果你做的是高压板或者有安规要求的板子这个间距可能不够。应用场景推荐铺铜间距说明普通低压数字电路8-10mil立创EDA默认值即可模拟小信号电路10-15mil减少寄生电容影响电源电路12V-48V15-20mil考虑爬电距离高压电路48V20-40mil需参考安规标准射频电路15-20mil控制寄生参数设置间距的时候有一个容易忽略的点铺铜间距要大于走线到铺铜的间距。什么意思呢假设你的走线间距规则设的是6mil铺铜间距设的是10mil那铺铜会自动避让走线10mil这是对的。但如果你反过来走线间距设10mil铺铜间距设6mil那铺铜可能会离走线太近导致寄生电容增大。2.3 铺铜方式实心铺铜还是网格铺铜立创EDA支持实心铺铜和网格铺铜两种模式。这个选择经常被忽略但对板子的性能有实际影响。实心铺铜的优点是阻抗低、屏蔽效果好、载流能力强。缺点是大面积铜皮在回流焊时容易导致板子翘曲因为铜和基材的热膨胀系数不同而且散热太快手工焊接时烙铁温度不够很难焊。网格铺铜的优点是热应力小、板子不易翘曲、散热均匀。缺点是阻抗略高、屏蔽效果稍差。网格铺铜在早期波峰焊工艺中很常见现在回流焊工艺下实心铺铜用得更多。我的经验是如果是回流焊工艺优先用实心铺铜如果是手工焊接或者小批量打样网格铺铜更友好。立创EDA里网格铺铜的网格尺寸一般设10-20mil比较合适太小了加工厂可能做不出来太大了屏蔽效果打折扣。3. 三种批量过孔方法的具体操作过孔在PCB设计里扮演两个角色一是连接不同层的走线二是连接不同层的铜皮。前者是信号过孔后者是 stitching via缝合过孔。这里重点讲的是后者——如何在铺铜区域批量放置过孔让不同层的铜皮紧密连接在一起。3.1 方法一手动阵列放置配合对齐工具这是最基础的方法适合过孔数量不多几十个以内或者需要精确控制过孔位置的场景。操作步骤在立创EDA中切换到你需要放置过孔的层比如顶层。选择放置→过孔或者直接用快捷键V。放置第一个过孔设置好孔径一般0.3mm内径/0.6mm外径是常规值。选中这个过孔CtrlC复制CtrlV粘贴移动到目标位置。重复复制粘贴形成一排过孔。选中一整排过孔再次复制形成阵列。这个方法听起来很笨但有一个好处每个过孔的位置你都是精确控制的。在射频电路或者有严格阻抗要求的区域过孔的位置不能随便放必须按照仿真结果来。这时候手动放置反而是最可靠的。提示立创EDA里可以用对齐功能来保证过孔间距均匀。选中一排过孔右键→对齐→水平等间距分布间距设2-3mm比较合适。3.2 方法二利用铺铜设置自动生成缝合过孔立创EDA专业版有一个很实用的功能在铺铜设置里可以开启自动添加缝合过孔。这个功能的位置在铺铜属性面板的高级选项里。具体操作选中你已经铺好的铜皮。在右侧属性面板找到铺铜选项。勾选添加缝合过孔。设置过孔间距一般设2-5mm、过孔孔径0.3/0.6mm。选择过孔连接的网络通常是GND。点击应用软件会自动在铜皮区域按设定间距生成过孔阵列。这个方法的效率极高几百个过孔几秒钟就生成好了。但有几个注意事项自动生成的过孔可能会出现在你不想放的位置比如元件焊盘附近、螺丝孔位置。生成后需要手动检查一遍把不合适的删掉。过孔间距不要设得太密。2mm间距在大多数情况下足够了设成1mm虽然连接更紧密但会大量占用布线通道增加制板成本。自动生成的过孔默认是盖油的tented via如果你需要测试点功能要单独设置成开窗。3.3 方法三脚本批量放置与规则驱动对于六层板以上的复杂设计或者需要按照特定规则比如沿板边一圈、沿连接器一排放置过孔的场景可以用立创EDA的脚本功能来实现。立创EDA专业版支持JavaScript脚本扩展。你可以写一个简单的脚本按照指定的坐标列表批量放置过孔。比如沿板边每5mm放一个GND过孔// 立创EDA专业版脚本示例沿板边批量放置GND过孔 const boardWidth 100; // 板宽mm const boardHeight 80; // 板高mm const viaSpacing 5; // 过孔间距mm const viaHoleSize 0.3; // 内径mm const viaSize 0.6; // 外径mm // 沿上边和下边放置 for (let x 0; x boardWidth; x viaSpacing) { placeVia(x, 0, viaHoleSize, viaSize, GND); placeVia(x, boardHeight, viaHoleSize, viaSize, GND); } // 沿左边和右边放置 for (let y 0; y boardHeight; y viaSpacing) { placeVia(0, y, viaHoleSize, viaSize, GND); placeVia(boardWidth, y, viaHoleSize, viaSize, GND); }这个脚本的思路很简单沿着板子四边每隔5mm放一个GND过孔。这样做的好处是在板边形成一道过孔墙可以有效抑制板边辐射对EMC测试有帮助。当然实际使用时坐标要根据你的板框来调整而且要注意避开板边的安装孔和连接器区域。脚本放置完成后同样需要人工检查一遍。三种方法的对比如下对比维度手动阵列放置自动缝合过孔脚本批量放置适用场景少量精密过孔大面积铺铜区域规则化批量放置效率低高中高精度控制最高一般高学习成本低低中灵活性高低最高推荐使用场景射频/高速区域普通数字板多层板/复杂板4. 过孔参数怎么定才不出问题过孔不是随便放的孔径、间距、位置都有讲究。这一节把关键参数的确定逻辑讲清楚。4.1 孔径与载流能力的关系过孔的载流能力取决于孔壁铜厚和孔径。标准PCB工艺中孔壁镀铜厚度一般是20-25μm约0.8-1mil。在这个铜厚下不同孔径的过孔载流能力大致如下过孔内径外径载流能力温升10°C典型用途0.2mm0.4mm约0.5A信号过孔0.3mm0.6mm约1.0A通用过孔0.4mm0.8mm约1.5A电源过孔0.5mm1.0mm约2.0A大电流路径0.8mm1.2mm约3.0A电源输入/输出如果你需要过2A以上的电流单个过孔是不够的需要多个过孔并联。比如3A的电流至少放3个0.3/0.6mm的过孔。这里有一个经验公式每个0.3/0.6mm过孔按1A估算留50%余量。注意过孔载流能力还跟过孔在铜皮上的连接方式有关。如果过孔周围铜皮很窄比如只连了一根细走线实际载流能力会大打折扣。所以电源过孔周围一定要有足够宽的铜皮。4.2 过孔间距对阻抗的影响在高速信号的回流路径上过孔间距会影响回流电感。间距越小回流路径越短电感越小信号完整性越好。但间距太小会带来两个问题一是制板成本增加孔太密可能超出加工能力二是可能破坏参考平面的完整性。对于GND stitching via我的经验值是间距2-3mm是性价比最高的选择。这个间距下回流电感已经足够小同时不会对制板造成额外负担。如果板子上有高速信号比如DDR、USB3.0在信号线两侧的GND铜皮上过孔间距可以缩小到1-1.5mm。4.3 过孔位置与回流路径的关系这是最容易被忽略的一点。过孔的位置不是随便放的它应该放在信号回流路径的关键节点上。举个实际例子假设你有一根时钟信号线从顶层走到内层参考平面是GND。信号从顶层通过过孔换到内层时回流电流也需要从顶层的GND铜皮通过过孔换到内层的GND平面。如果信号过孔旁边没有GND过孔回流电流就要绕很远的路形成一个大的回流环路这个环路就是EMI辐射的源头。正确的做法是在信号过孔旁边5mm以内放置至少一个GND过孔。对于高速差分信号每个信号过孔旁边都要有GND过孔而且越近越好。5. 抗干扰效果实测与常见误区铺铜和过孔做得好不好最终要看抗干扰效果。这一节分享几个实际测试的对比数据以及常见的认知误区。5.1 有无缝合过孔对辐射发射的影响我在一个两层板项目上做过对比测试。板子上有一路24MHz的SPI时钟走线长度约30mm。测试条件在电波暗室中测30MHz-1GHz的辐射发射。测试条件24MHz谐波辐射dBμV/m120MHz频点余量无缝合过孔42超标3dB缝合过孔间距5mm38余量2dB缝合过孔间距2mm35余量5dB缝合过孔间距2mm板边过孔墙33余量7dB数据很直观缝合过孔间距从5mm缩小到2mm辐射降低了3dB。加上板边过孔墙之后又降低了2dB。这个改善幅度在EMC整改中已经非常可观了。5.2 铺铜反而导致噪声变大的情况铺铜不是万能的有些情况下铺铜反而会让噪声变大。我遇到过最典型的情况是模拟小信号区域铺了GND铜皮但铜皮上没有打足够的过孔连接到主GND平面。这时候铜皮变成了一个悬浮的导体它不接地反而像天线一样接收周围的噪声然后耦合到旁边的模拟走线上。解决方法是要么在模拟区域也打上密集的GND过孔要么干脆不要在模拟区域铺铜。另一个常见误区是在电源电感的下面铺GND铜皮。开关电源的电感下方是强磁场区域铺GND铜皮会在铜皮上产生涡流损耗导致电感效率下降、发热增加。正确的做法是在电感下方挖空不铺任何铜。5.3 过孔密度与制板成本的平衡过孔越多制板成本越高。这个成本主要体现在两个方面一是钻孔数量增加加工时间变长二是如果过孔太密可能需要用更贵的激光钻孔工艺。一般来说普通双面板的过孔数量控制在200-500个是正常的。四层板可以到500-1000个。超过这个数量就要考虑是否真的需要这么多过孔。我的建议是关键位置密集放非关键位置稀疏放。比如板边一圈、连接器附近、高速信号换层处这些地方过孔要密。板子中间的普通GND铺铜区域2-3mm间距就够了。6. 立创EDA实操中的避坑经验这一节是我在实际使用立创EDA做铺铜和过孔时踩过的坑以及总结出来的应对方法。6.1 铺铜更新后过孔消失的问题立创EDA有一个让人很头疼的问题当你修改了铺铜区域或者重新铺铜之后之前手动放置的缝合过孔可能会被吞掉——过孔还在但它和铜皮的连接关系断了变成了孤立的过孔。这个问题的原因是铺铜重新生成时软件会重新计算铜皮和过孔的连接关系。如果过孔的网络属性设置不对或者过孔被铜皮完全覆盖就可能出现连接丢失。解决方法在铺铜之前先放置过孔并确保过孔的网络的属性正确。铺铜时选择保留所有过孔选项。如果已经出现了过孔丢失连接的情况可以选中过孔右键→属性手动指定网络为GND然后重新铺铜。6.2 过孔盖油与开窗的选择立创EDA默认的过孔是盖油的tented也就是说过孔上覆盖阻焊层不会露出铜。这样做的好处是防止焊接时锡膏流入过孔也防止过孔氧化。但如果你需要把过孔作为测试点使用就需要开窗。批量修改过孔盖油/开窗的方法选中所有需要修改的过孔在属性面板里找到阻焊层选项选择开窗或盖油。注意立创EDA里这个操作不能批量对不同类型的过孔同时进行需要先按孔径筛选。提示如果你不确定是否需要开窗建议默认盖油。测试点可以单独放焊盘来做不一定非要用过孔。6.3 六层板铺铜的特殊注意事项六层板的层叠结构一般是顶层信号→GND平面→内层信号→内层信号→电源平面→底层信号。这种结构下铺铜策略和两层板完全不同。首先GND平面层和电源平面层不需要铺铜操作直接整层铺满即可。立创EDA里可以用平面层功能直接指定网络软件会自动生成完整的铜皮。其次信号层的铺铜要谨慎。因为信号层已经有完整的GND平面作为参考信号层的铺铜主要是为了散热和屏蔽。如果信号层走线密度很高铺铜反而会碎片化产生很多孤立的铜岛这些铜岛不但没有屏蔽效果还可能成为天线。我的做法是六层板的信号层只在板边和连接器附近铺铜中间区域不铺。这样既保证了板边的屏蔽效果又避免了铜皮碎片化的问题。6.4 铺铜间距与走线间距的优先级冲突立创EDA的规则设置里铺铜间距和走线间距是分开设置的。但实际铺铜时软件会取两者中较大的值来避让。这就导致一个问题如果你把走线间距设得很大比如为了满足安规铺铜会自动避让很大的距离导致铜皮面积大幅缩小。解决方法是在规则设置里为铺铜单独设置一个较小的间距规则并设置优先级高于通用走线规则。具体操作设计→规则→间距→新建规则适用范围选择铺铜设置你需要的间距值然后把这条规则的优先级拖到通用规则上面。7. 从铺铜到接地的系统性思考铺铜和过孔做到最后本质上是在解决一个问题如何让电流以最低的阻抗、最小的环路面积回到源端。这个问题想清楚了很多设计决策就自然明确了。7.1 星型接地与铺铜的配合星型接地Star Ground是一种常见的接地策略核心思想是让不同电路的接地电流各自走独立的路径最后在一个点汇合避免相互干扰。但在实际PCB上完全做到星型接地很难因为铺铜会把所有GND连在一起。我的做法是在铺铜的基础上用挖槽的方式来实现星型接地的效果。具体来说在模拟地和数字地之间用禁止铺铜区Keepout挖一条2-3mm宽的槽让两边的铜皮只在一个点连接。这个连接点通常选在ADC芯片的GND引脚附近。立创EDA里实现这个操作的方法是放置→禁止区域→绘制一个矩形或线条覆盖需要挖槽的区域然后重新铺铜。注意禁止区域要设置在所有层否则只挖一层没用。7.2 电源过孔的特殊处理电源过孔和信号过孔的要求不同。信号过孔关注的是阻抗连续性和回流路径电源过孔关注的是载流能力和散热。电源过孔的处理要点数量要够按照每安培2-3个过孔来估算留足余量。分散放置不要集中在一处沿着电源铜皮的走向均匀分布。靠近负载电源过孔要尽量靠近负载芯片的电源引脚减少走线阻抗。配合去耦电容每个电源过孔旁边最好有一个去耦电容形成就近滤波。7.3 铺铜对散热的影响与利用铺铜除了电气功能还有散热功能。很多芯片的散热焊盘Thermal Pad就是通过铺铜和过孔把热量传导到板子背面或者内部平面层散掉的。利用铺铜散热的关键是在散热焊盘下方打密集的散热过孔。这些过孔的孔径一般用0.3/0.6mm间距1-1.5mm排列成网格状。过孔内壁的铜会把热量从顶层传导到底层底层的大面积铜皮再把热量散到空气中。有一个细节要注意散热过孔如果直接连到GND铜皮焊接时热量会迅速散失导致虚焊。所以散热过孔在焊盘那一侧要做热焊盘处理Thermal Relief用十字连接而不是全连接。立创EDA里可以在铺铜设置里选择热焊盘连接方式。8. 几个真实项目的参数配置参考最后分享几个我在实际项目中用的参数配置可以直接参考。项目一两层板STM32最小系统无高速信号铺铜网络GND铺铜间距10mil铺铜方式实心缝合过孔0.3/0.6mm间距3mm过孔总数约180个EMC测试结果一次通过项目二四层板工业控制板含RS485和CAN层叠信号-GND-电源-信号铺铜网络GND信号层、GND平面层、3.3V/5V电源层铺铜间距12mil缝合过孔0.3/0.6mm间距2mm板边加密到1mm过孔总数约650个EMC测试结果辐射余量6dB以上项目三六层板带千兆以太网和USB3.0层叠信号-GND-信号-信号-电源-信号铺铜网络GND所有信号层和平面层铺铜间距8mil信号层、整层平面层缝合过孔0.25/0.5mm间距1.5mm高速信号两侧加密到1mm过孔总数约1200个信号完整性眼图测试通过这三个项目的参数差异很大但核心逻辑是一致的根据信号速率和EMC要求来决定过孔密度和铺铜策略。低速板可以宽松一些高速板必须严格。我在实际使用立创EDA做这些项目的时候最大的体会是软件工具只是手段真正决定板子性能的是你对电流路径的理解。铺铜和过孔不是画完走线之后的收尾工作而是应该在整个布局阶段就同步考虑的。每次放置一个过孔都问自己一句这个过孔是给哪条电流走的想清楚这个问题板子就不会出大问题。
返回列表