IP を生成する際は OOC フローを使用することをお勧めします。このフローは Vivado Design Suite のデフォルトでもあります。OOC フローを使用するとプロジェクト全体で実行時間が短縮され、プロジェクト run を実行する際に IP を合成し直す必要がなくなります。
Vivado の OOC フローでは、IP がスタンドアロン モジュールとして合成され、OOC の DCP が生成されます。デフォルトの入力クロック定義のある IP を合成すると、Vivado の OOC フロー専用のザイリンクス デザイン制約 (XDC) 出力ファイル (_ooc.xdc
) も生成されて使用されます。生成される DCP はコンテナー ファイルで、ネットリストと制約が含まれます。_ooc.xdc
ファイルは、IP 定義に含まれます。
最上位デザインを合成する際は、DCP ファイルと共に HDL スタブ モジュールが提供され、IP に対してブラック ボックスが推論されます。また、デザイン全体の合成中には、最上位デザインで使用される IP の出力するすべてのクロックを定義する XDC ファイル (_in_context.xdc
) が DCP から提供されます。詳細は、IP 制約の管理 を参照してください。
インプリメンテーションでは、Vivado Design Suite によって IP の DCP からのネットリストが、最上位デザイン ファイルの合成で生成されたネットリストとリンクされ、IP ブラック ボックスが解決されます。インプリメンテーションで使用するために生成された IP の XDC 出力ファイルがユーザー制約と共に適用されます。
デフォルトでは、次の 2 つの利点から OOC フローが使用されます。
- 最上位デザインの一部として IP を再合成するのではなく、IP のカスタマイズまたはバージョンが変更された IP のみが合成されるので、合成の実行時間が短縮されます。
-
<ip_name>_sim_netlist.v
または<ip_name>_sim_netlist.vhdl
構造シミュレーション ネットリストを生成します。これらのファイルは、単一言語シミュレータを使用していて、IP でその言語のビヘイビアー HDL が提供されない場合にシミュレーションに使用できます。詳細は、IP のシミュレーション を参照してください。注記: Vivado Design Suite の 2015.3 より前のバージョンでは、シミュレーション ファイルの名前はnamed *_funcsim.v
および*_funcsim.vhdl
です。