systemverilog-waveform-debug-skill は何をしますか?
FST/VCD波形とRTLソースからVerilog/SystemVerilogをデバッグするためのCodexスキル
概要
このスキルにより、Codexエージェントは波形ダンプ(FST/VCD)とRTLソースコードを解析し、デジタル設計内のバグや問題を特定・診断できます。
使用方法
- 波形ファイル(
.fstまたは.vcd)をCodexのコンテキストに含めます。 - 対応するRTLソースコード(
.v、.svなど)を提供します。 - エージェントに問題の説明(例:「なぜ信号Xが期待したタイミングでアサートされないのか?」)を依頼します。
サポートされる機能
- 信号値の抽出 – 波形から指定された時刻における信号値を読み取ります。
- 信号の遷移追跡 – 時間の経過に伴う信号の変化を追跡します。
- RTLとの相関 – 波形イベントをRTLソースコード内の対応する行にマッピングします。
- タイミング解析 – セットアップ/ホールド違反やクロックドメインクロッシング問題を特定します。
制限事項
- 波形ファイルはASCIIまたは圧縮FST形式である必要があります。
- 大規模な波形(>100MB)は別途前処理が必要な場合があります。
- このスキルはバグを自動修正するものではなく、診断のための洞察を提供します。
依存関係
pyvcd(Python VCD解析ライブラリ)pyfst(FST波形パーサー)- あるいは、生のVCD/FSTを解析するためのカスタムスクリプト
例
波形ファイルとRTLが提供された場合、エージェントは次のように応答できます:
診断結果:信号
data_readyはサイクル42でハイになるべきですが、モジュールcontroller内の状態マシンが条件付きブランチ(controller.svの38行目)でスタックしているため、実際にハイになるのはサイクル47です。state == WAIT条件にタイミングの不一致があります。
詳細な手順については、本スキルのリポジトリを参照してください。