AR# 59799

Vivado 制約 - スコープされた制約ファイルで create_clock 制約を使用するときこの制約を上書きしないようにする方法

説明

スコープされた制約ファイル (SCOPED_TO_REF、SCOPED_TO_CELLS) で create_clock -name 制約を使用すると、合成されたデザイン、インプリメントされたデザインを開くとき、または合成/インプリメンテーション中に、次のような警告メッセージが表示されます。

WARNING: [Constraints 18-619] A clock with name '<clock name>' already exists, overwriting the previous clock with the same name.

create_clock 制約が上書きされないようにするにはどうしたらよいでしょうか。


ソリューション

同じ「create_clock -name」制約が複数回読み出されるようにデザインにスコープされたセル/ref のインスタンスが複数ある場合に、この警告メッセージが表示されます。

警告メッセージに記載されているように、最後の読み出しのみが残り、ほかの読み出しはすべて失われます。

この問題を修正するには、create_clock コマンドから -name オプションを削除します。

-name オプションが使用されない場合は、ネット名/ロケーションに基づいて、システムにより名前が付けられます。

これらの自動的に名前が付けられるクロックへの参照はすべて get_clocks -of を使用して処理されます。

次にその例を示します。

create_clock -name recclk -period 5 [get_pins gt_and_clocks_i/gtwizard_i/gt0_gtwizard_i/gtxe2_i/RXOUTCLK];
set_false_path -from $cpri_v6_1_aux_clk -to [all_registers -clock recclk]

上記のものは、次のものと同等です。

create_clock -period 5 [get_pins gt_and_clocks_i/gtwizard_i/gt0_gtwizard_i/gtxe2_i/RXOUTCLK];  #-name cpri_v6_1_recclk
set recclk [get_clocks -of [get_pins gt_and_clocks_i/gtwizard_i/gt0_gtwizard_i/gtxe2_i/RXOUTCLK]]
set_false_path -from $cpri_v6_1_aux_clk -to [all_registers -clock $recclk]


AR# 59799
日付 03/21/2016
ステータス アクティブ
種類 一般
ツール