以下の内容はhttps://msyksphinz.hatenablog.com/entry/2025/07/29/040000より取得しました。


RISC-V RVVI (Verification Interface) についてまとめる (2. RVVI-TRACEについて)

前回の続き: msyksphinz.hatenablog.com

RVVI-TRACEインターフェースパラメータ

RVVI-TRACEインターフェースは以下のパラメータを取る:

パラメータ名 説明
ILEN 最大許可命令長(ビット) / 32-bit, 16-bit
XLEN 最大汎用レジスタサイズ(ビット)
FLEN 最大浮動小数点レジスタサイズ(ビット)
VLEN 最大ベクトルレジスタサイズ(ビット)
NHART このインターフェースで報告されるHART数
RETIRE 有効イベント中にリタイア可能な最大命令数

RVVI-TRACEインターフェース信号

RVVI-TRACEインターフェースは、RISC-Vデバイスの内部状態の可視性を提供する。すべての信号はデバイスからの出力であり、状態遷移と状態値を観測するためのものである。

基本制御信号
信号名 方向 説明
clk 1 input RVVI-TRACEインターフェースの同期クロック。正エッジでサンプリング
valid 1 output イベントがRVVI-TRACEインターフェースで通信されていることを示す
order - output リタイアまたはトラップイベント中のイベントカウント。単調増加でギャップや重複なし
命令関連信号
信号名 方向 説明
insn ILEN output トラップまたはリタイアイベントの命令語。常にリトルエンディアン
trap 1 output 命令実行が例外を発生させたことを示す
halt 1 output HARTが停止状態に入ったことを示す
intr 1 output このリタイア命令がトラップハンドラの最初の命令であることを示す
debug_mode 1 output プロセッサがデバッグモードで動作していることを示す
特権モード・アドレス信号
信号名 方向 説明
mode 2 output 動作モード(Machine、Supervisor、User)
ixl 2 output 現在の特権モードでのXLEN
pc_rdata XLEN output 有効イベント(トラップまたはリタイア)時の命令アドレス
pc_wdata XLEN output トラップまたはリタイアイベント後の次実行命令アドレス
レジスタ書き込み信号
汎用レジスタ(X)
信号名 方向 説明
x_wdata XLEN × 32 output 汎用レジスタ書き込みデータ
x_wb 32 output 汎用レジスタ書き込み有効ビットマスク
浮動小数点レジスタ(F)
信号名 方向 説明
f_wdata FLEN × 32 output 浮動小数点レジスタ書き込みデータ
f_wb 32 output 浮動小数点レジスタ書き込み有効ビットマスク
ベクトルレジスタ(V)
信号名 方向 説明
v_wdata VLEN × 32 output ベクトルレジスタ書き込みデータ
v_wb 32 output ベクトルレジスタ書き込み有効ビットマスク
制御・状態レジスタ(CSR)
信号名 方向 説明
csr XLEN × 4096 output CSR書き込みデータ
csr_wb 4096 output CSR書き込み有効ビットマスク
特殊信号
信号名 方向 説明
lrsc_cancel 1 output LR/SC予約のキャンセルを示す(実装定義)

RVVI-TRACEインターフェース関数

net_push()

プロセッサネットの状態をRVVI-TRACEインターフェースに送信する。ネットはキー/値ペアとして形成され、FIFOにプッシュされる。

net_pop()

RVVIインターフェースのコンシューマがネット状態更新を受信する。FIFO順序でネット変更がポップされる。

レジスタ書き込みビットマスクの詳細

レジスタ書き込み信号(x_wbf_wbv_wbcsr_wb)は、どのレジスタが書き込まれたかを示すビットマスクである。

例: - x_wb = 0x4 → レジスタX2が書き込まれた - x_wb = (1<<4 \| 1<<1) → レジスタX4とX1が同時に書き込まれた - x_wb = 0x0 → 書き込まれたXレジスタなし

サンプルソースコードは以下に示されている:

https://github.com/riscv-verification/RVVI/blob/20240403.0/source/host/rvvi/rvviTrace.sv




以上の内容はhttps://msyksphinz.hatenablog.com/entry/2025/07/29/040000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14