XDC ファイルの適用範囲プロパティの設定例 - 2023.2 日本語

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

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

次の図に、2 つの階層セル uart_tx_ctl_i0 および uart_baud_gen_tx_i0 を含む、uart_tx モジュールのインスタンスである uart_tx_i0 セルを示します。

プロジェクトには、uart_tx_ctl モジュールを制約する XDC ファイル (uart_tx_ctl.xdc) が含まれます。

図 1. XDC ファイルの適用範囲プロパティの設定例

uart_tx_ctl.xdc に適用範囲プロパティを設定する同等の Tcl コマンドには、次の 3 つがあります。これらの値は、Vivado IDE で XDC ファイルの [Properties] ウィンドウでも設定できます。

# Using the reference module name only:
set_property SCOPED_TO_REF uart_tx_ctl [get_files uart_tx_ctl.xdc]

# Using the cell name only:
set_property SCOPED_TO_CELLS uart_tx_i0/uart_tx_ctl_i0 [get_files uart_tx_ctl.xdc]

# Using both the uart_tx reference module and uart_tx_ctl_i0 instance: set_property SCOPED_TO_REF uart_tx [get_files uart_tx_ctl.xdc] set_property SCOPED_TO_CELLS uart_tx_ctl_i0 [get_files uart_tx_ctl.xdc]

Vivado Design Suite を非プロジェクト モードで使用している場合、read_xdc コマンドに -ref および -cells オプションを使用すると、同じ結果を得ることができます。

# Using the reference module name only:
read_xdc -ref uart_tx_ctl uart_tx_ctl.xdc # Using the cell name only:
read_xdc -cells uart_tx_i0/uart_tx_ctl_i0 uart_tx_ctl.xdc
# Using both the uart_tx reference module and uart_tx_ctl_i0 instance read_xdc -ref uart_tx -cells uart_tx_ctl_i0 uart_tx_ctl.xdc

1 つのモジュールがデザインに複数回インスタンシエートされている場合、合成中にこれらが個別化され、合成後には RTL モジュールの各インスタンスのモジュール名は異なるものになります。元の RTL モジュールのすべてのインスタンスに XDC 制約を適用するには、REF_NAME プロパティではなく ORIG_REF_NAME を使用する必要があります。次に例を示します。

set_property SCOPED_TO_REF [get_cells -hierarchical -filter {ORIG_REF_NAME == uart_tx_ctl}] [get_files uart_tx_ctl.xdc]
read_xdc -ref [get_cells -hierarchical -filter {ORIG_REF_NAME == uart_tx_ctl}] uart_tx_ctl.xdc
注記: モジュールが一意になると、ORIG_REF_NAME プロパティは元のセルと、一意になった元のセルからのインスタンスすべてに設定されます。