AR# 64061

Vivado シミュレーション ライブラリの使用 - UNIFAST ライブラリ

説明

デザインにコンポーネントをインスタンシエートする際、シミュレータでコンポーネントの機能を記述したライブラリが参照されていないと、シミュレーションが正しく実行されません。

ザイリンクス ライブラリは、モデルの機能に基づいてカテゴリに分類されます。

シミュレーション ポイントに従って、それぞれのシミュレーション ライブラリを指定する必要があります。

このアンサーでは、7 シリーズの場合の UNIFAST ライブラリについて詳しく説明します。

ソリューション

UNIFAST ライブラリはオプションのライブラリで、RTL ビヘイビアー シミュレーション中に 7 シリーズ デザインのシミュレーション ランタイムを向上するために使用できます。

シミュレーション ランタイムの速度は、シミュレーション モードで 7 シリーズのプリミティブ機能のサブセットがサポートされるようにすると上げることができます。

UNIFAST ライブラリ モデルのリストおよびフル モデルとの機能面における相違については、『Vivado Design Suite ユーザー ガイド : ロジック シミュレーション』 (UG900) の各リリースを参照してください。

注記 : UNIFAST ライブラリは、サインオフ シミュレーションには使用できません。これは、ライブラリ コンポーネントに、フル モデルで使用可能なすべてのチェック/機能がすべて含まれているわけではないからです。

デザインの最初の検証には UNIFAST ライブラリを使用し、完全な検証には UNISIM ライブラリを使用することをお勧めします。

VHDL UNIFAST ライブラリ

VHDL UNIFAST ライブラリは <<Vivado_Install_Dir>/data/vhdl/src/unifast にあります。

VHDL UNIFAST ライブラリの基本構造は Verilog と同じであり、アーキテクチャまたはライブラリと共に使用できます。

ライブラリはテスト ベンチに含めることができます。

次の例では、for 呼び出しで掘り下げた階層が使用されています。

library unisim;
library unifast;
configuration cfg_xilinx of testbench
is for testbench_architecture_name
   for instance_label:component_name
      use entity work.component_name(arch);
       for arch
         for all:MMCME2
          use entity unifast.MMCME2;
         end for;
       for inst:DSP48E1;
         use entity unifast.DSP48E1;
      end for;
   end for;
  end for;
end for;
end cfg_xilinx;

Verilog UNIFAST ライブラリ

Verilog UNIFAST ライブラリは <<Vivado_Install_Dir>/data/verilog/src/unifast にあります。

Verilog UNIFAST ライブラリを使用する方法は 2 通りあります。 

方法 1 : UNIFAST ライブラリを使用して該当のモデルをすべてシミュレーションする (推奨)

Vivado シミュレータ、ModelSim、IES、または VCS に対する Vivado プロジェクト環境で UNIFAST サポート (高速シミュレーション モデル) をイネーブルにするには、[Simulation Settings] ダイアログ ボックスの [<simulator>.elaborate.unifast] チェックボックスをオンにします。

Vivado 2015.1 以降では、<simulator>.elaborate.unifast オプションは使用できなくなりました。Vivado シミュレータ、ModelSim、IES、または VCS に対する Vivado プロジェクト環境で UNIFAST サポート (高速シミュレーション モデル) をイネーブルにするには、Tcl コンソールに次のコマンドを入力します。

set_property unifast true [current_fileset simset]

方法 2 : UNIFAST ライブラリを使用して特定のモデルをシミュレーションする (上級ユーザー向け)

個別のライブラリ コンポーネントを指定するには、Verilog コンフィギュレーション文を使用します。

config.v ファイルで次を指定します。

  • 最上位モジュールまたはコンフィギュレーションの名前 (例 : config cfg_xilinx;)

  • デザイン コンフィギュレーションが適用される対象の名前 (例 : design test bench;)

  • 明示的に呼び出されないセルまたはインスタンスのライブラリ検索順 (例 : default liblist unisims_ver unifast_ver;)

  • 特定の CELL または INSTANCE から特定のライブラリへのマッピング(例 : instance testbench.inst.O1 use unifast_ver.MMCME2;)

注記 : ModelSim (vsim) の場合は、階層名に -genblk が追加されます。

(例 : instance testbench.genblk1.inst.genblk1.O1 use unifast_ver.MMCME2;)

config.v の例

config cfg_xilinx;
design testbench;
default liblist unisims_ver unifast_ver;
//Use fast MMCM for all MMCM blocks in design
cell MMCME2 use unifast_ver.MMCME2;
//use fast DSP48E1for only this specific instance in the design
instance testbench.inst.O1 use unifast_ver.DSP48E1;
//If using ModelSim or Questa, add in the genblk to the name
(instance testbench.genblk1.inst.genblk1.O1 use unifast_ver.DSP48E1)
endconfig

アンサー レコード リファレンス

マスター アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
64053 ザイリンクス シミュレータ ソリューション センター - デザイン アシスタント - シミュレーション ライブラリ - UNIFAST N/A N/A
AR# 64061
日付 04/26/2016
ステータス アクティブ
種類 一般
デバイス 詳細 概略
ツール