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

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

3.3.1. インテル® Stratix® 10 HBM2コントローラーの詳細

このトピックでは、HBM2コントローラー機能の一部について概要を説明します。

HBM2バースト・トランザクション

HBM2コントローラーでサポートするのは、HBM2デバイスにアクセスするPseudo Channelモードのみです。したがって、サポートできるのは、DRAMへのBL4トランザクションのみです。効率向上のために、擬似BL8モードをサポートしています。これは、指定の開始アドレスを使用する連続した2つのBL4データを提供するのに役立ちます。BL8トランザクションと同様です。

各BL4トランザクションは、4*64ビットまたは32バイトに対応します。また、BL8トランザクションはPseudo Channelごとに64バイトに対応します。バースト・トランザクション・モード (32 Bと64B) の選択には、パラメーター・エディターを使用します。

ユーザー・インターフェイスとHBM2インターフェイスの周波数

ユーザー・インターフェイスの動作周波数は、HBM2インターフェイスよりも低くなります。最大インターフェイス周波数は、選択したデバイスのスピードグレードやFPGAコアのロジック周波数によって異なります。UIBサブシステム内のレートマッチングFIFOでは、2つのクロックドメイン間のデータ転送を処理します。

コマンド・プライオリティー

コマンド・プライオリティーの設定は、書き込みまたは読み出しコマンド要求に対してすることができます。これには、AXIインターフェイス、またはAXI書き込みまたは読み出しアドレスチャネルの qos 信号を使用します。HBM2コントローラーでサポートするのは、通常および高いプライオリティーのレベルです。システムでは、同じプライオリティー・レベルを持つコマンドをラウンドロビン方式で実行します。

スタベーションの限界

コントローラーでは、各コマンドの待機時間を追跡し、使用されないままコマンドキューに長時間留まっているコマンドがないようにします。コントローラーによって、すべてのコマンドの効率的な処理が保証されます。

コマンドのスケジュール

HBM2コントローラーでは、着信コマンドをスケジュールして、HBM2インターフェイスでの最大効率を達成します。HBM2コントローラーは、AXI4プロトコル仕様のAXI順序モデルにも準拠しています。

データの並べ替え

コントローラーでは、読み出しデータを並べ替えて、読み出し要求の順序と一致させます。

アドレスの順序付け

HBM2コントローラーでは、さまざまなアドレス順序方式をサポートしています。方式を選択して、ユースケースに応じて最大効率を実現します。選択したアドレス指定方式により、AXI書き込みおよび読み出しアドレスバス内のアドレスコンフィグレーションの順序が決まります。これには、ロウアドレス、カラムアドレス、バンクアドレス、スタックID (8Hデバイスにのみ適用) が含まれます。HBM2コントローラーでは、コマンドの論理アドレスの再マッピングを物理メモリーアドレスに対して行います。

熱制御

HBM2コントローラーでは、HBM2デバイスからのTEMPおよびCATTRIP出力を使用して、HBM2インターフェイスの温度変動を管理します。

  • 温度補償リフレッシュ (TEMP): HBM2 DRAMによって温度補償リフレッシュ情報のコントローラーへの提供が、TEMP[2:0] ピンを介して行われます。これにより、適切なリフレッシュ・レートが定義されます。このリフレッシュ・レートは、データの整合性を維持するためにDRAMで判断したものです。各エンコードの絶対温度値はベンダー固有です。TEMP[2:0] ピンのエンコードによって反映されるリフレッシュ・レートは、スタック内の最も高温度のデバイスに必要なものです。TEMPデータ温度が更新されるのは、各リフレッシュ・レートに適したベンダー指定のしきい値レベルを超えた場合です。
  • 破局的温度センサー (CATTRIP): CATTRIPセンサーで検出するのは、スタック内のダイのジャンクション温度が、破局的トリップしきい値CATTEMPを超えているかどうかです。デバイスベンダーでは、CATTEMP値をプログラムして、HBMスタックに永続的な損傷が発生する温度より低くなるようにします。またCATTEMP値は、絶対最大ジャンクション温度値でもあります。この値は、 インテル® Stratix® 10データシートで明示されています。その対象のデバイスにはHBM2 DRAMが搭載されています。 インテル® Stratix® 10データシートのリンクは次のとおりです。https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/stratix-10/s10_datasheet.pdf

    ジャンクション温度がスタック内のどこかでCATTEMP値を超えると、HBMスタックでは、外部CATTRIPピンを 1 に駆動し、破局的損傷が発生する可能性があることを示します。CATTRIPピンが 1 の場合、コントローラーでは、HBMへのすべてのトラフィックを停止し、コントローラーは無期限に機能停止します。過熱状態を解決してCATTRIP値を 0 に戻すには、デバイスの電源を切り、十分な時間をとってデバイスを冷却してから電源を再投入します。

  • サーマル・スロットリング: サーマル・スロットリングは、コントローラーの安全機能です。これにより、HBM2ダイが過熱した場合の熱暴走を制御し、破局的障害を防ぎます。HBM2デバイスのジャンクション温度を指定して、その温度で、コントローラーによる入力コマンドのスロットルを開始します。また、スロットル比を指定し、それによってスロットル周波数が決定します。コントローラーでAXI ready信号 (awreadywready および arready) をデアサートするのは、入力コマンドとデータのアクティブなスロットリングを行っている場合です。

リフレッシュ要求

HBM2コントローラーでは、HBM2メモリー・リフレッシュ要件を処理し、リフレッシュ要求の発行を最適なタイミングで行います。コントローラーでは、リフレッシュ・レートの自動制御をメモリーの温度設定に基づいて行います。これには、メモリーによって提供されるTEMPベクトルを介します。HBM2コントローラーのリフレッシュ・ポリシーの選択は、リフレッシュ要求の周波数に基づいて行います。リフレッシュ・コマンドの直接発行を選択する場合は、サイドバンドAPBインターフェイスを介して行います。

プリチャージ・ポリシー

HBM2コントローラでは、プリチャージ・コマンドの発行をHBM2メモリーに対して行います。これは、書き込み/読み出しトランザクション・アドレスに基づきます。さらに、自動プリチャージ・コマンドの発行は、書き込みおよび読み出しコマンドとともにできます。これは、AXI書き込みおよび読み出しアドレスポートを介して行います。

次の2つの自動プリチャージ・モードがあります。

  • HINT: 自動プリチャージ要求を発行できます。その上で、コントローラーでは、プリチャージ・コマンドを発行するタイミングを決定します。
  • FORCED: 自動プリチャージ要求の提供をAXIインターフェイスを介して行うと、プリチャージ要求が実行されます。

パワーダウン・イネーブル

電力節約のため、HBM2コントローラーは、バスが長時間アイドル状態のときにパワーダウンモードに入ります。このオプションは、必要に応じて選択できます。

ECC

HBM2コントローラーではECCをサポートしています。実装されているECC方式は、ダブルビット・エラー検出を備えたシングルビット・エラー訂正です。これには、64ビットのデータおよび8ビットのECCコード (シンドロームとも呼ばれます) が備えられています。

デフォルトでイネーブルされているHBM2コントローラーの機能

HBM2コントローラーでは、次の機能をデフォルトでイネーブルします。

  • DBI: DBIオプションでは、DBIの書き込みと読み出しの両方をサポートし、SI/電力消費の最適化のため、HBM2 DQバスでの信号切り替えを制限します。
  • パリティー: コマンド/アドレスパリティーおよびDQパリティーをサポートします。