外部メモリー・インターフェイス・ インテル® Agilex™ FPGA IPユーザーガイド

ID 683216
日付 6/20/2022
Public
ドキュメント目次

10.4.13. コントローラーの繰り上げおよび先送りリフレッシュ (DDR4専用)

リフレッシュの間隔はある程度柔軟に変更することができるため、リフレッシュ・コマンドを延期または早めることができます。この柔軟性を利用して、タスクのスケジューリングと切り替えにおいてコントローラーの効率を向上させることができます。 DDR4では、一度に最大8つのリフレッシュ・コマンドを延期または早めることができます。前後のリフレッシュ・コマンドとの最大間隔は9 × tREFIです。

リフレッシュ・コマンドの延期または繰り上げには、パラメーター・エディターのControllerタブにある、Enable controller post-pay refreshおよびEnable controller pre-pay refreshパラメーターを使用します。先送りリフレッシュには下限と上限、繰り上げリフレッシュには上限を選択することができます。先送りリフレッシュと繰り上げリフレッシュの上限の合計は、リフレッシュ・コマンドの上限である8を超えることはできません。

例えば、先送りリフレッシュの上限が8に設定されているデザインでは、連続する最大8つのリフレッシュを延期することができます。上限に達すると、蓄積されているリフレッシュ・コマンドが連続して発行されます。繰り上げリフレッシュの場合、指定されているリフレッシュの先行上限に応じて、リフレッシュ・コマンドを先行して、つまり早めて発行することができます。リフレッシュ・コマンドは、トラフィックがない場合に状況に応じて発行されます。繰り上げリフレッシュと先送りリフレッシュの両方を有効にしている場合は、先送りポリシーが優先され、リフレッシュは常に累積されます。先送りリフレッシュが状況に応じて排出され、トラフィックがない場合に、繰り上げリフレッシュ・コマンドが発行されます。

ブロックでのトラフィック・パターンについては、ブロック時間を計算し、ブロック間のギャップにリフレッシュをスケジュールする必要があります。繰り上げまたは先送りリフレッシュ制限は、デザインに合わせて選択する必要があります。ノンストップ・アクセスやランダム・トラフィックを実装するデザインでは、トラフィック・パターンをシミュレーションし、これらの設定を使用して効率の改善について確認する必要があります。この機能を有効にして、ランダム・トラフィックを実装する場合は、先送りリフレッシュの下限を1、繰り上げリフレッシュと先送りリフレッシュを組み合わせた上限を8にすると、コントローラーの効率が向上する可能性があります。