首页/文章/ 详情

我用AI做EDA仿真,Token烧得快怎么办?

1天前浏览17
点击文尾阅读原文报名
作者 | 仿真老班长 仿真秀优秀讲师
首发 | 仿真秀App
图片    

导读:ADS 2027 把 MCP、Python 自动化、宏录制和 AI-ready 工作流带进了 ADS 的原生能力体系。真正把 AI 接到 EDA 软件之后,难点并不只是“能不能调用工具”,还包括调用次数、上下文长度、GUI/脚本会话选择、日志回传、仿真结果验收和失败后的续跑。

本文以一次 ADS DDR4 自动化仿真实测为线索:第一次流程曾消耗几十美元并运行数小时;随后通过更新 MCP、拆分 Skill、精简返回和阶段检查点,把“能跑”改造成“可控、可复用、可审计”的工程流程。

一、ADS 2027新功能:从“脚本自动化”走向“AI可交互的EDA工作流”  

ADS 2027 新功能的一个新亮点,是把 MCP(Model Context Protocol)作为 ADS 与外部 AI 助手之间的标准化连接方式。按照 Keysight 的产品发布说明,ADS MCP Server 可以让 AI 助手连接到正在运行的 ADS 会话,执行 Python 代码并检索 ADS 文档;同时,ADS 2027 还增强了从原理图/版图生成 Python 脚本、Python Macro Recording、Python 文档组织和面向下一代自动化/AI 工作流的 Demo Python PDK。  

这几项能力叠加之后,AI 不再只是帮工程师“解释一段 ADS Python”,而是可以参与完整闭环:读取设计状态 → 生成或修改脚本 → 配置仿真 → 启动分析 → 读取数据集 → 生成 Data Display/图片 → 根据结果继续调整。对于 DDR、SerDes、参数扫描、批量建模和自动报告,这种闭环比单次代码补全更有价值。

需要强调的是:MCP 只解决“软件可以被调用”,并不会自动替代工程判断。模型、拓扑、端口、采样窗口、通道文件、仿真收敛和测量口径,仍然需要通过参数约束与结果检查固化下来。  

二、第一次用MCP仿真DDR:为什么会花几十美元、跑数小时?  

我第一次把 AI、ADS MCP 和 DDR4 Memory Designer 组合起来时,目标是完成一个单 DQ WRITE 流程:控制器 IBIS、接收端 IBIS、两端口 S 参数通道、速率配置、封装 RLC、仿真、DDS 和接收端眼图。流程最终可以得到结果,但代价明显不适合日常工程使用:按这次实际过程记录,模型调用消耗了几十美元,仿真与排错过程持续了数小时。  

问题不在于“AI 不会做”,而在于第一次流程把太多不必要的信息和不确定性放进了闭环。一个 EDA 自动化任务同时包含设计对象、脚本、GUI 会话、网表、日志、数据集和图片;如果每一步都把完整内容回显给模型,就会出现“工具调用成功,但上下文越来越重;仿真失败后又从头重复”的现象。

这次 DDR4 案例的验收对象

DDR4-3200、连续 WRITE、单 DQ0;控制器模型 IO_40,接收端模型 IN_40;两端口 S 参数通道;典型 IBIS corner;启用 package RLC;DBI 关闭。最终 ADS 数据集给出的 EyeHeight 为 0.520 V、EyeWidth 为 3.00e-10 s(约 0.96 UI)。这些数值是一次特定模型、通道和测量设置下的工程结果,不是 DDR 合规结论。

三、更新后的 ADS MCP:把“会调用”变成“调用得更少、更稳”  

针对上面的浪费点,我对 MCP 的设计重点做了调整:把工具输出从“全文搬运”改成“结构化摘要 + 可追溯文件”,把重复操作改成“脚本路径 + 参数”,把长流程改成“阶段检查点”,把软件交互层和 DDR 领域知识层分开。核心原则是:模型只读取当前决策所需的信息,完整证据保留在本地结果文件中。  

1. 精简返回:默认给摘要,按需读取完整证据  

新版工具默认返回 success、关键结构化字段、产物路径、告警摘要和 result_file;完整 stdout/stderr、脚本快照、网表和日志保存到磁盘。需要追查错误时,再用 read_run_output 按 offset 和 max_chars 分页读取,而不是每次把整份日志重新注入上下文。

2. 脚本路径化:代码放在文件里,调用只传参数  

run_ads_python 支持 script_path 和 script_args 后,客户端不必重复上传长脚本。脚本成为可检查、可版本管理、可复用的工程资产;模型只需要决定阶段、输入目录、速率、模型文件和输出目录。对于 DDR 案例,建模、配置、运行、验证和生成 DDS 可以由同一个 Skill 的不同阶段驱动。  

3. 运行环境探测与会话复用:先判断,再选择执行模式  

ads_doctor 现在不仅用于查找 ADS 安装路径,还会探测 Python、Design Environment API 和 GUI Bridge,并对结果做短时间缓存。无 GUI 的脚本任务优先使用 standalone;只有必须操作已打开的 workspace、读取当前编辑状态或执行 GUI Data Display 操作时,才使用 embedded。这样可以避免每一个小步骤都拉起 ADS 或等待 GUI。  

4. 设计、网表和数据集分层检查  

更新后的流程增加了 inspect_design、generate_netlist、run_netlist、inspect_dataset 和 read_dataset_dataframe 等分层入口。先用 inspect_design 回读实例、网络和关键参数,再生成网表;仿真后先查看数据集变量元数据,需要具体波形时再读取数值。这样既保留了工程可验证性,又避免模型一上来读取整个数据集。  

5. 阶段检查点与可控续跑  

execute_steps 可以把任务拆成有序步骤,并显式声明 input_files 与 output_files。系统用输入签名和输出内容哈希判断步骤是否可跳过;失败或上次停在 running 的步骤默认停止,确认部分输出后才允许 retry_failed。这个设计把“自动化”从一串不可回退的动作,变成了可审计的流水线。  

6. 独立的 DDR Skill:领域知识不再塞进通用 MCP  

MCP 不负责替工程师决定 IBIS 模型、DBI、速率、拓扑或合规口径;这些内容放在独立的 ads-ddr-memory Skill 中。Skill 负责输入清单、模型约束、阶段顺序、验收条件和结果解释;MCP 负责连接 ADS、执行脚本、读写文件和返回结构化结果。分层之后,通用 MCP 可以服务更多 ADS 任务,DDR Skill 也能独立更新。  

四、MCP 和 Skill 怎么配合:不要把两者当成同一个东西

一个实用的判断方法是:如果内容回答“这个 DDR 仿真应该怎么做、什么算完成”,它更适合写进 Skill;如果内容回答“如何调用 ADS 的某个 API、如何读取数据集或启动网表”,它更适合写进 MCP;如果内容回答“这次任务的文件在哪里、要改哪个速率”,它应该留在任务参数中。

五、实战使用技巧:如何进一步节省 Token、时间和仿真资源

  • 先写验收条件再写提示词。把“生成眼图”改成“数据集必须本次更新、EyeHeight/EyeWidth 非空、PNG 路径存在”,模型才知道何时停止。    

  • 把长内容变成文件引用。脚本、IBIS、S 参数、网表和日志都使用明确路径;对话中只传文件角色、参数和输出位置。    

  • 一次只解决一个不确定性。先确认 ADS 会话和 API,再确认设计连接,再运行仿真;不要在同一轮里同时改模型、改拓扑和改测量窗口。    

  • GUI 只做必须做的事。批处理和数据集处理优先 standalone;GUI bridge 用于读取当前会话和需要可视化的操作。    

  • 不要把“进程返回 0”当成仿真成功。必须同时检查完成标记、数据集更新时间、非空数据块和关键测量。    

  • 失败不盲目重试。先检查锁、日志尾部、输出文件和输入签名;只有确认上一次没有完成或允许续跑时,才重试失败阶段。    

  • 把结果和过程一起保存。工程文件、脚本快照、参数 JSON、日志、DDS/PNG 应该进入独立输出目录,方便复盘和复现实验。

  •  跨软件时保持同一套验收思路。ADS 看 dataset/DDS,HSPICE 看退出码/波形/measure,AEDT 看工程设置/S 参数/报告;接口不同,工程闭环相同。

六、案例:ADS 2027 + MCP 完成 DDR4 单 DQ WRITE  

下面的案例来自项目中的 ADS DDR4 测试目录。流程以 DQ0 为最小可验证单元,使用控制器 IBIS、接收端 IBIS 和两端口 Touchstone 通道,先完成配置与网表检查,再运行 4096-bit 连续 WRITE,最后从数据集读取眼高/眼宽并生成 DDS 图片。  

 图 1  ADS 2027 中的 DDR 连接检查界面:确认 Channel 与 Memory 的 DQ0 连接关系  

图 1 的意义不在于“截图证明连接成功”,而在于提醒自动化流程必须把连接关系作为显式验收对象。对 AI 来说,RefDes、Pin、Signal ID、Port 和 Ch ID 都是需要回读的结构化字段,不能仅凭界面位置猜测。  

 图 2  ADS DDR4-3200 DQ0 接收端眼图:EyeHeight = 0.520 V,EyeWidth = 300 ps

图 2 是一次特定模型与测量设置下的结果。它可以用于验证自动化链路是否贯通,但不能单独替代合规测试、BER 评估或系统级结论。工程文章里把“仿真结果”“测量口径”和“适用边界”放在一起,读者才能知道图到底证明了什么。

七、同一门课程还会讲 HSPICE、AEDT 与 AI 的交互  

ADS 只是第一个完整案例。在我的《AI4EDA 电路-电磁-系统信号完整性仿真课程》还会把同样的 AI 自动化方法迁移到 HSPICE 与 AEDT:先把软件操作拆成可验证的工具,再用 Skill 组织领域流程,最后由 AI 客户端编排任务。这样学习者学到的不是某一个软件的“快捷指令”,而是一种可以跨 EDA 工具复用的工程方法。 

图 3  HSPICE DDR4 DQ0 接收端眼图:展示网表、通道与波形后处理的自动化结果

HSPICE 侧重点是网表、IBIS/S 参数、运行状态、波形文件和后处理;AI 需要学会从日志中提取失败原因,并把参数化网表与结果脚本分开。  

 图   4  AEDT 传输线 S 参数结果:自动化流程不仅要建模,还要导出和解释工程结果

AEDT 侧重点是几何、材料、边界、端口、网格、求解设置和 S 参数报告。对于 HFSS/Q2D 等电磁场工具,Skill 必须把单位、坐标、端口和边界写成可检查的输入,而不是让模型凭截图猜设置。

八、边界条件:低 Token 不等于少做验证  

低 Token 的目的不是让模型少看证据,而是让证据按决策需要分层读取。工程自动化至少需要四种检查:输入是否正确、动作是否完成、结果是否是本次生成、结果是否符合工程预期。MCP 返回 success 只能覆盖其中很小一部分。  

  • 版本与许可证:ADS 2027 的安装、许可证和 API 兼容性必须以 Keysight 官方资料和本地授权为准。    

  • 模型与通道:IBIS、Touchstone、封装参数和速率的组合必须记录;不能把一个案例的结果推广到所有链路。    

  • 结果有效性:眼高/眼宽、S 参数、阻抗或波形都要结合采样窗口、带宽、模型 corner 和测量位置解释。    

  • 可复现性:保留输入文件清单、脚本版本、参数 JSON、运行日志和生成的图片,不覆盖原始工程。    

  • 软件使用:本文只讨论合法授权的软件和自动化接口,不提供或鼓励绕过许可证、激活限制或第三方安全机制的做法。    

九、结语:AI4ADS 的关键不是“让 AI 替工程师仿真”,而是让流程可控  

ADS 2027 的 MCP 是一个重要入口,但真正决定效率的,是入口后面的工程化设计:把工具返回变短,把长脚本变成文件,把模型调用变成阶段,把失败处理变成检查点,把领域经验沉淀成 Skill。这样,AI 才能从“会操作软件”进一步变成“能以可控成本完成一项可验收的仿真任务”。  

这也是我即将在仿真秀官网独家推出《AI4EDA 电路-电磁-系统信号完整性仿真课程》的主线:从 Codex/Trae 的基础配置开始,学习 MCP 与 Skill 的组织方式,再通过 ADS、HSPICE、AEDT 等软件案例,完成建模、仿真、结果提取和自动化报告。课程资料与后续更新以作者页面为准。并为学员提供VIP群答疑和全套学习资料。欢迎点击文尾阅读原文或识别下方二维码关注我的仿真秀专栏。

自 AI 驱动工程仿真逐渐走向实践以来,越来越多的工程师开始关注:AI 到底能不能真正接入 EDA 工作流?Codex、Trae、MCP、Skill 这些工具应该怎样配置和使用?电路、电磁和系统信号完整性仿真,又怎样从“人工操作”走向“可执行、可检查、可复用”的自动化流程?

10月22日19时30分,研发仿真开学季第11期《AI4EDA 电路-电磁-系统信号完整性仿真自动化仿真实战》,本期直播不做停留在概念层面的介绍,而是围绕 AI4EDA 的真实工程场景展开,结合 HSPICE、AEDT、ADS 三类工具,分享 AI 工具在 EDA 仿真中的应用方法、基础配置和自动化实践。请识别下方二维码报名观看和回放。

资料来源与项目证据  

[1] Keysight:ADS 2027 Product Release

[2] Keysight:Advanced Design System (ADS) Software
 

[3] ADS 2027 功能参考文章(用户指定)


(完)
声明:本文首发仿真秀App,部分图片和内容转自网络,如有不当请联系我们,欢迎分享,禁止私自转载,转载请联系我们,并注明出处。欢迎投稿,投稿与技术交流请联系杨老师18610516616(微同)
喜欢作者,请点赞和在看


来源:仿真秀App
HFSSSystemSTEPS电源电路信号完整性通用ADS电源完整性python芯片通信材料控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2026-10-26
最近编辑:1天前
仿真圈
技术圈粉 知识付费 学习强国
获赞 12107粉丝 23583文章 4714课程 278
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈