High Bandwidth Memory (HBM2) Interface Intel® FPGA IPユーザーガイド

ID 683189
日付 10/05/2020
Public
ドキュメント目次

7.2. High Bandwidth Memory (HBM2) Interface Intel FPGA IP HBM2 IPの効率

High Bandwidth Memory (HBM2) Interface Intel FPGA IPの効率から、AXIインターフェイスでのデータバス使用率を推定します。 AXI4プロトコルでは、独立した書き込みおよび読み出しアドレスとデータチャネルをサポートし、同時書き込みおよび読み出しトランザクションを受け入れます。効率値の計算では、コアクロック周波数とメモリークロック周波数が異なることが考慮されています。HBM2 IPのデザイン例に含まれる効率モニターでは、効率や最小レイテンシーを報告します。これは、シミュレーションするトランザクションで観察されるものです。効率モニターのイネーブルは、HBM2 IPパラメーター・エディターのDiagnosticsタブでできます。

次の式で表しているのは、HBM2コントローラーの効率です。

Efficiency = ((Write transactions + Read transactions accepted by HBM2 controller)/total valid transaction count) * (core clk frequency * 2/HBM2 interface frequency) * 100
  • Write transactions: HBM2コントローラーで受け入れるユーザー書き込みデータ・トランザクションを指します (ユーザーによってアサートされたAXI WVALIDおよびコントローラーによってアサートされた対応AXI WREADY)。
  • Read transactions: HBM2コントローラーで受け入れるユーザー読み出しデータ・トランザクションを指します (ユーザーによってアサートされたAXI RVALIDおよびコントローラーによってアサートされた対応AXI RREADY)。
  • total valid transaction count: 最初の有効トランザクションが発行された後のトランザクション時間の合計です。
  • core frequency (MHz): ユーザーロジックが動作する周波数です。コアが動作する周波数は、HBM2インターフェイスよりも低い周波数です。
  • HBM2 interface frequency (MHz): HBM2インターフェイスが動作する周波数です。

HBM2コントローラーにより、ユーザー・インターフェイスからの任意のアドレスパターンに対して高い効率が提供されます。コントローラーでは、着信コマンドを効率的にスケジュールし、頻繁なプリチャージとアクティブ化コマンドのほか、可能な場合は頻繁なバス・ターンアラウンドを回避します。

コントローラーの効率に影響する要因

いくつかの要因によりコントローラーの効率が影響されます。最良の効率を得るには、次の要素をデザインで考慮する必要があります。

  • ユーザー・インターフェイス周波数とHBM2インターフェイス周波数: FPGAファブリック内のユーザーロジックの周波数は、上記の例に示すように、HBM2のメモリー効率を決定する上で重要な役割を果たします。
  • Controller Setting
    • Reorder BufferをController Settingsでディスエーブルして、効率を改善します。(ただし、アプリケーションにより、読み出しデータと読み出し要求の提供の順序を同じにする必要がある場合は、Reorder Bufferをイネーブルすることをお勧めします。)
    • バースト長: 擬似BL8モードは、連続するBL4間のメモリーアクセスのタイミングの短縮に役立ちます。これによりコントローラーの効率が向上します。
  • Traffic Pattern: トラフィック・パターンは、コントローラーの効率を決定する上で重要な役割を果たします。
    • シーケンシャルDRAMアドレスとランダムDRAMアドレス: シーケンシャル・アドレスを使用すると、コントローラーによる連続書き込み要求の発行が、開いているページに対して行われ、コントローラーを高効率にすることができます。ランダムアドレスにはPRECHARGE/ACTIVATEコマンドが絶えず必要であり、コントローラーの効率が低下する場合があります。
    • User Auto Precharge PolicyをFORCEDに設定し、AXIインターフェイスの awuser/aruser 信号をHIGHに設定して、ランダム・トランザクションのAuto Prechargeをイネーブルします。シーケンシャル・トランザクションの場合、Auto Precharge Policyポリシーの設定をHINTにします。
    • Sequential Read OnlyまたはWrite Onlyトランザクション: シーケンシャル読み出し専用または書き込み専用トランザクションでは、効率が向上します。これは、DRAM双方向データバスのバス・ターンアラウンド・タイムが回避されるためです。
  • AXI Transaction ID: さまざまなAXIトランザクションIDを使用すると、HBM2コントローラーで高効率のトランザクションをスケジュールするのに役立ちます。同じAXIトランザクションIDを使用すると、コマンドの順序が維持され、効率が低下する場合があります。
  • Temperature: 主に次の2つの温度の影響により、 インテル® Stratix® 10 HBM2インターフェイスのデータ転送に使用できる帯域幅が減ります。
    • HBM2がGeneral > Threshold temperature for AXI throttlingパラメーターで設定された温度しきい値およびAXI throttling ratioの値 を超えている場合。
    • 85°Cを超えると、HBM2の更新がより頻繁に発生するため、データ転送に使用できる帯域幅が少なくなります。85°Cでは、リフレッシュ・レートは2倍で、95°Cでは、標準的なリフレッシュ時間間隔の7.8マイクロ秒よりも4倍頻繁です。
    HBM2 TEMPレジスター値は、AXI APBバスを介して読み戻すことができ、メモリーのリフレッシュ、温度、およびデータ帯域幅の相関を支援します。