3. インテル® Hyperflex™ アーキテクチャー・デザインのコンパイル
Hyper-Awareデザイン・フロー
Hyper-Awareのデザインフローを使用して、デザインサイクルを短縮し、パフォーマンスを最適化します。 Hyper-Awareデザインフローでは、自動レジスター・リタイミングと、目標とするタイミング・クロージャーの推奨(Fast Forwardのコンパイル)の実装を組み合わせて、Hyper-Registerの使用を最大限にし、 インテル® Hyperflex™ デザインで最高のパフォーマンスを実現します。
レジスターのリタイミング
インテル® 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分析では、この最適化によるパフォーマンス上のメリットが示されます。
Fast-Forwardのコンパイルは、パイプライン・ステージ(Hyper-Pipelining)を追加する最適な位置と、それぞれのケースで期待されるパフォーマンスの利点を示します。各クロックドメインの境界にパイプライン・ステージを配置するようにRTLを変更すると、Retimeステージはクロックドメイン内のレジスターを最適な位置に自動的に配置してパフォーマンスを最大化します。同様の結果を得るために、RTLで推奨事項を実装します。変更を実装した後、結果がパフォーマンス要件およびタイミング要件を満たすまで、Retimeステージを再実行します。
| 最適化ステップ | 手法 | 変更内容 |
|---|---|---|
| ステップ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)が含まれます。