Timing Constraints ウィザードでは、入力遅延と同様、すべての出力ポートへのパスが解析され、それらのパスのデザイン内でのソース クロックとアクティブ エッジが特定されます。テンプレートの選択規則は、[Input Delays] ページと同じです。次の図に、ウィザードで推奨される出力制約を示します。これらは部分的にユーザーが変更できます。
ボードの実際のインターフェイス タイミングに対応する波形を指定するため、各制約に対して次の 3 つの特性を編集できます。
- [Synchronous]
- クロックとデータの関係を指定します (詳細は [Input Delays] ページ を参照)。
- [Alignment]
- アクティブ クロック エッジに対するデータ遷移アライメントを指定します。
- [Setup/Hold]
- FPGA 外でのデータ有効ウィンドウのタイミング特性に基づいてテンプレート遅延パラメーターを指定する場合に使用します。
- [Skew] (ソース同期のみ)
- FPGA の出力ピンのスキュー要件に基づいてテンプレート遅延パラメーターを指定する場合に使用します。
- [Data Rate and Edge]
- テンプレートで制約が設定されているアクティブ クロック エッジを指定します (詳細は [Input Delays] ページ を参照)。
推奨される入力遅延制約と同様、基準クロックは通常ボード クロックになりますが、次の場合は例外です。
- ボード クロックと出力パス内部クロックの周期が異なる場合。
出力制約は、内部クロックと同じ波形の仮想クロックを基準とするので、セットアップ解析は 1 サイクル パス要件で実行されます。仮想クロックは自動的に作成されます。
- ボード クロックに対する出力パス内部クロックの位相シフトが負の場合。
仮想クロックが基準クロックとして使用されます。仮想クロックは、ボード クロックと同じ波形を使用して自動的に作成されます。また、仮想クロックと内部クロック間のマルチサイクル パス制約も指定され、デフォルトの解析が 1 周期 + セットアップの位相シフト分に調整されます。仮想クロックとマルチサイクル パスの制約の組み合わせにより Vivado Design Suite タイマーで処理しやすい簡単な制約が提供され、仮想クロックを参照する出力ポートにのみ影響します。
注記: 正の位相シフトの場合、デフォルトのセットアップ パス要件が 1 サイクルから位相シフト量を引いた値なので、仮想クロックとマルチサイクル パス制約は必要ありません。 - 共有クロック接続に基づく出力パスのタイミング指定にフォワード クロックが特定されている場合。
フォワード クロックは、ウィザードの 3 段階目の [Forwarded Clocks] で作成されているはずです。作成されなかった場合は、ボード クロックまたは仮想クロックが出力遅延制約の基準クロックとして使用されます。
次の図に、7 シリーズ ファミリのフォワード クロックを使用した出力ソース同期パスの基本的な例を示します。ODDR/OSERDES インスタンスは、どちらも同じクロック ネットに接続されます (青のハイライト部分)。ck_vsf_clk_2
生成クロックは、既に vsf_clk_2
出力ポートに定義されています。
次の図に、ウィザードの該当する制約を示します。
適切なテンプレートを選択したら、遅延パラメーター値を入力する必要があります。クロックとテンプレートが同じ複数の制約を選択して編集すると、遅延パラメーターの入力時間を短縮できます。制約を入力して適用したら、該当する Tcl 構文を [Tcl Command Preview] タブで確認し、Next をクリックして次のページに進みます。