1. 从一次“消失”的过孔说起:覆铜后的十字连接去哪了?
最近在做一个四层板项目,板子不大但密度不低,为了确保电源和地的完整性,我习惯性地在铺完铜之后,用DRC(设计规则检查)跑一遍。结果报告里跳出来一堆“未连接”的警告,点开一看,全是那些本该连接到内电层(比如GND层)的过孔。我心里咯噔一下,赶紧把板子放大,仔细检查那些过孔——好家伙,本该出现的“十字花”连接(也叫热焊盘或Thermal Relief)全都不见了,过孔被一整片铜皮严严实实地包裹着,看起来像是直接“焊死”在了铜皮上。
这问题可大可小。往小了说,只是视觉上不美观,或者焊接时散热过快;往大了说,如果这是连接到电源或地平面的过孔,在回流焊过程中,由于铜皮巨大的热容量,焊锡会迅速熔化并流向过孔,导致器件引脚上的焊锡被“吸走”,形成“立碑”或虚焊,严重影响产品可靠性。对于需要多次返修的板子,这种“死铜”连接还会让拆焊变得极其困难,容易损坏焊盘和板材。
所以,“过孔在覆铜后不出现十字孔”不是一个简单的显示问题,而是一个关乎PCB可制造性、焊接良率和长期可靠性的核心设计细节。无论是新手还是老手,在复杂的多层板设计中,都可能一不小心就踩进这个坑里。今天,我就结合这次排查和修复的经历,把背后的原理、EDA软件里的设置门道,以及如何根据不同场景灵活选择连接方式,给大家彻底讲明白。
2. 十字连接(热焊盘)的本质:为什么它不是装饰品?
在深入解决“消失”问题之前,我们必须先理解十字连接(热焊盘)到底是什么,以及它为什么如此重要。很多人误以为它只是为了好看,或者仅仅是EDA软件的一个默认选项,实则不然。
2.1 热管理的核心角色:防止“热抢劫”
热焊盘最核心的作用是热隔离。想象一下,一个需要焊接的过孔或通孔焊盘,其周围是覆铜区(通常是GND或电源平面)。如果焊盘和铜皮直接全连接,那么铜皮就相当于一个巨大的“散热片”。在回流焊炉中,当热风或红外线加热板子时,焊盘上的热量会迅速被这片铜皮导走。这就导致焊盘本身的温度上升缓慢,甚至达不到焊锡膏熔化的温度(比如217°C for SAC305)。而器件引脚和PCB焊盘之间的焊锡膏已经熔化,但由于焊盘温度不足,无法形成良好的冶金结合,结果就是冷焊或虚焊。这种现象,业内常被称为“热抢劫”(Heat Sinking)。
热焊盘通过四个(或两个)细长的“辐条”(Spoke)将焊盘与铜皮连接,极大地减少了热传导的横截面积,从而在电气连接和热隔离之间取得了最佳平衡。这确保了焊接时,热量能够集中在焊盘区域,使焊锡顺利熔化并形成可靠的焊点。
2.2 电气连接与机械固定的平衡
除了热管理,十字连接还关乎机械应力。PCB在组装、测试乃至日常使用中,会经历热胀冷缩。如果焊盘与大面积铜皮刚性连接,两者之间因热膨胀系数(CTE)差异产生的应力将没有释放的余地,全部集中在焊盘与孔壁的结合处。长期下来,这可能导致孔铜疲劳,甚至出现裂纹。热焊盘的辐条结构具有一定的弹性,可以吸收和缓冲这部分应力,提高焊盘和过孔的长期可靠性。
2.3 生产工艺的友好设计
对于需要波峰焊的插件元件,热焊盘同样关键。波峰焊的焊锡波温度通常在260°C以上,如果焊盘与大面积铜皮直接相连,散热过快会导致焊点凝固时间变短,可能产生气孔或填充不饱满。热焊盘能减缓散热,让焊锡有更充分的时间流动和填充,形成饱满的焊点。
所以,当你的过孔在覆铜后没有出现十字连接,而是被“实心”连接时,你实际上是在无意中引入了焊接风险、降低了产品可靠性,并且可能为后续的返修埋下隐患。
3. 软件设置深水区:是规则冲突还是属性被覆盖?
回到我遇到的那个问题:为什么DRC会报错,且十字连接消失了?在像Altium Designer、KiCad、Cadence Allegro这类主流EDA工具中,覆铜(铺铜)与焊盘的连接方式,是由一套优先级复杂、且可能相互覆盖的规则系统控制的。问题往往就出在这里。
3.1 连接方式规则的优先级矩阵
首先,我们要理清有哪些地方可以设置连接方式。通常包括以下几个层级,从上到下优先级递增:
- 工程级默认规则:这是最基础的设置,为整个PCB项目定义默认的连接样式(如Relief Connect、Direct Connect、No Connect)。
- 对象类(Class)规则:你可以将特定的网络(如所有GND网络)或元件归类,并为这个类单独设置连接规则。
- 多边形覆铜(Polygon Pour)连接规则:在覆铜的属性里,可以单独设置该覆铜与不同网络对象的连接方式。这个规则的优先级通常非常高。
- 焊盘/过孔个体属性:直接选中某个过孔,在其属性中强制指定连接方式。这是最高优先级的设置,会覆盖所有规则。
我的问题就出在第3点。我为了追求“完美”的接地,在GND覆铜的属性中,将连接方式从默认的“Relief Connect”改为了“Direct Connect”(直接连接)。我的本意是让所有GND网络的焊盘都实现最“牢固”的连接,却忘了这也会影响到所有GND网络的过孔。于是,软件忠实地执行了我的指令,用实心铜皮连接了所有GND过孔,十字连接也就消失了。
3.2 规则作用域(Query)的精确与模糊
另一个常见的坑是规则的作用域设置。例如,你创建了一条规则,意图只对“Through Hole Pad”(通孔焊盘)生效,但你的作用域语句(Query)可能写得不精确,比如写成了IsPad,这可能会将表贴焊盘(SMD Pad)也包含进去。或者,你创建了一条针对“GND”网络的规则,但另一个名为“GND_ANALOG”的网络没有被正确归类,导致规则对其失效,它依然遵循着可能被覆铜属性覆盖的默认规则。
注意:在Altium Designer中,规则管理器(Design -> Rules)是一个功能强大但容易让人迷惑的地方。建议在修改任何规则后,使用“规则向导”(Rule Wizard)或手动检查Query的正确性,并利用“PCB Rules and Violations”面板来高亮显示受某条规则影响的所有对象,进行可视化确认。
3.3 DRC报错“未连接”的真相
为什么实心连接了,DRC还会报“未连接”?这听起来矛盾,但却是软件逻辑的体现。在很多EDA工具中,DRC关于“连接性”的检查,其判断标准是基于网络表(Netlist)和设计规则中定义的连接方式。
当我将覆铜连接方式设为“Direct Connect”时,软件在电气逻辑上认为过孔和铜皮是完美连接的,所以不会报短路。但是,我可能还启用了一条名为“Polygon Connect Style”的制造规则或测试点规则。这条规则会检查对象是否符合预设的连接样式(比如要求GND过孔必须使用热焊盘连接)。由于我实际连接方式是“Direct Connect”,违反了这条样式规则,所以DRC就会抛出“违反Polygon Connect Style规则”的警告或错误,有时软件会笼统地将其描述为“未连接”或“连接错误”。
因此,排查时不能只看错误描述,而要双击错误信息,定位到具体的规则和违规对象,才能找到根源。
4. 分步排查与修复实战:让十字连接重现
理论清楚了,我们来实战。以下是系统性的排查和修复流程,你可以像查案一样一步步跟进。
4.1 第一步:确认现象与定位对象
首先,选中一个“出了问题”的过孔,查看其属性。重点关注两点:
- 所属网络:确认它是不是你预期中的网络(如GND)。
- 连接方式(如果软件支持显示):看看当前生效的连接方式是什么。
然后,右键点击覆盖该区域的覆铜,查看其属性。找到连接方式(Connection Style)或热焊盘(Thermal Relief)相关的设置。
4.2 第二步:检查覆铜属性——最可能的“元凶”
正如我的案例所示,这里是首要怀疑对象。打开覆铜属性对话框(通常双击覆铜即可)。
- 查找设置项:寻找如“Pour Over Same Net Polygons Only”、“Remove Dead Copper”等选项附近,会有“Connect Style”或“Thermal Relief Connection”的设置。
- 检查设置:它很可能被设置成了“Direct Connect”(直接连接)或“Solid Connect”(实心连接)。这就是导致十字连接消失的直接原因。
- 修复操作:将其改回“Relief Connect”(热焊盘连接)。通常还可以进一步设置热焊盘的参数:
- 导体宽度(Conductor Width):即十字连接“辐条”的宽度。通常与最小走线宽度相同或略细。
- 气隙宽度(Air Gap):即焊盘与铜皮之间的间隙。通常为4-8mil(0.1-0.2mm)。
- 辐条数(Number of Spokes):通常是4个(十字),对于小焊盘或高密度区域,也可设为2个。
修改后,务必重新覆铜(Repour Polygon)!因为覆铜是“静态”的计算结果,修改规则后需要重新计算才能生效。在Altium中可以通过快捷键T+G+A(Tools -> Polygon Pours -> Repour All)来执行。
4.3 第三步:核查设计规则——揪出隐藏的覆盖项
如果修复覆铜属性后问题依旧,或者你想建立更规范的设计方法,就需要深入设计规则。
- 打开设计规则编辑器(在Altium中为
Design -> Rules)。 - 找到“Polygon Connect Style”规则。这里可能有多条规则。检查每条规则的:
- 作用域(Where The First Object Matches):它作用于哪些对象?是“All”,还是“InNet(‘GND’)”,或是某个元件类?
- 约束(Constraints):连接方式设置是什么?
- 分析规则优先级:软件会按照规则列表的顺序(通常从上到下)应用规则,列表中下方的规则优先级高于上方。检查是否有某条高优先级的规则,将其连接方式设为了“Direct Connect”。
- 修正或新建规则:
- 如果现有规则错误,直接修改。
- 更清晰的做法是:为需要特殊处理的对象建立明确的规则。例如,为“所有过孔(IsVia)”创建一条规则,连接方式为“Relief Connect”;再为“所有通孔焊盘(IsPad and HoleSize > 0)”创建另一条规则。这样优先级和意图都非常清晰。
4.4 第四步:检查个别对象的属性——最高优先级的覆盖
排除了规则问题后,最后检查是否有个别过孔被手动设置了属性。选中一个出问题的过孔,进入属性面板(通常按F11),仔细查看每一个选项卡,寻找诸如“Thermal Relief”、“Pad Connection”之类的选项,确保它不是被强制设置为“Full Connection”或类似选项。
4.5 第五步:验证与生产文件输出
修复并重新覆铜后,进行以下验证:
- 视觉检查:放大查看过孔,确认十字连接已经出现。
- 运行DRC:再次执行完整的DRC检查,确保所有“未连接”或“连接样式”违规都已清除。
- 生成制造文件(Gerber)后检查:这是最关键的一步!在输出Gerber文件时,务必在“钻孔层(Drill Drawing)”或“阻焊层(Solder Mask)”查看预览,或者使用免费的Gerber查看器(如GC-Prevue、Gerbv)打开生成的Gerber文件。在软件中显示正确,不代表光绘数据正确。务必确认在光绘文件中,热焊盘的间隙和辐条都清晰可见。
5. 进阶考量:何时应该放弃十字连接?
是不是所有情况都要用十字连接?并非如此。作为一名有经验的工程师,需要根据具体应用场景做出判断。盲目使用十字连接有时也会带来问题。
5.1 必须使用实心连接(Direct Connect)的场景
- 大电流路径:对于需要承载数安培甚至数十安培大电流的电源路径,如电源输入端子、DC-DC转换器的输入输出电容焊盘。此时,连接电阻和散热能力是首要考虑因素,必须使用实心连接以最小化阻抗和最大化热传导。在这种情况下,需要加强焊盘设计,比如采用“泪滴”状连接来缓解应力。
- 高频射频(RF)接地过孔(Via Fence):在微波和射频电路中,为了给微带线或带状线提供良好的接地,并抑制腔体谐振,经常在传输线两侧密集地打一排接地过孔,这称为“过孔墙”。这些过孔的唯一目的就是提供最短的、电感最小的接地路径,必须采用实心连接,以确保在极高频率下(如GHz级别)的接地效果。
- 散热焊盘(Thermal Pad):对于QFN、DFN等底部带有裸露焊盘(Exposed Pad)的器件,这个焊盘的主要作用是散热。它必须与PCB上的铜皮(通常是接地铜皮)实现最大面积的金属接触,因此必须采用实心连接,甚至需要在其下方打过孔阵列(Thermal Vias)将热量导到内层或背面。
5.2 需要调整热焊盘参数的场景
- 小尺寸焊盘/高密度BGA:在引脚间距极小的BGA封装下方,过孔焊盘本身可能只有0.2mm甚至更小。如果使用标准宽度的辐条,可能会几乎占满间隙,导致连接脆弱或制造困难。此时需要减小导体宽度(如减至3mil),甚至考虑使用“十字连接”或“直线连接”(2辐条)。
- 需要更强机械固定的连接器:一些重型连接器或需要承受较大插拔力的接口,其固定脚焊盘可能需要更强的机械连接。可以在保持热焊盘的基础上,增加辐条宽度,或者在焊盘非焊接区域增加一些“锚点”铜皮。
- 波峰焊工艺的插件:对于波峰焊,如果担心散热过快,可以适当增加气隙宽度,让焊盘更“孤立”一些,减缓热量散失。但气隙不能太大,否则会影响电气性能。
5.3 软件中的差异化设置技巧
如何在同一个板子上实现差异化设置?这就需要灵活运用前面提到的规则系统。
- 为电源网络创建单独规则:创建一条新规则,作用域为
InNet('VCC_5V') or InNet('VCC_3V3'),约束为“Direct Connect”,并将其优先级置于普通规则之上。 - 为特定元件创建类规则:将所有的电源连接器、DC-DC芯片的散热焊盘等元件归为一个类(如
Class_Power),然后创建规则作用于这个元件类。 - 使用查询语句精确控制:高级用户可以使用查询语句,例如
(IsPad and (HoleSize > 0.5mm))来匹配所有孔径大于0.5mm的通孔焊盘(可能是大电流孔),并对它们应用实心连接规则。
6. 从设计到生产:避免沟通误解的 checklist
即使你在设计文件中一切设置正确,到了PCB制板厂,仍然可能因为沟通问题而出错。热焊盘相关的参数是容易被忽略的制造细节。
在发出制板文件(Gerber)前,请务必在制板说明(PCB加工工艺要求)中明确以下几点:
- 热焊盘样式确认:明确说明你使用了热焊盘连接,并希望厂家保留此设计。可以附上关键区域的截图。
- 关键参数标注:特别是对于高密度板,建议标注:“热焊盘气隙宽度为X mil,辐条宽度为Y mil,请勿擅自修改为全连接。”
- 区分电镀孔(PTH)和非电镀孔(NPTH):NPTH孔(如机械固定孔)周围是不应该有铜皮的,更谈不上热焊盘。确保你的设计文件和Gerber层对此有清晰区分,避免厂家误处理。
- 提供设计源文件或PDF说明:如果可能,除了Gerber,也提供一份PDF格式的装配图或设计说明,在上面用箭头和文字标出特殊连接区域。
收到板厂提供的Gerber或制造图形(如钻孔图、阻焊图)后,必须进行二次核对:不要假设板厂一定完全按照你的意图处理。使用Gerber查看器,重点检查电源模块、接地过孔墙、散热焊盘等关键区域的连接方式,是否与你的设计一致。这是避免批量生产事故的最后一道,也是最重要的一道防线。
7. 总结与个人实操心得
折腾完这次“过孔消失”事件,并复盘了各种场景后,我最大的体会是:PCB设计中没有“默认设置”是永远安全的。随着板子复杂度上升,任何全局性的默认设置都可能在某些局部成为问题。
我现在养成了一个习惯:在开始铺铜和设置规则前,先花几分钟时间规划一下连接策略。我会在笔记本或设计文档的首页列一个简表:
| 网络/对象类型 | 推荐连接方式 | 备注(例外情况) |
|---|---|---|
| 普通信号过孔 | Relief Connect (4 spokes) | 默认 |
| GND过孔(普通) | Relief Connect (4 spokes) | 确保可焊性 |
| 电源过孔(>1A) | Direct Connect | 减小压降和发热 |
| RF GND Via Fence | Direct Connect | 提供低电感接地 |
| 散热焊盘(EPAD) | Direct Connect + Thermal Vias | 最大化热传导 |
| 波峰焊插件焊盘 | Relief Connect, 增大气隙 | 防止冷焊 |
这个表不仅指导我设置规则,更在后期DRC排查时,能帮我快速定位“这个过孔为什么用这种连接方式?它合理吗?”。
另一个心得是关于规则的作用域命名。以前我喜欢用“Power_Nets”这种模糊的名字,现在我会命名为“Rule_PWR_DirectConnect_for_Current>2A”,虽然名字长,但三个月后回头看,或者交接给同事时,意图一目了然,极大减少了沟通成本和错误概率。
最后,也是最重要的一点:永远不要完全相信软件在编辑界面里的显示,一定要用DRC和Gerber预览来双重验证。眼睛会骗人,但光绘数据不会。你的产品可靠性,就藏在这些细节的反复确认之中。