インテル® Quartus® Prime プロ・エディションのユーザーガイド: デザインの推奨事項

ID 683082
日付 8/03/2023
Public
ドキュメント目次

2.2.4.3. タイミング・クロージャーに向けた最適化

デザインでのタイミング・クロージャーの達成に向け、 インテル® Quartus® Prime開発ソフトウェアでコンパイルの設定を有効にしたり、タイミング制約を直接変更したりすることができます。

タイミング・クロージャーに向けたコンパイル設定

注: プロジェクト設定を変更すると、コンパイル時間が大幅に増加することがあります。デザインの処理後にフィッターのメッセージを確認することで、パフォーマンスの向上とランタイムコストを比較することができます。
表 3.  タイミング・クロージャーに影響するコンパイル設定
設定 位置 タイミング・クロージャーへの影響
Allow Register Duplication Assignments > Settings > Compiler Settings > Advanced Settings (Fitter)

この手法は、高ファンアウトのレジスターや、ファンアウトがデバイスの物理的に離れた領域にある場合に最も有効です。

ネットリスト最適化レポートを確認し、物理合成で自動的に追加されたレジスターを手動で複製することを検討します。Chip Plannerでは、元のレジスターと複製レジスターの位置を確認することもできます。それらの位置を比較し、ファンアウトが改善されている場合は、コードを変更し、レジスターの複製をオフにしてコンパイル時間を短縮します。

Prevent Register Retiming Assignments > Settings > Compiler Settings > Advanced Settings (Fitter)

レジスター間の組み合わせパスの一部がタイミング目標を上回り、他のパスが下回る場合に有効です。

デザインですでに多くのパイプラインを使用している場合は、レジスターのリタイミングでパフォーマンスが大幅に向上する可能性は低くなります。パイプライン・ステージ全体でロジックのレベルが著しく不均衡になることはありません。

タイミング制約を使用してのタイミング・クロージャー最適化ガイドライン

適切なタイミング制約は、タイミング・クロージャーの達成には不可欠です。タイミング制約の適用には、次の一般的なガイドラインを使用します。

  • シングルサイクル・タイミング解析が必要ない場合は、デザインにマルチサイクル制約を適用します。
  • デザイン内のすべての非同期クロックドメインの交差またはリセットにFalseパス制約を適用します。この手法により過剰な制約を防ぎ、フィッターの重点がクリティカル・パスのみになるようにすることで、コンパイル時間を短縮します。ただし、タイミングがクリティカルなクロックドメインを過剰に制約することで、物理合成よりもタイミング結果が改善し、コンパイル時間が短くなる場合があります。
  • 物理合成でスラックの改善が0に近い場合は、物理合成を使用するのではなく、過剰制約を行います。タイミングがクリティカルなクロックドメインの周波数要件を過剰に制約するには、セットアップの不確実性を使用します。
  • 制約の変更がパフォーマンスとランタイムにおよぼす影響を評価する場合は、少なくとも3つの異なるシードでデザインをコンパイルし、パフォーマンスとランタイムにおける平均的な影響を判断します。さまざまな制約の組み合わせにより、さまざまな結果が得られます。3つ以上のサンプルにより、パフォーマンスの傾向が得られます。パフォーマンスの改善または低下に基づき、制約を変更します。
  • 可能な限り、設定をデフォルト値で維持します。パフォーマンスの制約を大きくすると、コンパイル時間が大幅に長くなる可能性があります。これらを増やすことはデザインのタイミング・クロージャーに必要な場合もありますが、可能な限りデフォルトの設定を使用することで、コンパイル時間は最小限に抑えられます。