ARTICLE DETAIL

资讯详情

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

Allegro电源层分割实战:Anti Etch与Split Plane全流程解析

Allegro电源层分割实战:Anti Etch与Split Plane全流程解析 1. 电源层分割到底在解决什么问题1.1 从一块四层板的翻车案例说起前两年接手一个工业控制板项目四层板结构叠层是顶层信号、内电层GND、内电层电源、底层信号。板子上有24V输入、12V传感器供电、5V数字电路、3.3V主控和1.8V内核五个电源域挤在一个内电层上。当时年轻气盛觉得电源层分割无非就是画几条线把铜皮切开结果第一版打样回来3.3V域纹波直接飙到180mV主控时不时复位ADC采样值跳得跟心电图一样。后来复盘才发现问题出在分割方式上我用的是普通走线加宽的方式去“切”电源层结果铜皮根本没有被真正隔离不同电源域之间还残留着细如发丝的连接形成了天线效应。更致命的是1.8V域被分割成了一条又长又窄的“走廊”电流路径阻抗过大压降严重。这个教训让我彻底明白电源层分割不是“画线”而是用Anti Etch在负片层上定义隔离带再通过铜皮分配把不同网络灌到各自的区域里。Allegro里这套流程有它自己的逻辑跟正片层画铜皮的思路完全不一样。这篇内容就把我从Anti Etch绘制到铜皮分配的完整流程拆开讲包括那些手册上不会写、但实际项目中一定会踩的坑。1.2 谁需要掌握这套流程如果你正在用Allegro做多层板的电源设计尤其是板子上有超过三个电源域、或者有模拟数字混合供电、或者有高压低压共存的情况那这套流程你绕不开。新手容易把电源层分割当成“画几个矩形”的简单活实际上它涉及到负片层的显示逻辑、Anti Etch的层级归属、Split Plane的参数设置、铜皮与网络的绑定关系以及后续DRC检查中的一堆坑。我见过不少做了两三年Layout的工程师画信号线很溜一到电源层分割就卡壳要么铜皮灌不进去要么灌进去了但网络分配错了要么DRC报一堆错误不知道怎么改。这篇内容就是写给这些“信号线王者、电源层青铜”的朋友从底层逻辑到实操步骤再到问题排查全部讲透。2. 核心概念拆解Anti Etch、Split Plane与负片层逻辑2.1 负片层和正片层的本质区别Allegro里的内电层默认是负片层这个概念必须先搞清楚。正片层是你画什么就有什么画一条线就是一条铜负片层反过来你画的东西是“没有铜”的区域整层默认铺满铜你画的线、画的Shape都是隔离带或者挖空区。这个逻辑跟PCB制造的工艺有关。内电层通常是大面积铜皮用负片工艺曝光蚀刻成本低、良率高。Allegro沿用了这个思路所以你在内电层上看到的“线”实际上是隔离线它把整层铜皮切成若干块每块铜皮再分配给不同的网络。注意如果你把内电层设成了正片层那Anti Etch和Split Plane这套流程就不适用了得用普通Shape的方式去画。所以第一步一定要确认你的内电层是Negative类型。2.2 Anti Etch到底是什么Anti Etch在Allegro里是一个专门的类翻译过来叫“抗蚀层”或者“隔离层”。它画出来的线不是铜而是铜皮之间的隔离带。你可以把它理解成一把刀沿着你画的路径把整层铜皮切开。Anti Etch有几个关键属性需要记住线宽决定隔离间距Anti Etch的线宽就是两块铜皮之间的间距。比如你画一条20mil宽的Anti Etch线那切出来的两块铜皮之间就有20mil的间隙。这个间距要满足板厂的加工能力一般内层最小间距做到8mil以上比较稳妥高压区域要根据安规要求加大。必须闭合Anti Etch线要形成一个闭合的区域才能把一块铜皮完整地“圈”出来。如果线没有闭合铜皮就切不断会出现“藕断丝连”的情况。层级归属Anti Etch要画在对应的内电层上不能画在信号层。在Allegro的Class里它属于Anti Etch类Subclass对应具体的层。2.3 Split Plane的作用Split Plane是Allegro里专门用来给负片层分配网络的工具。你画完Anti Etch之后整层铜皮被切成了若干块但这些铜皮还没有“身份”不知道自己是GND还是VCC。Split Plane就是给每块铜皮指定网络的地方。它的操作逻辑是选中一块被Anti Etch围出来的区域然后指定一个网络Allegro会自动把这块区域灌上对应的铜皮。如果区域形状复杂Split Plane也能处理但前提是Anti Etch必须闭合且没有自交。实操心得Split Plane分配网络之后铜皮的颜色会变成对应网络的颜色。如果你发现某块铜皮颜色不对或者灌不进去八成是Anti Etch没闭合或者区域内有孤岛。2.4 为什么不用普通Shape画电源层有人会问既然正片层画Shape那么方便为什么内电层不直接设成正片层用Shape画电源铜皮原因有几个第一负片层的铜皮是整层铺满的散热和载流能力更好。正片层用Shape画Shape之间的间隙需要额外处理而且大面积Shape的填充算法在Allegro里有时候会出问题。第二负片层的文件体积小光绘数据量少板厂处理起来更快。对于层数多的板子这个优势很明显。第三负片层是行业惯例大部分板厂的工艺参数都是按负片层来优化的。你突然改成正片层板厂可能要多收钱。当然正片层也有它的好处比如可视化更直观、DRC检查更简单。但对于电源层分割这个场景负片层加Anti Etch加Split Plane的组合仍然是主流做法。3. 完整实操流程从Anti Etch绘制到铜皮分配3.1 前期准备确认层叠和网络动手之前先把这几件事确认好层叠结构打开Cross Section确认内电层的类型是Negative。如果是Positive要么改回Negative要么换方案。电源网络清单把所有需要分割的电源网络列出来包括网络名、电压、电流、大致面积需求。比如3.3V/2A、5V/1A、12V/0.5A、24V/0.3A。板厂工艺参数最小线宽间距、最小隔离间距。一般内层最小间距做到8mil高压区域按安规要求来比如24V以上建议做到20mil以上。我一般会在纸上先画一个草图标出每个电源域的大致位置和面积。电源域的位置要跟器件布局对应比如3.3V域要覆盖主控和它的外围电路5V域要覆盖USB和传感器接口。3.2 Anti Etch绘制手把手操作第一步打开Allegro选择要操作的内电层。在Visibility面板里把其他层关掉只显示当前内电层和顶层方便对照器件位置。第二步设置Anti Etch的线宽。在Options面板里Class选Anti EtchSubclass选对应的内电层Line width填你需要的隔离间距。我一般先用20mil画后面根据DRC结果再调整。第三步开始画线。用Add Line命令沿着电源域的边界画闭合图形。画的时候注意几点拐角尽量用45度或者圆弧不要用90度直角。直角在蚀刻时容易产生尖角效应影响阻抗和绝缘。线要闭合起点和终点重合。画完之后可以用Show Element检查一下确认是闭合的Shape而不是开放的线。不同电源域之间的隔离带可以共用但要注意间距叠加。比如两个域之间需要20mil隔离那你画一条20mil的Anti Etch线就够了不要画两条10mil的叠在一起。第四步检查Anti Etch。用Display菜单里的Show Element点选每条Anti Etch线确认线宽、层级、闭合性都正确。如果有自交或者开口用Vertex命令修改。踩过的坑有一次画Anti Etch的时候不小心把线画到了信号层上结果Split Plane的时候死活灌不进去。后来用Show Element一查发现Subclass选错了。所以画之前一定要确认当前层。3.3 Split Plane分配网络细节决定成败Anti Etch画完之后整层铜皮已经被切成了若干块。接下来用Split Plane给每块铜皮分配网络。操作路径Shape菜单 - Split Plane - Create。然后点选一块被Anti Etch围出来的区域弹出对话框选择对应的网络。这里有几个关键点区域必须完全闭合如果Anti Etch有开口Split Plane会提示“Cannot find a closed area”之类的错误。这时候要回去检查Anti Etch。网络选择要准确选错网络的话铜皮会灌上错误的网络后续DRC会报短路。我一般会先把所有电源网络在Constraint Manager里设好颜色这样分配的时候不容易选错。孤岛处理如果区域内有孤岛比如被过孔阵列围出来的小区域Split Plane会问你要不要保留。一般选择删除孤岛除非那个孤岛有特殊用途。铜皮优先级如果多个Split Plane区域有重叠Allegro会按优先级处理。一般不需要手动设优先级但如果发现铜皮被覆盖了可以在Split Plane的属性里调整。分配完成后用Display - Color/Visibility把内电层的铜皮显示出来检查每块铜皮的颜色是否对应正确的网络。然后跑一遍DRC看有没有短路或间距违规。3.4 铜皮与过孔、焊盘的连接处理Split Plane分配完网络之后铜皮和过孔、焊盘的连接方式也需要设置。Allegro里默认是Thermal Relief连接也就是花焊盘。对于电源层我一般建议大电流路径用Full Contact比如3.3V主供电路径上的过孔用全连接降低阻抗。小电流或散热焊盘用Thermal Relief方便焊接减少散热过快导致的虚焊。高压区域加大隔离间距在Constraint Manager里单独设Spacing规则。设置方法在Split Plane的属性里可以指定Thermal Relief的类型和参数。或者在Constraint Manager里针对特定网络设Pad Entry和Thermal规则。实操心得有一次做一块12V/10A的电源板Split Plane默认用了Thermal Relief结果大电流路径上压降太大负载端只有11.2V。后来把大电流过孔改成Full Contact压降降到0.1V以内。所以大电流路径一定要用全连接。4. 常见问题与排查技巧实录4.1 Split Plane灌不进去铜皮这是最常见的问题原因通常有以下几个现象可能原因排查方法解决方案提示区域不闭合Anti Etch有开口或自交Show Element检查Anti Etch用Vertex命令闭合或删除自交铜皮颜色不对网络分配错误检查Split Plane的网络属性删除重新分配铜皮只有轮廓铜皮未填充检查Shape的Fill属性用Shape Fill命令重新填充部分区域无铜皮孤岛被删除检查孤岛设置调整孤岛保留选项我遇到最多的是Anti Etch不闭合。有时候画线的时候看起来闭合了但实际上起点和终点差了0.1mil肉眼根本看不出来。这时候用Show Element看线的起点终点坐标或者用Shape的Check命令检查闭合性。4.2 DRC报短路但实际没有短路这种情况通常是Anti Etch的间距不够或者Split Plane的区域有重叠。Allegro的DRC是按规则检查的如果两个网络的铜皮间距小于规则要求就会报短路。排查方法打开DRC报告找到具体的违规位置用Zoom命令定位。然后检查该位置的Anti Etch线宽是否足够或者两个Split Plane区域是否重叠。解决方案加大Anti Etch线宽或者调整Split Plane的边界。如果是规则设置太严可以在Constraint Manager里放宽对应网络的Spacing规则。4.3 铜皮分配后器件焊盘连接异常有时候Split Plane分配完网络后发现某些器件焊盘没有连接到铜皮上或者连接方式不对。原因可能是焊盘不在铜皮区域内检查器件布局确认焊盘落在对应的电源域内。Thermal Relief参数不对检查Thermal Relief的开口宽度和连接宽度确保满足电流需求。焊盘被Anti Etch切到了如果Anti Etch线穿过了焊盘焊盘会被隔离。这时候要调整Anti Etch路径避开焊盘。我一般会在Split Plane完成后用Display - Show Rats - All检查所有电源网络的连接性。如果有未连接的飞线说明铜皮没有正确覆盖到焊盘。4.4 负片层显示混乱看不清负片层的显示逻辑跟正片层不一样新手容易看晕。我的做法是把内电层的铜皮颜色设成半透明这样能同时看到铜皮和下面的走线。用Color/Visibility面板把Anti Etch设成醒目的颜色比如红色。把其他层关掉只显示当前内电层和顶层减少视觉干扰。小技巧在Allegro里可以用Film功能保存显示配置下次直接调用不用每次都重新设。5. 进阶技巧与效率提升5.1 用Skill脚本批量处理Anti Etch如果板子上电源域很多手动画Anti Etch很费时间。可以用Allegro的Skill脚本批量生成。比如写一个脚本根据给定的坐标列表自动画闭合的Anti Etch线。Skill脚本的基本思路是读取一个文本文件里面定义了每个电源域的边界坐标然后调用axlAddLine函数画线。这个脚本我写过一版对于规则形状的电源域效率提升很明显。不过Skill脚本有个门槛需要懂一点Lisp语法。如果不想写脚本也可以用Allegro的Copy和Mirror功能复制已有的Anti Etch形状然后修改坐标。5.2 电源层分割的DFM检查清单分割完成后打样之前我一般会过一遍这个清单Anti Etch线宽是否满足板厂最小间距要求所有Anti Etch是否闭合Split Plane网络分配是否正确大电流路径是否用Full Contact高压区域隔离间距是否足够铜皮是否有孤岛需要删除DRC是否全部通过光绘文件是否包含Anti Etch层和Split Plane层这个清单帮我避免了好几次打样翻车。尤其是光绘文件有一次忘了包含Anti Etch层板厂做出来的板子电源层根本没切开所有电源短路。5.3 与其他工具的协作Allegro的电源层分割完成后有时候需要导出到其他工具做仿真或者检查。比如导出ODB给仿真软件做电源完整性分析或者导出DXF给结构工程师确认尺寸。导出ODB的时候要注意Anti Etch和Split Plane的信息要包含在内否则仿真软件看不到电源分割。导出DXF的时候一般只需要板框和器件位置电源层信息可以不导出。另外如果项目后期需要转成其他PCB工具格式电源层分割的信息可能会丢失或者变形。所以转格式之前一定要备份原始Allegro文件并且在新工具里重新检查电源层的连接性。6. 我个人在实际操作中的几点体会电源层分割这件事说难不难说简单也不简单。核心就三条Anti Etch要闭合、Split Plane网络要选对、大电流路径要用全连接。但每一条背后都有一堆细节比如Anti Etch的线宽怎么定、Split Plane的孤岛怎么处理、Thermal Relief的参数怎么调。我自己的习惯是画Anti Etch之前先在纸上画草图标好每个电源域的位置和面积。然后画的时候用最细的线先勾一遍轮廓确认闭合之后再改成实际需要的线宽。这样比直接画粗线再改要快因为细线容易看出闭合问题。还有一点Split Plane分配完网络之后一定要跑DRC而且要看DRC报告里的每一条违规不能只看数量。有时候一条违规背后藏着一个大问题比如两个电源域短路不仔细看根本发现不了。最后分享一个小技巧如果板子上有多个相同的电源域比如两路独立的3.3V可以在Split Plane里给它们分配同一个网络但用不同的铜皮区域。这样既保证了隔离又简化了网络管理。不过要注意如果两路3.3V需要完全隔离那就得用不同的网络名并且在Constraint Manager里设好隔离规则。
返回列表