1. 铺铜操作的核心价值与设计思路
在PCB设计的江湖里,铺铜(也称覆铜或灌铜)是个基本功,但也是个容易让新手犯迷糊的活儿。我刚入行那会儿,对着软件里一堆选项也发懵,铺出来的铜要么是“大花脸”,要么信号干扰得一塌糊涂。后来踩坑踩多了才明白,铺铜远不止是“画个框填满”那么简单,它直接关系到你板子的电气性能、散热能力和生产良率。简单来说,铺铜就是在PCB板的空白区域,用实心铜皮或网格铜皮填充,并将其连接到特定的网络(比如GND地网络或电源网络)。它的核心目的有三个:一是为信号提供完整、低阻抗的回流路径,减小电磁干扰(EMI);二是帮助芯片和功率器件散热;三是增强PCB的机械强度,防止板子翘曲。
对于初学者,最容易陷入的误区就是“为了铺铜而铺铜”,不考虑网络连接和间距规则,结果可能引入新的噪声环路,适得其反。所以,在动手之前,我们必须先理清思路:这块铜要铺给谁(网络)?铺成什么样(实心还是网格)?铺的时候要离其他东西多远(间距)?在Protel(现在通常指Altium Designer的早期版本或其设计思想)这类EDA工具里,这些问题的答案都藏在规则设置和铺铜属性里。高手和新手的区别,往往就在于对这些细节的预判和把控。接下来,我就以一个典型的双面板设计为例,带你从零开始,把铺铜的每一步操作、每一个选项背后的“为什么”都掰扯清楚。
2. 铺铜前的关键规则设置详解
铺铜不是上来就直接画的,前置的规则设置是保证铺铜质量、避免后期反复修改的关键。很多初学者铺完铜发现DRC(设计规则检查)报出一堆错误,或者生产出来有短路风险,问题八成出在规则没设好。
2.1 理解并设置安全间距规则
安全间距(Clearance)是铺铜的“生命线”。它定义了铜皮与其他电气对象(如走线、焊盘、过孔)之间的最小距离。原教程提到“一般铺铜间距是布线间距的二倍”,这个经验法则很有道理,我来解释下为什么。
布线间距通常是基于信号电压和生产工艺最小能力设定的。而铺铜,尤其是接地铜皮,面积巨大,在生产和后续板卡使用中,更容易因热胀冷缩、机械应力或工艺偏差(如蚀刻不净)发生微小的形变或偏移。如果铺铜间距设置得和布线间距一样,那么这些微小的偏差就极易导致铜皮与邻近走线或焊盘之间的间隙不足,引发短路风险。将其设置为布线间距的两倍,相当于增加了一个“安全余量”,极大地提升了可靠性。例如,如果你的最小布线间距是0.2mm(约8mil),那么铺铜间距设置为0.4mm(约16mil)是一个比较稳妥的选择。
在Protel/Altium Designer中,你需要进入设计规则(Design -> Rules)。在Electrical类别下的Clearance规则中,可以创建一条新的规则。这里有个高级技巧:不要只设一个全局规则。更好的做法是为铺铜专门设置一条规则。你可以将规则作用域(Where the First/Object matches)设置为“Polygon”,然后设置它与所有对象(All)的间距。这样,铺铜与其他任何元素的间距都会单独遵循这个更宽松的规则,而走线与走线之间的间距仍遵循原先更严格的规则,互不干扰。
2.2 铺铜连接方式规则设置
铜皮如何连接到它所属网络的焊盘上,这个连接方式至关重要,直接影响焊接质量和电流通过能力。这个规则在Plane或Polygon Connect相关规则中设置(不同软件版本位置略有差异)。
常见的连接方式有“十字花连接(Relief Connect)”和“直接连接(Direct Connect)”。
- 十字花连接:铜皮通过几条细小的“热焊盘(Thermal Relief)”线与焊盘相连。这是最常用、最推荐的方式。它的好处是,在焊接时,由于连接点细,热量不会过快被大面积铜皮导走,从而更容易融化焊锡,避免虚焊。对于需要手工焊接或返修的板子,这几乎是必选项。
- 直接连接:铜皮与焊盘完全实心连接。这种连接阻抗极低,适合需要承载大电流的焊盘,比如电源输入端子、功率器件的引脚。但缺点是焊接难度大,容易造成冷焊。
在规则里,你通常可以设置热焊盘连接线的宽度(Conductor Width)和数量(通常4条),以及气隙(Air-Gap)的宽度。对于普通信号和中小电流,默认设置即可。对于大电流路径,你可能需要增加连接线宽度或改用直接连接。
注意:务必区分对待。你可以通过规则作用域,设置对“GND”网络的焊盘使用十字花连接,而对“+12V”这样的电源网络焊盘使用更宽的热焊盘或直接连接。精细化规则是专业设计的体现。
3. 执行铺铜:参数解析与实操绘制
规则设好后,就可以开始铺铜了。在Protel/Altium Designer中,通常通过 Place -> Polygon Pour 来启动铺铜命令。弹出的属性对话框是核心,我们逐一拆解。
3.1 网络选择与优先级
第一个关键选项是“Net”。你必须为铜皮指定一个网络,通常90%的情况是连接到“GND”地网络。将大面积铜皮作为地平面,能为所有信号提供最近的回流路径,这是抑制EMI最有效的手段之一。有时也会为某个电源网络(如“+3.3V”)铺铜,以提供稳定的电源平面和增强载流能力。
这里有个高级概念:铺铜优先级。当两块不同网络的铜皮在物理上重叠时,谁覆盖谁?这由优先级(Priority)数字决定,数字越大,优先级越高。通常,地铜皮的优先级可以设得高一些(比如1),电源铜皮次之(比如2)。在复杂的板子上,合理设置优先级可以避免网络冲突警告。
3.2 实心铜与网格铜的抉择
第二个选项是关于填充模式,即“实心(Solid)”与“网格(Hatched)”。
- 实心铜皮:整个区域被完整的铜填充。这是最主流的选择,因为它能提供最低阻抗的回流路径和最好的屏蔽效果,散热也最均匀。现代PCB生产工艺(如沉金、喷锡)对实心铜皮支持很好,不易产生问题。
- 网格铜皮:铜皮由交叉的网格线构成。这是一种历史遗留的选择,早期在手工制版或某些特定工艺下,网格铜可以减轻板子重量、节省蚀刻药水,并改善大面积铜皮在波峰焊时的热应力(防止板子起泡)。但在今天,对于绝大多数基于数字信号和高速信号的板卡,我不推荐使用网格铜。因为网格会破坏地平面的完整性,增加回流路径的阻抗和电感,高频噪声很容易从网格缝隙中辐射出去,恶化EMC性能。
原教程中提到的“如果上面的数字比下面大.那就网格”,指的是网格线宽(Track Width)和网格间距(Grid Size)的设置。当线宽小于间距时,视觉上呈现为网格;当线宽大于等于间距时,视觉上就是实心的。但请记住,为了电气性能,请优先选择实心填充。
3.3 层设置与铺铜轮廓绘制
第三个选项是选择铺铜所在的层(Layer)。这必须根据你的板层规划来。在双面板中,通常顶层(Top Layer)和底层(Bottom Layer)都会铺地铜,形成一个“夹心”的地参考结构。对于四层板,通常会有专门的内电层(Internal Plane)作为完整的地或电源平面,这时外层的铺铜更多是补充和连接作用。
设置完点击OK后,鼠标会变成十字光标,这时你需要沿着你希望铺铜区域的边界点单击,绘制一个闭合的多边形。这个多边形不一定要紧贴板边,通常我会让铜皮距离板边(Board Outline)有1mm左右的间隔,这称为“板边禁布区”,可以防止在板卡切割或装配时,外露的铜皮引起短路或划伤。
绘制闭合轮廓后,软件会自动开始填充计算。填充后,铜皮可能会避让(Pour Around)该区域内所有的走线、焊盘和过孔,并保持你之前设定的安全间距,这个过程叫“避让”。如果板上有大量对象,第一次填充计算可能会稍慢。
4. 铺铜后的处理与优化技巧
铺完铜并非一劳永逸,我们需要对其进行复查和优化,这是将设计从“能用”提升到“好用”的关键步骤。
4.1 铜皮修整与死铜移除
自动铺铜后,你可能会发现一些狭长、尖锐的铜皮凸角,或者一些孤立的、没有连接到任何网络的“死铜(Dead Copper)”。
- 尖锐凸角:在高电压或高频环境下,尖锐的铜皮角容易产生电场集中,可能成为放电点或辐射源。虽然现代工艺下这个问题已不突出,但从规范角度,最好还是修整一下。你可以使用“编辑多边形轮廓”的功能,移动顶点,将尖角改为钝角或圆弧角。
- 死铜移除:死铜没有任何电气连接,像电路板上的“孤岛”。它不仅没用,还可能成为接收和辐射噪声的天线。好在大多数EDA工具(包括Protel/Altium)在铺铜属性中都有一个“Remove Dead Copper”的选项,务必勾选它。这样软件在每次重新铺铜时,都会自动清除这些孤立的铜皮。
4.2 重新铺铜与覆铜管理
当你修改了走线、增加了器件后,原有的铜皮不会自动更新避让。这时你需要执行“重新铺铜”操作。在Altium Designer中,你可以右键点击铜皮,选择“Polygon Actions -> Repour Selected”来重铺选中的铜皮,或者使用快捷键“T+G+A”重铺所有铜皮。
对于复杂板子,铺铜会显著增加文件的数据量和软件显示、检查的计算量。在布局布线频繁修改的阶段,你可以暂时将铜皮设置为“搁置(Shelved)”状态,即保留轮廓但不清除显示和参与DRC,等布局布线基本定型后再一次性重铺,这样可以提升软件运行效率。
4.3 多层板与分割平面处理
对于四层及以上的板子,内电层的处理是另一个重要话题。内电层通常是完整的铜皮,通过“分割平面(Split Plane)”来分配不同的电源网络。例如,一个内电层可以被分割成“+3.3V”、“+1.8V”和“GND”几个区域。 分割操作类似于铺铜,但是在内电层上绘制隔离带(Line),软件会自动根据隔离带形成不同网络区域的边界。这里要特别注意:
- 间距要足够:不同电源区域之间的间距,必须满足电气安全间距,通常比信号间距更大。
- 避免信号线跨分割:这是高速设计的大忌。如果一条信号线的参考平面(比如它正下方的地平面)中间被一条电源分割带隔开,那么信号的回流路径就会被强行打断,不得不绕远路,形成巨大的回流环路,产生严重的EMI问题。布线时,必须确保关键信号线下方有完整、连续的参考平面。
5. 常见铺铜问题与实战排查指南
即使规则设好了,操作也对了,在实际项目中还是会遇到各种稀奇古怪的问题。下面我整理了几个最常见的“坑”及其解决办法。
5.1 铺铜不避让或避让错误
这是最典型的问题。你设了0.4mm的规则,但铺出来的铜皮却紧贴着走线。
- 检查规则优先级:如前所述,软件按规则优先级顺序执行。很可能你设的铺铜专用规则,被一个更高优先级的、适用范围更广的全局间距规则覆盖了。进入规则编辑器,确保你的铺铜规则优先级(Priority)数字足够大(数字越大,优先级越高),并且作用域(Polygon)正确。
- 检查规则作用域是否生效:有时规则语法写错了,导致没有正确应用到多边形上。在规则编辑器中,使用“Query Helper”来构建准确的作用域语句是个好习惯。
- 强制重新铺铜并重建规则索引:执行重铺铜操作(Repour All)。如果还不行,可以尝试在DRC设置中“重置错误标记”,或者重启软件。有时软件的规则索引需要刷新。
5.2 DRC报出大量间距错误
铺铜后运行DRC,可能冒出成百上千个间距错误,几乎都在铜皮与过孔/焊盘之间。
- 确认是否为“假错误”:首先检查这些报错的对象,是不是都属于你铺铜的网络本身?例如,你的铜皮是GND网络,它和板上成千上万个GND过孔的距离,软件也会用安全间距规则去检查。但实际上,属于同一网络的铜皮和过孔是应该连接在一起的,不应该有间距。这时,你需要检查“Clearance”规则中,是否设置了“Same Net”的检查。如果设置了,并且间距值>0,那么同一网络的对象之间也会报错。对于铺铜场景,通常建议将“Same Net”的间距检查禁用或设置为0,只检查不同网络对象间的间距。
- 检查特殊封装:有些器件的焊盘或封装在库中定义时,可能自带了一些非电气属性的图形(如机械孔、标识框),这些图形有时会被误判为电气对象,导致间距违规。需要仔细检查封装库。
5.3 铺铜导致文件卡顿或输出异常
板子比较大或铺铜非常复杂时,软件操作会变慢,甚至导出Gerber文件出错。
- 优化铺铜轮廓:避免使用由成百上千个顶点构成的极其复杂的铺铜轮廓。尽量用简洁的多边形。对于不规则区域,可以用多个简单的多边形拼接。
- 调整铺铜网格精度:在铺铜属性中,有一个“Grid”或“Smoothing”相关的设置,它决定了铺铜计算时内部网格的精细度。精度越高(数值越小),边缘越光滑,计算量越大。在确保外观可接受的前提下,可以适当调低精度(增大数值),能显著提升响应速度。
- 检查Gerber输出设置:在输出制造文件(Gerber)时,对于铺铜层,需要选择正确的“光圈匹配”方式。通常选择“嵌入式孔径(Embedded Apertures)”或“使用软件填充(Rasterized)”模式,可以避免因铺铜数据过于复杂导致的光圈列表错误。出Gerber后,务必用免费的Gerber查看器(如GC-Prevue)检查一遍,确认铺铜区域被正确填充,没有丢失或变形。
5.4 焊接时芯片引脚连锡或虚焊
这个问题往往追溯到铺铜的连接方式设置。
- 连锡:如果芯片引脚(特别是间距细密的QFP封装)的焊盘与大面积地铜皮直接连接,焊接时,铜皮会像“散热器”一样快速吸热,导致焊锡温度不够,流动性差,容易在相邻引脚间形成锡桥(连锡)。解决方案:确保所有信号和普通电源引脚的焊盘与铜皮采用“十字花连接”,利用热焊盘进行热隔离。
- 虚焊:与上述情况相反,如果热焊盘的连接线设计得太细或数量太少(比如只有2条),其机械强度和导电能力可能不足,在热应力或振动下容易断裂,导致虚焊。解决方案:对于稍大或需要一定载流能力的焊盘,在规则中适当增加热焊盘连接线的宽度(如从0.25mm增加到0.3mm)并保持4条连接。
铺铜是连接PCB电气设计与物理实现的重要桥梁,它需要理论知识和实践经验的结合。刚开始学的时候,多模仿成熟板卡的设计,多尝试修改参数看效果,多问几个“为什么这么设”,进步会非常快。记住,没有一成不变的最优设置,只有最适合当前板卡需求、生产工艺和成本约束的平衡方案。每次铺完铜,不妨问自己三个问题:回流路径连续吗?散热均匀吗?生产起来有风险吗?把这三点想明白了,你的铺铜功夫也就基本到家了。