ファイルの解析
構文 :
vhpcomp [-work <library_name> ]<file_name> .vhd vhpcomp -work <library_name><file_name> .vhd
第 3 章 : VHDL シ ミュ レ ーシ ョン
説明 :
• -work: オプションで、デフォルトのworkライブラリ以外を指定する場合に使用する 必要があります。
•
<library_name>
:<file_name>
で指定されたソースがコンパイルされるライブラリを指定します。 1 行に複数の VHDL ファイル名を指定できます。
このコマンドの詳細は、「vhpcomp コマンドの概要と構文」を参照してください。
ISim シミュレーション実行ファイルの生成 : fuse の実行
構文 :
fuse {[<library_name>. ]<top_name> }-o <output_file_name>
説明 :
• {[
<library_name>
.]<top_name>
} : ライブラリおよび最上位のデザイン ユニット名を指定します。 たとえばテスト ベンチ ファイルのデザイン ユニット名を入力します。 ライブラリ名を 含めるのはオプションです。 ライブラリ名が指定されない場合は、デフォルトのライブラリ 名 work が使用されます。 例 : work.topunit,work.glbl,mylib.glbl
• -o: オプションです。 このオプションを使用しないと、シミュレーション実行ファイルの名 前がデフォルト名x.exeになります。
fuse コマンドの詳細は、「fuse コマンドの概要と構文」を参照してください。
シミュレーション
コンパイルおよび ISim シミュレーション実行ファイルの生成が完了したら、シミュレーションを 実行します。 fuse コマンドで生成された ISim シミュレーション実行ファイルを実行するとシミュ レーションが開始します。
開始後にファイルに含まれる Tcl コマンドを実行する場合は、–tclbatchオプションを使用 します。
また、SDF ファイルに含まれるタイミング遅延を使用するように指定することもできます。
構文 :
<executable_name>.exe -tclbatch <tcl_file_name>
-sdfmin|-sdftyp|-sdfmax [<instance>=]<sdf file name>
説明 :
• <executable_name>.exe : fuse -oオプションを使用して指定しない限り x.exe が使 用されます。
• -sdfmin|-sdftyp|-sdfmax: ISim で使用する遅延の種類 (minimum、typical、ま たは maximum) を指定します。
• <instance> : SDF バック アノテーションを実行するインスタンスの階層パス名を指定 します。
• <sdf file name> : アノテートする SDF ファイル名を指定します。
このコマンドの詳細は、「ISim シミュレーション実行ファイル コマンドの概要と構文」を参照し てください。
第 3 章 : VHDL シミュレーション
ライブラリ マップ ファイル
メモ : 次の情報は、アドバンス ユーザーを対象としています。
ISim HDL コンパイル プログラムvhpcomp、vlogcomp、およびfuseでは、xilinxsim.iniコ ンフィギュレーション ファイルを使用して VHDL および Verilog の論理ライブラリの定義およ び物理ロケーションが識別されます。
検索順
コンパイラは、次のリストしたディレクトリ順にxilinxsim.iniファイルを検索します。
1. $XILINX/vhdl/hdp/<platform>
2. vlogcomp、vhpcomp、または fuseコマンドの-initfileオプションで指定された ユーザー ファイル。-initfileオプションが指定されていない場合は、作業中のディ レクトリに含まれるxilinxsim.iniファイル。
構文
xilinxsim.iniファイルのフォーマットは、次のとおりです。
<logical_library1> = <physical_dir_path1>
<logical_library2> = <physical_dir_path2>
. .
<logical_libraryn> = <physical_dir_pathn>
例
次に、xilinxsim.iniファイルの例を示します。
VHDL
std=C:/libs/vhdl/hdp/
stdieee=C:/libs/vhdl/hdp/ieee work=C:/work
Verilog
unisims_ver=$XILINX/rtf/verilog/hdp/nt/unisims_ver
xilinxcorelib_ver=C:/libs/verilog/hdp/nt/xilinxcorelib_ver mylib=./mylib
work=C:/work
第 3 章 : VHDL シ ミュ レ ーシ ョン
機能/制限
xilinxsim.iniファイルでは、次の点に注意してください。
• xilinxsim.iniファイルで指定するライブラリ/パスは、1 行に 1 つずつ記述する 必要があります。
• 物理パスに該当するディレクトリがない場合は、コンパイラで書き込みが行われるときに vhpcompまたはvlogcompによってディレクトリが作成されます。
• 物理パスは、環境変数を使用して記述できます。 環境変数は、$ で始める必要が あります。
• 論理ライブラリのデフォルトの物理ディレクトリはisim/<logical_library_name>
です。
• このファイルのコメントは、「- -」で開始します。
コマンド ライン モードでの対話型シミュレーション
コマンド ライン モードでシミュレーションを実行するときは、Tcl プロンプトでシミュレーション Tcl コマンドを入力して、シミュレーションを実行し、デザインを解析し、デザインをデバッグで きます。 シミュレーション コマンドの詳細は、「シミュレーション コマンドの概要」を参照してく ださい。 コマンドの入力方法のヒントは、「シミュレーション Tcl コマンドの入力」を参照してく ださい。
第 4 章
Verilog シミュレーション
Verilog シミュレーションの概要
コマンド ラインからシミュレーションを実行するときの基本的な手順は、次の 3 つです。
1. デザイン ファイルの解析
2. ISim シミュレーション実行ファイルの生成 3. デザインのシミュレーション
詳細は、次のトピックを参照してください。
• コマンド ラインからの論理シミュレーションの実行
• コマンド ラインからのタイミング シミュレーションの実行
コマンド ラインからの論理シミュレーションの実行 (Verilog デザイン)
Verilog デザインの論理 (ビヘイビア) シミュレーションで UNISIM プリミティブが使用される場 合、次の手順に従う必要があります。
• $XILINX/Verilog/src/glbl.vをライブラリworkにコンパイルします。
• fuseでwork.glblを
<library_name>.<top_name>
の 1 つとして指定します。• fuseで-L unisims_verを指定します。
方法 1 : プロジェクト ファイルの使用 (推奨)
デザイン ファイルの解析
<proj_name>.prjという名前のファイルを作成して、次の構文を含めます。
verilog <library_name> {<file_name_1>.v} {[-d <macro>] [-i
<include_path>]}
verilog <library_name> {<file_name_2>.v} {[-d <macro>] [-i
<include_path>]}
.
verilog <library_name> {<file_name_n>.v} {[-d <macro>] [-i
<include_path>]}
第 4 章 : Verilog シミュレーション
説明 :
•
verilog
: ソース ファイルが Verilog ファイルであることを示します。•
<library_name>
: 指定行のソースがコンパイルされるライブラリを指定します。 1 行に複数の Verilog ソース ファイルを指定できます。
•
[-d <macro>]
:[-i <include_path>]
で指定されているロケーションに配置されているマクロを定義します。
例 :
verilog work top.v testbench.v
ISim シミュレーション実行ファイルの生成 : fuse の実行
HDL リンカ fuse では解析ノードでデザインのスタティック エラボレーションの実行、各モジュー ル インスタンスのオブジェクト コードの生成、および生成したオブジェクト コードの ISim シミュ レーション エンジン ライブラリへのリンク付けを実行して、ISim シミュレーション実行ファイル を作成します。
構文 :
fuse {[<library_name> .]<top_name> }-prj <proj_name>.prj -L
<Verilog_library> -o <output_file_name>
説明 :
• {[
<library_name>
.]<top_name>
} : ライブラリおよび最上位のデザイン ユニット名を指定します。 ライブラリ名はオプションで、指定されていない場合はデフォルトでworkに なります。 指定されている場合は、最上位を含む HDL ファイルをプロジェクト ファイ ルで使用されている関連ライブラリ名でコンパイルする必要があります。 たとえばテス ト ベンチ ファイルのデザイン ユニット名を入力します。
メモ : ビヘイビア デザインで UNISIM プリミティブがインスタンシエートされる場合、
glblを top_name として使用する必要があります。
• -L
<Verilog_library>
: ビヘイビア シミュレーションが UNISIM プリミティブに基づいている場合、unimacro_verやxilinxcorelib_ver などのザイリンクス ライブラ リに加えてunisims_verを含める必要があります。
• -o: オプションです。 このオプションを使用しないと、シミュレーション実行ファイルの名 前がデフォルト名x.exeになります。
例 :
fuse work.test_bench work.glbl -prj mydesign.prj -L unisims_ver -L unimacro_ver -L xilinxcorelib_ver -o test_bench.exe
fuse コマンドの詳細は、「fuse コマンドの概要と構文」を参照してください。