Test
[test] セクションは以下のように組み込みユニットテストの設定を指定します。
[test]
simulator = "vcs"
設定
[test] セクション
simulator フィールド
simulator フィールドはデフォルトのシミュレータを指定します。以下のタイプを指定できます。
"verilator""vcs""dsim""vivado"
include_files フィールド
include_files フィールドはシミュレーションに使う追加のファイルを指定します。
[test]
include_files = ["test/mem.hex"]
waveform_target フィールド
waveform_target フィールドは波形の生成先を指定します。
target– ターゲットコードと同じディレクトリdirectory– 特定のディレクトリ
directory を指定する場合は、ターゲットパスを path キーで指定します。
[test]
waveform_target = {type = "directory", path = "[dst dir]"}
waveform_format フィールド
waveform_format フィールドはダンプされる波形のフォーマットを指定します。指定できる値は以下の通りです。
vcd– デフォルト値であり、多くのベンダーでサポートされていますが機能は限定的です。fst– 整数の代わりにenum値を表示するなどいくつかの機能をサポートしています。gtkwaveとsurferで扱うことができます。
defines フィールド
defines フィールドは、veryl test の実行中に定義済みとして扱われる名前のリストを指定します。これらの名前は #[ifdef]/#[ifndef] 属性から参照でき、テスト専用のコードパスを有効化するために利用できます。SystemVerilog テストと cocotb テストでは、同じ名前が +define+NAME (Vivado の場合は -d NAME) として外部シミュレータにも渡されます。
[test]
defines = ["DEBUG", "ENABLE_ASSERTIONS"]
追加の名前はコマンドラインから veryl test --define NAME (または -D NAME) で渡すこともできます。CLI で指定した値はこのフィールドの内容にマージされます。
[test.verilator] セクション
このセクションはVerilatorによるテストの設定です。
| 設定 | 設定値 | 説明 |
|---|---|---|
| compile_args | [文字列] | verilator コマンドへの追加の引数 |
| simulate_args | [文字列] | シミュレーションバイナリへの追加の引数 |
[test.vcs] セクション
このセクションはVCSによるテストの設定です。
| 設定 | 設定値 | 説明 |
|---|---|---|
| compile_args | [文字列] | vcs コマンドへの追加の引数 |
| simulate_args | [文字列] | シミュレーションバイナリへの追加の引数 |
[test.dsim] セクション
このセクションはDSimによるテストの設定です。
| 設定 | 設定値 | 説明 |
|---|---|---|
| compile_args | [文字列] | dsim コマンドへの追加の引数 |
| simulate_args | [文字列] | dsim コマンドへの追加の引数 |
[test.vivado] セクション
このセクションはVivadoによるテストの設定です。
| 設定 | 設定値 | 説明 |
|---|---|---|
| compile_args | [文字列] | xvlog コマンドへの追加の引数 |
| elaborate_args | [文字列] | xelab コマンドへの追加の引数 |
| simulate_args | [文字列] | xsim コマンドへの追加の引数 |