在 PCB 布局阶段,我遇到过不少这样的需求:某一块电源电路本来放在顶层,后来因为结构干涉、整机厚度或者其他模块的占位,需要整体翻到底层;或者一个连接器、一颗大封装器件,在布局评审时被要求“放到背面去”。很多刚开始用 Cadence Allegro 的同学,一听到“镜像器件”这四个字,就本能地觉得这是把一个器件从顶层翻转到底层那么简单,结果实际操作时才发现,镜像涉及的不仅是层面切换,还有器件方向、丝印文字、走线连接、封装引脚视角、模块整体布局等一系列联动问题。
这篇文章就以 Cadence Allegro X 24.1 中文界面为例,系统整理“镜像器件及模块”的完整操作方法。文章会先从镜像的本质讲起,再分别介绍单个器件镜像、多个器件批量镜像、模块整体镜像的实操步骤,最后补充镜像后的检查项、常见问题以及工程建议。无论你是刚开始接触 Allegro 的初学者,还是已经做过一些双面布局、四层板设计的工程师,这篇文章都值得收藏备用。
1. 镜像器件与模块:核心概念
1.1 镜像器件到底在做什么
“镜像器件”在 Allegro 中的本质,不是简单地把元件从顶层移动到底层。从三维空间角度来看,它是把器件沿电路板的中心平面(也就是 X 轴方向)做了一次翻转。你可以把它理解成一张卡片从正面翻到背面:翻面之后,卡片的左右关系会发生反转,原本在左上角的内容会出现在右上角。
这种翻转带来两个直接影响:
- 器件的放置层面会从 TOP 切换为 BOTTOM。
- 从顶面观察底层时,器件的 Pin 脚左右顺序以及丝印文字的阅读方向都会发生变化。
很多新手会把“镜像”和“旋转 180°”混为一谈,其实这是两种完全不同的变换。旋转是围绕 Z 轴转动,器件仍然停留在同一层;而镜像是围绕 X 轴翻转,器件会从顶层翻到底层或者从底层翻到顶层。
在 Allegro 中,你可以在任意时刻通过 Mirror 命令对选中的器件执行镜像操作。镜像后,器件会保留原有的 X、Y 坐标基准,但它的放置层面会发生切换,同时器件自身的方向也会自动更新。理解这一点,后面所有操作就有了基础。
1.2 哪些场景会用到镜像
镜像操作在实际工程中非常常见,下面这几种是我在实际项目中遇到最多的场景:
第一类是双面布局。当单面空间不够,需要把一部分器件放到背面时,例如小型消费类电子产品的 PCBA 设计,经常会把阻容感、驱动 IC、保护电路等放到底层,这时就需要对相关器件执行镜像。
第二类是结构装配需求。比如 USB 座、耳机座、侧按键等器件,为了保证正反面安装方向正确,需要在布局阶段提前把某几个连接器镜像到指定层面。
第三类是模块复用。如果某个电源模块或接口处理电路是通用的,工程师往往会先在一个板子上完成布局,然后复制到另一个板子,再根据装配需求做整体镜像。这种场景下,不只是单个器件镜像,而是整个模块一起镜像。
第四类是散热和安规考虑。有些大功率器件需要紧贴散热片,或者某些区域需要保持特定净空,这时把发热器件镜像到底层,可以把散热路径和结构设计配合得更好。
第五类是高速 PCB 布局调整。在一个高速接口的布局过程中,为了缩短某个关键信号的回流路径,需要把一部分去耦电容或匹配电阻从顶层翻到底层,这也离不开镜像操作。
1.3 镜像、旋转、移动的边界
为了更清楚地理解镜像,我们可以把 Allegro 中几个常用的布局操作放在一起对比:
| 操作 | 变换轴 | 层面是否改变 | 典型应用 |
|---|---|---|---|
| Move 移动 | X/Y 平动 | 不变 | 把器件从一个坐标移到另一个坐标 |
| Rotate 旋转 | Z 轴旋转 | 不变 | 调整器件摆放角度,例如 0°/90°/180°/270° |
| Mirror 镜像 | X 轴翻转 | TOP ↔ BOTTOM | 把顶层器件翻到底层,或反之 |
这里有一个关键记忆点:Move 负责“位置”,Rotate 负责“角度”,Mirror 负责“翻面”。三者可以叠加使用,实际布局时通常是先镜像到位,再旋转调整方向,最后移动定坐标。
2. 环境准备与版本说明
2.1 Allegro X 24.1 中文界面
本文提到的操作基于 Cadence Allegro X 24.1 中文界面。不同小版本之间菜单名称可能会略有差异,但核心命令和操作逻辑是一致的。如果你使用的是 Allegro 16.6、17.2、17.4 或更高的 22.1、23.1 版本,命令入口基本都能对应上,只是中文翻译可能略有区别。
Allegro 的界面有一个特点:虽然菜单可以显示为中文,但底部命令行依然保留了传统的英文命令输入方式。例如布局布线时常用的 move、mirror、rotate、spin 等命令,都可以直接在 Command 输入框中键入。这种设计对老工程师很友好,也让跨版本迁移学习变得更容易。
需要注意的是,Allegro 的镜像操作和 OrCAD Capture 原理图中的 Mirror 概念不一样。原理图中的镜像是为了调整原理图符号阅读方向,而 PCB 编辑器中的镜像是真实层面切换,会影响最终生产文件。
2.2 演示工程准备
为了方便演示,我们准备一个简单的双面 PCB 工程:
- 板框尺寸:600mil × 800mil。
- 顶层放置一个电源模块,包含 1 颗 DC-DC 芯片、2 颗去耦电容、1 颗功率电感、若干电阻。
- 底层一开始保持空白,稍后通过镜像操作把顶层电源模块整体翻到底层。
这里不需要复杂的外部资源,只要在 Allegro 中新建一个空白板框,然后调用布局软件放置几个测试器件即可。如果你还没有完整的封装库,可以使用 Allegro 自带的示例封装,或者先创建几个简单的通孔封装作为练习对象。
2.3 常用命令入口与快捷键
在进入镜像实操之前,有几个命令是必须掌握的:
| 命令 | 作用 | 命令行输入 | 菜单位置(参考) |
|---|---|---|---|
| Move | 移动器件 | move | Edit → Move |
| Mirror | 镜像翻面 | mirror | Edit → Mirror |
| Rotate | 旋转器件 | rotate | Edit → Rotate |
| Spin | 自由旋转 | spin | Edit → Spin |
| Hilight | 高亮网络/器件 | hilight | Display → Highlight |
| Dehilight | 取消高亮 | dehilight | Display → Dehighlight |
Allegro 的默认快捷键不同版本差异较大,不建议死记硬背。更稳定的方式是直接在命令行输入完整命令。实际操作时可以先按一下键盘上的F3或F4等快捷键调用对应命令,也可以自己在 env 文件中自定义快捷键。关于 env 文件自定义,我在第 7 章会详细写一个例子。
3. 镜像器件操作详解
3.1 单个器件镜像的两种方式
下面先来看一个最简单、也是最高频的场景:把一颗已经放在顶层的器件镜像到底层。
方式一:命令行镜像。
在 Allegro 底部命令行输入:
mirror回车后,光标会进入选物状态。此时鼠标点击需要镜像的器件,该器件会被拾取。接着移动鼠标,你会看到器件跟随光标移动,点击左键放置即可完成镜像。放置完成后,器件会自动从 TOP 层切换到 BOTTOM 层。
方式二:菜单镜像。
点击菜单栏的 Edit → Mirror,然后同样点击需要镜像的器件。在中文界面下,菜单显示为“编辑 → 镜像”,非常直观。
这两种方式本质是同一个命令。镜像完成后,可以选中器件,打开右边的 Options 面板查看它的 Placement 信息,你会看到层面已经从 TOP 变为 BOTTOM。
如果镜像之后发现器件方向和预期不一致,不要重新镜像,直接在 Mirror 状态下再次旋转角度,或使用 Rotate 命令调整。Allegro 中器件镜像后的默认方向与源库定义相关,不同封装可能需要单独旋转修正。
3.2 多个器件的批量镜像
实际工作中很少只镜像一颗器件,更多是把同一个区域内的多个器件一起镜像。批量镜像最常用的方式是“圈选 + 镜像”。
第一步,在 Command 输入框中输入 mirror 命令。
第二步,在 Find 过滤面板中勾选 Symbols,确认要选择的对象是器件,而不是走线或铜箔。
第三步,使用鼠标左键框选多个器件。如果框选时没有弹出口令,可以直接在画布上按住鼠标左键拉出一个矩形。选中后,所有器件会高亮显示。
第四步,移动鼠标到目标位置,点击左键完成批量镜像。执行完成后,你会发现这一批器件全部从顶层切换到了底层,它们之间的相对位置关系保持不变。
还有一个更精细的选择方式:使用 Temp Group 临时组选择。按下鼠标右键,在弹出的菜单中选择“Temp Group”,然后逐个点击需要镜像的器件。这种方式适合选择不相邻、分散在不同区域的器件。
批量镜像时有一个容易忽略的细节:框选范围如果包含了铜箔或走线,Allegro 默认不会把它们一起镜像,因为镜像是针对 symbol 的操作。如果确实需要把“铜皮、走线、器件”作为一个整体镜像,就要用到模块镜像,后面第 4 章会专门讲。
3.3 镜像后器件调整:位号、方向与丝印
镜像完成后,器件引脚和丝印文字都需要确认一遍。以 DC-DC 电源芯片为例,假设它在顶层时第 1 脚在左上角,镜像到底层后,如果你从顶面透过板子观察底层,第 1 脚会跑到右上角。这是镜像翻转带来的必然结果,并不是封装出错。
丝印文字也需要特别注意。在 Allegro 中,如果器件的 RefDes 文字层设置为 TOP 层,镜像后文字会自动调整方向,保证从顶面读取时不会出现“镜像字”。但如果有人在前期把丝印文字锁定在 Assembly 层且没有跟随层面变化,镜像后就可能出现文字反向的问题。
修正方法有两个:
- 选中位号文字,右键点击 “Mirror Text”,把文字方向重新调整。
- 使用 Auto Rename 重新生成位号,保持丝印一致性。实际项目中,我更推荐把 RefDes 的层面设置与器件层面绑定,这样镜像后丝印会自动跟随调整。
检查时还要注意:底层器件从顶面观察时,丝印文字应该是“反向”的,因为生产时底层是从底面去读的,印刷时文字会做镜像处理。如果你在顶面视角看到底层丝印是正字,反而说明丝印设置有问题。这一点很多新手会搞反。
3.4 镜像操作常见误区
误区一:镜像等于旋转 180°。
前面已经强调过,旋转 180° 只是改变了角度,层面没变;镜像是翻面,层面一定发生变化。在 Allegro 中,如果你看到某个器件只是方向变了但层面没变,说明你执行的是 Rotate,不是 Mirror。
误区二:镜像后看不到器件。
有些器件是单面布局的,底层没有绘制对应的封装外形,镜像后可能会出现器件“消失”的假象。这时候可以先打开层叠设置,确认 BOTTOM 层处于开启状态,再使用 Display → Color Visibility 把 BOTTOM 层的 Geometry、Assembly、Silkscreen 显示出来。
误区三:镜像后网络连接关系会变。
这里要特别说明:Allegro 中镜像器件不会改变网络连接关系,因为网络中每个 Pin 的定义是固定的,Pin 1 依然是 Pin 1,只是它的空间坐标翻到了另一面。真正影响连接关系的是你自己在布局时是否把器件放错了焊盘。镜像前建议高亮关键网络,镜像后再复查一遍。
4. 镜像模块的完整实战
4.1 工程背景:电源模块整体翻到背面
下面用一个接近实际工作的案例,把“镜像模块”的完整流程走一遍。
假设我在设计一块单板,正面已经排满了主控、内存、接口电路,实在没有空间放 DC-DC 电源模块了。评审后决定:把这块电源模块整体镜像到底层,正面只保留连接器、主芯片和对外接口。
这个需求里有几个难点:
- 模块包含多颗器件,不是一个整体,需要一次性圈选并镜像。
- 模块内部有电源输入、输出网络,镜像后要保持这些网络拓扑不变。
- 底层镜像后,需要考虑和其他底层器件的安全间距。
处理顺序建议是:先布局镜像,再走线,再覆铜。如果已经完成走线再镜像,已走线段不会跟随器件自动翻面,反而会留下很多碎线头,处理起来非常麻烦。
4.2 前置准备:布局分区与网络整理
在开始镜像前,先把设计环境准备好。
首先,在原理图中确认电源模块的输入输出网络。例如:
- 输入网络:+5V_IN、GND。
- 输出网络:+3V3、PGND。
- 控制网络:EN、FB。
接着,回到 PCB 编辑器中,用 Hilight 命令把这些网络高亮出来:
hilight在 Find 面板勾选 Nets,在画布中点击对应网络,让它们高亮显示。高亮的好处是镜像完成后,你可以快速确认这些关键网络是否仍然连接正确。
然后,使用菜单 Display → Color Visibility,把 BOTTOM 层的颜色打开。建议把底层器件的颜色设置成与顶层不同的色调,例如顶层器件的中心点在屏幕上以橘黄色显示,底层器件以青色显示,这样可以一眼分辨层级。
4.3 模块镜像步骤
第一步,在命令行输入 mirror。
第二步,在 Find 面板只勾选 Symbols,避免把走线、铜箔、板框选进去。
第三步,使用鼠标框选整个电源模块。框选时尽量从模块的左下角拉到右上角,把模块内所有器件都包含进去。如果模块内部混有无关器件,可以按住 Ctrl 键点击取消选中,或者使用右键 Temp Group 重新精修选区。
第四步,移动鼠标,把整个组件组拖到目标位置。在拖动的过程中,所有器件会一起移动,相对位置保持不变。
第五步,点击左键放置。放置后,打开层显示设置,你会发现这些器件的层面全部变成了 BOTTOM。
如果需要调整整个模块的角度,可以在放置完成后,选中全部器件,执行 Rotate,以某个器件为中心旋转。注意,旋转是围绕用户指定的原点进行的,建议旋转前先用某个定位器件作为参考点。
4.4 镜像后的走线与铜箔处理
模块镜像完成后,接下来是走线和覆铜。
如果模块内部网络需要从顶层跨接到底层,必须添加过孔。以 +5V_IN 为例,从顶层连接器引出的走线到达模块区域边缘后,需要打一个过孔,把信号引导到底层,再连接到模块底层的电源芯片引脚。
Allegro 中可以使用 Add → Connect 命令手动布线段,也可以使用 Auto Interactive 工具自动推挤布线。不过对于电源模块这种小区域,手动拉线效率更高,也更可控。
覆铜方面,底层电源模块区域建议单独设置 Copper Pour,网络指定为对应的电源网络或 GND。例如:
Shape → Global Dynamic Shape Parameters把动态铜箔参数设置好后,使用 Shape → Polygon 在电源模块区域绘制一个多边形,并指定网络 GND。完成后点击 Shape → Update All Shapes 刷新所有动态铜箔。
需要注意的是,底层电源模块的参考平面不再像顶层那样完整。如果这是一块四层板,底层和顶层之间的第二层是完整的 GND 平面,那么底层器件依然有良好回流路径;如果是双面板,底层走线需要特别注意回流路径长度,尽量让电源线、地线成对布线。
4.5 运行验证:DRC 检查与丝印检查
镜像操作结束后,必须做一轮完整的 DRC 检查。
在 Allegro 中,执行:
tools → DRC或者直接在命令行输入:
drc打开 DRC 面板后,建议先运行电气规则检查和间距规则检查。常见的检查项包括:
- 铜箔间距是否符合规则。
- 过孔和焊盘之间是否有短路风险。
- 丝印是否和焊盘重叠。
- 底层器件和板框是否保持净空距离。
DRC 通过后,再回到视觉层面检查一遍丝印。按下颜色显示面板,打开 BOTTOM 层的 Silkscreen Top 和 Silkscreen Bottom,确认底层器件丝印文字方向正确、位号清晰可读。如果发现有位号缺少或方向异常,可以使用菜单 Logic → Auto Rename 重新排列位号。
最后建议导出一份 DXF 或 PDF 布局图,发给结构工程师确认。结构工程师关心的是器件高度轮廓、连接器位置、定位孔距离,这些信息在镜像后特别容易出错,提前发送一份带尺寸标注的图纸可以避免很多返工。
5. 镜像在 PCB 设计中的高级应用
5.1 正反面布局的镜像对位
在双面布局项目中,正反面器件之间往往存在严格的“对位”关系。例如板子正反两面都有 USB 连接器时,为了走线短、装配一致,经常需要把两块连接器镜像到对应坐标。
这种情况下,我一般是先放好顶层连接器,记录它的坐标参考点,然后镜像放置底层对应器件,再使用坐标输入功能精确定位:
Command > mirror Select the symbol Command > x 300 400当执行 mirror 后输入坐标x 300 400,器件会以这个坐标为中心放置。正反面器件使用同一个 X/Y 坐标时,从装配角度看就形成了完美的镜像对位。
5.2 结构装配中的镜像避让
镜像器件时,不能只考虑电气连接,还要考虑机械装配空间。
例如,某块板子的背面有一块压铸金属件,或有一些塑胶卡扣。这时候镜像到底层的器件高度就会成为约束条件:贴片电容高度可能只有 0.6mm,而电解电容或电感高度可能达到 3mm 以上,如果正好放在金属件下方,装配时就会顶住。
所以在做模块镜像之前,我通常会:
- 把结构件的安装区域用 Outline 层画出来。
- 把高度超过 2mm 的器件按高度分类。
- 镜像后手动检查每个高器件是否落在结构限高区内。
这一步虽然耗时,但能避免打样后才发现装配干涉。
5.3 高速 PCB 设计中的镜像影响
高速 PCB 设计中,镜像操作同样有讲究。
以 DDR 或 PCIe 信号去耦电容为例,有些人习惯在芯片引脚附近放一排 0402 去耦电容,当顶层空间不够时,会把一部分电容镜像到底层。这时有一个关键指标:过孔到电容焊盘的距离。
信号经过过孔从顶层穿透到底层后,如果电容焊盘离过孔太远,去耦效果会明显下降,因为高频电流的回流路径变长了。所以镜像底层电容时,要尽量贴着对应芯片引脚的过孔放置,而不是镜像到模块的任意空位。
另外,镜像后的差分对走线需要重新检查等长。如果一个差分对要从顶层跨到底层,过孔结构本身就会带来额外的时延,建议在跨层位置添加回流地过孔,并重新做等长调整。
5.4 借助 DXF 和封装库处理镜像结构
在很多产品设计中,PCB 板框和关键器件的位置是由结构工程师用机械软件绘制后通过 DXF 导出的。Allegro 可以导入 DXF 文件作为结构参考:
File → Import → DXF导入后,DXF 中的结构线会放在指定层。如果你需要让某个模块镜像后与 DXF 中的器件轮廓对齐,可以先在 DXF 层绘制一个辅助参考线,然后使用镜像后的器件坐标对齐到该参考线,命令如下:
Command > x <坐标>这种方式特别适合处理连接器、按键、螺钉柱等需要与结构配合的器件。DXF 配合镜像操作,是完成复杂结构约束布局的实用组合。
6. 常见问题与排查思路
镜像操作本身并不复杂,但很多同学在实际操作时还是会遇到各种各样的异常。下面把高频问题整理成表格,方便快速查阅。
| 问题现象 | 常见原因 | 解决思路 |
|---|---|---|
| 镜像后器件还是显示在顶层 | 操作时执行的是 Rotate 而不是 Mirror | 在命令行明确输入 mirror,确认命令面板选项 |
| 镜像后器件“消失”看不见 | BOTTOM 层颜色显示被关闭 | 打开 Display Color Visibility,勾选 BOTTOM 层相关栏目 |
| 底层丝印变成镜像文字 | RefDes 文字层没有跟随器件层面切换 | 右键选择文本,使用 Mirror Text 修正 |
| 镜像后器件引脚方向不合常规 | 镜像翻转导致 Pin 1 位置改变 | 选中器件,旋转 90°/180°,再核对 pin 1 方向 |
| 模块镜像后走线残留大量碎线 | 镜像前已经完成布线 | 删除原有走线,重新布线,或先备份后再操作 |
| 镜像后 DRC 报大量间距错误 | 底层器件密度较高,间距规则与顶层不同 | 重新设置底层区域间距规则,或调整器件位置 |
| Allegro 启动提示授权异常 LMF-13015 / FlexNet Error(-15, 234) | License 服务未运行或环境变量不正确 | 重启 License 服务,检查 license 端口配置 |
| 4K 屏下界面显示截断 | 高分辨率下 Allegro 窗口缩放适配问题 | 调整系统缩放比例,或使用兼容性设置 |
下面再展开几个典型问题的排查思路。
第一个是“镜像后器件方向不对”。这个问题太常见了,根本原因是观察视角的混淆。Allegro 默认的顶视视角是从板子正上方看,底层器件被镜像后,顶视视角下底层器件的左右是反的。如果你需要像看板子底面一样观察底层,建议打开 Mirror 视角显示,或者把板子沿着 Y 轴翻转来检查。不要试图通过反复旋转器件来“纠正”镜像方向,那样只会越转越乱。
第二个是“模块镜像时选不中某些器件”。这通常是 Find 过滤面板勾选不对。镜像命令默认只作用于 symbol,如果某些器件被锁定或属于特殊类型,框选时会被跳过。遇到这种情况,先检查器件是否被锁,再检查 Find 面板中 Block、Symbol、Pin、Vias 等过滤项是否正确。
第三个是“镜像后网络短路”。在一些高密度电源模块中,镜像后器件翻面,原本在顶层靠走线连接的两个焊盘,在底层可能直接通过铜箔搭在一起。这种问题 DRC 能查出来一部分,但铜箔形态复杂时,DRC 可能不会立刻报错。建议镜像后使用 Show Measure 命令重新测量关键网络间距,必要时先移除电源区域铜箔再重新覆铜。
7. 最佳实践与工程建议
7.1 镜像前先备份,避免操作失误
镜像操作的一个特点是“动作小、影响大”。一个模块镜像下去,几十颗器件的层面全部变化,如果此时 Original 文件没有备份,后面想恢复就要逐个器件翻回,非常浪费时间。
我建议在每次大规模镜像之前,先执行一次工程备份。最简单的做法是复制一份 .brd 文件到备份目录。也可以在 Allegro 中使用 File → Save Copy As 保存一份带时间戳的副本。
另外,很多 Allegro 项目目录下会积累大量中间文件,例如 .bak、.tmp、.jrl 日志文件,长期不清理会让工程目录变得很乱,也容易影响打开速度。下面分享一个我自己常用的一键清理脚本:
@echo off rem 一键清理 Allegro 项目临时文件 rem 使用前请先关闭 PCB 工程并确认文件已备份 del /s /q *.bak del /s /q *.tmp del /s /q *.jrl del /s /q *.log echo 清理完成 pause使用前再次强调:请确认这些文件没有保留价值,尤其是 .bak 文件,如果它是你唯一的备份,不要在未复制的情况下删除。
7.2 用快捷键和 Skill 脚本固化镜像操作
对于需要频繁镜像的工程师,每次敲 mirror 命令虽然不慢,但总归多一步。你可以把镜像命令绑定到自定义快捷键上。
Allegro 的快捷键文件是 env 文件,以 24.1 版本为例,其路径通常位于:
D:\Cadence\SPB_Data\pcbenv\env在文件末尾添加一行自定义别名:
; 自定义快捷键:按下 M 直接执行 mirror 命令 alias M mirror保存文件后重启 Allegro,或者直接在命令行输入replay env重新加载,之后按 M 就能调出镜像命令。同理,也可以把 move、rotate、hilight 等命令配置成更容易按到的按键。
如果你熟悉 Skill 脚本,还可以把“选中器件→镜像→旋转 90°→放置”这一串动作封装成一个函数。下面是一个 Skill 脚本骨架示例,实际运行时需要根据你的 Allegro 版本调整函数名:
; 文件路径:D:\pcb_scripts\my_mirror.il ; 功能:对选中的所有器件执行镜像并自动旋转 90 度 ; 说明:Allegro Skill 脚本,需根据实际版本验证后使用 axlCmdRegister("my_mirror" 'my_mirror_cmd) defun( my_mirror_cmd () axlSetFindFilter(?enabled '(symbols) ?onButtons '(symbols)) axlAddSelectAll(?select) foreach(comp axlGetSelSet() axlDBChangeMirror(comp) ) axlClearSelSet() )Skill 脚本的威力在于可以批量处理重复劳动。如果你维护一个大型封装库,或者经常需要在多块板子上做同样布局,值得系统学一下 Skill,磨刀不误砍柴工。
7.3 镜像后的检查清单
项目生产过程中,最怕的不是镜像操作,而是镜像之后漏检查某个维度。下面这份清单是我每次镜像后都会过一遍的,分享给你参考:
| 检查维度 | 具体内容 | 完成状态 |
|---|---|---|
| 层面归属 | 所有目标器件是否已正确切换到 BOTTOM 层 | 是 |
| Pin 方向 | 每个电源模块的 Pin 1、Pin 2 是否与网络定义一致 | 是 |
| 丝印方向 | 底层丝印文字是否按底面视角正确镜像 | 是 |
| 位号完整性 | 模块内所有位号是否可读、无重叠 | 是 |
| 间距 | 底层器件与板边、结构件、铜箔间距是否满足规则 | 是 |
| 网络连接 | 镜像前后关键网络的拓扑是否一致 | 是 |
| 铜箔 | 动态铜箔是否刷新,网络名是否保持正确 | 是 |
| DRC | 距离规则与电气规则是否全通过 | 是 |
| 结构装配 | 高器件是否超出限高区域 | 是 |
可以把这个表格打印出来,每次做完镜像后逐项打勾。流程化之后,出错概率会大幅下降。
7.4 团队协作下的镜像操作规范
如果你在团队中负责 PCB 设计,镜像操作最好统一规范,避免评审时各说各话。
我比较推荐的做法是,在工程规范里明确以下几点:
- 顶层器件统一使用标准色显示,底层器件统一使用另一颜色,禁止随意修改显示模板。
- 每完成一次模块镜像,在工程变更记录中填写镜像时间、影响范围、是否重新布局布线。
- 不在已经完成布线的板子上直接做全局镜像,除非有完整备份和充分评审。
- 结构相关器件(连接器、按键、定位孔)的镜像必须经过结构工程师确认后再执行。
- 用于生产加工的光绘文件导出前,最后再做一次正反面视角对比检查,防止镜像遗漏。
这些规范看起来琐碎,但在多人协作项目中特别重要。PCB 设计最大的成本是返工,而返工往往就出在这些看似不起眼的细节上。
8. 总结与学习路线
镜像器件及模块,在 Cadence Allegro 的整套 PCB 设计流程里只是一个非常基础的操作,但它背后却串联了封装层面管理、丝印规则、布局思路、DRC 规则、生产装配等好几个知识块。真正理解了镜像,再回头看整块板子的布局,你会从一个“只会在单层摆器件”的状态,切换到“能看着整块板的正面和背面去思考”的状态,这其实是双面布局和四层 PCB 设计能力的一个重要台阶。
学完这篇文章,你至少应该掌握三件事:第一,能熟练使用 Mirror 命令完成单个器件和多个器件的镜像;第二,能把一个完整模块安全、规范地镜像到底层,并通过 DRC 检查;第三,知道镜像后要检查哪些项目,遇到问题去哪里排查。
下一步的学习路线,我建议这样安排:先把封装制作搞通,因为你镜像的每一个符号都来自封装库,封装引脚定义不清楚,镜像后必然出问题;然后学习 Cadence Allegro 中常用快捷键和 env 文件配置,把效率提上来;接着实践一遍四层 PCB 设计流程,理解正反面器件在不同层叠结构下的回流路径和参考平面;最后把 Gerber 文件导出一遍,对比正反面光绘层和底片文件,你会对“镜像”这个动作在生产端的意义有更深的理解。
如果这篇文章对你的实际工作有帮助,可以收藏备用,也欢迎在评论区聊聊你在镜像时踩过的坑。后续我会继续整理 Cadence Allegro 布局布线系列教程,包括模块复用、高速布线、Gerber 导出等实操内容。