☰
PADS、AD与Cadence互转实战:原理图与PCB跨EDA工具迁移指南
2026/10/19 10:03:06 网站建设 项目流程

简介:这份文档面向电子设计自动化(EDA)工程师与硬件开发者,聚焦PADS、Altium Designer(AD)与Cadence三大主流工具之间的设计文件互转难题,帮助读者打通原理图与PCB在不同平台间的迁移路径。资源为单个docx文档,压缩包约1.11MB,内容按转换方向分章组织,涵盖PADS转AD、AD转Cadence、AD转PADS、Cadence转PADS四类场景,并细分原理图与PCB两条支线,给出具体操作流程与关键参数设置。其中涉及PADS logic导出TXT、PADS layout导出asc、AD另存为DSN、PADS layout Translator转换选项、Allegro转PADS的环境变量配置与skill脚本调用等实操要点,还提示了泪滴选项对转换速度的影响及导入后修复、Ctrl+B查看文件等排错细节。目前已有4864人学习下载,适合需要跨平台迁移设计文件、减少重复绘制工作的中高级硬件工程师参考。

1. 跨 EDA 工具迁移:为什么 PADS、AD 和 Cadence 的互转总让人头疼

接手外包 PCB 项目时,最怕的不是布线密度高,而是客户甩过来一个.pcb或者.brd文件,轻描淡写地说“你帮我改改,顺便转成我们公司用的格式”。你打开一看,PADS 的、Altium Designer 的、Cadence Allegro 的,三种格式凑齐了。不同 EDA 工具之间的数据互转,从来不是点一下“另存为”那么简单。图层映射、网络表重建、封装库匹配、铺铜数据丢失,每一步都可能埋雷。这份《PADS、AD 和 Cadence 相互转换》文档,就是一份实打实的操作记录,覆盖了 PADS 转 AD、AD 转 Cadence、AD 转 PADS、Cadence 转 PADS 四条主要路径,每条路径都拆成了原理图和 PCB 两个维度。它适合谁?适合那些手头同时维护多套 EDA 环境、需要频繁交付不同格式设计文件的硬件工程师和 PCB Layout 人员。如果你只用一个工具走到黑,这份文档可能用不上;但只要涉及跨团队协作、旧项目迁移或者客户指定格式交付,它就是一份能帮你省下大量试错时间的参考。

2. PADS 与 AD 双向转换:从 TXT 导出到 ASC 导入的完整链路

PADS 和 Altium Designer 之间的转换,是这份文档里步骤最细的部分。核心思路是利用 PADS 的 ASCII 导出功能和 AD 的导入向导,把二进制格式转成中间文本格式,再由目标工具解析重建。原理图走 TXT 路线,PCB 走 ASC 路线,两条线分开处理,互不干扰。

2.1 PADS Logic 转 AD 原理图:TXT 导出与导入向导

PADS Logic 的原理图不能直接存成 AD 能识别的格式,必须先用 PADS 自己的 ASCII 导出功能,把设计打散成文本描述。操作入口在 PADS Logic 的“文件”菜单里,选择“导出”,文件类型选 TXT,版本号选 2005。这个版本号很关键,选高了 AD 的导入器可能解析不了,选低了又可能丢属性。2005 是兼容性最好的一个版本,文档里明确写了这个参数。

导出完成后,打开 AD6.9 或更高版本,走“文件 → 导入向导”,在文件类型列表里找到“PADS ASCII Design And Library Files”。选中刚才导出的 TXT 文件,后面几步全部默认下一步,直到完成。AD 会自动解析网络表、元件标号和引脚连接关系,重建出原理图页面。

# 这不是命令行操作,但用伪代码描述一下流程逻辑 # 步骤 1:PADS Logic 导出 File -> Export -> 选择 TXT 格式 -> 版本选 2005 -> 保存为 design.txt # 步骤 2:AD 导入 File -> Import Wizard -> 选择 "PADS ASCII Design And Library Files" -> 选中 design.txt -> Next 直到 Finish

逻辑说明:PADS 导出的 TXT 文件里包含了元件列表、网络连接、页面层次等结构化信息。AD 的导入器读取这些信息后,会尝试匹配自己的元件库。如果 PADS 里用的元件在 AD 库中没有对应项,导入后会显示为占位符,需要手动替换。参数方面,版本号 2005 是文档指定的,不要随意改动。导入过程中如果提示“未找到元件”,先检查 AD 的集成库是否完整,再检查 PADS 导出的 TXT 里元件属性是否为空。

2.2 PADS Layout 转 AD PCB:ASC 导出与泪滴选项的取舍

PCB 转换比原理图多了一层物理结构,图层、焊盘、过孔、铺铜都要映射。PADS Layout 导出 ASC 文件时,版本同样选 2005。文档里特别提醒了一个细节:泪滴(Teardrops)选项最好不要勾选。原因很直接,泪滴数据在 ASC 文件里会生成大量额外的线段和填充区域,AD 导入时解析这些数据非常耗时,严重时会让导入过程卡死或者直接崩溃。不勾泪滴,转换速度正常,导入后 AD 里可以重新添加泪滴。

导出 ASC 后,在 AD 里走同样的导入向导,选择 ASC 文件,一路下一步。导入完成后,重点检查三个地方:图层是否对应(PADS 的顶层、底层、丝印层、阻焊层是否映射到了 AD 的对应层)、铺铜是否完整(有时候铺铜会变成孤立的填充块)、过孔和焊盘尺寸是否一致。

# PADS Layout 导出 ASC 的关键设置 File -> Export -> 选择 ASC 格式 -> 版本选 2005 -> 勾选需要导出的层 -> 取消勾选 Teardrops -> OK # AD 导入 File -> Import Wizard -> 选择 ASC 文件 -> Next 直到 Finish

逻辑说明:ASC 文件是 PADS 的 ASCII 格式 PCB 描述,包含了坐标、层号、线宽、孔径等物理参数。AD 导入器根据这些参数重建 PCB 文档。泪滴不勾选是为了减少解析负担,这是文档里明确给出的经验。导入后如果发现某些层是空的,回到 PADS 导出界面,确认那些层是否被勾选导出。常见坑是阻焊层和助焊层搞混,导致 AD 里看到的焊盘开窗不对。

2.3 AD 转 PADS:原理图绕道 OrCAD,PCB 走 Translator

AD 转 PADS 分两条路。原理图不能直接转,文档给出的路径是 AD → OrCAD → PADS Logic。先在 AD 里把原理图另存为 DSN 格式,注意要勾选“处理所有组件”,否则有些元件会丢失。然后用 OrCAD 打开这个 DSN 文件,再在 PADS Logic 里导入 OrCAD 的 DSN。这条链路多了一步,但兼容性最好。

PCB 转换相对直接,用 PADS 自带的 Layout Translator。打开 Translator,添加 AD 的 PCB 文件,选择保存位置,转换选项选“Protel/Altium”,点击转换。完成后打开 PADS Layout,导入生成的 .PCB 文件,执行“修复所有”。如果导入后看不到文件,按 Ctrl+B 缩放全图,通常就能显示出来。

# AD 转 PADS PCB 流程 1. 打开 PADS Layout Translator 2. Add File -> 选择 AD 的 .PcbDoc 文件 3. 选择输出目录 4. 转换选项选 Protel/Altium 5. 点击 Translate 6. 打开 PADS Layout -> File -> Import -> 选择生成的 .PCB 7. 修复所有 -> Ctrl+B 查看

逻辑说明:Translator 是 PADS 官方提供的转换工具,专门处理其他 EDA 格式到 PADS 的映射。转换选项选 Protel/Altium 是因为 AD 的底层数据结构和 Protel 一脉相承。导入后执行“修复所有”是让 PADS 重新计算网络连接和设计规则。Ctrl+B 是 PADS 的缩放快捷键,导入后视图可能停留在空白区域,按一下就能看到板子。参数方面,转换选项不要选错,选成其他格式会导致层映射混乱。

3. AD 与 Cadence 互转:DSN 另存为与 Allegro 的间接路径

AD 和 Cadence 之间的转换,文档里给出的方案偏向“绕行”。原理图可以通过 DSN 格式直接过渡,PCB 则没有直通车,必须借道 PADS 或者 OrCAD。这种设计不是偷懒,而是因为 Allegro 的 PCB 数据结构封闭性较强,直接解析 AD 的二进制格式风险太高,中间加一层 PADS 做缓冲,反而更稳定。

3.1 AD 原理图转 OrCAD:Save Project As 的 DSN 选项

在 AD 里打开要转换的原理图工程,选择“文件 → Save Project As”,在保存类型里找到 DSN 格式。文档强调要勾选“处理所有组件”,这个选项决定了 AD 是否把所有元件属性、参数、封装信息都写入 DSN 文件。不勾的话,转换后的 OrCAD 原理图可能只剩图形符号,网络标号和元件值全丢。

保存完成后,打开 Cadence 的 Design Entry CIS(也就是 OrCAD Capture),直接打开这个 DSN 文件。OrCAD 会解析 AD 写入的 DSN 结构,重建原理图页面。转换完成后,重点核对网络标号是否一致、电源和地网络是否连通、差分对是否保留。

# AD 转 OrCAD 原理图 File -> Save Project As -> 保存类型选 DSN -> 勾选 "处理所有组件" -> 保存 # OrCAD 打开 Design Entry CIS -> File -> Open -> 选择 DSN 文件

逻辑说明:DSN 是 OrCAD 的原生原理图格式,AD 内置了导出 DSN 的功能,但导出质量取决于“处理所有组件”这个选项。勾选后,AD 会把元件属性、引脚映射、网络连接全部写入。参数方面,DSN 版本不需要手动选,AD 会自动匹配当前 OrCAD 兼容的版本。常见坑是 AD 里的自定义元件在 OrCAD 里找不到对应符号,需要提前在 OrCAD 库里建好。

3.2 AD PCB 转 Allegro:借道 PADS 的间接方案

文档里写得很直白:AD PCB 转 Allegro 的常用方法是 AD → PADS → Allegro。先按第 2.3 节的步骤把 AD 的 PCB 转成 PADS 格式,然后在 PADS 里导出 ASC 文件,再用 Allegro 的导入工具读取 ASC。Allegro 对 ASC 格式的支持比较成熟,图层映射和网络重建的成功率比直接读 AD 文件高得多。

这条路径多了一步,但每一步都有成熟的工具支持。PADS 的 Translator 负责 AD 到 PADS 的映射,PADS 的 ASC 导出负责生成 Allegro 能读的中间文件,Allegro 的导入器负责最终重建。整个链路里,PADS 充当了格式翻译器的角色。

# AD -> PADS -> Allegro 流程 # 第一步:AD 转 PADS(参考 2.3 节) # 第二步:PADS 导出 ASC PADS Layout -> File -> Export -> 选择 ASC -> 版本 2005 -> 导出 # 第三步:Allegro 导入 ASC Allegro -> File -> Import -> CAD Translators -> PADS -> 选择 ASC 文件

逻辑说明:Allegro 的 PADS 导入器读取 ASC 文件后,会按照 Allegro 的层叠结构重新映射。参数方面,ASC 版本选 2005 是文档指定的,不要改。导入后检查焊盘堆叠和过孔定义,Allegro 的焊盘命名规则和 PADS 不同,可能需要手动调整。常见坑是铺铜在转换后变成静态铜,需要重新灌注。

4. Cadence 转 PADS:环境变量配置与 Skill 脚本加载

Cadence 转 PADS 是这份文档里技术含量最高的一段,尤其是 Allegro 转 PADS Layout,涉及环境变量、Skill 脚本复制和命令行调用。OrCAD 转 PADS Logic 相对简单,降版本存 DSN 再导入就行。Allegro 转 PADS 则需要提前配置好转换环境,否则 Skill 脚本根本跑不起来。

4.1 OrCAD 转 PADS Logic:降级到 16.2 再导入

OrCAD 的原理图不能直接导入 PADS Logic,需要先降版本。在 OrCAD 里打开 DSN 文件,选择“文件 → Save As”,版本选 16.2。这个版本是 PADS Logic 导入器能识别的最高版本,选高了会提示格式不支持。保存后,打开 PADS Logic,选择“文件 → 导入”,选中降级后的 DSN 文件,等待转换完成。

# OrCAD 转 PADS Logic 1. OrCAD Capture -> File -> Save As -> 版本选 16.2 -> 保存 2. PADS Logic -> File -> Import -> 选择 DSN 文件 -> 等待完成

逻辑说明:PADS Logic 的导入器对 DSN 版本有上限要求,16.2 是文档验证过的兼容版本。降级保存时,OrCAD 会重新组织内部数据结构,去掉高版本特有的属性。参数方面,不要尝试用 17.x 或更高版本直接导入,大概率失败。导入后检查元件标号和网络标号是否完整,如果有缺失,回到 OrCAD 确认降级时是否丢失了属性。

4.2 Allegro 转 PADS Layout:三个环境变量与 Skill 脚本

这是整份文档里最复杂的一步。Allegro 转 PADS 依赖 PADS 自带的 Skill 脚本,而 Skill 脚本要正常运行,必须先配置三个环境变量。

第一个变量:AEX_BIN_ROOT,值指向 PADS 安装目录下 translators 的 bin 文件夹。比如C:\MentorGraphics\9.5PADS\SDD_HOME\translators\win32\bin。这个变量告诉 Allegro 去哪里找转换工具的可执行文件。

第二个变量:AEX_ENABLE_JOBPREFS_LAYER_FIX,值设为 1。这个变量启用图层修复功能,转换过程中自动处理层映射冲突。

第三个变量:Home,值指向 Cadence 的 pcbenv 文件夹所在目录。比如C:\Cadence。这个变量让 Allegro 知道去哪里加载 Skill 脚本和用户配置。

配置完环境变量后,把 PADS 安装目录下translators\skill_scripts里的所有文件复制到 Allegro 的 pcbenv 目录下。文档里特别强调“记住是最后一个 pcbenv 文件下”,因为 Cadence 的目录结构里可能有多层 pcbenv,要找到实际存放用户配置的那个。

# 环境变量配置(Windows 用户变量) AEX_BIN_ROOT = C:\MentorGraphics\9.5PADS\SDD_HOME\translators\win32\bin AEX_ENABLE_JOBPREFS_LAYER_FIX = 1 Home = C:\Cadence # 复制 Skill 脚本 源目录:C:\MentorGraphics\9.5PADS\SDD_HOME\translators\skill_scripts 目标目录:D:\Cadence\SPB_Data\pcbenv\pcbenv

逻辑说明:Skill 是 Cadence 的脚本语言,PADS 提供的转换脚本用 Skill 编写,必须在 Allegro 环境里加载才能运行。环境变量AEX_BIN_ROOT让脚本能找到 PADS 的转换引擎,AEX_ENABLE_JOBPREFS_LAYER_FIX确保图层映射自动修复,Home让 Allegro 定位到 pcbenv 目录。复制脚本是必须的,否则 Allegro 的 command 栏里找不到dfl_main.il这个文件。

配置完成后,用 Allegro 打开要转换的 PCB 文件。在 Command 栏输入skill load "dfl_main.il",注意引号不能少,load 和引号之间有一个空格。回车后如果返回 T,说明脚本加载成功。接着输入main out,回车后会弹出一个对话框,点击“StarOneWay Translation”,等待运行结束。运行过程中不能有报错,如果有报错,根据提示查找原因并修正。运行成功后,Command 栏会提示 DONE。

最后打开 PADS Layout,选择“文件 → 导入”,等待转换结束。转换完成后,PCB 文件就在 PADS 里打开了。

# Allegro 端操作 Command: skill load "dfl_main.il" # 返回 T 表示成功 Command: main out # 弹出对话框 点击 "StarOneWay Translation" # 等待运行,不能有报错 # 运行成功后 Command 栏显示 DONE # PADS 端操作 PADS Layout -> File -> Import -> 等待转换完成

逻辑说明:skill load是加载 Skill 脚本的命令,dfl_main.il是 PADS 提供的转换主脚本。main out是执行转换函数,弹出对话框后选择单向转换。参数方面,引号和空格是语法要求,不能省略。常见坑是环境变量没生效,导致skill load返回 nil 而不是 T。这时候检查变量名是否拼写正确,路径是否指向了实际存在的文件夹。

5. 转换避坑与排查:图层错乱、元件丢失和脚本报错

跨 EDA 转换的坑,大多集中在图层映射、元件库匹配和脚本运行环境这三块。下面几条是文档里隐含的、以及实际操作中高频出现的问题,按“现象 → 原因 → 解决”整理。

5.1 图层错乱:顶层丝印跑到底层

现象:转换完成后,打开 PCB 发现丝印文字镜像了,或者阻焊层和助焊层对调了。原因:不同 EDA 工具的层号定义不同,PADS 的层号顺序和 AD、Allegro 都不一样。转换工具虽然会自动映射,但遇到自定义层或者非标准层叠时,映射表可能对不上。解决:转换前先在源工具里确认层叠结构,把自定义层改成标准名称。转换后在目标工具里逐层检查,发现错位手动调整。AD 导入 PADS 的 ASC 时,可以在导入向导里手动指定层映射关系。

5.2 元件丢失:网络表里有,PCB 上找不到

现象:导入完成后,原理图里有的元件,PCB 上不见了,或者变成了一个空焊盘。原因:源工具的元件库在目标工具里没有对应封装,转换器无法匹配,只能丢弃或者用占位符代替。解决:转换前先把源工具的元件库导出成通用格式(比如 PADS 的 .d 文件或者 AD 的 .PcbLib),在目标工具里建好对应封装。转换后如果发现元件丢失,回到源工具检查元件的封装名是否为空,或者封装名是否包含特殊字符。

5.3 Skill 脚本加载失败:返回 nil 而不是 T

现象:在 Allegro 的 Command 栏输入skill load "dfl_main.il"后,返回 nil,脚本没加载。原因:环境变量Home没有指向正确的 pcbenv 目录,或者 Skill 脚本没有复制到 pcbenv 下。解决:检查Home变量的值,确保它指向的是 Cadence 的 pcbenv 上级目录。然后确认dfl_main.il文件确实存在于 pcbenv 目录下。如果还是不行,在 Allegro 里用getSkillPath()命令查看 Skill 搜索路径,确认 pcbenv 在路径列表里。

5.4 转换过程卡死:泪滴和铺铜是元凶

现象:AD 导入 PADS 的 ASC 文件时,进度条卡在某个百分比不动,或者直接无响应。原因:ASC 文件里包含了泪滴数据或者复杂的铺铜多边形,AD 的导入器解析这些数据时消耗大量内存和 CPU。解决:回到 PADS 导出 ASC 的界面,取消勾选 Teardrops 选项,把铺铜改成静态铜或者简化铜皮边界。如果还是卡,尝试分批导出,先导出元件和网络,再单独导出铺铜。

5.5 版本不匹配:DSN 导入 PADS Logic 报错

现象:OrCAD 导出的 DSN 文件在 PADS Logic 里导入时提示“不支持的版本”。原因:OrCAD 保存 DSN 时用了高版本格式,PADS Logic 的导入器只认 16.2 及以下。解决:回到 OrCAD,选择“文件 → Save As”,版本明确选 16.2。如果 OrCAD 版本本身低于 16.2,那就不用降级,直接保存即可。导入前确认 PADS Logic 的版本,太老的 PADS 可能连 16.2 都不支持,需要升级 PADS 或者用中间版本过渡。

6. 转换后的验证与一个提高成功率的小习惯

转换完成不代表万事大吉,PCB 文件里的网络连接、设计规则、层叠结构都需要重新验证。我一般会走一遍“三查”流程:查网络表、查设计规则、查 Gerber。网络表用目标工具的 DRC 功能跑一遍,看有没有开路和短路。设计规则重点看线宽、间距、过孔尺寸是否和原设计一致。Gerber 导出后和原文件对比,确认焊盘开窗和阻焊桥没有变形。

# 转换后验证清单(以 PADS 为例) 1. 打开转换后的 PCB -> 工具 -> 验证设计 -> 运行 DRC 2. 检查网络表:文件 -> 报告 -> 网络统计 3. 导出 Gerber:文件 -> 导出 -> Gerber -> 对比原文件 4. 检查层叠:设置 -> 层定义 -> 确认层数和顺序

逻辑说明:DRC 是设计规则检查,能发现网络连接错误和间距违规。网络统计报告能看出网络数量和原设计是否一致。Gerber 对比是最直观的验证方式,把转换前后的 Gerber 叠在一起看,焊盘和走线是否重合。层定义检查确保层叠结构没有错乱。

还有一个习惯,我每次做跨工具转换前,都会在源工具里把设计“简化”一遍:删掉多余的泪滴、把铺铜改成静态、把自定义层改成标准名称、把元件封装名统一成目标工具能识别的格式。这些操作看起来麻烦,但能大幅提高转换成功率。从那以后我每次转换前都强制走一遍简化流程,翻车次数明显少了。

希望帮到你。

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

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

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

立即咨询