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

ID 683379
日付 8/30/2019
Public
ドキュメント目次

3.1. High Bandwidth Memory (HBM2) Interface Intel FPGA IP合成デザイン例

合成デザイン例には、次の主要ブロックが含まれています。
  • High Bandwidth Memory (HBM2) Interface Intel FPGA IPのインスタンス。HBM2デバイスへの読み出し、書き込み、およびその他の動作を管理します。
  • 独立した2つのトラフィック・ジェネレーターが、イネーブルされているHBMチャネルすべてに備えられています (HBM疑似チャネルごとにトラフィック・ジェネレーター1つ)。トラフィック・ジェネレーターは、合成可能なAXI-4タイプのサンプルドライバーです。これにより、読み出しおよび書き込みの擬似ランダムパターンをパラメーター化されたアドレスの数に対して実装します。また、トラフィック・ジェネレーターでは、メモリーから読み出したデータを監視して、書き込んだデータと一致することを確認し、そうでない場合は失敗をアサートします。
  • I/O PLL。HBM2 IPの ext_core_clock ポートに供給する外部コアクロックをエミュレートします。このクロックで最終的にクロッキングするのは、Traffic Generatorのほか、HBM2 IPの wmc_clk_0_clk クロックによってクロッキングされるその他のコンポーネントです。
図 3. 合成デザイン例

複数のHBMチャネルをイネーブルする場合、合成デザイン例には、トラフィック・ジェネレーターの追加ペアが含まれます。これは、イネーブルするHBMチャネルの数に基づいて行われます。各HBMチャネルとHBM擬似チャネルは独立しているため、追加のトラフィック・ジェネレーターもまた、それぞれ互いに独立しています。ただし、単一のHigh Bandwidth Memory (HBM2) Interface Intel FPGA IPに接続されています。次の図はで示すのは、HBMチャネルがイネーブルになっている例です。

図 4. 3つのHBMチャネルをイネーブルした合成デザイン例
表 4.  HBM2デザイン例のトップレベル信号
信号グループ 信号名 入力/出力 説明
PLL Ref clk入力 core_clk_iopll_ref_clk_clk 入力 1 LVDS差動リファレンス・クロックです。I/O PLLで使用し、ファブリック・コア・クロックを生成します。デザイン例では、コアクロックを生成するI/O PLLを自動インスタンス化します。
hbm_0_example_design_pll_ref_ clk_clk 入力 1 LVDS差動リファレンス・クロックです。UIB PLLで使用します。デザイン例では、UIBサブシステムのクロックを生成するUIB PLLを自動インスタンス化します。
リセット core_clk_iopll_reset_reset 入力 1 コアクロックI/O PLLのリセット入力です。リセット極性はアクティブHighです。I/O PLL仕様については、 インテル® Stratix® 10デバイス・データシートを参照してください。
hbm_0_example_design_wmcrst_n_ in_reset_n 入力 1 一般的なコアロジックのリセットです。アクティブLowです。
hbm_only_reset_in_reset 入力 1 HBMのみのリセットです。アクティブHighです。現在はサポートされていません。これはLowに接続できます。
バウンダリー・スキャン信号 m2u_bridge_cattrip 入力 1 HBM2バウンダリー信号です。トラフィック・ジェネレーターでは駆動しません。これらの信号をデザイン例のトップレベルで公開して、コンパイルを正常に行ってください。この信号はアクティブに駆動しないでください。 インテル® Quartus® Prime開発ソフトウェアでは、これらの信号の配置をHBM2メモリーに接続されているピンに対してします。これらのピンに配置アサインメントを追加しないでください。追加するとコンパイルエラーが発生します。
m2u_bridge_temp 入力 3
m2u_bridge_wso 入力 8
m2u_bridge_reset_n 出力 1
m2u_bridge_wrst_n 出力 1
m2u_bridge_wrck 出力 1
m2u_bridge_shiftwr 出力 1
m2u_bridge_capturewr 出力 1
m2u_bridge_updatewr 出力 1
m2u_bridge_selectwir 出力 1
m2u_bridge_wsi 出力 1
トラフィック・ジェネレーター・ステータス信号 tgx_0_status_traffic_gen_pass 出力 1 Pseudo Channel 0のトラフィック・ジェネレーター・ステータス信号 (Pass、Fail、およびTimeout) 、Channelごとです。
tgx_0_status_traffic_gen_fail 出力 1
tgx_0_status_traffic_gen_timeout 出力 1
tgx_1_status_traffic_gen_pass 出力 1 Pseudo Channel 1のトラフィック・ジェネレーター・ステータス信号 (Pass、Fail、およびTimeout) 、Channelごとです。
tgx_1_status_traffic_gen_fail 出力 1
t gx_1_status_traffic_gen_timeout 出力 1

複数のHBM2インターフェイスを持つプロジェクトでのデザイン例の使用

Fitterエラーが発生する可能性があるため、プロジェクトでのHBM2デザイン例のインスタンス化は、複数回行わないでください。

HBM2インターフェイスを2つ持つプロジェクトを作成するには、HBM2 IPのインスタンスを2つ作成します。1つはHBM location = Top、もう1つはHBM2 location = bottomです。デザイン例プロジェクトを各IPに対して生成し、それを複数のHBM2インターフェイス・プロジェクトでインスタンス化します。