2.4.2.1. 高速クロック・ドメイン
2.4.2.2. ループの再構築
2.4.2.3. コントロール信号のバックプレッシャー
2.4.2.4. FIFOステータス信号によるフロー・コントロール
2.4.2.5. スキッドバッファーを使用したフロー制御
2.4.2.6. リードモディファイライトメモリー
2.4.2.7. カウンターとアキュムレーター
2.4.2.8. ステートマシン
2.4.2.9. メモリー
2.4.2.10. DSPブロック
2.4.2.11. 一般ロジック
2.4.2.12. モジュラスと除算
2.4.2.13. リセット
2.4.2.14. ハードウェアの再利用
2.4.2.15. アルゴリズム要件
2.4.2.16. FIFO
2.4.2.17. 三進加算器
2.3.2.2. 自動パイプライン挿入
自動パイプライン挿入により、Hyper-Retimerはデザインで指定した場所に多数のパイプライン・ステージを挿入できます。特定の各レジスターに挿入するパイプライン・ステージの最大数を指定できます。
図 32. 可変レイテンシー・モジュールの典型的な使用
インテル® Quartus® Primeソフトウェアには、実装を簡素化する可変レイテンシー・モジュールテンプレート(hyperpipe_vlat)が含まれています。または、.qsf割り当ての組み合わせを使用して自動パイプライン挿入を実装できます。
hyperpipe_vlatモジュールをインスタンス化し、Enable Auto-Pipelining(HYPER_RETIMER_ENABLE_ADD_PIPELINING)オプションが有効のままになっている場合、Hyper-Retimerは、リタイミング中に、指定した最大値まで、適切な数の追加パイプライン・ステージを追加します。この設定にアクセスするにはAssignments > Settings > Compiler Settings > Advanced Settings (Fitter)をクリックします。
図 33. 最大10のパイプライン・ステージを備えた可変レイテンシー・モジュール
たとえば、最大10のパイプライン・ステージを指定した場合、Hyper-Retimerは、タイミング・パフォーマンスを最大化するために3つの追加パイプライン・ステージのみが必要であると判断する場合があります。 Hyper-Retimerは、必要なパイプライン・ステージの適切な数のみを追加します。
図 34. Hyper-Retimerの必要な追加のステージのみの追加
次の図に示すように、hyperpipe_vlatモジュールのインスタンスごとに異なる数のパイプライン・ステージを指定できます。
図 35. モジュールごとに異なる最大パイプライン・ステージ
次の手順では、パイプラインの自動挿入を実装する方法について詳しく説明します。
- ステップ1:可変レイテンシー・モジュールを作成する
- ステップ2:可変レイテンシー・モジュールのインスタンス化
- ステップ3:自動パイプライン挿入オプションを確認する 7047834648
- (オプション)可変レイテンシー・モジュールなしの自動パイプライン挿入
追加ステージの最大数の有効な値は、1〜100です。