ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

AD封装迁移Allegro:库路径、文件分流与验证避坑指南

AD封装迁移Allegro:库路径、文件分流与验证避坑指南

简介:面向使用 Altium Designer 与 Cadence Allegro 进行 PCB 设计的工程师及学习者,这份 docx 文档聚焦 AD 封装跨平台迁移到 Allegro 并生成可用封装的实际需求,适合需要复用既有器件库、减少重复建库工作的中初级设计人员参考。压缩包仅含 1 个 docx 文件,大小约 63KB,内容围绕封装导入流程、ASCII 中间文件处理、symbol 与 shape 及焊盘等库文件归位和后续调用检查展开,便于按文档核对路径与文件类型。该资料已有 1476 人学习,说明其在跨 EDA 工具封装转换场景中具有一定参考价值。读者可从中获得较完整的迁移思路、常见文件组织方式与结果验证要点,用于快速确认 AD 封装在 Allegro 中的可用性,提升库复用与设计衔接效率。

1. 装前先看:AD 封装进 Allegro 为什么常在库路径上翻车

AltiumDesigner AD Allegro 封装 迁移这件事,看起来只是把封装从一个软件搬到另一个软件,真正让人卡住的往往不是导入那一下,而是导入之后把 dra、psm、ssm、焊盘文件往库路径里放的那几步。某开发者把 AD 的封装导进 Allegro,导入日志没报红,库管理器里也能看到名字,结果一放置就空白;也有人焊盘全丢,只剩丝印线框。这类问题不解决,后面画板、出 Gerber 都不敢往下走。这套流程适合需要复用旧 AD 封装库的 PCB 设计人员,也适合刚接手跨软件迁移任务的运维式开发者,照着把路径、文件类型和验证顺序走一遍,能少返工。

2. 环境与版本:Altium Designer 导出端和 Allegro 导入端的准备清单

2.1 版本搭配:AD 的 ASCII 导出与 Allegro 的 CAD Translators 对不上会怎样

这套迁移不依赖某个固定版本号,但依赖两个能力同时存在:AD 侧能另存为 PCB ASCII File(.PcbDoc),Allegro 侧能走 Import -> CAD_Translators -> Altium pcb。不同年份的 AD 版本在“另存为”对话框里的文案不完全一样,有的显示 PCB ASCII File (.PcbDoc),有的只显示 PcbDoc,判断标准是文件内容为 ASCII 而不是二进制;如果另存为列表里只有二进制 PCB,说明当前安装或授权选项不完整,换一台装全的机器导出更省时间。

Allegro 侧同理,CAD Translators 不是每个安装配置都默认勾选。常见做法是先在菜单里找 File -> Import -> CAD Translators,再确认下面有 Altium pcb 这一项;如果整个 CAD Translators 菜单都不存在,不要硬猜命令,先检查安装组件里有没有选 CAD Translators。版本差异在这里表现为菜单层级和文案不同,但核心路径不变:AD 出 ASCII,Allegro 读 ASCII,再导出 Library。

我一般会把“版本搭配”理解成“文件格式搭配”,而不是追某个号。AD 导出的 ASCII 文件只要能保留封装名、焊盘号、层映射和原点信息,Allegro 的转换器就有机会读对;反过来,如果 AD 侧导出的是二进制 PCB,或者路径里带中文,Allegro 端再新也可能在日志里给出一堆看不懂的 warning。先把导出格式和路径这两件事卡死,比反复重装软件有效。

还有一个容易忽略的点:AD 和 Allegro 的库路径是两套体系。AD 里封装放在 .PcbLib 里,Allegro 里封装拆成 symbol 的 dra、psm,shape 的 dra、ssm,以及焊盘 pad。迁移不是“复制一个库文件”,而是把导入后生成的多类文件分流到不同目录。版本再新,如果这三类文件放错位置,库管理器照样找不到。

2.2 路径规划:中文目录、库路径和临时工作区怎么分

项目正文第一条就强调“另存到没有中文路径的地方”,这不是玄学,是转换器读路径时的血泪经验。AD 的 ASCII 文件、Allegro 的导入日志、生成的 dra/psm/ssm 文件,只要中间任何一层目录带中文或特殊符号,转换器可能在写文件时失败,也可能写成功但库索引不认。最稳妥的做法是单独建一个纯英文、无空格的工作区,把临时文件、导入输出、最终库文件分三层放。

我一般会这样分:工作区放 AD 的临时 PCB 和 ASCII 文件;导入输出目录放 Allegro 转换出来的原始文件;库目录放最终要挂到 Allegro 库路径里的 dra、psm、ssm 和焊盘。这样做的原因是,导入输出里往往混着 log、报告和中间文件,直接把这些一股脑塞进库路径,后面库管理器扫描时会变慢,也容易把旧版本文件覆盖掉。

# 建立纯英文工作区,避免中文路径和空格 WORK=/data/eda_work/ad2allegro mkdir -p "$WORK/ad_tmp" mkdir -p "$WORK/allegro_import" mkdir -p "$WORK/lib/symbol" mkdir -p "$WORK/lib/shape" mkdir -p "$WORK/lib/pad" mkdir -p "$WORK/logs" # 检查路径里是否混入中文或空格 echo "$WORK" | grep -nP '[^\x00-\x7F]|[[:space:]]' && echo "路径不合规" || echo "路径可用"

这段脚本的逻辑很直白:先固定一个工作区变量,再按“AD 临时区、Allegro 导入区、最终库区、日志区”拆目录。grep -nP那行用来检查非 ASCII 字符和空格,匹配到就提示路径不合规。参数上,-P是启用 Perl 正则,[^\x00-\x7F]表示非 ASCII 字符,[[:space:]]表示空白字符。实际使用时把/data/eda_work/ad2allegro换成你自己的纯英文路径即可,不要放在桌面或中文用户名目录下。

注意:路径检查不要只看最后一级目录,父目录带中文同样会出问题。尤其是 Windows 用户目录常带中文用户名,建议直接把工作区放到盘符根下的英文目录。

2.3 环境清单:装前要确认的软件项与文件命名约定

装前清单不需要列一长串软件,关键是确认三件事:AD 能打开待迁移封装所在的库;AD 能另存为 PCB ASCII File;Allegro 能新建 .brd 并找到 CAD Translators。这三件事缺一个,后面步骤都会变成无效劳动。我一般会先用一个最简单的两焊盘封装做试迁移,确认整条链路通了,再批量搬复杂封装。

文件命名也要提前约定。AD 里的封装名、Allegro 导入后生成的 symbol 名、最终库里的 dra 文件名,最好保持一致或只差可识别的前后缀。否则导入成功后在 Library Manager 里看到一堆相似名字,根本不知道哪个对应哪个。焊盘文件同理,焊盘号、焊盘名和封装里的焊盘要能对上,不然后面检查连接时会怀疑人生。

检查项合格标准不合格时的常见表现
AD 导出格式能选 PCB ASCII File(*.PcbDoc)只能存二进制,Allegro 导入报格式错误
工作区路径纯英文、无空格、无中文父目录导入中途失败或生成文件缺失
Allegro 转换器菜单中有 CAD Translators -> Altium pcb找不到导入入口,无法生成库文件
封装命名AD 名与 Allegro symbol 名可对应库里有文件但不知道对应哪个封装
焊盘命名焊盘号与封装焊盘一致放置后焊盘丢失或网络对不上

这张表不是让你一次性全打勾,而是出问题时按行回查。最常见的是路径和导出格式两项,先把这两项排掉,再去看 Allegro 转换器。

3. AD 侧导出:从空 PCB 到 PCB ASCII File 的完整操作

3.1 新建空 PCB:为什么不能直接在原工程里另存

项目正文的第一步是“新建 AD 的 PCB 文件,另存到没有中文路径的地方”,第二步才是“将要导入的封装放置到这个空的 PCB 上”。这个顺序不能反。直接在原工程里另存,原 PCB 上的走线、铺铜、板框、网络标签都会跟着进 ASCII 文件,Allegro 转换时会把无关对象一起读进去,轻则导入变慢,重则库导出时混入不属于封装的图元。

新建空 PCB 的好处是隔离。空板上只放你要迁移的封装,转换器读到的就是“一个干净板子上摆了几个封装”,导出 Library 时更容易把 symbol、shape、pad 分清楚。我一般会新建一个临时工程,PCB 文件命名成ad2allegro_tmp.PcbDoc这类可识别的名字,保存到前面建好的ad_tmp目录,确认路径里没有中文再继续。

操作步骤不复杂,但每一步都要确认:

  1. 在 AD 中新建 PCB 文件,保存到纯英文工作区的ad_tmp目录。
  2. 打开待迁移封装所在的库,把目标封装放置到空 PCB 上。
  3. 如果一次迁移多个封装,尽量在空板上按网格摆开,不要重叠。
  4. 放置后检查封装原点、焊盘号、丝印层是否正常。
  5. 保存 PCB,准备另存为 ASCII 格式。

这里有一个细节:封装在空板上的摆放位置不影响最终库文件,但影响你在 AD 里核对。摆得太挤,丝印重叠,后面看不清哪个焊盘对应哪个号。我会按 10mm 或 20mm 间距摆开,数量多的时候分批导,别一张空板塞几百个封装,转换日志会变得很难读。

3.2 放置封装:从库中调用和手工摆放的差别

从库中调用封装,和手工在 PCB 上画图元,在转换器眼里是两回事。库调用出来的封装带有封装名、焊盘属性和层信息,Allegro 导入后更容易生成完整的 symbol 和 pad;手工画的线框和焊盘,转换器可能只当成普通图元,导出 Library 时 symbol 里是空的。所以这一步必须从 AD 的库面板放置,不要为了省事复制粘贴一堆线和焊盘。

放置时还要注意封装原点。AD 里封装原点如果偏离焊盘中心太远,导入 Allegro 后放置会感觉“抓不住”,明明鼠标点在封装中心,实际元件飞到别处。常见做法是先在 AD 的封装库编辑器里确认原点在 1 脚附近或几何中心,再放到空 PCB 上。如果原封装原点本来就乱,迁移后在 Allegro 里重新设原点也可以,但会增加一步手工调整。

多个封装一起迁移时,我会在 AD 里给每个封装加一个临时文本标号,比如U1_TMP、J1_TMP,导入后对照日志确认哪个成功、哪个失败。文本本身不会被当成封装的一部分,但能在导入输出里留下可检索的痕迹。这个做法不算标准流程,但对批量迁移很实用,尤其是封装名相似的时候。

3.3 另存为 PCB ASCII File:格式选择与路径检查

放好封装后,走 File -> Save As,在保存类型里选 PCB ASCII File(*.PcbDoc)。不同 AD 版本的文案可能略有差异,认两个特征:一是类型里带 ASCII,二是扩展名是.PcbDoc。不要选二进制 PCB 格式,也不要手工把二进制文件改扩展名,Allegro 的转换器读的是文件内容,不是只看后缀。

保存路径必须落在纯英文工作区。保存完先别急着开 Allegro,回到文件管理器确认三件事:文件确实生成、大小不为 0、路径里没有中文和空格。如果 AD 保存时提示“文件被占用”或“路径无效”,先换目录,不要反复点保存,容易生成半截文件。

# 检查 AD 导出的 ASCII 文件是否存在、是否为空、路径是否合规 ASCII=/data/eda_work/ad2allegro/ad_tmp/ad2allegro_tmp.PcbDoc test -s "$ASCII" && echo "文件存在且非空" || echo "文件缺失或为空" file "$ASCII" echo "$ASCII" | grep -nP '[^\x00-\x7F]|[[:space:]]' && echo "路径不合规" || echo "路径可用"

这段检查脚本里,test -s判断文件存在且大小大于 0,file用来看系统识别出的文件类型,最后一行仍然检查路径合规性。ASCII变量换成你实际保存的文件名。逻辑说明:先确认文件真的写出来了,再确认路径没坑,最后才去 Allegro 里导入。参数上没有什么复杂选项,关键是别跳过test -s,空文件导入时 Allegro 有时只给一个很模糊的报错。

注意:如果 AD 保存时自动补了别的后缀,比如.PcbDoc变成.PcbDoc.PcbDoc,在 Allegro 导入前把多余后缀去掉,保持扩展名和项目正文一致。

3.4 导出后自检:封装原点、焊盘号和丝印层

ASCII 文件生成后,AD 侧的工作还没完。至少回看三件事:封装原点是否合理、焊盘号是否连续且与原理图符号对得上、丝印层是否在 Allegro 能识别的层上。AD 的丝印层名和 Allegro 的层名不是一一对应,转换器会做映射,但如果丝印画在机械层或自定义层上,导入后可能看不到。

焊盘号是最容易出问题的地方。AD 里焊盘号可以是数字、字母或组合,Allegro 的 pad 文件对命名更敏感。如果封装里有A1、A2这类焊盘号,导入后要重点看 pad 文件有没有生成。常见做法是先在 AD 里把明显不规范的焊盘号改成纯数字或简单字母组合,再导出 ASCII,能减少转换器的歧义。

原点检查可以在 AD 的 PCB 面板里看封装坐标,也可以导入后在 Allegro 里重新设。我的习惯是 AD 侧先看一眼,如果原点偏得离谱就修;偏一点不影响,Allegro 里还能调。丝印层则建议在 AD 里确认器件轮廓线在顶层丝印或底层丝印,不要散落在机械层,否则导入后只剩焊盘没有外框,检查封装时很别扭。

4. Allegro 侧导入:CAD Translators 生成 symbol、shape 与焊盘

4.1 新建 .brd 工程:Import 菜单里的 CAD_Translators 怎么走

打开 Allegro PCB,先新建一个.brd工程,保存到纯英文工作区。这个工程是导入用的临时工程,不需要画板框,也不需要放任何器件。新建完成后走 Import -> CAD_Translators -> Altium pcb,选择 AD 导出的 ASCII 文件。菜单名在不同 Allegro 安装里可能显示为 CAD Translators 或 CAD Translator,认“Altium pcb”这个子项即可。

导入对话框里通常要指定输入文件和输出目录。输入文件就是 AD 的.PcbDocASCII 文件,输出目录建议指到前面建好的allegro_import,不要直接指到最终库目录。原因是转换器会在输出目录里生成一批中间文件和日志,直接写进库目录会污染库索引。导入前确认输出目录为空或至少没有同名旧文件,避免新旧文件混在一起。

如果菜单里找不到 Altium pcb,先不要怀疑文件。常见做法是检查 Allegro 安装时是否勾选了 CAD Translators 组件,或者当前授权是否包含该转换器。另一个检查点是工程路径,如果.brd工程本身放在中文路径下,转换器也可能在启动时失败。先把工程和输出目录都放到纯英文路径,再试一次。

4.2 导入日志:warning、error 和 log 文件的位置

导入开始后,Allegro 会写日志。日志里出现 warning 不一定是失败,出现 error 也不一定立刻中断,但两者都要看。常见的 warning 包括层映射缺失、文本字体替换、不支持的图元被忽略;常见的 error 包括文件打不开、路径无权限、焊盘写入失败。判断标准不是“有没有 warning”,而是“封装有没有生成、焊盘有没有丢、库能不能加载”。

我一般会先看输出目录里有没有生成 symbol 的 dra、psm,shape 的 dra、ssm,以及 pad 文件。如果这些文件都在,再回头看日志里的 warning 是否影响使用;如果文件缺失,直接按 error 和最后几行日志排查。日志文件建议单独复制到logs目录留档,尤其是批量迁移时,后面出问题可以对照是哪一次导入留下的。

# 查看导入输出目录里生成了哪些文件,按类型粗分 IMPORT=/data/eda_work/ad2allegro/allegro_import find "$IMPORT" -maxdepth 2 -type f | sed 's/.*\.//' | sort | uniq -c find "$IMPORT" -maxdepth 2 -type f \( -name '*.dra' -o -name '*.psm' -o -name '*.ssm' -o -name '*.pad' \) -print

这段脚本的逻辑是先用find列出输出目录里的文件,用sed取扩展名,再用sort | uniq -c统计每种扩展名出现多少次;第二条find专门筛出 dra、psm、ssm、pad 四类关键文件。参数上,-maxdepth 2限制只看到两层目录,避免日志目录太深刷屏;-type f只列文件。执行后如果.dra和.psm数量对不上,说明 symbol 生成不完整,要回看日志。

注意:日志里的 warning 不要一次性全忽略。层映射和焊盘相关的 warning 优先看,文本字体和无关图元的 warning 可以后看。顺序反了容易在无关信息里耗时间。

4.3 导出 Library:symbol、shape、pad 三类文件怎么分流

导入完成后,在 Allegro 里导出 Library。项目正文写得很具体:symbol 的 dra 文件以及 log 和 psm 文件放入自定义的封装路径;shape 的 dra 文件以及.ssm文件一起放入自定义 shape-symbol 路径;焊盘放入焊盘路径。这一步是整套迁移的落地核心,文件放错目录,前面导入再成功也白搭。

我一般会按“先分类型、再分版本”的顺序处理。先把输出目录里的文件按扩展名筛选出来,symbol 相关放lib/symbol,shape 相关放lib/shape,pad 放lib/pad。log 文件我会单独放logs留档;如果团队规范要求跟 dra、psm 放在同一封装路径,至少不要让 log 参与库索引,也不要用 log 覆盖同名文件。这样做的原因是 Allegro 的库扫描会按目录找特定扩展名,混入无关文件不会立刻报错,但会让后面排查变慢。

# 将导入输出按 symbol、shape、pad 分流到最终库目录 SRC=/data/eda_work/ad2allegro/allegro_import LIB=/data/eda_work/ad2allegro/lib # symbol:dra、psm find "$SRC" -type f \( -name '*.dra' -o -name '*.psm' \) -exec cp -v {} "$LIB/symbol/" \; # shape:dra、ssm;如果 shape 的 dra 与 symbol 的 dra 同名,先确认来源再复制 find "$SRC" -type f \( -name '*.dra' -o -name '*.ssm' \) -exec cp -v {} "$LIB/shape/" \; # 焊盘:pad 或 pad-stamp 相关文件 find "$SRC" -type f -name '*.pad' -exec cp -v {} "$LIB/pad/" \; # 日志单独留档,不参与库索引 find "$SRC" -type f -name '*.log' -exec cp -v {} "$WORK/logs/" \;

这段脚本里,SRC是导入输出目录,LIB是最终库目录。三条find分别按扩展名筛 symbol、shape、pad,-exec cp -v把文件复制过去并打印复制过程,方便核对数量。-v不是必须,但批量迁移时很有用,能看到哪个文件被复制。最后一条把 log 单独放到logs。参数上,\( ... \)是 find 的条件分组,-o表示或,写的时候注意空格和转义。

分流完成后不要急着打开 Library Manager,先核对文件数量。symbol 的 dra 和 psm 通常成对出现,shape 的 dra 和 ssm 也要能对应,pad 文件数量至少要和封装里用到的焊盘类型对得上。数量对不上时,回导入输出目录看是不是有文件还在子目录里,或者转换器根本没生成。

4.4 库路径配置:把 dra、psm、ssm 放到正确目录

Allegro 的库路径配置有几个入口,常见做法是在用户环境变量或库管理器里加路径。不管用哪种方式,原则是:symbol 路径指向lib/symbol,shape 路径指向lib/shape,pad 路径指向lib/pad。不要把三个目录合成一个大目录,也不要让 symbol 路径去扫描 shape 目录,扫描范围越大,库管理器刷新越慢,重名时还容易抓错文件。

路径配置完成后,打开 Library Manager 刷新库列表。刷新后先看封装名有没有出现,再看预览是否正常。预览空白通常不是路径没配好,而是 symbol 的 dra 或 psm 缺失,或者 shape 没找到。放置时找不到封装,则可能是库路径只加了顶层目录,没有加到具体子目录。配置原理不复杂:Allegro 按路径找特定扩展名,路径指到哪一层,它就在哪一层找。

如果团队有多套库,建议在路径里加版本目录,比如lib_v1/symbol、lib_v2/symbol,迁移时只改环境变量指向,不要直接覆盖旧库。这样做的原因是封装迁移难免有返工,保留旧版本能快速回退。文件名也尽量带可识别后缀,比如RJ45_AD2AL,避免和 Allegro 原生库里的同名封装冲突。

5. 避坑排查:AD 转 Allegro 封装迁移的 5 个高频故障

5.1 现象:导入后库里有名字但预览空白

现象是 Library Manager 里能看到封装名,点预览却一片空白;放置到板上也只有一个小点或什么都没有。原因通常是 symbol 的 dra 或 psm 没有复制到 symbol 路径,或者复制了但文件名被改过,库索引对不上。另一种原因是 AD 空 PCB 上放的根本不是库封装,而是散落图元,转换器没有生成有效 symbol。

解决顺序是:先回allegro_import看有没有 dra、psm;再看lib/symbol里文件名是否和库管理器显示的名字一致;最后确认 AD 侧是从库面板放置的封装。如果 dra 存在但 psm 缺失,重新导入一次,导入时不要中途关窗口。文件名不一致时,以库管理器里显示的名字为准,把文件改成一致或重新配置路径,不要靠猜。

5.2 现象:焊盘丢失或焊盘号对不上

现象是封装外框和丝印都在,焊盘没了,或者焊盘数量对但编号错位。原因常见于 AD 里焊盘号不规范、焊盘类型不被转换器识别,或者 pad 文件没有放到焊盘路径。焊盘号对不上时,先看导入日志里有没有 pad 相关 warning,再看lib/pad里有没有对应文件。

解决时先把 AD 封装里的焊盘号改成简单数字或字母组合,重新导出 ASCII 再导入。pad 文件缺失时,检查焊盘路径是否指向lib/pad,以及文件扩展名是不是.pad。如果焊盘数量对但位置偏,通常是 AD 封装原点偏移导致,回 AD 里调整原点或导入后在 Allegro 里重新定位。不要用手工画焊盘的方式硬补,后面 DRC 和网表都会出问题。

5.3 现象:shape 文件缺失,封装只剩线框

现象是封装能放置,但器件外框或异形焊盘只剩线框,没有填充形状。原因通常是 shape 的 dra 或.ssm文件没有放到 shape-symbol 路径,或者导入时 shape 生成失败。项目正文特意把 shape 的 dra 和.ssm放在一起,就是因为这两类文件要配套使用。

解决时先查lib/shape里 dra 和 ssm 是否成对,再看库路径里的 shape 路径有没有指到这一层。如果 ssm 缺失,回导入输出目录找,找不到就重新导入。若是异形焊盘,还要确认 AD 里的焊盘形状没有被转换成不支持的图元。shape 路径不要和 symbol 路径混用,混用后库管理器可能抓到同名 dra,但抓不到 ssm。

5.4 现象:导入卡住或报路径错误

现象是选择 ASCII 文件后导入进度卡住,或者直接弹路径错误。原因多数是路径里有中文、空格、特殊符号,或者输出目录没有写权限。AD 导出文件放在中文桌面、Allegro 工程放在中文用户目录,都会触发这类问题。另一个原因是 ASCII 文件本身是二进制改了后缀,转换器读不进去。

解决时把 AD 文件、Allegro 工程、输出目录全部迁到纯英文工作区,确认输出目录可写。用前面的file命令看文件类型,用test -s看文件是否为空。路径错误不要反复重试,先换目录再试。导入卡住时不要强杀进程,等日志写完,日志最后几行往往能看到卡在哪个文件。

5.5 现象:放置时找不到封装,库刷新无效

现象是 Library Manager 里能看到,但放置命令里搜不到;或者刷新库以后还是旧列表。原因通常是库路径只配了顶层目录,没有配到 symbol 子目录;或者路径顺序里旧库排在前面,同名封装被旧库覆盖。还有一种情况是库管理器缓存没刷新,重启 Allegro 后才生效。

解决时先把库路径逐层指到lib/symbol、lib/shape、lib/pad,不要只指lib。再检查路径顺序,把新迁移的库放到前面。刷新无效时关掉 Allegro 重新打开,或者换一个临时工程试放置。若仍然找不到,用文件名搜索确认 dra 文件真的在路径里,别只看库管理器显示的名字。库管理器显示名和文件名不一致时,以实际文件为准去排查。

6. 验证跑通:用最小 Demo 板检查封装库是否真正可用

6.1 加载库:Library Manager 刷新与预览

导入和分流做完后,不要直接上正式板。新建一个最小 Demo 板,只做验证用。打开 Library Manager,把 symbol、shape、pad 三条路径加进去,刷新库列表。刷新后逐个点开迁移过来的封装,看预览是否完整:焊盘、丝印、外框、原点标记都要能看到。预览空白或只剩线框,回第 5 章对应条目排查,不要带着问题往下走。

预览通过后,把封装放置到 Demo 板上。放置时注意鼠标抓取点是否在封装原点附近,如果偏得很远,说明原点有问题。放置后不要急着布线,先做一次器件对齐和焊盘检查。这个阶段的目标不是画板,而是确认“库里的封装能放、能看、能选中”。

6.2 放置、DRC 与焊盘核对

在 Demo 板上放几个迁移封装,给焊盘分配临时网络,跑一次 DRC。DRC 重点看两类问题:焊盘间距报错和丝印压焊盘。焊盘间距报错可能是 AD 和 Allegro 的焊盘尺寸换算差异,也可能是焊盘文件本身不对;丝印压焊盘则多半是 AD 丝印层映射到 Allegro 后位置偏移。两类问题都要回封装库修,不要在 Demo 板上手工挪丝印掩盖。

焊盘核对我会用最笨的办法:对照 AD 原封装和 Allegro 放置后的封装,数焊盘数量、看焊盘编号、量关键间距。数量对不上回 pad 路径查,编号对不上回 AD 改焊盘号,间距偏差大回 AD 看封装原点或焊盘坐标。这个办法不快,但比后面正式板返工便宜。

验证项通过标准失败时先看哪里
库预览焊盘、丝印、外框完整symbol 的 dra/psm、shape 的 dra/ssm 是否在路径
放置抓取鼠标抓取点在封装原点附近AD 封装原点是否偏移
焊盘数量与 AD 原封装一致pad 文件是否缺失、焊盘号是否规范
DRC无焊盘间距和丝印压焊盘错误焊盘尺寸、丝印层映射
库刷新重启后仍能找到封装库路径是否指到子目录、路径顺序

6.3 复核习惯:每次迁移留一份对照表

我现在的习惯是每次迁移都留一份对照表,列 AD 封装名、Allegro symbol 名、dra 文件名、psm 文件名、shape 的 ssm 文件名、pad 文件名和验证结果。批量迁移时这张表比日志好用,出问题能直接定位到是哪一类文件没跟上。表不用复杂,一个表格文件就够,关键是每次都填。

从那以后我每次做 AD 转 Allegro 的封装迁移,都强制走一遍“纯英文工作区、空 PCB 放置、ASCII 导出、CAD Translators 导入、三类文件分流、Demo 板验证”的顺序,哪怕只迁一个封装也不跳步。跳步省下的几分钟,后面往往要用几小时去查焊盘和 shape。希望帮到你。这套流程和对照表我整理在资源文档里,按项目说明获取即可,照着走一遍就能把 AD 封装在 Allegro 里真正用起来。

本文还有配套的精品资源,点击获取

返回列表