タイミング制約 - 2022.1 日本語

Vivado Design Suite ユーザー ガイド: 階層デザイン (UG905)

Document ID
UG905
Release Date
2022-04-20
Version
2022.1 日本語
表 1. タイミング制約
制約名 説明
set_max_delay 入力および出力遅延を定義し、OOC モジュールで許容される時間を割り当てます。OOC インプリメンテーションの配置を制御し、最上位のタイミング クロージャを達成しやすくします。
create_clock OOC モジュール ポートのクロックを定義します。create_clock 制約は、クロック バッファーが最上位にインスタンシエートされている場合でも、OOC モジュールにインスタンシエートされている場合でも、各クロック ポートごとに必要です。
set_clock_uncertainty OOC モジュールへの入力クロックのばらつきを定義します。タイミング解析が正確になるよう、OOC モジュールのすべてのクロックに対して定義する必要があります。定義しないと、モジュールをインポートしたときにパスのタイミングが満たされなくなることがあります。
set_system_jitter システム ジッター値を定義します。最上位デザインに基づいてユーザー クロックのばらつき (set_clock_uncertainty) を定義する場合は 0 に設定する必要があります。0 に設定しないと、システム ジッターが OOC インプリメンテーションのばらつき計算で考慮され、最終的な値がユーザーの定義した値とは異なるものになります。
set_clock_latency OOC モジュールへの入力クロックのレイテンシを定義します。この制約は、クロック パス全体が既知ではない場合に、クロック遅延を正しくモデリングするために必要です。
set_clock_groups 非同期クロック (-asychnronous) または同じグローバル バッファーで駆動されるクロック (-physically_exclusive) を定義します。

タイミング制約の例

  • create_clock -period 8.000 -name clk -waveform {0.000 4.000} [get_ports clk] 
  • set_max_delay -from [get_ports <ports>] -to [get_pins <synchronous pin>] -datapath_only <delay>
  • set_max_delay -from [get_pins <synchronous pin>] -to [get_ports <ports>] -datapath_only <delay> 
  • set_system_jitter 0.0
  • set_clock_latency -source -min 0.10 
  • set_clock_latency -source -max 0.20
  • set_clock_groups -physically_exclusive -group [clk1] -group [clk2] 
  • set_clock_groups -asynchronous -group [clk1] -group [clk2] 

これらのタイミング制約は、その OOC モジュール自体に適用されます。OOC インプリメンテーションには、インスタンスへのタイミング、インスタンスからのタイミング、インスタンス内部のタイミングすべてが含まれる必要があります。これには、フォルス パスおよびマルチサイクル パスなどの特殊なパスも含まれます。