(C) by T.IZUMI, Oct.2025 - 無断複製・再配布を禁ず。リンクは歓迎。
Ver. 2025.10.15.a
フリーのツールを活用した Verilog シミュレーションと波形確認
Windows 11 の PowerShell 上での動作例
(コマンドプロンプト、Cygwin もアリ)
iverilog は古き良きCUI(Character User Interface)のツールである。 故にマウスでクリックして実行しても何も起こらない。 CUI用のターミナル、いわゆる“黒い画面”を起動して そこで命令を打ち込んで実行していく。 イマドキの若者の目にはまるで古代魔術のように見えるかもしれないが、 バッチ処理では非常に強力なツールとなる。 例えば「条件をかえながら100パターンの実行を繰り返す」というような作業を、 GUIでマウスをクリクリしながらやりたいか? 是非、使いこなして欲しい。
※2025.10.15 現在の情報
Icarus Verilog のサイトからインストールダウンロードして実行する。
これでインストールするとGTKWaveも併せてインストールされる。
ここでは iverilog-v12-20220611-x64_setup.exe
を使用し、
インストール先のフォルダは C:\Apps\iverilog
とした。
インストール時の設定で
“[  ] Add executable folder(s) to the user PATH”は指定しない方がよいだろう。
あれこれツールをインストールするたびにすべてコマンドパスに登録していたら、コマンド検索の優先順位が混乱してトラブルのもとになる。
それよりも、つかいたいときにつかいたいものだけ登録するほうが安心である。
方法は後述する。
$ENV:Path
 
# コマンドパス(実行するコマンドの検索先)を確認する。
$ENV:Path=$ENV:Path+";C:\Apps\iverilog\bin;C:\Apps\iverilog\gtkwave\bin"
 
# コマンドパスに iverilog と gtkwave の場所を追加する。
iverilog -V
 
# iverilogを実行し、バージョンを確認する。
gtkwave -V
 
# gtkwaveを実行し確認する。C:\home\t-izumi\iverilog
とする。
cd C:\home\t-izumi\iverilog
 
# 作業フォルダに移動する。
iverilog -o tb_counter.vvp tb_counter.v counter.v
 
# 検証対象 counter.v
とテストベンチ tb_counter.v
からシミュレーション用の中間ファイル tb_counter.vvp
を生成する。
vvp tb_counter.vvp
 
# シミュレーションを実行する。結果は波形ファイル tb_counter.vcd に保存される。
gtkwave tb_counter.vcd
 
# gtkwave を起動する。
gtkwave tb_counter.vcd tb_counter.sig
 
# 波形ファイルと表示信号リストを与えて gtkwave を起動する。
tb_counter.bat
 
# バッチファイルを実行する。GUIのダブルクリックでも実行できる。
echo %PATH%
 
# コマンドパスを確認する。
set PATH=%PATH%;C:\Apps\iverilog\bin;C:\Apps\iverilog\gtkwave\bin
 
# コマンドパスに iverilog と gtkwave の場所を追加する。
echo $PATH
 
# コマンドパスを確認する。
export PATH=$PATH:/cygdrive/c/Apps/iverilog/bin/:/cygdrive/c/Apps/iverilog/gtkwave/bin/
 
# コマンドパスに iverilog と gtkwave の場所を追加する。