IP Toolbenchが生成するIP機能シミュレーション・モデルを使用して、
auto_verify_ddr_timing_constraints.tcl バリエーション固有のタイミング検証スクリプト を呼び出す、自動タイミング検証スクリプトです。
constraints_out.txt 制約付加スクリプトの生成時に IP Toolbenchが生
成するログ・ファイルです。
ddr_lib_path.tcl Tclライブラリ・パス・ファイルです。
ddr_pll_fb_stratixii.vhdまたは.v Stratix IIフィードバックPLLのデザイン・ファイ ルです。
ddr_pll_<device name>.vhdまたは.v システムPLLのデザイン・ファイルです。
generic_ddr_dimm_model.vhd VHDLシミュレーション・ファイルです。
generic_ddr_sdram.vhd VHDLシミュレーション・ファイルです。
generic_ddr2_sdram.vhd VHDLシミュレーション・ファイルです。
remove_constraints_for_<variation name>.tcl バリエーション用の制約削除スクリプトです。
top_ddr_settings.txt カスタム・バリエーションのパラメータを格納する
重要な設定ファイルです。IP Toolbench は、この ファイルを使用して制約付加スクリプトを生成し ます。このファイルは、タイミング検証スクリプト とDDR Timing Wizardでも読み出されます。
top_pre_compile_ddr_timing_summary.txt コンパイル前のシステム・タイミング解析の結果を 格納するログ・ファイルです。
verify_timing_for_<variation name>.tcl タイミング検証スクリプトです。
表2–1の注:
(1) <project name>は、Quartus IIプロジェクトのトップレベル・エンティティの名前です。
(2) <variation name>は、バリエーション名です。
表2–1.生成されるファイル (3/3) 注(1) & (2)
ファイル名 説明
テストベンチについて詳しくは、3–20ページの「デザイン例」を参照し てください。
IP 機能シミュレーション・モデルは、アルテラがサポートする任意の VHDLまたはVerilog HDLシミュレータで使用できます。ModelSimシ ミュレータの操作方法は、他のシミュレータとは異なります。
ModelSimシミュレータによるシミュレーション
ModelSim®シミュレータを使用して、デザイン例をシミュレートするに
は、以下のステップに従います。
1. 選択したパラメータと一致するメモリ・モデルを取得し、それを
<directory name>\testbench ディレクトリに保存します。例えば、
Micronメモリ・モデルは、Micron ウェブサイト(www.micron.com)
からダウンロードできます。
2. VHDLの場合、generic_ddr_sdram.vhdを編集して、メモリ・モデ ルをインスタンス化します(ファイルにはすでに3つのMicronメ モリ・モデルのインスタンス例が含まれている)。
または
Verilog HDLの場合、テストベンチでのメモリのインスタンス化を
編集してメモリ・モデルを一致させます。
3. ModelSimアルテラ・シミュレータを起動します。
4. 作業ディレクトリをIP Toolbenchが生成したファイル・ディレクト リ<directory name>\testbench\modelsimに変更します。
5. 以下のコマンドを入力します。
set memory_model <model_name>
ここで、<model_name>は、ダウンロードしたメモリ・モデルのファ イル名です。
6. IP機能シミュレーション・モデルを使用してシミュレートするには、
以下のコマンドを入力します。
source <variation name>_ddr_sdram_vsim.tcl
7. ゲート・レベル・タイミング・シミュレーション(Quartus II ソフ トウェアからのVHDLまたはVerilog HDL ModelSim出力)の場 合、以下のコマンドを入力します。
set use_gate_model 1
source <variation name>_ddr_sdram_vsim.tcl
他のシミュレータによるシミュレーション
IP Toolbenchが生成するTclスクリプトは、ModelSimシミュレータ専 用です。別のシミュレーション・ツールを使用する場合は、以下のステッ プに従います。生成されたスクリプトをガイドとして使用することもで きます。また、適切なメモリ・モデルをダウンロードしてコンパイルす ることも必要です。
ここでは、以下の変数を適用します。
● <QUARTUS ROOTDIR>は、Quartus IIインストール・ディレ クトリです。
● <simulator name>は、シミュレーション・ツールの名前です。
● <device name>は、アルテラのデバイス・ファミリ名です。
● <project name>は、Quartus IIトップレベル・エンティティまた はモジュールの名前です。
● <testbench name>は、テス トベン チ・エンテ ィテ ィまた はモ ジュールの名前です。
● <MegaCore install directory>は、DDRおよびDDR2 SDRAMコン トローラ・インストール・ディレクトリです。
VHDL IP機能シミュレーション
IP機能シミュレーション・モデルを使用してVHDLシミュレーション を実行する場合は、以下のステップに従います。
1. <project directory>\testbenchディレクトリにディレクトリを作成し ます。
2. このディレクトリ内でシミュレーション・ツールを起動し、以下の ライブラリを作成します。
● altera_mf
● lpm
● sgate
● <device name>
● altera
● auk_ddr_user_lib
3. 表2–2のファイルを適切なライブラリにコンパイルします。これら のファイルはVHDL93フォーマットです。
4. Tcl 変数 gRTL_DELAYS を 1 に設定します。これは、テストベンチ にRTLシミュレーションに必要なシステム内での追加遅延をモデル 化するよう指示します。
5. タイムステップをピコ秒に設定して、シミュレータにテストベンチ をロードします。
表2–2.コンパイルするファイル—VHDL IP機能シミュレーション・モデル
ライブラリ ファイル名
altera_mf <QUARTUS ROOTDIR>/eda/sim_lib/altera_mf_components.vhd
<QUARTUS ROOTDIR>/eda/sim_lib/altera_mf.vhd lpm <QUARTUS ROOTDIR>/eda/sim_lib/220pack.vhd
<QUARTUS ROOTDIR>/eda/sim_lib/220model.vhd sgate <QUARTUS ROOTDIR>/eda/sim_lib/sgate_pack.vhd
<QUARTUS ROOTDIR>/eda/sim_lib/sgate.vhd
<device name> <QUARTUS ROOTDIR>/eda/sim_lib/<device name>_atoms.vhd
<QUARTUS ROOTDIR>/eda/sim_lib/<device name>_components.vhd altera <QUARTUS ROOTDIR>/libraries/vhdl/altera/altera_europa_support_lib.vhd auk_ddr_user_lib <MegaCore install directory>/lib/auk_ddr_tb_functions.vhd
<project directory>/<variation name>_auk_ddr_dqs_group.vhd
<project directory>/<variation name>_auk_ddr_clk_gen.vhd
<project directory>/<variation name>_auk_ddr_datapath.vhd
<project directory>/<variation name>_auk_ddr_datapath_pack.vhd
<project directory>/<v>.vho
<MegaCore install directory>/lib/example_lfsr8.vhd
<project directory>/<variation name>_example_driver.vhd
<project directory>/ddr_pll_<device name>.vhd
<project directory>/ddr_pll_fb_<device name>.vhd (1)
<project directory>/<variation name>_auk_ddr_dll.vhd (2)
<project directory>/<project name>.vhd
<project directory>/testbench/<testbench name>.vhd 表2–2の注:
(1) フィードバック・クロック・モードのみ。
(2) Stratixシリーズのみ。
VHDLゲート・レベル・シミュレーション
ゲート・レベル・モデルを使用してVHDLシミュレーションを実行する 場合は、以下のステップに従います。
1. <project directory>\testbenchディレクトリにディレクトリを作成し ます。
2. このディレクトリ内でシミュレーション・ツールを起動し、以下の ライブラリを作成します。
● <device name>
● altera
● auk_ddr_user_lib
3. 表2–3のファイルを適切なライブラリにコンパイルします。これら のファイルはVHDL93フォーマットです。
4. Tcl 変数 gRTL_DELAYS を 0 に設定します。これは追加挿入遅延が ゲート・レベル・モデル内で適用されるため、この遅延をシステム で使用しないようテストベンチに指示するものです。
5. タイムステップをピコ秒に設定して、シミュレータにテストベンチ をロードします。
Verilog HDL IP機能シミュレーション 表2–3.コンパイルするファイル—VHDLゲート・レベル・シミュレーション
ライブラリ ファイル名
<device name> <QUARTUS ROOTDIR>/eda/sim_lib/<device name>_atoms.vhd
<QUARTUS ROOTDIR>/eda/sim_lib/<device name>_components.vhd altera <QUARTUS ROOTDIR>/libraries/vhdl/altera/altera_europa_support_lib.vhd auk_ddr_user_lib <MegaCore install directory>/lib/auk_ddr_tb_functions.vhd
<project directory>/simulation/<simulator name>/<project name>.vho (1)
<project directory>/testbench/<testbench name>.vhd 表2–3の注:
(1) 低速または高速モデルをシミュレートする場合は、.vho ファイルにサフィックス _min または _max が追 加されます。適切なファイルをコンパイルします。Quartus IIソフトウェアは、<project name>ディレク トリのsimulation/<simulator name>ディレクトリに定義されたシミュレータ用のモデルを作成します。
1. <project directory>\testbenchディレクトリにディレクトリを作成し ます。
2. このディレクトリ内でシミュレーション・ツールを起動し、以下の ライブラリを作成します。
● altera_mf_ver
● lpm_ver
● sgate_ver
● <device name>_ver
● auk_ddr_user_lib
3. 表2–4のファイルを適切なライブラリにコンパイルします。
4. Tcl変数gRTL_DELAYSを1に設定します。これは、テストベンチ にRTLシミュレーションに必要なシステム内での追加遅延をモデ ル化するよう指示します。
表2–4.コンパイルするファイル—Verilog HDL IP機能シミュレーション・モデル
ライブラリ ファイル名
altera_mf_ver <QUARTUS ROOTDIR>/eda/sim_lib/altera_mf.v lpm_ver <QUARTUS ROOTDIR>/eda/sim_lib/220model.v sgate_ver <QUARTUS ROOTDIR>/eda/sim_lib/sgate.v
<device name>_ver <QUARTUS ROOTDIR>/eda/sim_lib/<device name>_atoms.v auk_ddr_user_lib <project directory>/<variation name>_auk_ddr_dqs_group.v
<project directory>/<variation name>_auk_ddr_clk_gen.v
<project directory>/<variation name>_auk_ddr_datapath.v
<project directory>/<variation name>.vo
<MegaCore install directory>/lib/example_lfsr8.v
<project directory>/<variation name>_example_driver.v
<project directory>/ddr_pll_<device name>.v
<project directory>/ddr_pll_fb_<device name>.v (1)
<project directory>/<variation name>_auk_ddr_dll.v (2)
<project directory>/<project name>.v
<project directory>/testbench/<testbench name>.v 表2–4の注:
(1) フィードバック・クロック・モードのみ。
(2) Stratixシリーズのみ。
5. 転送遅延(ピコ秒のタイムステップ)を使用し、sgate_ver、lpm_ver、
altera_mf_ver、および<device name>_verライブラリをインクルー ドするようにシミュレータをコンフィギュレーションします。
Verilog HDLゲート・レベル・シミュレーション
ゲート・レベル・モデルを使用してVerilog HDLシミュレーションを実 行する場合は、以下のステップに従います。
1. <project directory>\testbenchディレクトリにディレクトリを作成し ます。
2. このディレクトリ内でシミュレーション・ツールを起動し、以下の ライブラリを作成します。
● <device name>_ver
● auk_ddr_user_lib
3. 表2–5のファイルを適切なライブラリにコンパイルします。
4. Tcl 変数 gRTL_DELAYS を 0 に設定します。これは追加挿入遅延が ゲート・レベル・モデル内で適用されるため、この遅延をシステム で使用しないようテストベンチに指示するものです。転送遅延(ピ コ秒のタイムステップ)を使用し、<device name>_verライブラリを インクルードするようにシミュレータをコンフィギュレーションし ます。