インテル® Hyperflex™ アーキテクチャー高性能デザイン・ハンドブック

ID 683353
日付 10/04/2021
Public
ドキュメント目次

3. インテル® Hyperflex™ アーキテクチャー・デザインのコンパイル

インテル® Quartus® Primeプロ・エディションコンパイラーは、 インテル® Hyperflex™ アーキテクチャーを最大限に活用して最適化されています。 インテル® Quartus® Primeプロ・エディションコンパイラーは、Hyper-Awareのデザインフローをサポートします。このフローでは、コンパイラーはレジスターのHyper-Registersへのリタイミングを自動的に最大化します。

Hyper-Awareデザイン・フロー

Hyper-Awareのデザインフローを使用して、デザインサイクルを短縮し、パフォーマンスを最適化します。 Hyper-Awareデザインフローでは、自動レジスター・リタイミングと、目標とするタイミング・クロージャーの推奨(Fast Forwardのコンパイル)の実装を組み合わせて、Hyper-Registerの使用を最大限にし、 インテル® Hyperflex™ デザインで最高のパフォーマンスを実現します。

図 80. ハイパー・アウェア・デザイン・フロー

レジスターのリタイミング

インテル® Hyperflex™ アーキテクチャーの主な革新は、すべてのルーティング ・セグメントとブロック入力に複数のHyper-Registerを追加することです。Hyper-Registerの使用を最大限にすると、デザインのパフォーマンスが向上します。Hyper-Registerの蔓延は、レジスター間の時間遅延のバランスを改善し、クリティカル・パスの遅延を緩和します。CompilerのRetimeステージでは、レジスターをALMから移動して、Hyper-Registerにリタイミングします。レジスター・リタイミングは、Fitter中に自動的に実行され、最小限の労力を要し、大幅なパフォーマンス改善をもたらす可能性があります。リタイミング後、Finalizeステージでホールド違反による接続が修正されます。

Fast Forwardのコンパイル

単純なレジスター・リタイミングよりも最適化が必要な場合、Fast Forwardコンパイルを実行して、タイミング収束の推奨事項を生成して、Hyper-Registerへのさらなる移動を防ぐ重要なパフォーマンスのボトルネックを解消します。例えば、Fast Forwardでは、特定のリタイミング制約を削除して、Hyper-Registerにさらにリタイミングすることを防ぐことを推奨しています。Fast Forward Compilationは、RTLの変更に最も大きな影響を与える位置を正確に示し、制限を解除してHyper-Register(Hyper-Retiming)にリタイミングすることによる予測パフォーマンスのメリットを報告します。Fitterは、RAMブロックとDSPブロックのレジスターを自動的にリタイムしません。ただし、Fast Forward分析では、この最適化によるパフォーマンス上のメリットが示されます。

図 81. Hyper-Registerのアーキテクチャー

Fast-Forwardのコンパイルは、パイプライン・ステージ(Hyper-Pipelining)を追加する最適な位置と、それぞれのケースで期待されるパフォーマンスの利点を示します。各クロックドメインの境界にパイプライン・ステージを配置するようにRTLを変更すると、Retimeステージはクロックドメイン内のレジスターを最適な位置に自動的に配置してパフォーマンスを最大化します。同様の結果を得るために、RTLで推奨事項を実装します。変更を実装した後、結果がパフォーマンス要件およびタイミング要件を満たすまで、Retimeステージを再実行します。

表 7.  最適化のステップ
最適化ステップ 手法 変更内容
ステップ1: レジスターのリタイミング Retimeステージはレジスター・リタイミングを実行し、既存のレジスターをHyper-Registersに移動して、リタイミングの制限を削除し、クリティカル・パスを排除することでパフォーマンスを向上させます。
ステップ2: Fast Forwardのコンパイル Compilerは、デザイン固有のタイミング収束の推奨事項を生成し、Hyper-Register(Hyper-Retiming)に対するすべての障壁を除去してパフォーマンスの向上を予測します。
ステップ3: Hyper-Pipelining RTLで新しいレジスターとパイプライン・ステージを追加する位置を指定するには、Fast Forwardコンパイルを使用します。
ステップ4: Hyper-Optimization ループの再構築、コントロール・ロジックの制限の解除、ロングパスに沿った遅延の削減などのHyper-RetimingやHyper-Pipeliningを超えたデザイン最適化。

デザインRTLの検証

インテル® Quartus® Primeソフトウェアには、 インテル® Hyperflex™ アーキテクチャーのデザインRTLへの適合性を検証するDesign Assistantデザイン・ルール・チェック・ツールが含まれています。 これらのルールには、説明されているように、 インテル® Hyperflex™ FPGAアーキテクチャー・デザインをターゲットとするHyper-Retimer Readiness Rules(HRR)が含まれます。