AI如何远程操纵Virtuoso?开源一套新桥梁

作者: 张托肯

来源: 微信公众号「张托肯用AI」


最近,数不清的人问我:

你是怎么用龙虾、或是在 Mac 上远程连接 Virtuoso 的?

是的,我们有一套桥接工具。

核心特点包括三个:

特点一:Agent 原生

特点二:多重交互

特点三:专家级预置

这一切都始于 2025 年 3 月,我们试图将 LLM 接入模拟芯片 EDA 环境的那些实验。

起初,我们也调研过 skillbridge 等现有方案。但在真实的 EDA 服务器环境面前,现实很骨感:服务器版本老旧、大规模 SKILL 脚本的兼容性、跨网段远程连接的稳定性…… 每一个坑都让原有方案难以招架。

既然没有现成的路,那就自己造一套。

我们逐渐打磨出一套能稳定控制 Virtuoso / Spectre / Calibre 的完整工具链,并已在 28nm 流片中得到验证(相关工作之一发表在 AAAI 2026)。

为了打破次元壁,让更多人能真正走进 AI 设计时代,如今我们将这套核心能力“蒸馏”出来,去掉一些束缚,推向开源

开源仓库地址:https://github.com/Arcadia-1/virtuoso-bridge-lite

至于效果最近的文章发了好几个了,再次再举几个新例子。

绘制反相器原理图:

仿真五管放大器:

优化五管放大器:

是不是已经有点像一个有模有样的初学者了?

在深入细节之前,看看 AI 怎么评:

01 特点一:AI 原生

本库最大的特点是 AI 原生,从“为用户着想”到“为用户的AI着想”。

本项目从底层逻辑上就是为 AI Agent 定制,鼓励完全使用 Agent 接管。

AI 读、AI 用、AI 改。

人类用户只需要负责点个 star 即可。

自带 Agents.md:等效于在 claude code 中使用/init,让 AI 迅速理解与上手。

内置技能包(Skills): 封装了 Virtuoso、Spectre、Optimizer 三大核心模块。

Agent 加载后即可具有原理图编辑、版图绘制、仿真优化的自主操作能力。

CLI 化: 远程连接的时候,每次重新建立连接非常慢。阻碍 agent 迭代速度,所以做了一套 ssh 常驻进程,并且该进程管理被抽象为高效的命令行接口(CLI),为 Agent 的高频、异步调用而优化。

原理内核:附赠了一套去除一切外壳,只保留最核心的交互机制的内核,方便用户及其 AI 的理解和二次开发。

它不是一个僵化的静态工具,而是一块橡皮泥,提供第一性原理级别的核心逻辑,用户可以引导 AI 根据基本原理直接重写或扩展功能。

这是一种真正的可重构:每个人的工具能够随任务需求自主演进,而非受限于既定代码。

这个库本身,其实也是一次 “用 AI 重构 AI 工具” 的实践。

我让 AI 直接阅读项目库,把桥接工具链直接“蒸馏”出来,根据这个干净的模块进行修改和发布。

项目信息和与工艺强绑定的物理验证部分(DRC、LVS、PEX 等)被自然剥离。

02 特点二:多重交互

本库的第二个特点是多重交互,分层封装 skill 命令,按需选择控制粒度。

其实,各种桥接的底层机制都是依赖 Cadence 原生的 ipcBeginProcess 通信结合 evalstring 执行 skill 命令。

虽然解决了“能不能通”的问题,但在大规模执行时(尤其是需要远程的情况下),单一的交互粒度容易成为效率瓶颈。

结合我们的实用需求,我们的这套工具支持三层 skill 交互范式,丰俭由人,可按任务复杂度自由选择:

Level 1:原子级粒度(与 CIW 完全等效的底层控制)

单句执行任意 skill 命令,调用 Virtuoso 原生底层能力。

操作规模提升之后,逐句发送的效率很低。

支持将多条 SKILL 命令封装为指令列表一次性发送。

这种“批量提交”机制大幅减少了进程间的握手次数,能提升大规模操作的执行效率。

Level 2:脚本级粒度(一键加载 .il 脚本文件)

Python 专注逻辑调度与流程控制,而将成熟任务交给沉淀好的 SKILL 资产。

例如,调用 skill 文件,在 CIW 窗口中打印一首十四行诗(Sonnet)。

当然,我们也可以进行截图、读库等各种封装好的操作。

Level 3:对象级粒度(像操作 Python 对象一样编辑版图与原理图)

这是适合 AI Agent 的交互模式。我们对电路的“增删查改(CRUD)”进行了高度抽象,将其封装为 Python 对象操作。

无需感知语法: Agent 只需要像操作标准 Python 对象一样调用接口,无需学习复杂的 SKILL 语法。

例如语义化操作原理图:

语义化操作版图:

这种粒度分层对 Agent 是有意义的。

不同的方法适用于不同的场景,可以按需剪裁。

当高层 API 无法满足特殊需求时,Agent 可以“降档”使用原子命令。

Agent 可以根据任务规模自动选择是“逐句执行”还是“脚本注入”,在远程高延迟环境下依然保持效率。

Python API 将复杂操作变成 Agent 熟悉的语言,降低 LLM 的幻觉概率。

另外,我们还支持原理图或版图的截图和回传。配合多模态感知,AI 可以实现视觉纠偏与布局评估。

我们也打通了修改网表、数据传输、调用 Spectre 仿真、回传及解析结果的链路。

总之,我们通过构建这套多维交互工具链,将 Agent 的认知与执行能力扩展至模拟与混合信号设计的深水区。

下面的表格展示了我们与 skillbridge 的异同。

03 特点三:专家级预置

我们的第三个特点是预装了一些实用招式,可以作为人类用户或者 Agent 用户的参考。

基础连接与验证,原理图、版图的增删查改,读库、读图,各类仿真。

绝大部分 skill 在没有特定工艺库(PDK)的情况下也能跑通。

至于仿真,只要你能配好环境,你自己导出一份网表,让 AI 处理一下替换进去,就能跑。

剩下的功能,欢迎大家自己去探索和扩展。

04 尾声

哪怕是像龙虾一样的纯小白,在 Agent 的加持下也能快速上手,体验一把指挥 EDA 的快乐。

如果你也想让自己的 AI 操作 Virtuoso,欢迎来探索、试用和交流!

仓库地址:https://github.com/Arcadia-1/virtuoso-bridge-lite


关键词: AI, Virtuoso, 开源, 远程控制, EDA

原文链接: 点击查看微信原文

GitHub仓库: https://github.com/Arcadia-1/virtuoso-bridge-lite

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。