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

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

10.4.1. オートプリチャージ・コマンド

オートプリチャージ読み出しおよび書き込みコマンドでは、特定の読み出しまたは書き込みコマンドが現在開かれている行への最後のアクセスであることをメモリーデバイスに示すことができます。

メモリーデバイスは、現在アクセスされているページを自動的に閉じる、すなわちオートプリチャージするため、同じバンクへの次のアクセスが早くなります。オートプリチャージ・コマンドは、高速ランダム・メモリー・アクセスを実行する場合に役立ちます。

タイマー・バンク・プール (TBP) ブロックは動的なページポリシーをサポートします。このポリシーは、ユーザー入力に応じて、オートプリチャージでページを開いた状態または閉じた状態に維持するものです。クローズドページ・ポリシーでは、ページはアクセスされた後にかならずオートプリチャージ・コマンドで閉じられます。同じページではないアドレスに対して繰り返される読み出しもしくは書き込みでデータパターンが構成される場合、最適なシステムでは、連続ページミスの制限付きアクセスで許容される最大の効率を達成します。効率の低下はアクティブ化とリフレッシュに関連するものに限定されます。このクローズドページ・ポリシーでは、10%から20%の効率が期待されます。

オープンページ・ポリシーでは、到着するコマンドのために、ページはアクセスされた後に開いた状態で維持されます。同じページ内の連続するアドレスに対して繰り返される読み出しまたは書き込みでデータパターンが構成される場合、最適なシステムでは、ページオープン・トランザクションの100%の効率を達成し (全体の効率の約2%から3%を通常消費する定期リフレッシュの影響を無視しています)、優先度が最も高い単一のトランザクションを最小のレイテンシーで行うことが可能です。

Enable Auto-Precharge Controlをオンにすると、オートプリチャージの読み出しまたは書き込みコマンドを発行するようにコントローラーに指示することができます。次にそのバンクにアクセスする際は、アクセスする行をアクティブ化する前にコントローラーでバンクをプリチャージする必要がないため、アクセスが早くなります。

コントローラーから派生するオートプリチャージ・ロジックは、コマンドバッファー内の保留中のコマンドを評価し、最も効率的なオートプリチャージの操作を決定します。オートプリチャージ・ロジックでは、必要に応じてコマンドを並べ替えることができます。開いているページの追跡でTBPが占有されている場合、TBPはオンデマンド・フラッシュと呼ばれるスキームを使用し、ページの追跡を停止して着信コマンドにスペースを作成します。

次の図は、先読みサポートのあるオートプリチャージと先読みサポートのないオートプリチャージを比較しています。

図 159. 先読みの有無によるオートプリチャージの比較


先読みオートプリチャージの機能を使用しない場合、コントローラーは行が変更されるたびにプリチャージで行を閉じ、その後行を開いて書き込みまたは読み出しバーストを行う必要があります。先読みプリチャージの機能を使用すると、コントローラーは受信するコマンドを評価することにより、オートプリチャージの読み出しまたは書き込みを行うかを決定します。同じバンクの異なる行への後続の読み出しまたは書き込みには、アクティブ化コマンドのみが必要です。

上の図で示されているとおり、コントローラーはオートプリチャージをサイクル1のバンク0への書き込みコマンドで実行します。コントローラーは、サイクル13での次の書き込みがバンク0の別の行に対するものであることを検出しているため、2データサイクルが節約されます。

次の表は、上の図における効率の結果を表しています。

表 153.  先読みの有無によるオートプリチャージ機能の効率の比較
 

先読みなしオートプリチャージ

先読みありオートプリチャージ

データ転送のアクティブサイクル

16

16

サイクル総数

19

17

効率の概算

84%

94%

使用された先読みオートプリチャージにより、効率が約10%向上します。

オートプリチャージのオプションを使用する場合は、次のガイドラインに注意します。

  • オートプリチャージ・コマンドは、コントローラーが次の読み出しまたは書き込みを特定のバンクの異なる行に発行することが分かっている場合に使用します。
  • 行をオートプリチャージした直後にその行を再度開く場合は、オートプリチャージによる効率の向上は得られません。