ARTICLE DETAIL

资讯详情

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

Allegro覆铜全攻略:动态铜与静态铜选型及常见问题排查

Allegro覆铜全攻略:动态铜与静态铜选型及常见问题排查 刚转 Allegro 那会儿我差点被它气死。画完一个铜皮框屏幕上只有一条轮廓里面空空如也点哪里都没反应。后来才搞明白Allegro 的覆铜逻辑和很多 EDA 工具不一样它把“画边框”和“填铜”拆成了两件事中间每一步都要显式操作少一步都看不到你想要的那块实心铜皮。这篇文章就聊聊我在 Allegro PCB 覆铜上验证过多少遍的套路从动态铜和静态铜怎么选、参数面板怎么设到完整的灌铜流程再到那些常见的“翻车现场”——比如铜皮只有轮廓、动态铜不避让、热焊盘消失、螺丝孔周围短路风险——每一类我都会给出排查链路和解决方案。内容会比较长但都是实操里真正会用到的东西适合刚从其他工具切过来的 Layout 工程师也适合已经被 Allegro 折磨过但想系统补一遍覆铜知识的朋友。1. 先别急着画把“铜皮类型”这件事定下来很多新手一上来就直接找 Shape 菜单画铜皮画完才发现不是自己想要的回头改来改去浪费时间不说还容易埋下 DRC 隐患。1.1 动态铜和静态铜的真实差异Allegro 里的铜皮分两类动态铜Dynamic Copper和静态铜Static Copper。字面上只差一个词用起来完全是两种生物。动态铜是现在绝大多数场景下的默认选择。它的核心特征是铜皮会按照你设定的规则自动避让不同网络的走线、过孔、焊盘、板边也会自动生成热焊盘。当你移动了一段走线、换了一个过孔位置只要做一次 Update Shapes整块铜皮就会重新计算把新的间距关系自动处理好。静态铜则更像“手工实心多边形”。你画成什么样它就是什么样不会自动避让任何障碍物也不会自动生成热焊盘。过孔打在静态铜上面如果不手动挖空DRC 就会一直报短路或间距错误。它的优势是边界固定、显示轻快适合一些需要完全控制形状的场合。两者最本质的区别在于数据模型。动态铜保存的是一套“规则 边界”显示效果是实时计算出来的静态铜保存的就是最终的铜皮几何数据所见即所得。我用一张表把差异列出来方便你对照对比项动态铜静态铜自动避让走线/过孔支持更新后自动计算不支持需手动挖空自动生成热焊盘支持不支持修改走线后更新Shape Update Shapes 重新计算必须手动编辑边界DRC 检查自动参与需人工保证避让显示/计算开销大板子会明显卡顿较轻适用场景常规信号、电源、地平面射频局部、特殊散热铜块、临时实验1.2 新手选型原则什么时候必须用静态铜我的建议很直接没有特殊理由全部用动态铜。但下面几种情况你可以考虑静态铜射频区域需要严格受控的铜皮边界。动态铜的自动避让可能会在细枝末节上生成一堆小尖角影响射频性能。静态铜配合手动 Void可以精确控制每一处避让。电源模块底部需要一整片实心铜做散热开窗。有时候动态铜会为了热焊盘逻辑把铜皮拆出很多辐条导致开窗区域不完整。这种情况下用静态铜画一块完整实心铜皮不开热焊盘反而更贴合散热需求。设计早期做临时验证时快速放一块铜皮占位置。用静态铜可以减少频繁重算带来的卡顿等布局稳定后再换回动态铜重新铺。1.3 你看到的“铺铜失败”其实只是状态问题还有一个非常常见的误解用户以为“画完铜皮就自动填充了”其实 Allegro 里动态铜有一种“填充状态”的概念通常是Unfilled / Rough / Smooth三种状态。Unfilled只显示铜皮边界不显示内部填充。这就是你看到“铜皮只有轮廓”的最常见原因。Rough计算速度快边界粗糙适合工作过程中临时查看。Smooth最终平滑填充边界精细适合检查和出光绘前使用。后面我会专门说怎么处理。你现在只需要记住Allegro 的铜皮不是画完就完事的它有一个“状态机”你必须把它推到 Smooth 状态才算真正铺好。2. 覆铜操作链路从形状到实心铜的全流程了解类型和状态后就可以进入实操了。下面是一条我每天都在用的完整链路按顺序走基本不会出幺蛾子。2.1 创建铜皮形状前的参数准备打开 Allegro 后先别急着画。先去Setup Design Parameter Editor在 Shape 相关标签页里把默认行为确认一下。然后是创建命令Shape Polygon多边形、Shape Rectangular矩形、Shape Circular圆形、Shape Manual手绘。实际用得最多的是 Polygon 和 Rectangular。画之前必须看右下角的 Options 面板把这几个关键项设置好Active Class and Subclass设为Etch / Top或Etch / Bottom看你铺在哪一层Assign to Net选择你要铺的网络最常见的是 GNDShape Type选Dynamic copper还是Static copper如果有多个铜皮需要同网络合并注意勾选相关的创建选项不同版本叫法略不同。这里要强调一下网络必须在画之前就指定。很多人画完之后再想去改网络虽然可以右键 Assign Net但在 Options 面板里提前指定能避免把一块 No Net 的铜皮漏在板上。2.2 画边界与网络分配的正确姿势画边界时我心里一般有三个原则第一边界别贴着障碍物画。动态铜会自动避让但如果边界本身离走线过孔太近自动避让会生成一些非常难看的“锯齿”或“孤岛”后续清理麻烦。画边界时最好给障碍物预留足够的空间比如比你要的最终隔离距离再大不少让 Allegro 去慢慢算。第二能用直线段就别用弧线。尤其是大板子弧线边界会让动态铜的计算量成倍增加动不动就卡。除非有高频阻抗要求否则我全部用直线段。第三板框对齐要利用 Z-Copy。如果需要铜皮边界完全跟随板框不要手动描。用Edit Z-Copy把 Board Geometry/Outline 复制到 Etch 层再转成铜皮边界或者直接在复制后的 shape 上改网络这样效率高很多也绝不会出现缝隙。2.3 填铜与状态判断fill 到底在做什么画完动态铜边界后你看到的还是轮廓。这时执行Shape Update Shapes快捷键默认可能是 CtrlF或者菜单里的 Fill 命令选择 All让所有动态铜重新计算。计算完成后再看 Options 面板里铜皮的状态。如果还是 Unfilled说明你只创建了边界填铜动作没执行或者界面的显示模式有问题。正常灌铜完成后铜皮内部会变成实心走线过孔处会自动让出间距。对于静态铜画完边界默认就是实心的但你不要指望它自己避让任何东西。静态铜如果打孔穿过必须手动操作Shape Manual Void Polygon / Rectangular / Circular在铜皮里挖出图。挖空区域可以用Shape Manual Void Delete All Void清掉。2.4 用快捷键把高频操作固化下来Allegro 默认的菜单层级比较深每次铺铜都点菜单太累了。我习惯在env文件里加几个 alias。env 文件通常在安装目录share/pcb/text/env或个人目录下的pcbenv/env。打开后加上alias F6 shape fill alias F7 shape update shapes all alias F8 shape delete islands alias F9 shape dehaze保存后重启 AllegroF6~F9 就能直接触发常用覆铜操作。不同版本菜单名称可能有差异如果 alias 不生效先确认命令名是否和菜单右下角提示一致。还有一个小技巧在Shape Global Dynamic Shape Parameters里可以设置动态铜在修改走线后是否自动更新。如果嫌卡先关掉自动更新等板子布局差不多后再统一 Update 一次。3. 参数面板里的“坑”隔离间距、热焊盘与最小连接Allegro 覆铜参数面板里每个数字都有意义但很多新手只敢用默认值出了问题也只能干瞪眼。这里我把最关键的几个参数讲透。3.1 隔离净距设置别直接照抄默认值隔离净距Isolation Distance决定铜皮边到其他网络走线、过孔、焊盘的最小空气间距。这个值不是越大越好也不是越小越好它要和 PCB 工艺能力匹配。在Shape Global Dynamic Shape Parameters Clearances里可以设置不同网络类别的隔离距离。如果你不单独设置Allegro 会引用电气规则Spacing Rule里的数值。我常用的经验值场景推荐隔离距离普通信号线覆铜0.2mm约8mil电源网络覆铜0.25mm~0.3mm高压网络覆铜按安规要求通常1mm以上大电流铜皮之间0.3mm以上注意隔离距离设置太小时动态铜避让出来的缝隙会很窄板厂加工时容易产生蚀刻残留甚至短路。常规工艺下建议隔离不要小于 0.15mm。3.2 热焊盘Thermal Relief到底怎么生效热焊盘的原理是铜皮通过几根辐条连接到焊盘而不是整片实心包住。这样焊接时热量不会全部被铜皮导走方便手工焊接也减少虚焊。很多新手在全局参数里看到 Thermal Relief 选项以为把连接方式设成 Cross / Orthogonal 就有热焊盘了。其实不对。热焊盘能不能出现取决于两层因素Padstack 里是否定义了热焊盘图形。如果封装里的焊盘根本没做热焊盘形状Allegro 就算把规则设成“使用热焊盘”也只能退化为全连接或直接不连。动态铜参数里的连接方式。在Shape Global Dynamic Shape Parameters Thermal Relief Connect里可以选Full Contact全连接不生成辐条适合大电流Orthogonal正交辐条Diagonal对角辐条Best Contact自动选最优连接方式。我的习惯是大电流的电源焊盘用 Full Contact小信号地的焊盘、接插件的接地脚用 Orthogonal 或 Diagonal方便维修焊接。但这一切的前提是先检查封装 Padstack 里有没有定义热焊盘。3.3 大电流连接的最小宽度控制参数面板里有一项Minimum Width for Connection意思是如果铜皮与同网络焊盘的连接区域宽度小于这个值Allegro 就干脆不连。这个值设太大会出现“明明铺了铜但是某个焊盘脚上一根线都没有”设太小又可能导致细长连接条过多影响电流能力。一般信号网络用默认值就够大电流网络建议把最小连接宽度设到 0.3mm 以上保证焊盘和铜皮之间的连接面积足够否则电压跌落、发热都容易出问题。4. 常见“翻车现场”与完整排查链路这部分我按故障现象来组织你遇到输出问题时可以对照着查。4.1 铜皮只有轮廓死活不显示实心这是最经典的问题也是热搜里出现“allegro铜皮只有轮廓”的原因。遇到这种情况不要着急重画按下面的链路排查确认是否执行了 Fill / Update Shapes。画完动态铜后必须更新才填实。执行Shape Update Shapes选择 All看看有没有变化。检查 Copper Fill 状态。选中铜皮右键打开 Shape Properties看 Fill State 是不是 Unfilled。如果是把它改成 Smooth或者用菜单重新 Fill。检查颜色/显示模式。有时候铜皮是铺好的但界面某些显示模式把填充隐藏了只留下 Outline。到Display Color/Visibility里确认 Etch 层对应的颜色是点亮状态然后检查当前视图是否切换到只显示边框的模式。最直接的方法是按刷新重绘或者把显示方案切换回默认。检查铜皮是否被放到错误图层。如果画的时候 Options 面板里的 Active Subclass 不小心选成了Board Geometry/Top那你画出来的东西根本就是板框图形不是 Etch。把它删掉重新用Etch/Top创建。这一步是多数“只有轮廓”问题的根源不要绕过去。4.2 动态铜不自动避让走线和过孔动态铜理论上会自动避让但偶尔会出现走线离铜皮非常近DRC 报警铜皮却没让开。排查顺序走线和铜皮是不是同一个网络如果是同网络Allegro 不会避让而是会连接。看起来像“没让开”其实是正常的铜皮连在一起。确认铜皮是否在 Smooth 状态。Unfilled 状态根本不会计算避让。确认走线/过孔是否设置了特殊属性。少数情况下某些走线被固定了 Shape 避让规则或者器件上有NO_SHAPE_FILL之类的属性导致铜皮直接忽略它。到 Property Editor 里选中该走线或器件查看有没有这类属性有就删掉。重算一次全局 Shape。如果只是局部不更新用Shape Update Shapes选择窗口范围强制重算。还有一种情况是你更新了铜皮但 DRC 报告还是旧的。这时候跑一遍Display DRC更新标记别被残留的 DRC 圈吓到。4.3 散热焊盘的铜皮被“挖穿”了有时候你铺的是 GND结果一个 GND 焊盘周围被铜皮挖出很大一圈看起来像完全没连。这种情况通常不是 bug而是热焊盘规则与焊盘参数不匹配。排查链路看这个焊盘的 Padstack 里有没有热焊盘定义。如果没有Allegro 的某些版本会按规则用隔离间距挖掉一圈但没有辐条连出去视觉上就像“挖穿”。看全局 Dynamic Shape 连接方式。如果连接方式设为 Orthogonal但焊盘尺寸太小、辐条宽度太大可能生成不了有效辐条。试着把连接方式改成Full Contact如果铜皮立刻填满连接说明就是热焊盘参数冲突。看最小连接宽度。如果最小连接宽度大于辐条允许的实际宽度Allegro 会放弃连接。实际项目里我遇到最多的是封装从其他工具转过来、Padstack 里缺少 Thermal Relief 形状导致铺铜后散热焊盘看起来“悬空”。解决方法是要么在 Padstack Editor 里补热焊盘定义要么直接把连接方式改成 Full Contact。4.4 铜皮上的孤立岛和多余尖角怎么清理整板铺完铜后会有一些被细缝围成的小铜皮块称为“孤立岛”。这些孤岛如果没连到网络就是死铜影响阻抗和美观。清理步骤执行Shape Delete IslandsAllegro 会扫描当前层所有动态铜的孤立岛让你选择删除。处理细长尖角filament用Shape Dehaze它能去掉一些细细的尖角。尖角在生产时容易翘起或蚀刻不净。如果某个孤立岛是故意要保留的比如为了散热可以把它单独设成静态铜或者用 Keepout 保护。特别注意Delete Islands 是全局操作执行前保存一下看清楚你删除的每条边界。某些孤立岛其实带着你没有察觉的散热用途删掉了后期又要补。4.5 螺丝孔附近铺铜的正确避让方式每一个用 Allegro 的人迟早都会碰到螺丝孔铺铜的问题。金属螺丝穿过铜皮后如果孔壁和铜皮短接轻则螺丝发热重则短路。尤其电源板的地平面整块铺过去安装孔周围就是雷区。我常用的三种办法放 Route Keepout让动态铜自动避开。在螺丝孔周围画一个Route Keepout/Top区域形状通常是圆形直径根据螺丝头加安全间距定。动态铜遇到这个 Keepout 会自动开一个环形避让区最省事。手动挖空铜皮。铜皮铺好了再用Shape Manual Void Polygon在螺丝孔位置挖一个多边形。适合那些不想额外放 Keepout 的场合。在画铜皮边界时提前绕开。如果只是个别安装孔画边界时直接用弧线绕过去也行。安全间距我一般取“螺丝外径 0.5mm 以上”如果是高压或大电流环境再往上加。别只盯着电气间距还要考虑加工毛刺和螺丝安装公差。5. 铜皮设计进阶电源网络、大电流与工艺细节覆铜不是“铺上就完事”尤其是电源类和功率类板卡铜皮设计直接影响温度、压降和可靠性。5.1 大电流铺铜的宽度、过孔与开窗对于大电流网络大家喜欢先问“要铺多宽”。这个问题没有标准答案需要结合铜厚、允许温升和走线长度来算。工程上可以参考 IPC-2221 的经验公式做初步估算然后再用仿真或实测验证。我平时会按下面这张粗略参考表做首轮评估外层铜皮1oz基铜厚度允许温升10°C左右电流参考铜皮宽度1A约0.3mm~0.5mm2A约0.8mm~1.2mm5A约2.5mm~3.5mm10A约6mm~8mm这个表只适合拿来做初步估量实际铺铜时还要考虑环境温度、散热条件、铜皮长度。要是实在不放心把铜厚加到 2oz深度要增加铺设面积。大电流铜皮上还要适当打过孔也就是过孔阵。多打几个过孔连接各层铜皮能显著降低通流阻抗。常见做法是过孔间距 200mil~300mil均匀打孔像“缝合”一样把上下层铜皮连成一体。如果电源模块要散热可以开阻焊窗。把铜皮上面的阻焊油墨开掉露铜后上锡或加散热片散热能力会明显提升。但开窗也要注意别让铜皮大面积裸露在空气中导致氧化后期最好做表面处理。5.2 高频开关节点上的涡流损耗与铜皮形状很多人以为“铜皮越满越好”但开关电源里不是这样。高频开关节点比如 Buck 电路的 SW 节点电压跳变快会产生高频交变磁场。如果这块铜皮形成很大的环路面积交变磁场会在铜皮内部感应出涡流造成额外的损耗和发热。这就是不少人发现“铺了足够宽的铜皮温度却比想象高”的原因之一。所以高频开关节点的铺铜逻辑是在满足电流通流的前提下尽量让铜皮短而宽避免形成大面积的闭合环路。不是说把所有铜皮都铺满就好。具体做法开关节点铜皮尽量画成“粗短条形”不要围着芯片绕一大圈避免在 SW 节点下面铺大面积的地铜皮其实地平面完整更重要但 SW 层的铜皮形状要注意如果你发现某块铜皮过热但阻值看起来又很低可以用热成像仪看看是不是局部涡流导致再针对性地挖掉一些铜。5.3 铺铜相关的工艺沟通表最后提醒一个容易被忽略的点覆铜参数不是只在软件里设置还要和板厂沟通清楚。尤其是高速板、厚铜板、大电流板最好在下单时附带一张工艺沟通表。项目建议填写内容成品铜厚顶层/底层/内层分别多少 oz最小铜皮间距与设计规则一致注明最严苛处热焊盘辐条宽度明确是否要求保留阻焊开窗区域哪些铜皮需要露铜是否上锡表面处理喷锡/沉金/OSP 等螺丝孔附近避让是否额外加禁布区铜皮尖角/孤岛是否要求全部删净这张表在投板前检查一遍能省掉很多后顾之忧。Allegro 里覆铜设计再多规则最终还是要落到工艺能实现的程度。最后说点个人习惯。我每次出光绘之前不管板子铺了多少铜都会先执行一次全局Shape Update Shapes把所有动态铜切到 Smooth再跑一遍Shape Delete Islands然后清掉 DRC再打一版光绘检查铜皮连接情况。这套流程听起来简单但真的能拦住大部分“看着没问题、实际生产短路”的隐患。尤其是从其他工具转 Allegro 的朋友最容易漏的就是“更新动态铜”这一步。画完铜皮只显示轮廓的时候也别慌——先压一手 F6 批量填铜再把显示状态切回 Smooth绝大多数情况当场就能解决。板子铺铜铺得多了你会发现Allegro 的这些“反直觉”设置其实都是为了让每块铜皮的状态完全可控制。习惯之后它反而会比那些全自动铺铜的工具更让人安心。
返回列表