ザイリンクス シミュレーション ライブラリの使用 - 2022.1 日本語

Vivado Design Suite ユーザー ガイド: ロジック シミュレーション (UG900)

Document ID
UG900
Release Date
2022-04-21
Version
2022.1 日本語

ザイリンクス シミュレーション ライブラリは、VHDL-93 および Verilog-2001 言語規格をサポートするシミュレータで使用できます。ライブラリには、ザイリンクス ハードウェア デバイスを正しくシミュレーションするのに必要な特定の遅延およびモデル情報が組み込まれています。

クロック エッジ内のブロックにはノンブロッキング割り当てを使用します。これ以外の場合、Verilog のブロッキング割り当てを使用してコードを記述します。同様に、プロセス内のローカル計算には変数割り当てを、プロセス間のデータフローが必要な場合は信号割り当てを使用します。

データがクロックと同時に変化する場合は、データ入力がクロック エッジ後に発生するようシミュレータでスケジューリングされる可能性があります。この場合、データを最初のクロック エッジより前に供給するつもりであっても、そのデータは次のクロック エッジまで供給されません。

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

次の表に、ザイリンクスの提供するシミュレーション ライブラリを示します。

表 1. シミュレーション ライブラリ
ライブラリ名 説明 VHDL ライブラリ名 VHDL ライブラリ名
UNISIM ザイリンクス プリミティブの論理シミュレーション。 UNISIM UNISIMS_VER
UNIMACRO ザイリンクス マクロの論理シミュレーション。 UNIMACRO UNIMACRO_VER
UNIFAST 高速シミュレーション ライブラリ。 UNIFAST UNIFAST_VER
SIMPRIM ザイリンクス プリミティブのタイミング シミュレーション。 なし SIMPRIMS_VER 1
SECUREIP

PCIe IP、ギガビット トランシーバーなど、ザイリンクス デバイス機能の論理シミュレーションおよびタイミング シミュレーション用のシミュレーション ライブラリです。

IP は、次のディレクトリの SECUREIP の下にリストされます。

<Vivado_Install_Dir>/data/secureip

SECUREIP SECUREIP
XPM ザイリンクス プリミティブの論理シミュレーション XPM XPM 2
  1. SIMPRIMS_VER は、Verilog SIMPRIM 物理ライブラリがマップされている論理ライブラリ名です。
  2. XPM はコンパイル済み IP としてサポートされています。プロジェクトにソース ファイルを追加する必要はありません。サードパーティ シミュレータを使用している場合は、Vivado により compile_simlib で生成されたコンパイル済み IP にマップされます。
重要: シミュレーション ポイントに従って、それぞれのシミュレーション ライブラリを指定する必要があります。インプリメンテーション前とインプリメンテーション後のネットリストのゲート レベル セルは異なります。

次の表に、各シミュレーション ポイントで必要なシミュレーション ライブラリをリストします。

表 2. シミュレーション ポイントと関連ライブラリ
シミュレーション ポイント UNISIM UNIFAST UNIMACRO SECUREIP SIMPRIM (Verilog のみ) SDF
1. レジスタ トランスファー レベル (RTL) (ビヘイビアー) なし ×
2. 合成後シミュレーション (論理) N/A N/A なし
3. 合成後シミュレーション (タイミング) なし なし N/A
4. インプリメンテーション後シミュレーション (論理) N/A N/A なし
5. インプリメンテーション後シミュレーション (タイミング) なし なし N/A
重要: Vivado シミュレータでは、コンパイル済みのシミュレーション デバイス ライブラリが使用されます。アップデートをインストールすると自動的にこれらのライブラリがアップデートされます。
注記: Verilog SIMPRIMS_VER では、UNISIM と同じソースに加え、タイミング アノテーション用に特別なブロックも使用されます。SIMPRIMS_VER は Verilog SIMPRIM がマップされている論理ライブラリ名です。

次の表に、ライブラリのディレクトリを示します。

表 3. シミュレーション ライブラリのディレクトリ
ライブラリ HDL タイプ ディレクトリ
UNISIM Verilog <Vivado_Install_Dir>/data/verilog/src/unisims
VHDL <Vivado_Install_Dir>/data/vhdl/src/unisims
UNIFAST Verilog <Vivado_Install_Dir>/data/verilog/src/unifast
VHDL <Vivado_Install_Dir>/data/vhdl/src/unifast
UNIMACRO Verilog <Vivado_Install_Dir>/data/verilog/src/unimacro
VHDL <Vivado_Install_Dir>/data/vhdl/src/unimacro
SECUREIP Verilog <Vivado_Install_Dir>/data/secureip/

次のセクションでは、これらのライブラリについて詳細に説明します。