☰
PADS Layout模块复用完全指南:两种模式怎么选及五大避坑要点
2026/10/7 12:44:49 网站建设 项目流程

PADS Layout的模块复用功能,我用了好几年,网上相关的PADS Layout使用教程大多只讲菜单点哪里,不讲两种模式到底怎么选,更不讲复制完的坑在哪。这篇文章我就一次说清楚。

我做过不少板卡,最让人抓狂的不是画新板子,而是“换个项目重画一遍一模一样的电路”。比如板子上4路完全相同的DC-DC电源,比如从上一款产品里拿过来的USB转串口模块,图都懒得改,PCB却要重新布局布线。这种时候,PADS Layout的模块复用(Reuse)就是救急法宝——把已经调好的电路模块连同走线、过孔、规则一起打包,放到新板子里接着用。但很多人在用Reuse时都卡在同一个问题上:为什么有时候放进去鼠线自动全接好,有时候放进去却是一堆悬空的管脚?这就是今天要讲的两种模式的区别,以及我踩过的那些坑。

下面会把原理、操作步骤、验证方法,还有几个比较典型的坑都摊开来讲。适合正在啃PADS Layout的PCB工程师、想规范复用流程的硬件团队,也适合刚接触Reuse功能、被一堆选项搞懵的新手。

1. 模块复用到底在复用什么:先搞清楚边界

很多教程上来就让用户框选复制,但框选之前得先明白Reuse到底能带走什么、带不走什么。我见过不少同事选了半个板子进去,结果导出模块后一放,缺铜皮、缺过孔、缺丝印,问题一大堆,根源就是对Reuse的边界没概念。

1.1 Reuse能带走的四样东西

典型的Reuse能带走四样东西:元件、走线、过孔、设计规则。这一点在PADS的帮助文档里写得很明确,但实际用的时候很少有人逐条对过。

元件当然没问题,位号、封装、旋转方向都跟着走。走线也没问题,这是Reuse最值钱的地方,因为布局可以重来,布线调一次真的很费精力。过孔需要注意,只有框选时明确选中的过孔才会进模块,而不是“芯片周围的过孔自动归我”。我见过有人框选时只框了元件和走线,结果放出来地过孔群一个都没有,地回路性能直接打折。

设计规则这块是很多人没注意到的:Make Reuse时可以勾选Include Rules,把模块内部定义的线宽、间距、过孔尺寸一起带走。这个功能同板复制时很好用,但跨板复用建议谨慎勾选——老项目里为了绕线设的局部规则很可能不适合新板,带过来反而会触发莫名其妙的DRC错误。

1.2 什么样的电路值得做成Reuse

不是所有电路都值得做成模块。我自己的判断标准很简单:至少会被使用两次,而且布局布线有讲究、重画一次很费劲的电路,才值得做成Reuse。

典型的例子有四类。第一类是多路相同的电源:4路Buck降压,原理图几乎一样,布局布线也想完全一致,手画四遍纯属浪费生命。第二类是标准接口电路:USB、RS485、CAN收发器、RJ45加变压器,这类电路接口位置固定,外围电路成熟,做成模块放哪都行。第三类是MCU最小系统:晶振、去耦电容、复位电路,布局位置和走线长度都影响性能,值得固化。第四类是高速信号子卡:DDR、Flash之类对等长、阻抗敏感的模块,调一次要命,复用它不香吗?

反过来,如果只是一个电阻一个电容,或者思路还在频繁调整的新电路,别着急做Reuse。模块化的前提是设计已经稳定,否则每次改版都要改模块,反而增加维护成本。

1.3 为什么复制粘贴不等于Reuse

有人会问:那我用Ctrl+C复制粘贴不行吗?大部分情况下还真不行。

复制粘贴出来的元件位号会自动加后缀,网络名容易被系统重新分配,走线甚至可能出现重叠或粘连。你复制一份到旁边,常常要花半天时间清理位号、重连网络,而且这种“复制产物”没有整体概念。Reuse不一样,它把模块当作一个整体管理,有独立的参考点、可以旋转、可以翻面,放置行为更像“插入一个标准库元件”,而不是散乱的图元。

打个比方,复制粘贴相当于把墙上的电线一根根拆下来再装到另一面墙上,Reuse是直接把整个配电箱搬过去,接线端子一插就完事。理解了这层,就知道为什么PCB圈子都在强调用Reuse而不是手动复制。

2. 两种模式的真正区别:保留网络名与剥离网络名

这一章是整篇文章的核心。所谓“两种模式”,指的是Make Reuse时对网络名(Net Name)的处理方式:保留网络名,还是剥离网络名。它们决定了复用后模块能否自动连接。

2.1 模式一:保留网络名模式是怎么工作的

保留网络名模式,字面意思就是Make Reuse时把模块里所有网络的原名带出去,比如模块里有个网络叫VCC_5V,复用后它还是叫VCC_5V。

你在目标板上执行Add Reuse时,系统会逐个检查模块里的网络名,凡是目标板里已经存在同名网络,鼠线就会自动接通。原理很简单,PCB的连通性本质就是靠网络名标识的:两个管脚只要都叫VCC_5V,系统就认为它们属于同一个网络。Reuse把管脚和走线上的名字带过来,等于提前帮你对好了暗号。

我最初用Reuse时最喜欢这个模式,因为放置后几乎不用再管网络的事。但它有个前提:目标板和源板的网络名必须一致。如果你只是在同一块板子里复制多路,或者在同一个项目的不同子板之间搬电路,网络命名本来就一致,选这个模式体验极佳。可一旦跨项目复用,两边命名习惯不同,比如一个叫VCC_5V,一个叫+5V_PWR,同名网络匹配就匹配不上,鼠线全部处于待挂接状态,反而更麻烦。

2.2 模式二:剥离网络名模式又是怎么回事

剥离网络名模式,Make Reuse时把模块里所有网络名称去掉,只保留物理形态:元件放哪、走线怎么走、过孔在哪。

放进去的模块里,走线和过孔依然是连通的,管脚之间该有的连接关系还在,只是原来的网络名被重新分配,变成模块内部生成的新名字。说白了,模块的内部连接还在,但对外接口的网络是“悬空”的,需要你手动映射到目标板的网络上去。

听起来好像比模式一麻烦,但它有个独一无二的好处:不依赖网络名的一致性。做跨项目复用时,老项目的电路图命名体系和新项目可能完全不搭,这时候强行保留网络名,系统匹配不上,管脚照样悬空;不如干脆剥离网络名,放置后手动把那几个关键的对外连接补上。因为一个模块真正对外接口的网络往往不多,电源、地、几个信号线,数得过来。与其一个一个改名字,不如放置后用ECO工具直接添加连接,反而更快。

2.3 到底该选哪种模式:一张表说清楚

我整理了两种模式的对比,每次拿不准就翻这张表:

对比维度保留网络名模式剥离网络名模式
模块内网络名原样保留被重新生成新名字
目标板同名网络自动匹配、鼠线自动接通不匹配,需手动连接
典型场景同板多路复制、同项目子板移植跨项目复用、网络命名不一致
放置后工作量小,验证一下即可大,需手动映射对外网络
对原理图依赖高,网表必须一致低,只看物理形态
主要风险位号/网络名冲突对外连接容易遗漏

选型判断就一句话:目标板与源板的网络名是否一致?一致,走保留网络名模式;不一致,走剥离网络名模式。

我个人的习惯是:同板复制多路电源,一定用保留网络名模式,因为四路原理图完全一样,网络名天然一致;从老项目移植模块到新项目时,先花五分钟比对一下网络命名,如果发现命名习惯完全不一样,干脆选剥离网络名模式,放置后在ECO里批量补几个关键连接,比逐个改网络名快得多。

3. 完整操作链条:从Make Reuse到Add Reuse

原理清楚了,操作就变得有意义,不然只会在菜单里点来点去,不知道每个选项在干什么。这个操作链路我按“创建前准备—创建—放置—验证”四个环节来讲,每一步会把容易忽略的细节说清楚。

3.1 创建Reuse前必须改的两个习惯

第一个习惯是框选前先开过滤器。右键菜单里找到Filter,只勾选Components、Traces、Vias这三类对象,把Text、Copper、Board Outline这些全部关掉。不然你以为自己只框了电源模块,实际上把旁边几段无关走线和一大块丝印文本都框进去了,模块体积膨胀不说,放到新板上还会挡住别的设计。

第二个习惯是统一单位和栅格。创建Reuse前,把设计单位确认一遍(公制还是英制),栅格设成一个自己能算清楚的值。很多人觉得这是小事,但跨板复用时最怕的就是单位不一致,等放进去发现坐标偏移了一截,再回去查单位设置,特别浪费时间。

还有一个细节:建议在创建前把当前层切到一个方便观察的层,比如顶层,然后按快捷键Z提高视图缩放,把要选的模块完整显示在屏幕内。PADS的框选有时候会漏掉屏幕边缘的对象,提前放大能减少这种低级遗漏。

3.2 Make Reuse:把选择集变成模块文件

框选完成后,执行Edit > Make Reuse打开创建对话框。我以PADS VX.2的界面为例来说明,9.x版本选项位置大同小异。

对话框里第一项是模块名称。命名不能随便写,至少包含类型、电压或功能、版本号。比如3V3_BUCK_R1,比Reuse1这种名字有用的多。

第二项是参考点(Reference Point)。这是我最想强调的选项,默认的参考点往往是模块的某个角落,但具体在哪个位置很多人根本不在意。我建议点Set按钮,回到设计界面把参考点选在模块左下角第一个元件的第一个管脚上。这样放置时输入坐标,系统就会把这个管脚对齐到坐标点,位置好预测得多。

接下来就是两种模式的选择:如果对话框里有保留网络名/包含网络的选项,勾上就是模式一,去掉勾就是模式二。不同版本的选项名有差异,有的叫Include Nets,有的写着Preserve Net Names,含义都一样。再往下是是否Include Rules,这个看场景决定。

最后保存成.rus文件。注意保存路径,建议直接存到团队统一的模块库目录,别存在自己电脑的临时文件夹里,不然一个月后你自己都找不到。

3.3 Add Reuse:视觉放置与坐标放置两种手法

放的时候也分两种手法。第一种是视觉手动放置:执行Edit > Add Reuse,选中.rus文件,模块会悬挂在光标上,右键可以旋转90度,需要镜像翻面也有对应选项。找到合适位置点击落位就行,适合模块套进现有布局的场景,能实时看到与周围元件的关系,灵活但不够精确。

第二种是精确坐标放置。先执行无模命令S x y,比如S 1000 1000,光标会自动跳到坐标(1000,1000),然后再执行Edit > Add Reuse,模块进来后会按照参考点对齐到当前光标位置。这个方法适合有结构图约束的板卡,比如连接器必须在板边特定位置,或者模块要卡在两个定位孔之间。你先从结构图算出模块原点的绝对坐标,再用S命令定位,比鼠标拖半天靠谱得多。

放置时遇到同名网络,系统通常会弹窗询问是否连接到现有网络,选Yes就行,这正是模式一自动接线的时刻。

3.4 复用后的验证动作:位置图核对是最后的保险

放置完别急着高兴,先跑验证。我通常做三件事。

第一件是Tools > Verify Design里的接线检查(Connectivity),看有没有悬空管脚或多余鼠线。这一步能快速暴露模式选错、网络没接上的问题。第二件是查位号,用Report或BOM功能导出元件清单,确认没有重复位号。

第三件是位置图核对。这个习惯是我吃过亏之后养成的:放置完模块后,用Tools > Basic Scripts里的Extract Centroid脚本把元件坐标导成Excel,或者用CAM Plus生成坐标文件,把新模块几个关键元件的坐标与预期值拉出来对比,确认没有放偏、漏放。PADS导出位置图的路径在File > Export或脚本库里,不同版本不一样,但提取坐标的思路是通用的。如果模块里有几十个器件,这种扫描位置图的核对方式,远比肉眼一个个看屏幕靠谱。

4. 踩坑实录:五个典型问题的完整排查链路

这一章写的是我实际踩过、也帮同事排查过的坑。每个问题我都按“现象—排查—根因—修复—预防”的顺序写,你可以把这套思路复现到自己的板上。

4.1 位号冲突引发“模块自己改名”

有一次做同板四路电源复制,放置完第二个Reuse之后,我发现新增元件的位号变成了REUSE1_U1、REUSE2_U1这种带前缀的名字,当时心里就咯噔一下,果然原理图比对报错一大片。

排查链路:我先打开Tools > Verify Design,系统报Duplicate RefDes,说明确实存在重复位号。接着回到原理图检查,发现原理图里只预留了一路电源的位号,其他三路根本没有对应的元件。这一步是问题根源:我是直接在PCB端复制模块,但原理图没有同步多出三路器件,系统为了保证位号唯一,只能强行给新元件加上前缀,于是PCB与原理图完全对不上。

修复方法:回到原理图把所有路电源的位号统一排好,重新导入网表,把PCB里刚才复制的模块删掉,重新Add Reuse。教训就一句话:先位号,后复用。复用前先确认目标板的原理图已经有对应数量的元件位号,尤其是同板多路复制,原理图同步永远是第一步。

4.2 网络名差几个字符,鼠线全部掉线

跨项目复用我遇到过好多次。有一次从老项目搬一个降压模块到新板,放置后模块周围出现一大堆未连接标记。

排查链路:刚看到那堆未连接标记时,我先怀疑是DRC间距设置问题,检查后发现规则一切正常。然后去查网络列表,发现老项目里这个模块的输入电源网络叫VCC_5V,而新项目里整个板的5V网络叫+5V_PWR,就差几个字符,系统严格按名称匹配,匹配不上就视为不同的网络,鼠线自然不会接通。

修复方法:在ECO模式下,把新板对应网络的名字改成与模块一致的VCC_5V,或者直接在ECO里用添加连接把模块的电源管脚连到+5V_PWR上。我那次改成同名网络后,鼠线瞬间全部刷出来,当时真想骂自己为什么不先比对网络名再放。

预防经验:跨项目复用前,花十分钟把两个项目的网络名清单拉出来对比一遍。要么在源项目就把网络名统一成新项目风格,要么干脆选剥离网络名模式,放置后手动补连接,反而不用被网络名牵着走。

4.3 封装库缺失,元件变成空心框

有一次复用同事给的模块,放进去后有几个电阻只有位号文字,没有焊盘图形,在PCB上就是空心框。

排查链路:我第一反应是模块文件不完整,但重新下载重新放还是一样。后来打开Module化检查,发现那些元件的封装名是R0402_OLD,再去Library Manager里看新项目的封装库列表,压根没有这个名字。根源是同事创建模块时用的封装库版本,和新项目加载的库版本不一致,虽然都是0402电阻,但库里的封装名称已经变了,系统找不到同名封装就只能画个框占位。

修复方法:把带R0402_OLD的封装库加进新项目,重新执行Add Reuse;或者直接在新项目里全局替换封装,把旧名字替换成新库里对应的封装。

预防经验:Reuse文件不是孤立的,它依赖元器件封装库。团队里做模块归档的时候,必须把对应的封装库版本一并归档,否则换台电脑、换个项目,封装找不到是早晚的事。

4.4 参考点埋雷,坐标定位整体偏移

有次按结构图要求把DDR模块放到指定坐标,我输入坐标后模块整个偏了半个板子,吓得我以为结构图画错了。

排查链路:我先检查单位设置,确认不是mil和mm的锅。然后意识到可能是参考点的问题:创建模块的人把参考点放在了模块左上角某个过孔上,而我输入坐标时想当然以为参考点在左下角第一个管脚,于是整个模块按左上角对齐到目标点,自然整体偏移,偏移量正好等于参考点到左下角的距离。

修复方法:删掉放歪的模块,重新执行Add Reuse,用参考点实际位置反算坐标后再精确放置;或者图省事直接视觉拖动,放完再用坐标表核对。

预防经验:创建模块时统一参考点规范,我现在的习惯是放在模块左下角第一个元件的第一个管脚上,而且这个规定要在团队里同步。不然每个人创建的模块参考点乱七八糟,跨人复用全靠猜。

4.5 走线与铺铜,Reuse覆盖不到的部分

还有一种更隐蔽的情况:复用的模块看起来都正常,但比较一下原始板,发现芯片周围的地过孔群没过来,或者原来铺的铜皮整个消失了。

排查链路:打开原始板,确认那些地过孔确实属于GND网络,再看框选时它们是否在选区内。问题多半出在框选时只注意元件和走线,漏选了大面积过孔。Reuse的覆盖范围是“你选中的东西”,不是“看起来像模块的东西”,漏选就是漏选。

至于铺铜,Reuse确实不会自动把铜皮重新灌一遍,放置后需要手动重建Copper Pour区域,再执行灌铜操作。Keepout禁布区在不同版本里表现不稳定,我的建议是别指望它跟着Reuse走,放置后统一重建。

预防经验:框选模块时打开过滤器,强制勾选Components+Traces+Vias三类对象,别靠肉眼选,肉眼就是会漏。放置完成后,把原始板和当前板在软件里并排对比一遍,重点看铜皮、禁布区、地过孔这三类“非典型”对象。

5. 把Reuse变成团队资产:目录、命名与版本管理

模块复用用得好,是生产力;用不好,就是一堆没人敢碰的僵尸文件。如果只是个人偶尔复用,那随意一点无所谓,但团队协作时,没有规范的Reuse管理,越复用到后面越乱。

5.1 模块库的目录结构

我建议团队内部统一一个模块库目录,按模块类型分一级目录,按版本放二级目录,类似下面这种结构:

PCB_Reuse_Lib/ 01_Power/ 3V3_BUCK/ 3V3_BUCK_R1.rus 3V3_BUCK_R1_说明.pdf 5V_LDO/ 5V_LDO_R2.rus 02_Interface/ USB2.0/ USB2.0_R1.rus RS485/ RS485_R1.rus 03_MCU/ STM32F4_Minimum/ STM32F4_Minimum_R2.rus

每个模块目录下除了.rus文件,还要放一个说明文档,记录模块适用的层数、已验证的板卡型号、注意事项。别嫌文档麻烦,三个月后你看着一个孤零零的.rus文件,就是想不起当初这个模块有什么坑。

5.2 命名规范:一眼看懂模块是什么

命名建议包含四个要素:功能类型、电压或关键参数、版本号、适用范围。我自己用的格式是“功能_参数_版本_层数_日期”。

要素建议示例
功能电压/接口/主控3V3_BUCK, USB2.0
参数电流/速率/容量2A, 480Mbps
版本R1/R2/R3R2
层数适用几层板4L, 6L
日期便于追溯20250110

完整示例:3V3_BUCK_2A_R2_4L_20250110.rus。这名字放目录里,任何人一看就知道是“3.3V降压、2A、第二版、适配四层板、2025年1月10日归档的模块”。

5.3 创建Reuse前的评审清单

我要求自己复用之前过一遍检查清单,项目赶可以简化,但下面几项必须确认:

  • 模块内位号是否唯一,没有和未来可能出现的位号冲突。
  • 走线是否完整,没有忘记连接的管脚。
  • 地过孔是否全部包含在模块内。
  • 保留还是剥离网络名,结论明确写在说明文档里。
  • 参考点是否按团队规范设置。
  • 模块配套的封装库版本是否一起归档。
  • 模块是否已经通过一次完整的DRC验证。

这套清单在模块创建时花五分钟过一遍,能帮未来省下数不清的排查时间。我见过太多因为创建时少加几个地过孔,导致放到新板上要手动补半天的案例。

5.4 版本管理:别让模块越用越乱

最后一个建议是用版本管理来控制模块文件。.rus文件本质上是文本方式描述的PCB数据,很适合放进Git或SVN。每次修改模块,版本号加一,不允许直接覆盖旧文件;每个版本的说明文档里记录“修改了什么、为什么改、验证过哪些板卡”。

有一个经验值得分享:模块版本号和原理图里的模块位号前缀关联起来。比如模块用了R2版本,原理图里对应的元件位号统一加前缀M2,这样一旦板上出了问题,从位号前缀就能反查是哪个版本的模块,不用猜。

我个人在实际操作中最受益的一条经验,是创建Reuse时把单位和栅格统一好再动手,放置完第一份之后先跑一次完整DRC再继续复制下一份。这套流程看着笨,但能省掉大部分返工。把“画一遍”变成“插一遍”,才是模块复用真正的意义。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询