ARTICLE DETAIL

资讯详情

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

多层板电源过孔设计:Cadence Allegro热风焊盘与反焊盘要点解析

多层板电源过孔设计:Cadence Allegro热风焊盘与反焊盘要点解析 做过多层板电源设计的人应该都有过这种经历一块四层板或六层板内层整层铺了完整的地平面打了一排电源过孔从表层往下走。第一次送去贴片回来发现部分过孔旁边焊盘上锡不饱满个别甚至用镊子轻轻一碰就能摇动。一开始改钢网开孔、调回流焊炉温曲线折腾了两批板子还没解决。最后才想明白问题不在工艺端而在设计端——过孔与大铜皮的连接方式决定了焊接时热量往哪儿跑。Cadence Allegro做多层板只要涉及电源层和地平面就必须认真处理两个东西一个是热风焊盘Thermal Relief用来控制焊接热量不被大面积铜皮瞬间带走另一个是反焊盘Anti Pad用来保证过孔与平面之间的电气间隙和阻抗环境。这两个概念一正一反配合好了生产良率和信号完整性都能省掉一半返工。这篇文章把我这些年用Allegro做多层板电源过孔的经验完整理一遍重点讲热风焊盘与反焊盘的参数怎么定、Flash焊盘路径怎么配置以及正片负片设计里怎么避坑。1. 大面积铜皮为什么会“吸焊”热风焊盘与反焊盘存在的底层逻辑1.1 焊接热平衡铜皮就是一块巨大的散热器先弄明白一个物理事实焊接时焊料要靠温度熔化并润湿焊盘如果焊盘和一大片铜箔直接相连烙铁或回流焊炉提供给焊点的热量会顺着铜皮迅速扩散。铜的导热系数很高一整层电源平面相当于一个面积巨大的散热器过孔焊盘那点位置根本攒不住热量。结果是焊料还没来得及完全铺开温度已经掉到液相线以下形成虚焊、少锡、冷焊这一类缺陷。这正是多层板比两层板容易出现焊接问题的原因。两层板信号走线窄、铜皮面积小过孔焊盘直接连一小截走线问题不大到了四层以上内层整片平面和过孔焊盘相连散热面积大了几十上百倍。热风焊盘的作用就是在焊盘和铜皮之间插入一段“窄桥”用有限截面限制热量流失路径让焊接时焊点位置能维持足够的温度。你会听到有人管热风焊盘叫“花焊盘”或“十字焊盘”这是从外形上说的。它的本质是一个带开口的环形铜皮开口把铜皮切成了几段窄的连接桥桥越窄、越少散热越差焊接越容易桥越宽、越多载流能力越好但焊接时热量流失也越严重。这个矛盾是热风焊盘设计的核心后面所有参数都是在这两者之间找平衡。1.2 反焊盘平面铜皮上的“让位区”与热风焊盘配合出现的还有反焊盘。它不是一个实际存在的铜而是平面层铜皮上被掏掉的一个圆环区域。过孔穿过平面层时如果没有这个让位区过孔外壁和平面铜皮之间距离过近电气上就是短路即便不短路寄生电容也会变得异常影响信号质量。正片层上反焊盘表现为铜箔避让出的一个圆洞负片层上反焊盘直接以图形方式画在平面层上制造时呈现为无铜区。不管哪种实现方式反焊盘直径都必须比过孔或焊盘的成品尺寸大出足够的净距。很多人一开始不理解为什么有了反焊盘还需要热风焊盘。反焊盘负责“隔开”热风焊盘负责“连接”。一个完整的过孔焊盘结构是中心是实际导电焊盘焊盘外圈通过几段窄桥连接到大面积铜皮即使连接也要通过热风焊盘而反焊盘则规定了铜皮掏空的直径范围热风焊盘的外径必须落在反焊盘之内二者尺寸互相咬合。1.3 Cadence Allegro与Cadence的关系为什么常被搞混先说个容易混淆的点。Cadence是一家公司名Allegro是这家公司旗下PCB设计工具的产品系列名。很多人写“Cadence Allegro”其实指的是Allegro PCB Designer也常被整合在OrCAD PCB Designer里面。不管叫什么主流多层板设计里用到的Padstack Editor、PCB Editor、Symbol Editor这几个核心模块是同一套体系。理解这个关系对于下文很有帮助因为热风焊盘的创建和配置会横跨好几个模块画Flash符号在Symbol Editor里做焊盘参数在Padstack Editor里定实际铺铜连接规则又在PCB Editor里确认。新手经常在其中一个环节找不到对应菜单就是因为对这些模块的分工不熟。2. 一个过孔焊盘的三层含义Regular Pad、Thermal Relief、Anti Pad怎么配合2.1 Padstack Editor里的三个圆形参数Allegro的焊盘编辑器Padstack Editor里任何一个通孔焊盘都包含三组基本参数Regular Pad常规焊盘、Thermal Relief热风焊盘、Anti Pad反焊盘。Regular Pad就是过孔实际的导电焊盘钻孔完成后镀铜形成多层板里外边每一层都要露出来用于连接或焊接。Thermal Relief是前面说的带开口的散热焊盘它可能是一个Flash符号也可能只是一个圆形。Anti Pad则是平面层上的避让区域通常是一个比Thermal Relief外径更大的圆。对于过孔而言这三组参数在“内层”和“默认内层”选项卡里依次填写。钻孔直径定下来之后Regular Pad一般按钻孔加12到16mil来确定Thermal Relief的内径要比Regular Pad再大一圈外径又比内径大出一段形成连接桥Anti Pad最后兜底直径要在Thermal Relief外径基础上加上两倍净距。2.2 尺寸之间的咬合关系三个圆不是孤立的它们之间存在一条尺寸链。以我自己常用的电源过孔为例钻孔12milRegular Pad做成24mil。Thermal Relief内径取28mil比焊盘大4mil这是为了容纳钻孔偏移和生产公差外径取40mil和反焊盘直径52mil之间保持单边6mil的净距。四个开口均匀分布每个开口的宽度大约12mil相当于保留四条宽12mil左右的连接桥。这条尺寸链如果倒过来看更清晰先确定你的过孔承载多大电流再反推需要的连接桥总宽度进而决定开口数量与开口宽度再得到Thermal Relief的内外径最后根据板材工艺能力加上净距得到Anti Pad直径。不要拿到一个Flash符号就乱填每一层尺寸都在给下一层做约束。常见尺寸组合我放在后面第五章的统一参数表里。这里先记住几个判断标准Thermal Relief内径必须大于等于Regular Pad加上钻孔偏差否则热风焊盘会和焊盘重叠失去意义。Anti Pad直径必须大于Thermal Relief外径否则铜皮避让区域不够等于没设反焊盘。开口宽度不是越宽越好开口越宽连接桥越粗散热越严重但电源过孔如果连接桥太细过流能力受限。2.3 用电流估算连接桥截面如果一个过孔要承担1A电流而热风焊盘只留了四条5mil宽的连接桥铜厚1oz的情况下连接桥总截面远低于过孔本身的载流能力这个过孔就成了瓶颈。我一般会在电源入口和负载附近多放几个并联过孔同时把开口宽度适度加大让热风焊盘连接桥的总宽度接近甚至超过过孔焊盘周长的一半。不要忽视这个估算。我见过有人画大电流电源板过孔钻孔20mil热风焊盘开口只留了6mil四根桥加起来24mil过孔纯粹变成了摆设全靠焊盘边缘那点接触面积导电。后来单独割开铜皮实测压降比设计值高出一大截问题就出在热风焊盘开口太窄。3. Flash焊盘的创建与路径配置Allegro里必须按这个顺序操作3.1 在Symbol Editor里生成Flash符号Flash符号在Allegro里是一个独立的图形文件后缀通常是.fsm。它只能由Symbol Editor创建不能在PCB Editor里临时画。打开Allegro Symbol Editor后菜单选择Add - Flash系统会弹出一个窗体让你输入内径、外径、开口宽度、开口数量和起始角度。以刚才的电源过孔为例内径28mil外径40mil开口宽度12mil开口数量4起始角度45度。生成后保存为flash_pwr_12_24_via之类的名字。命名一定要有规则否则几十个Flash符号堆在库里后期根本分不清。这里有个经验Flash符号的尺寸建议直接用焊盘参数来命名比如内径28mil外径40mil就命名成flash_28_40_4x12一眼能看出开口数量和开口宽度。维护旧项目时看到名字就能确认这个Flash该用在哪类过孔上不用反复打开文件查看。3.2 把Flash焊盘挂到Padstack上Flash符号建好之后第二步是用Padstack Editor打开或新建一个Padstack在Internal层和Default Internal层的Thermal Relief栏里把这里的类型从Circle改成Flash然后在下拉列表中选择刚才保存的符号。注意下拉列表能不能看到这个Flash符号取决于路径配置是否正确。这一步是很多新手卡住的地方——明明文件建好了但Padstack Editor里就是找不到。根本原因是Allegro没有把Flash符号所在的文件夹加入搜索路径。Allegro的搜索路径在User Preferences里配置它决定了各个编辑器能扫描到哪些目录下的符号和焊盘文件。如果路径没配好不光Flash找不到后续打开板子时也会出现一堆symbol missing的警告。3.3 Flash路径配置从Setup到User Preferences打开Allegro PCB Editor或Padstack Editor从菜单Setup - User Preferences进入配置窗口左侧找到Design Paths展开后有两个关键项padpath和flashpath。flashpath里要把Flash符号所在目录加进去padpath里要把Padstack文件所在目录加进去。两者可以指向同一个库文件夹只需要分别在对应栏里添加一遍。添加完成后保存。Allegro在启动或打开文件时会按这个顺序在指定目录下检索焊盘和Flash符号。我习惯把公司所有PCB库文件统一放在一个目录树下比如D:\pcb_lib\symbols\、D:\pcb_lib\pads\、D:\pcb_lib\flashes\然后在padpath和flashpath里分别指向这些路径。这样重装软件或换电脑时把库目录一拷路径一配就全部恢复不用逐个去找文件。路径配置完成后最好立即验证。最简单的办法是回到Padstack Editor重新打开刚才的Padstack确认Thermal Relief栏里的Flash符号能够正常显示和预览。如果还是不显示检查目录权限以及文件是否真的保存在对应路径下。3.4 在PCB Editor里验证Flash加载还有一种更接近实战的验证方式打开一块已经有内层层叠设置的板子放置一个使用了该Padstack的过孔然后动态显示内层平面。负片层上如果能正常看到花瓣形的热风焊盘开口说明Flash加载成功如果显示成一个大圆或者空心圆说明Flash没有正确关联或者路径根本没识别。这一步很多人忽略直接导出Gerber等到光绘文件里发现热风焊盘变形再回去查路径配置白白浪费一整天。养成一个习惯新做Padstack或新配Flash路径后先在PCB Editor里放一颗测试孔切到内层平面视图肉眼确认一次再往下走。4. 正片与负片平面热风连接规则别再混为一谈4.1 负片用Flash正片用Dynamic Shape参数Allegro里的内层电源层有两种处理方式正片Positive Plane和负片Negative Plane。负片层只绘制无铜区域没画东西的地方默认全是铜正片层则是你画多少Shape就有多少铜。负片层上过孔与平面的热风连接就是靠前面配置的Flash符号实现的。负片层不需要铺铜Thermal Relief自然以花瓣形出现在孔周围反焊盘以避让圆的方式体现。正片层上情况完全不同。如果你用动态ShapeDynamic Shape铺铜过孔与铜皮的连接方式是由Shape的Thermal relief connect参数控制的。在PCB Editor中选择动态Shape右键进入Shape Settings在Thermal relief connect选项里选择连接方式可以选择Full Contact也可以选择Thermal Relief并把Flash符号指定上去。也就是说负片层靠Padstack里的Flash正片层靠Shape设置里的热风连接。两套机制并存但新手往往只记住了Padstack里的Flash配置忽略了正片层的Shape设置导致正片电源层上过孔全部变成了全连接焊接时该虚焊还是虚焊。4.2 电源过孔热风连接与全连接的取舍既然热风焊盘会影响载流能力那大电流电源过孔能不能直接全连接可以但必须区分位置。在散热条件很差的板边、大焊盘区域或者是需要承载数十安培电流的过孔阵列采用全连接确实能降低过孔阻值让电流更均匀分布。代价是焊接难度上升。全连接过孔焊接时热量会被整层铜皮吸走手工焊接很难焊接良好回流焊也会出现虚焊风险。我自己的做法是普通电源过孔一律用热风焊盘四个开口宽度不低于12mil只有在需要大量并联过孔通流的Buck电路输入输出端才把其中一部分过孔改成全连接。这样做的好处是兼顾焊接良率和载流能力。同理散热焊盘的开口数量在Allegro里不限于4个也可以做2个或3个但工艺上最常见的就是4个角度通常45度或90度分布。4.3 过孔阵列密度与反焊盘对平面的破坏还有一层容易忽略的是反焊盘对平面的破坏。反焊盘直径越大平面上被掏掉的铜越多平面的有效导电面积越小过孔之间的电流路径就会被迫绕行等效电感随之增加。高频数字电路里地平面的反焊盘过大返回电流路径被拉长EMI和串扰显著变差。所以反焊盘尺寸不是越大越安全。在满足电气间隙和工艺能力的前提下越小越好。我会根据层间铜厚和电压差控制净距常规数字板净距取6到8mil反焊盘直径接近Thermal Relief外径加12到16mil涉及高压或特殊安规要求的板子再单独增大。另一个经验是过孔阵列布局。同一片电源平面上反焊盘排列太密把这些区域的铜皮切成了一个个孤岛电流只能绕很远才能从过孔流到负载。我一般会让电源过孔之间保持至少30到40mil的间距既保证平面连续性又给走线留出空间。5. 实战参数表与出板前的高频排查5.1 常用过孔与电源过孔推荐参数以下是我自己项目中常用的几组参数单位mil。板材铜厚1oz常规FR4工艺可根据实际叠层微调过孔类型钻孔直径Regular PadThermal内径Thermal外径开口数量/宽度Anti Pad直径普通信号过孔101820304 x 636小电流电源过孔122428404 x 1050中电流电源过孔203642604 x 1672大电流并联过孔244248684 x 1880普通信号过孔反焊盘直径36mil单边净距是3mil适合一般数字电路。如果板子有较大电压差或高阻抗要求我建议在表格基础上再加大4到6mil。注意表中Thermal外径和Anti Pad直径之差已经预留了单边净距真正做叠层阻抗计算时还要看材料介电常数和层间距离不能照搬同一组数但作为起始设计值是够用的。5.2 五个高频Drc与解决建议用Allegro做多层板和热风焊盘、反焊盘相关的Drc报错主要有这几类第一类“Thermal relief not found”或Flash符号缺失。要么是flashpath路径没配好要么是Padstack根本没有关联Flash符号。处理方法就是前面说的重新配置路径并在Padstack Editor里确认。第二类“Anti pad too small”或clearance冲突。平面层净距不够通常是因为反焊盘直径和Thermal Relief外径咬合不够加大Anti Pad直径或者检查是否存在多个重叠图形导致避让区域合并。第三类“Shape with no net”或平面连接断裂。正片动态Shape与过孔连接不良一般出在Shape的Thermal relief connect设置没有指定Flash或者过孔所在层开关与Shape网络不一致。进Shape Settings统一设置连接方式。第四类“Via hole too large for pad”焊接后过孔出现空洞。钻孔直径和Regular Pad之间比例失衡一般建议钻孔直径比焊盘小至少10mil以上给电镀和焊料填充留足空间。第五类“Unconnected pin”出现在电源芯片的电源引脚上往往是引脚所在平面层的热风焊盘没有配置好引脚焊盘被完全隔离。这类问题多发生在用复制粘贴方式从旧项目带过来Padstack的场合。5.3 出Gerber前的一分钟检查清单每次文件发给板厂之前我会按下面的清单过一遍确认所有内层电源地平面过孔对应的PadstackThermal Relief都正确关联了Flash符号且flashpath指向的库目录存在。在PCB Editor中逐层切换内层显示肉眼抽查电源过孔周围的花瓣形连接是否正常反焊盘是否完整避让。对正片铺铜的电源层检查Shape的Thermal relief connect设置确认不是全部Full Contact。用Dimension或Show Element检查几个关键过孔的Physical信息确认内径外径与预期参数一致。导出Gerber后用CAM350或Allegro自带的Artwork确认负片层过孔散热盘形态无异常。这套检查流程看起来繁琐实际熟练后五分钟内就能走完。但能解决大多数因为热风焊盘和反焊盘设置不当导致的返工问题。6. 一些只有实操过才懂的细节最后挑几个容易被忽略但实际操作中一定会遇见的点说。Flash符号和Padstack文件名要严格对应。我在几个项目里直接把热风焊盘的尺寸写进Padstack名字比如via_12_24_thermal_f4x12既能一眼看出钻孔和焊盘尺寸也能看出开口数量和宽度。焊盘库文件多了以后这种命名习惯能节省大量查找时间。关于正片电源层用动态Shape连接热风焊盘时需要把Flash符号作为Shape的Thermal relief指定上去这在Allegro里叫做assign flash to shape。很多人只给Padstack配了Flash却忘了给Shape指定Flash结果Shape连接时依然是以实心方式连接。检查方式是选中Shape之后查看其Thermal relief connect参数如果指向的Flash符号为空就要及时补上。另外反焊盘会在平面层上产生一个无铜区如果无铜区面积太大会导致这一片区域的平面阻抗变大。我做过一块板子为了安全把所有反焊盘都加大了10mil结果地平面阻抗测试超标不得不重新调整过孔间距才能补偿回来。参数宁可在常规区间里选小值也不要因为“怕出问题”盲目放大。还有更隐蔽的一点Flash符号的起始角度。Allegro中创建Flash时输入的起始角度会影响花瓣开口与走线方向的相对位置。有些板厂铣刀或电镀工艺对特定角度的热风焊盘不良率低一些我没法给出一个通用最优角度但建议大家在同一家公司长期做板时固定同一个角度比如45度这样良率数据有可比性也方便后期分析。多层板设计不是画完线就结束这些内层连接细节恰恰决定了板子能不能顺利量产。热风焊盘与反焊盘设置虽然不起眼却直接影响焊接、电流承载和信号质量。我这些年踩过的坑基本都是当年在这组参数上马马虎虎欠下的账现在写出来希望后来的人直接跳过。
返回列表