Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

シミュレータ

テストは veryl test で実行することができます。

ネイティブテスト ではVerylの組み込みシミュレータが使用されます。外部シミュレータのインストールは不要です。

ネイティブシミュレータのコード生成バックエンドは veryl test --backend で選択します。

バックエンド説明
cc既定値。C を出力し、外部の C コンパイラ (gcc または clang-O3) でコンパイルした結果をロードする。
craneliftインプロセスの Cranelift JIT。
interpretコード生成を行わず、サイクルごとに IR を歩く。

cc バックエンドは cc (通常は gcc または clang) が PATH に存在することを要求します。cc が無い場合や、特定の構文がまだ cc エミッタで対応されていない場合は、その部分について Cranelift へ透過的にフォールバックします。veryl test --backend-validate を使うと cc バックエンドを Cranelift と並行実行し、差異があれば中断します。

SystemVerilogテストとcocotbテストでは、外部のRTLシミュレータが必要です。サポートされているシミュレータは以下の通りです。

Verilatorはデフォルトのシミュレータです。Veryl.tomlやコマンドラインオプションでシミュレータが指定されていない場合に使用されます。

全設定の説明はこちら

cocotb

cocotb テストを実行するには cocotb がインストールされた python3 の環境が必要です。サポートされている cocotb のバージョンは 1.9.x あるいは 2.0.x です。

例えば以下のコマンドでインストールすることができます。

$ pip3 install cocotb==2.0.0

シミュレータバックエンドとしては Verilator のみサポートされています。