Visualizerを1コマンドで実行する!便利なqrunコマンド

QuestaSimでシミュレーションを実行する際、コンパイル・オプティマイズ・シミュレーションを個別に実行していませんか?
Questa Base/Core/Oneに追加されたqrunコマンドを使えば、これらの作業をたった1コマンドで完結できます。本記事ではqrunコマンドの基本的な使い方から、Visualizerを使った波形確認まで順を追って解説します。
この記事でわかること
- qrunコマンドでシミュレーションのバッチ実行を簡単かつ定型的に実行
- QuestaSimに追加されたVisualizerを簡単に実行
- シミュレーションのバッチ実行、GUI実行を使い分け
qrunコマンドとは
qrunコマンドはQuesta Base/Core/Oneに追加されたシミュレーション実行コマンドです。
従来のQuestaSimではvlog(コンパイル)→vopt(オプティマイズ)→vsim(シミュレーション)という3つのステップを個別に実行する必要がありました。
qrunコマンドはこれらを1コマンドに集約しており、シミュレーション実行までの手順を大幅に簡略化できます。
VHDL、Verilog、SystemVerilogに対応しており、言語を混在させた設計でもそのまま実行できます。またWindows、Linux両環境で動作し、コマンドラインから実行するためスクリプトへの組み込みや自動化にも適しています。
qrunコマンドには以下のメリットがあります。
- コンパイル、オプティマイズ、シミュレーションを1コマンドで実行
- HDLファイルとオプションを指定するだけで、残りはツールが自動で処理
- バッチ実行とGUI実行(Visualizer Liveシミュレーション)をオプションで切り替え可能
qrunコマンドの実行方法は次のとおりです。
qrunコマンドの実行方法
qrunコマンドの実行方法はとても簡単です。
Windows環境ではコマンドプロンプトまたはターミナル、Linux環境ではターミナルを開きます。特別な事前設定は不要で、QuestaSimのインストール後すぐに使用できます。 実行はすべてコマンドラインから行うため、スクリプトへの組み込みや自動化にも適しています。
qrun コマンドでシミュレーションバッチ実行(最速モード)
qrunコマンドの後にシミュレーションで必要となるRTL、テストベンチを指定して実行します。VHDL/Verilog/SystemVerilogなど言語を意識することなく羅列し、-topでテストベンチトップを指定します。
qrun vlog_src/*.v vhdl_src/*.vhd -top top

このコマンド実行ではフルにオプティマイズが実行され最高速でシミュレーションを実行します。
そのため、この実行では波形保存ができません。テストベンチで期待値照合を行う、$displayなどでシミュレーションの進捗や結果を判断する仕組みを組み込むことが必要になります。
qrunコマンドで波形保存(デバッグモード)
波形保存をしたい場合には以下のように"-visualizer"オプションを指定します。
qrun vlog_src/*.v vhdl_src/*.vhd -top top -visualizer

このコマンド実行ではすべての信号波形を保存します。波形保存の制御はオプション設定で可能です。
詳細はツール付帯のユーザガイドなどでご確認ください。
Visualizer GUIの起動と波形表示
シミュレーション実行後、波形表示を行う場合には以下のコマンドでVisualizerを起動します。
visualizer -designfile design.bin -wavefile qwave.db

コマンド実行後、Visualizer GUIが起動します。階層ブラウザからインスタンス上で右クリックしAdd Waveで波形が表示されます。
Visualizerでライブシミュレーションを実行
qrunコマンドではライブシミュレーションを実行することもできます。ライブシミュレーションはシミュレーションを実行しながら波形を確認することができます。ライブシミュレーションの実行は"-gui"オプションを付けて実行します。
qrun vlog_src/*.v vhdl_src/*.vhd -top top -visualizer -gui

qrunコマンド実行後、Visualizer GUIが表示されますので確認をしたい波形を波形ウィンドウにAdd Waveコマンドで登録します。
Transcriptウィンドウから"run -all"や"run 10ns"などシミュレーション実行時間を指定し、シミュレーションを実行します。シミュレーション実行後、そのまま波形確認が行えます。
qrunコマンドはコンパイルからシミュレーションまでを1コマンドで完結できる、シンプルかつ強力なコマンドです。
バッチ実行とライブシミュレーション実行をオプション1つで切り替えられるため、用途に応じた柔軟な使い方が可能です。Questa Base/Core/Oneをお使いの方はぜひ活用してみてください。
おわりに
いかがでしたでしょうか。今回の記事でqrunコマンドを使ったシミュレーションのバッチ実行、波形保存、そしてVisualizerを使ったライブシミュレーションの実行方法についてご理解いただければ幸いです。
qrunコマンドを活用することで、日々のシミュレーション作業がよりシンプルかつ効率的になれば嬉しいです。
最後までご覧いただきありがとうございました。
ModelSimの基本的なGUIでの操作方法を付属のサンプルを利用して確認する手順をチュートリアルにまとめました。
現時点の最新バージョン2024.1をベースにしておりますが、以前のバージョンでも同様の操作で使用できます。
以下より、ダウンロードいただけます。
qrunコマンドやQuestaSimの導入について、まずはお気軽にお問い合わせください。




