ポートの入出力のタイミングのレポート - 2023.2 日本語

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

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

report_timing コマンドを使用すると、ポートに既に制約が設定されているかどうかに関係なく、デザイン内の関連するクロックを特定できます。すべてのタイミング クロックを定義したら、I/O ポートに入出力されるワースト パスをレポートし、レポートされたクロックに対して I/O 遅延制約を作成して、デザインのほかのクロックに対して同じタイミング レポートを作成します。ポートが複数のクロックに関連付けられている場合は、対応する制約を作成してプロセスを繰り返します。

たとえば、din 入力ポートがデザイン内の clk1 および clk2 クロックに関連しているとします。

report_timing -from [get_ports din] -sort_by group

レポートには、din ポートが clk1 に関連していることが示されます。入力遅延制約 (この例では最小遅延および最大遅延の両方) は、次のように設定します。

set_input_delay -clock clk1 5 [get_ports din]

前と同じコマンドでタイミング解析を再び実行して、dinclk2 にも関連していることを確認します。-sort_by group オプションを使用すると、終点クロックごとに N 個のパスがレポートされます。対応する遅延制約を追加し、レポート コマンドを再実行して、din ポートが別のクロックに関連していないことを確認します。

タイミング サマリ レポートで -report_unconstrained オプションを使用しても同じ解析を実行できます。デザインにクロック制約しか含まれない場合、[Unconstrained Paths] セクションは次のように表示されます。

------------------------------------------------
| Unconstrained Path Table
------------------------------------------------
Path Group   From Clock   To Clock   
----------   ----------   --------   
(none)
(none)     clk1
(none)     clk2
(none)             clk1
(none)             clk2

クロック名のないフィールド (Vivado IDE では <NONE>) は、始点 (From Clock) または終点 (To Clock) がクロックに関連付けられていないパス グループを意味します。制約が設定されていない I/O ポートは、このカテゴリになります。残りのレポートを確認すると、これらの名前を取得できます。たとえば、Vivado IDE で [clk1 to NONE] カテゴリのセットアップ パスを選択すると、[To] 列に clk1 で駆動されるポートが表示されます。

図 1. 制約の付いていない出力ポートのリスト

新しい制約を追加してメモリでそれらを適用したら、レポートを再作成して、制約が設定されていないポートがまだあるかどうかを確認します。ほとんどのデザインで、レポートされるパスの数を増加して、すべての I/O パスがレポートに含まれるようにする必要があります。