厳しいタイミング要件の特定 - 2023.2 日本語

FPGA および SoC 用 UltraFast 設計手法ガイド (UG949)

Document ID
UG949
Release Date
2023-11-29
Version
2023.2 日本語

クロック関連性レポートには、各クロック ペアに対して、ワースト パスのセットアップ要件も示されます。表を Path Req (WNS) で並べ替え、デザインで最も厳しい要件を確認します。これらの要件を見直して、無効な厳しい要件が存在していないことを確認します。

Vivado ツールは、各クロックを 1000 サイクル調べ、最も少ないサイクルでエッジが揃う箇所を特定します。最も厳しい要件を判断するのに 1000 サイクルでは十分でない場合は、レポートに「Not Expanded」と示され、2 つのクロックを非同期として処理する必要があります。

たとえば、250 MHz クロックから 200 MHz クロックに切り替わるタイミング パがあるとします。

  • 200 MHz クロックの立ち上がりエッジは {0, 5, 10, 15, 20} です。
  • 250 MHz クロックの立ち上がりエッジは {0, 4, 8, 12, 16, 20} です。

このクロック ペアで要件が最も厳しいのは、次の 2 つの条件が満たされるときです。

  • 250 MHz クロックの立ち上がりエッジ 4 ns。
  • 200 MHz クロックの次の立ち上がりエッジが 5 ns。

これにより、250 MHz クロック ドメインから 200 MHz クロック ドメインに切り替わるすべてのパスに 1 ns のタイミングが適用されます。

注記: この例では、デスティネーション エッジとソース エッジが同じであることはないので、エッジが揃う 20 ns は最も厳しい要件とはなりません。

これは厳しいタイミング要件なので、追加の手順が必要となります。デザインによって、次のいずれかの制約を使用すると、これらのタイミング ドメイン間をまたぐ状況を適切に処理できます。

  • set_clock_groups/set_false_path/set_max_delay -datapath_only

    クロック ペアを非同期とする場合は、上記のいずれかの制約を使用します。report_cdc Tcl コマンドを使用して、クロック乗せ換え回路が安全であるかどうかを検証します。

  • set_multicycle_path

    この制約は、適切なクロック回路によりソース クロック エッジとデスティネーション クロック エッジが制御されている場合に、タイミング要件を緩和する場合に使用します。

何もしない場合、これらのクロック ドメイン間をまたぐパスでタイミング違反が発生したり、最適化および配置配線が、デザインの実際のクリティカル パスではなく、これらのパスに焦点を置いて実行される可能性があります。このようなパスをタイミング ドリブンのインプリメンテーションの前に特定することが重要です。

図 1. クロック ドメインが 250 MHz から 200 MHz に切り替わる