タイミングの解決

システム実行が違反なく終了すれば、正しく移行されています。

タイミングが満たされなかった場合は、タイミングが満たされるようにカスタム制約を指定する必要があることもあります。タイミングを満たすための詳細は、『UltraFast 設計手法ガイド (Vivado Design Suite 用)』 (UG949)を参照してください。

カスタム制約

カーネルのフロアプラン、配置、タイミング用のカスタムの Tcl 制約は、新しいターゲット プラットフォーム (.xsa) で確認する必要があります。たとえば、カーネルを新しいターゲット プラットフォームの別の SLR に移動する必要がある場合、そのカーネル配置制約も変更する必要があります。

通常は、タイミングは異なるターゲット プラットフォーム間 (9P Virtex UltraScale デバイス ベース) で比較可能です。タイミング クロージャ用のカスタム Tcl 制約はすべて、新しいプラットフォーム用に評価して変更する必要があります。

カスタム制約は --config オプションで指定した v++ コンフィギュレーション ファイルの [advanced] 指示子を使用して Vivado® ツールに渡されます。詳細は、Vivado ツールの FPGA 合成およびインプリメンテーション結果の管理 を参照してください。

タイミング クロージャに関する注意事項

Vitis リリースまたはターゲット プラットフォームを移行すると、特に次のいずれかの条件が当てはまる場合は、デザイン パフォーマンスおよびタイミング クロージャが変わってしまうことがあります。

  • タイミング クロージャにフロアプラン制約が必要であった。
  • デバイスまたは SLR 使用率が通常のガイドラインよりも大きかった。
    • LUT 使用率が 70% を超えていた。
    • DSP、RAMB、UltraRAM 使用率が 80% を超えていた。
    • FD 使用率が 50% を超えていた。
  • タイミング クロージャのためにコンパイル ストラテジに多くのエフォートが必要であった。
使用率ガイドラインには、デザインのコンパイル時間が長くなったか、またはパフォーマンスが初期見積もりよりも低下したかを示すしきい値があります。複数の SLR を必要とする大型のデザインの場合は、カーネル ポートのグローバル メモリへのマップ で説明するように v++ --config オプションでカーネル/DDR の関連付けを指定して、フロアプラン制約で次のようになるかどうかを確認します。
  • 各 SLR の使用率が推奨ガイドラインよりも低い。
  • ハードウェア リソースの 1 つのタイプがガイドラインよりも多く必要な場合に、その使用率が SLR 間にバランスを取って分配されている。

全体的に使用率の高いデザインの場合、カーネルでパイプライン処理の量を増やすと (レイテンシは長くなる)、タイミング クロージャが達成しやすくなり、パフォーマンスも達成しやすくなります。

上記の点をすべてすばやく確認するには、次に示すように -R オプションを使用して Vitis アプリケーション アクセラレーション開発フローで生成されるフェイルファースト レポートを使用します (詳細は レポート生成の制御 を参照)。

  • v++ –R 1
    • report_failfast が各カーネルの合成段階の終わりに実行されます。
    • report_failfast がデザイン全体の opt_design の後に実行されます。
    • opt_design DCP が保存されます。
  • v++ –R 2
    • -R 1 と同じレポートに加え、次が追加されます。
    • report_failfast は各 SLR の配置後に実行されます。
    • その他のレポートおよび中間 DCP が生成されます。

すべてのレポートおよび DCP は、カーネル合成レポートも含め、中間ディレクトリに保存されます。

<runDir>/_x/link/vivado/prj/prj.runs/impl_1

タイミング クロージャおよびフェイルファースト レポートの詳細は、『UltraFast 設計手法タイミング クロージャ クイック リファレンス ガイド』 (UG1292) を参照してください。