Vivado シミュレータ実行ファイルの xvhdl
は、VHDL のデザイン ユニットをパーサー ダンプ (.vdb) に変換するために使用します。Vivado シミュレータではデフォルトで 93 および 2008 規格 (STD) と IEEE パッケージが使用されるので、93 および 2008 機能を自由に混合させることができます。VHDL-93 規格 (STD) のみと IEEE パッケージを使用する場合は、xvhdl に -93_mode
を渡します。VHDL 2008 モードのみを使用したファイルをコンパイルするには、xvhdl に -2008
オプションを渡す必要があります。
たとえば、top.vhdl というデザインを VHDL 2008 でコンパイルするには、次のコマンド ラインを使用します。
xvhdl -2008 -work mywork top.vhdl
Vivado シミュレータ実行ファイル xelab
は、デザインをエラボレートし、シミュレーション用の実行イメージを作成するために使用します。
xelab では、次のいずれかを実行できます。
-
xvhdl
で作成されたパーサー ダンプのエラボレート - VHDL ソース ファイルを直接読み込み。
xvhdl で作成されたパーサー ダンプをエラボレートするのに必要なオプションはありません。xelab で -vhdl2008
を指定すると、VHDL ソース ファイルが直接使用できます。
例 1:
xelab top -s mysim; xsim mysim -R
例 2:
xelab -vhdl2008 top.vhdl top -s mysim; xsim mysim -R
コマンド ラインで xvhdl
および xelab
に VHDL ファイルを指定する代わりに、PRJ ファイルを使用できます。デザインに top.vhdl (2008 モード) および bot.vhdl (93 モード) という 2 つのファイルがある場合、次のように example.prj という名前のプロジェクト ファイルを作成できます。
vhdl xil_defaultlib bot.vhdl
|
vhdl2008 xil_defaultlib top.vhdl
|
プロジェクト ファイルでは、各行をファイルの言語タイプで開始し、xil_defaultlib
などのライブラリ名をその後に記述します。ファイルが複数ある場合は、名前をスペースで区切ります。VHDL 93 の場合、言語タイプとして vhdl
を使用する必要があります。VHDL 2008 の場合は、vhdl2008
を使用してください。
PRJ ファイルは、次の例のように使用できます。
xelab -prj example.prj xil_defaultlib.top -s mysim; xsim mysim -R
また、VHDL 93 および VHDL 2008 デザイン ユニットを混合するには、xvhdl
で正しい言語モードを指定してファイルを別々にコンパイルし、デザインの最上位をエラボレートします。たとえば、bot.vhdl ファイルに bot という VHDL 93 モジュールが含まれ、top.vhdl ファイルに top という VHDL 2008 モジュールが含まれる場合、次の例に示すようにコンパイルします。
xvhdl bot.vhdl
xvhdl -2008 top.vhdl
xelab -debug typical top -s mysim
実行ファイルを xelab で生成したら、シミュレーションを通常どおりに実行できます。
例 1:
xsim mysim -gui
例 2:
xsim mysim -R