Modelsimのコマンド(vlog, vsim)スクリプト
Modelsimを使ってverilogソースをコンパイルしてシミュレーションするスクリプトを作成したのでメモしておく。
Modelsimのコマンドスクリプトサンプル
スクリプトを実行するディレクトリ構成
sample/ |- sample.sv /*回路モジュール*/ |- sample_tb.sv /*テストベンチ*/ |- run_msim.sh /*コマンドスクリプト*/ |- work/ /*作業ディレクトリ*/
コマンドスクリプト
#!/bin/sh PRJ_NAME=sample TOP_NAME=sample_tb WORK_DIR=work # Modelsim UImode argument(CUI(-c) or GUI(-g)) MODE=$1 # Create work directory if [ ! -d $WORK_DIR ]; then vlib $WORK_DIR vmap $PRJ_NAME "./$WORK_DIR" fi # Compile vlog -work $PRJ_NAME -sv -incr sample.sv sample_tb.sv # Run modelsim # Select Modelsim UImode(-c or -g). if [ $MODE = -c ]; then echo "===== CUI MODE =====" vsim $TOP_NAME -c -lib $PRJ_NAME -do "run -all;quit" else echo "===== GUI MODE =====" vsim $TOP_NAME -lib $PRJ_NAME -do "add wave -position insertpoint sim:/$TOP_NAME/*" fi