mcpField
V
Verdi Bridge

Verdi Bridge

ローカル
github.com/RuihongY開発ツール212 週間前に更新

Verdi Bridge について

Verdi Bridgeは、AIエージェントを稼働中のSynopsys Verdiに接続し、RTLデバッグを支援します。波形確認とRTL移動のためのツールを提供し、分析はエージェントに委ねます。利用にはライセンス済みVerdiが必要です。

主な機能

  1. 01シミュレーション信号の検索と表示
  2. 02シミュレーション時刻とエラー範囲の移動
  3. 03波形値と遷移の確認
  4. 04長い時間範囲の変化の要約
  5. 05信号のドライバーからRTLソースへの追跡

活用シーン

  1. 01シミュレーション失敗前後の信号調査
  2. 02ハンドシェイクのタイミングと遷移の確認
  3. 03波形値から駆動元のRTLを追跡
  4. 04GUIの応答性を保ちながら大規模FSDBを確認

MCP 対応

Synopsys Verdiで波形を観察しRTLを移動するための、18個の型付きMCPツールを提供します。既存のライセンス済みVerdi環境にローカルまたはSSH経由で接続できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの 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 — ライブ Verdi セッションに AI エージェントを接続

PyPI テスト MIT ライセンス Python 3.11 以降

使い始める · ツールリファレンス · アーキテクチャ · 中文

RTL デバッグエージェントに波形を見せる

AI エージェントをライブの Synopsys Verdiに接続します。信号の検索、遷移の確認、シミュレーション時間の移動、駆動元の RTL の表示を、デバッグに使うのと同じ GUI 上で行えます。

「FIFO の読み書きポインターを追加し、エラーの 20 サイクル前に移動して、full が High のままだった理由を調べてください。」

「BVALID はいつ Low になりましたか? ハンドシェイク信号と、それを駆動するコードを表示してください。」

Verdi Bridge は、こうしたリクエストをシミュレーションからの観察結果と、nWave および nTrace での目に見える操作に変換します。エージェントが推論し、ブリッジが観察します。型付きの MCP ツール 18 個が、ローカルでも既存の Verdi 環境を使った SSH 経由でも動作します。

動画での解説

エージェントにバグの調査を依頼し、信号の選択、ライブ波形の確認、RTL の移動を行う様子をご覧ください。1 分 38 秒の無音デモです。英語のプロンプトとエージェントの元の英語の応答を、同期した Verdi のキャプチャと並べて表示しています。これは翻訳ではなく、別途実行した英語でのデモです。ツール呼び出しはエージェントが選択しており、再生スクリプトによるものではありません。

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

英語の動画 · 中文视频

録画方法 · インストールチュートリアル

クイックスタート

pip install verdi-bridge

チェックアウトせずに uv で実行することもできます。

uvx verdi-bridge tcl-path

これにより、同梱の Tcl アダプターのパスが表示されます。Verdi に読み込んで MCP クライアントを接続し、stdio サーバーとして uvx verdi-bridge serve を実行してください。 ライセンス取得済みの 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
ドライバーをたどって RTL を確認するtrace_driver, read_source, read_source_file, goto_source

波形クエリでは X/Z の値が保持されます。大きな FSDB の長い時間範囲は、GUI の外で Verdi の NPI リーダーを介して処理できるため、GUI の応答性が保たれます。時間引数には単位が明示されます。 同じインターフェースを異なる RTL 設計で使用できます。ブリッジには FIFO 固有のロジックは組み込まれていません。Python および CLI の例をご覧ください。

実際のデバッグセッションを見る

ライセンス版 VCS/Verdi のセッションで、UART TX、AXI-Lite、FIFO、アービタの RTL を使ってテストしています。 エージェントは、関連する信号を画面に表示し、その変化を調べ、ソースへ移動できます。作業の様子を確認しながら利用できます。

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 のエージェントと EDA ツールのワークフローに着想を得ています。 これは独立した実装です。MIT ライセンスです。詳しくはサードパーティに関する通知をご覧ください。 Synopsys とは提携していません。Verdi は Synopsys の商標です。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。