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

ID 683216
日付 12/14/2020
Public

このドキュメントの新しいバージョンが利用できます。お客様は次のことを行ってください。 こちらをクリック 最新バージョンに移行する。

ドキュメント目次

3.1.3. インテルAgilex EMIFのアーキテクチャー: I/Oバンク

各I/O行には最大4つのI/Oバンクが含まれます。実際のバンク数は、デバイスのサイズとピンパッケージによって異なります。

各I/Oバンクは2つのサブバンクで構成され、それぞれのサブバンクには次のコンポーネントが含まれています。

  • ハード・メモリー・コントローラー
  • シーケンサー・コンポーネント
  • I/O PLLおよびPHYクロックツリー
  • DLL
  • 入力DQSクロックツリー
  • 48ピン (それぞれが12ピンの4つのI/Oレーンで編成されます)

単一のI/Oサブバンクには、外部メモリー・インターフェイスの構築に必要なすべてのハードウェアが含まれています。隣接する複数のサブバンクを相互に接続することにより、より広いインターフェイスを作成することができます。

図 5. インテルAgilexデバイスのI/Oバンクのアーキテクチャー


I/Oバンク内では、上部のサブバンクはダイのエッジ近くに配置され、下部のサブバンクはFPGAコアの近くに配置されています。

サブバンク間にはインターコネクトがあり、それによりサブバンクを1列のチェーンにしています。以下の図は、さまざまなサブバンクのI/Oレーンをチェーン接続し、さまざまなインテルAgilexデバイスのバリアントにおいて上部と下部のI/O行を形成している様子を表しています。これらの図は、デバイスパッケージの裏面に対応するシリコンダイの上面図を表しています。

図 6. インテルAgilex AGF012およびAGF014、パッケージR24Aの上部I/O行におけるサブバンクの並び
図 7. インテルAgilex AGF012およびAGF014、パッケージR24Aの下部I/O行におけるサブバンクの並び
図 8. インテルAgilex AGF014、パッケージR17Aの上部I/O行におけるサブバンクの並び

AGF014のパッケージR17Aの上部I/O行では、バンク3Aとバンク3Cが互いに隣接していないため、EMIFインターフェイスをそれらのバンクに広げることはできません。

図 9. インテルAgilex AGF014、パッケージR17Aの下部I/O行におけるサブバンクの並び

図 10. インテルAgilex AGF022およびAGF027デバイス、パッケージR25Aの上部I/O行におけるサブバンクの並び

AGF022およびAGF027のパッケージR25Aの上部I/O行では、バンク3Aとバンク3Fが互いに隣接していないため、EMIFインターフェイスをこの2つのバンクに広げることはできません。

図 11. インテルAgilex AGF022およびAGF027デバイス、パッケージR25Aの下部I/O行におけるサブバンクの並び

I/Oバンク内の2つのサブバンクは、接合され、EMIFで利用可能なI/Oレーンが各サブバンクに少なくとも1つある場合は相互に隣接しています。上の図の青い線は、サブバンク間の接続を示しています。

例えば、インテルAgilex AGF012およびAGF014デバイスの上側の行 (図6) では、次の内容が当てはまります。

  • 3Aの上部のサブバンクは、3Aの下部のサブバンクと3Bの下部のサブバンクに隣接しています。
  • 3Bの上部のサブバンクは、3Bの下部のサブバンクと3Cの上部のサブバンクに隣接しています。
    • 3Bの上部のサブバンクは、3Cの上部のサブバンクに隣接しています。これは、2つのサブバンク間にジッパーブロックがある場合でも該当します。
  • 3Bの上部のサブバンクは、3Aの下部のサブバンクに隣接していません。

インターフェイスで複数のバンクを占有する必要がある場合は、それらのバンクが相互に隣接していることを確認してください。I/Oバンク内のピンの位置は、デバイスのピンアウトファイルのIndex within I/O Bankの値に基づき特定することができます。

ジッパーブロック

ジッパーは、必要な配線調整を行うブロックです。ここでは、配線ワイヤーがジッパーと交差します。

I/Oサブバンクの使用方法

I/Oバンクのピンは、外部メモリー・インターフェイスのアドレスおよびコマンドピン、データピン、またはクロックおよびストローブピンとして使用することができます。幅の狭いインターフェイスであるDDR4 x8インターフェイスは、単一のI/Oサブバンクのみで実装することができます。72ビットまでの幅の広いインターフェイスは、複数バンクのインターフェイスで隣接する複数のバンクをコンフィグレーションすることにより実装することができます。

注: 特定のサブバンクを複数のEMIFで共有することはできません。

すべてのサブバンクにはハード・メモリー・コントローラーが含まれており、DDR4に対してコンフィグレーションすることができます。複数バンクのインターフェイスでは、1つのサブバンクのコントローラーのみがアクティブになります。残りのサブバンクのコントローラーはオフになり、電力消費を抑えます。

複数バンクのインテルAgilex EMIFインターフェイスを使用するには、次の規則に従う必要があります。

  • 1つのサブバンクをアドレスおよびコマンドバンクとして指定します。
  • アドレスおよびコマンドサブバンクには、すべてのアドレスおよびコマンドピンを含める必要があります。
  • アドレスおよびコマンドサブバンク内の個々のアドレスおよびコマンドピンの位置は、ハード・メモリー・コントローラーの使用の有無にかかわらず、ピンの表で定義されているピンマップに従う必要があります。ピンの表は、https://www.intel.co.jp/content/www/jp/ja/programmable/support/literature/lit-dp.htmlより入手可能です。
  • ハード・メモリー・コントローラーを使用する場合、アドレスおよびコマンドサブバンクにはアクティブなハード・コントローラーが含まれます。

サブバンクはすべて、アドレスおよびコマンドバンクとして機能することができます。複数のサブバンクに広がるインターフェイスの場合、 インテル® Quartus® Prime開発ソフトウェアでは、アドレスおよびコマンドバンクをインターフェイスの中央のバンクに配置することが求められます。ただし、この規則において、強化プロセッサー・サブシステムの外部メモリー・インターフェイスは唯一の例外です。