インテル® Quartus® Primeプロ・エディションのユーザーガイド: デザインのコンパイル

ID 683236
日付 6/26/2023
Public
ドキュメント目次

1.12.1. コンパイラーの最適化モード

次の最適化モードのいずれかを有効にして、コンパイラーによる最適化作業の重点を選択します。デフォルトの設定の Balanced は、最適化とコンパイル時間のバランスを考慮する戦略です。または、最適化の重点を PerformanceAreaRoutabilityPower、または Compile Time にすることもできます。この設定は、合成結果とフィット結果に影響します。
表 32.  最適化モード (Compiler Settingsページ)

最適化モード

詳細

備考

Balanced

(通常のフロー)

コンパイラーは合成を最適化し、タイミング制約を考慮したバランスの良い実装を目指します。

デフォルトの設定で、最適化作業とコンパイル時間のバランスを考慮します。

High performance effort

コンパイラーは、配置配線時のタイミング最適化作業を増やします。また、タイミングに関連する物理合成最適化を有効にします (レジスターごとの最適化設定)。

最適化作業の追加にともないコンパイル時間が長くなります。
High performance with maximum placement effort High Performance Effort と同じコンパイラー最適化を有効にし、さらに配置の最適化作業を追加します。 最適化作業の追加にともないコンパイル時間が長くなります。
High performance with aggressive power effort High performance effort と同じコンパイラー最適化を有効にします。また、最適化作業を追加実行し、ダイナミック消費電力を低減します。 最適化作業の追加にともないコンパイル時間が長くなります。
Superior performance High performance effort と同じコンパイラー最適化を有効にします。また、Analysis & Synthesis時にさらに最適化を追加して、デザイン・パフォーマンスを最大限に引き上げます。ロジック領域が増加する可能性があります。 デザインの使用率が非常に高い場合、このモードではフィットが困難になる可能性があります。これは、全体的な最適化の品質に悪影響をおよぼす可能性もあります。
Superior performance with maximum placement effort Superior performance と同じコンパイラー最適化を有効にし、さらに配置の最適化作業を追加します。 最適化作業の追加にともないコンパイル時間が長くなります。
Aggressive Area (パフォーマンスが低下します)

コンパイラーでは、デザインの実装に必要なデバイス領域の削減に向けて積極的な作業を行います。その際に、デザイン・パフォーマンスが犠牲になる可能性があります。

このモードではパフォーマンスが低下します。
High placement routability effort コンパイラーによる作業は、デザインの配線により重点を置いたものになります。その際に、デザイン領域、パフォーマンス、およびコンパイル時間が犠牲になる可能性があります。コンパイラーは、時間をさらに費やすことで配線使用率を削減します。これにより、配線の向上、およびダイナミック消費電力の低減が可能になります。 最適化作業の追加にともないコンパイル時間が長くなります。
High packing routability effort コンパイラーによる作業は、デザインの配線により重点を置いたものになります。その際に、デザイン領域、パフォーマンス、およびコンパイル時間が犠牲になる可能性があります。コンパイラーは、時間をさらに費やすことでレジスターのパッキングを行います。これにより、配線の向上、およびダイナミック消費電力の低減が可能になります。 最適化作業の追加にともないコンパイル時間が長くなります。
Optimize netlist for routability コンパイラーは、ネットリストの変更を実装し、配線を向上させます。その際に、パフォーマンスが犠牲になる可能性があります。 最適化作業の追加にともないコンパイル時間が長くなります。このモードでは、パフォーマンスが低下する可能性があります。

Aggressive power

(パフォーマンスが低下します)

低消費電力の実現に向けて合成を最適化する積極的な作業を行います。コンパイラーは、指定されている、または予測されるトグルレートが最も高い信号の配線使用率をさらに削減することで、ダイナミック消費電力をさらに低減します。ただし、パフォーマンスに影響する可能性があります。

このモードではパフォーマンスが低下します。

Aggressive Compile Time (パフォーマンスが低下します)

このモードは、デザインの初期の反復時に特に役立ちます。コンパイルの実行時間を30% (平均) 短縮しますが、デザインの fMAX が15% (平均) 犠牲になります。実行時間の短縮は、作業量およびパフォーマンスの最適化を減らすことによって実現されます。このモードでは、一部の詳細レポート機能も無効になります。

このモードでは、作業量の多いモードとほぼ相関するフロー全体のタイミング見積もりが最速で生成されます。

  • このモードではパフォーマンスが低下します。
  • 作業レベルを下げると、特に非常に混雑したデザインでフィットができなくなる可能性があります。この可能性を軽減するには、デザインの混雑している部分の配置をパーティションにして制約する、もしくは作業量の多いモードまたはより良い配線を目指すモードを使用します。
  • このモードでは、フル作業のコンパイルと同じクリティカル・パスが識別されない場合があります (コンパイラーのシードによる影響と同様)。
  • このモードでは、一部の詳細レポート機能が無効になります。また、他の .qsf 設定ではオーバーライドできない .qsf 設定が有効になります。
Fast Functional Test (ホールドタイムの最適化のみ)

このモードでは、最小限のコンパイル時間で .sof ビットストリーム・ファイルを生成します。このファイルは、オンボードの機能テストに使用することができます。このモードでは、Aggressive Compile Timeモードよりもさらにコンパイル時間が短縮されます。これを実現するため、タイミングの最適化をホールド要件にのみ制限しています。

  • 作業レベルを下げると、特に非常に混雑したデザインでフィットができなくなる可能性があります。この可能性を軽減するには、デザインの混雑している部分の配置をパーティションにして制約する、もしくは作業量の多いモードまたはより良い配線を目指すモードを使用します。このドキュメントのパーティションの作成の項、およびインテルQuartus Primeプロ・エディションのユーザーガイド: デザインの制約を参照してください。
  • このモードでは、PLLインテルFPGA IPのロック範囲外のクロック速度が必要になる場合があります。この影響を軽減するには、フィット後に adjust_pll ECOコマンドを使用してPLL IPを更新します。
  • このモードでは、一部の詳細レポート機能が無効になります。また、他の .qsf 設定ではオーバーライドできない .qsf 設定が有効になります。
注: Design Space Explorer IIの拡張最適化モードを .qsf 割り当てを使用して有効にし、その後、そのプロジェクト・リビジョンの Compiler Settings タブを開くと、Compiler Settings タブでは、拡張最適化モードが Compiler Settings タブの Optimization Modes のいずれかに戻ることが分かります。