mcpField
V
Verdi Bridge

Verdi Bridge

本地服务
github.com/RuihongY开发工具212 周前更新

关于 Verdi Bridge

Verdi Bridge 将 AI Agent 连接到运行中的 Synopsys Verdi,用于 RTL 调试。它提供波形检查和 RTL 导航工具,由 Agent 负责分析;使用需要已授权的 Verdi 安装。

主要功能

  1. 01查找并显示仿真信号
  2. 02浏览仿真时间与错误窗口
  3. 03检查波形值和信号跳变
  4. 04汇总较长时间窗口内的变化
  5. 05追踪信号驱动源至 RTL

适用场景

  1. 01调查仿真故障附近的信号状态
  2. 02检查握手时序和信号跳变
  3. 03从波形值追踪到驱动它的 RTL
  4. 04检查大型 FSDB 波形,同时保持 GUI 响应

MCP 相关

Verdi Bridge 提供 18 个类型化 MCP 工具,用于在 Synopsys Verdi 中观察波形和导航 RTL。它可通过本地或 SSH 方式连接现有的授权 Verdi 环境。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"ruihongy-verdi-bridge": {
"command": "uvx",
"args": [
"verdi-bridge"
],
"env": {
"VERDI_BRIDGE_DIR": "<VERDI_BRIDGE_DIR>",
"VERDI_BRIDGE_HOST": "<VERDI_BRIDGE_HOST>",
"VERDI_BRIDGE_CONTROL_PATH": "<VERDI_BRIDGE_CONTROL_PATH>"
}
}
}
}
启动命令uvx verdi-bridge
需要配置的环境变量
VERDI_BRIDGE_DIRPrivate bridge directory on the Verdi host; omit to use the default ~/.verdi-bridge/session.
VERDI_BRIDGE_HOSTSSH user@host; omit for a local Verdi GUI.
VERDI_BRIDGE_CONTROL_PATHOptional existing SSH ControlMaster socket path.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiverdi-bridge0.3.3

工具

18

收录的工具列表 · 更新于 2 周前

此工具无需参数。

详细介绍

Verdi Bridge — 将 AI Agent 连接到正在运行的 Verdi 会话

PyPI 测试 MIT 许可证 Python 3.11 或更高版本

快速入门 · 工具参考 · 架构 · 中文

让 RTL 调试 Agent 看见波形

将你的 AI Agent 连接到正在运行的 Synopsys Verdi。让它查找信号、检查 跳变、浏览仿真时间,并打开驱动信号的 RTL——都在你用于调试的同一个 GUI 中完成。

“添加 FIFO 读写指针,回到错误发生前 20 个周期,并调查为什么 full 信号一直为高。”

“BVALID 是什么时候拉低的?显示握手信号和驱动它的代码。”

Verdi Bridge 将这些请求转化为仿真观测结果,以及在 nWave 和 nTrace 中的可见操作。Agent 负责推理;桥接程序负责观测。 18 个类型化 MCP 工具可在本地使用,也可通过 SSH 配合现有 Verdi 环境使用。

视频演示

让 Agent 调查一个错误,然后观察它选择信号、检查实时波形并浏览 RTL。这个 1 分 38 秒的无声演示中,英文提示词和 Agent 的原始英文回复与同步的 Verdi 画面并排显示。这是单独录制的一次英文运行,并非翻译。工具调用由 Agent 自行选择,而非通过重放脚本执行。

https://github.com/user-attachments/assets/b041c1bd-4be5-4040-b281-2f15001b1e35

英文视频 · 中文视频

录制方式 · 安装教程

快速开始

pip install verdi-bridge

也可以使用 uv,无需检出仓库即可运行:

uvx verdi-bridge tcl-path

此命令会显示打包的 Tcl 适配器路径。在 Verdi 中加载它并连接 MCP 客户端,然后使用 uvx verdi-bridge serve 作为 stdio 服务端。 需要安装获得许可的 Verdi。客户端:Python 3.11+;远程主机: Python 3.6+ 和 Verdi 的 Tcl 8.6。不包含任何厂商软件。

可以做什么

工作流工具
查找并显示信号find_signals、browse_scope、add_signals
导航错误窗口set_cursor、set_time_window、jump_before_error
检查实际波形值find_transitions、get_value_changes、sample_signals
汇总较长时间窗口count_changes、sample_on_clock
查找错误时间和时钟read_log、measure_clock
沿驱动信号追溯 RTLtrace_driver、read_source、read_source_file、goto_source

波形查询会保留 X/Z 值。对于大型 FSDB,Verdi 的 NPI 读取器可以在 GUI 之外处理较长时间窗口,让 GUI 保持响应。时间参数都带有明确的单位。 同一接口适用于不同的 RTL 设计;桥接工具中没有内置针对 FIFO 的逻辑。请参阅 Python 和 CLI 示例。

在真实调试会话中体验

已在获得许可的 VCS/Verdi 会话中使用 UART TX、AXI-Lite、FIFO 和仲裁器 RTL 进行了测试。 Agent 可以将相关信号显示在屏幕上,检查其变化,并导航到源代码,让你同步查看。

Verdi 中的 UART 波形和源代码

真实 RTL 示例 · 盲测调试试验 · 验证结果和限制

项目状态

实验性 v0.3.3。实时检查使用 Linux 上的 Verdi T-2022.06-SP2-1,包括 v0.3.2–v0.3.3 的 SSH、会话和大型 FSDB 更新(最大处理 2.7 GB FSDB)。 已验证新会话启动;尚未单独验证连接到任意现有 GUI。该桥接工具不会自动编译、编辑或修复 RTL。

参与贡献 · 信任边界 · 验证限制 · 报告问题

灵感来自 virtuoso-bridge-lite 中 Agent 与 EDA 工具的工作流。 这是一个独立实现。采用 MIT 许可证;请参阅第三方声明。 与 Synopsys 无关联。Verdi 是 Synopsys 的商标。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。