読み込み順の変更 - 2023.2 日本語

Vivado Design Suite ユーザー ガイド: 制約の使用 (UG903)

Document ID
UG903
Release Date
2023-11-01
Version
2023.2 日本語

制約セット内での XDC ファイルまたはツールで管理されない Tcl スクリプトの読み込み順序を変更するには、次の手順に従います。

  1. [Sources] ウィンドウで、移動する XDC ファイルまたは Tcl スクリプトを選択します。
  2. そのファイルを、制約セットの適切な位置にドラッグ アンド ドロップします。

図 1 の例を Tcl コマンドにすると、次のようになります。

reorder_files -fileset constrs_1 -before [get_files wave_gen_timing.xdc] \ [get_files wave_gen_pins.xdc]

非プロジェクト モードでは、read_xdc または source コマンドの順序により、制約ファイルが評価される順序が決定します。

制約を含む IP コアを使用する場合は、2 つのグループの制約が次のように自動的に処理されます。

  • クロックに依存しない制約は、PROCESSING_ORDER が EARLY に設定された XDC ファイルに含まれます。
  • クロックに依存する制約は、PROCESSING_ORDER が LATE に設定された XDC ファイルに含まれます。

デフォルトでは、ユーザーの XDC ファイルは PROCESSING_ORDER NORMAL グループに含まれます。これらは、EARLY XDC ファイルの後、LATE XDC ファイルの前に読み込まれます。各 PROCESSING_ORDER グループごとに、IP の XDC ファイルが IP コアの [IP Sources] ウィンドウでリストされるのと同じ順序で読み込まれます。たとえば、次の図は XDC ファイルを含むプロジェクト IP コアの 1 つを示しています。

図 1. IP ソースの XDC ファイル

デザインを開くと、ログ ファイルに IP の XDC ファイルが最後に読み込まれていることがわかります。

Parsing XDC File [C:/project_wave_gen_hdl.srcs/sources_1/ip/clk_core/clk_core.xdc] for cell 'clk_gen_i0/clk_core_i0/inst'
Finished Parsing XDC File [C:/project_wave_gen_hdl.srcs/sources_1/ip/clk_core/clk_core.xdc] for cell 'clk_gen_i0/clk_core_i0/inst'
Parsing XDC File [C:/project_wave_gen_hdl.srcs/sources_1/ip/char_fifo/char_fifo/char_fifo.xdc] for cell 'char_fifo_i0/U0'
 

Finished Parsing XDC File [C:/project_wave_gen_hdl.srcs/sources_1/ip/char_fifo/char_fifo/char_fifo.xdc] for cell 'char_fifo_i0/U0'
Parsing XDC File [C:/project_wave_gen_hdl.srcs/constrs_1/imports/verilog/wave_gen_timing.xdc] Finished Parsing XDC File [C:/project_wave_gen_hdl.srcs/constrs_1/imports/verilog/wave_gen_timing.xdc] Parsing XDC File [C:/project_wave_gen_hdl.srcs/sources_1/ip/char_fifo/char_fifo/char_fifo_clocks.xdc
] for cell 'char_fifo_i0/U0'
Finished Parsing XDC File [C:/project_wave_gen_hdl.srcs/sources_1/ip/char_fifo/char_fifo/char_fifo_clocks.xdc
] for cell 'char_fifo_i0/U0' Completed Processing XDC Constraints

ユーザー XDC ファイルとは異なり、同じ PROCESSING_ORDER グループの IP XDC ファイルが読み込まれる順序を直接変更することはできません。変更が必要な場合は、次を実行します。

  1. 対応する IP の XDC ファイルをディスエーブルにします (IS_ENABLED を false に設定)。
  2. そのファイルの内容をコピーします。
  3. 制約セットに含まれる XDC ファイルのいずれかにコピーした内容を貼り付けます。
  4. コピーされた IP の XDC コマンドを、階層ネットリスト オブジェクトの完全なパス名を使用してアップデートします。IP の XDC 制約は適用範囲が IP インスタンスに限定されるように記述されているので、この作業は必要です。
  5. 範囲が限定された制約に対して特別な方法で処理される get_ports クエリを確認します。XDC の適用範囲の詳細は、制約の適用範囲の設定を参照してください。