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

ID 683216
日付 6/20/2022
Public

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

ドキュメント目次

11.10.2. I/O SSM calbusブリッジのデータ構造と使用法

I/O SSM calbusブリッジは、0x0300_0000から0x033f_ffffの範囲のアドレスに広がります。各アドレスは32ビット・ワードを表します。calbusブリッジはいくつかのデータ構造で構成されています。次の表に概要を示しています。

calbusブリッジのアドレス範囲のベースにはサブバンク構造の配列があります。この配列は物理的なサブバンク構造を模倣しています (このユーザーガイドのアーキテクチャーの章のI/Oバンクの項で説明されています)。サブバンク構造のサイズは0x0001_0000バイトであり、サブバンク0はcalbusブリッジのベースに表示され、サブバンク1は0x0301_0000、サブバンク2は0x0302_0000に表示されます。

注: インテル® では、キャリブレーションされた遅延設定値をcalbusブリッジ経由で変更することを推奨していません。これを行うと、PHYの破損につながる可能性があります。

各サブバンク構造で、4つのレーン構造、1つのタイルセンター構造、および1つのhmc構造をインスタンス化します。

表 168.  サブバンク構造
アドレス 構造タイプ 構造のインスタンス名 詳細
tile_addr_base_address = 0x0300_0000 + 0x0001_0000*tile_id lane_struct lane_0 レーンデータ構造で、サブバンク内のレーンの物理的な構造を模倣しています。
tile_addr_base_address + 0x2000 lane_struct lane_1 レーンデータ構造で、サブバンク内のレーンの物理的な構造を模倣しています。
tile_addr_base_address + 0x4000 lane_struct lane_2 レーンデータ構造で、サブバンク内のレーンの物理的な構造を模倣しています。
tile_addr_base_address + 0x6000 lane_struct lane_3 レーンデータ構造で、サブバンク内のレーンの物理的な構造を模倣しています。
tile_addr_base_address + 0x8000 sub_bank_centre_struct center タイルセンターの物理的な構造を模倣するデータ構造です (アーキテクチャーの章のI/Oバンクの項で説明されています)。
tile_addr_base_address + 0xA000 hmc_struct hmc MMR空間の物理的な構造を模倣するデータ構造です (エンドユーザーの信号の章のMMR一覧の項で説明されています)。

tile_idは、サブバンクがI/O行でチェーン接続されている場合のサブバンクの位置番号です。tile id値の0は、左端のI/Oバンク内の下側のサブバンクを指しています。

次の図は、 インテル® Agilex™ AGF012およびAGF014デバイス、パッケージR24Aの上部I/O行のタイルIDを示しています。

図 241.  インテル® Agilex™ AGF012およびAGF014、パッケージR24Aの上部I/O行のタイルID

レーン構造は、レーン内のピンの設定と、レーン全体の設定 (DQSツリーの設定など) で構成されます。

表 169.  レーン構造
アドレス 構造タイプ 構造のインスタンス名
io_lane_addr (lane_0、lane_1、lane_2、またはlane_3のベースアドレス) pin_configuration_struct pin_0
io_lane_addr + 0x0100 pin_configuration_struct pin_1
io_lane_addr + 0x0200 pin_configuration_struct pin_2
io_lane_addr + 0x0300 pin_configuration_struct pin_3
io_lane_addr + 0x0400 pin_configuration_struct pin_4
io_lane_addr + 0x0500 pin_configuration_struct pin_5
io_lane_addr + 0x0600 pin_configuration_struct pin_6
io_lane_addr + 0x0700 pin_configuration_struct pin_7
io_lane_addr + 0x0800 pin_configuration_struct pin_8
io_lane_addr + 0x0900 pin_configuration_struct pin_9
io_lane_addr + 0x0a00 pin_configuration_struct pin_10
io_lane_addr + 0x0b00 pin_configuration_struct pin_11
io_lane_addr + 0x1800 dqs_tree_struct dqs
表 170.  ピン・コンフィグレーションの構造
サイズ (バイト) レジスター名 詳細 構造のベースアドレスからのオフセット
4 reg_counter_b_out データ出力遅延 0xC0
4 reg_dqs_toggle_count_clr DQSトグルカウンターのクリア 0xCC
4 reg_out_phase_rank[4] ランクごとのデータ出力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。 0xD0
4 reg_io_pin_value ピンの値の直接読み取り 0xE4
表 171.  DQSツリー構造
サイズ (バイト) レジスター名 詳細 構造のベースアドレスからのオフセット
4 reg_sel_vref 内部VREF制御 (Vref-in) 0x14
4 reg_dq_in_delay_pin0[4] ピン0のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0x80
4 reg_dq_in_delay_pin1[4] ピン1のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0x90
4 reg_dq_in_delay_pin2[4] ピン2のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0xA0
4 reg_dq_in_delay_pin3[4] ピン3のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0xB0
4 reg_dq_in_delay_pin4[4] ピン4のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0xC0
4 reg_dq_in_delay_pin5[4] ピン5のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0xD0
4 reg_dqs_in_delay_a[4] DQS入力遅延A。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0xE0
4 reg_dqs_preamble_delay_a[4] DQSプリアンブル入力遅延A。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[15] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0xF0
4 reg_dq_in_delay_pin6[4] ピン6のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0x100
4 reg_dq_in_delay_pin7[4] ピン7のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0x110
4 reg_dq_in_delay_pin8[4] ピン8のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0x120
4 reg_dq_in_delay_pin9[4] ピン9のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0x130
4 reg_dq_in_delay_pin10[4] ピン10のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0x140
4 reg_dq_in_delay_pin11[4] ピン11のDQ入力遅延。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0x150
4 reg_dqs_in_delay_b[4] DQS入力遅延B。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[12] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0x160
4 reg_dqs_preamble_delay_b[4] DQSプリアンブル入力遅延B。各配列要素は、メモリーランクに対応します (該当する場合)。Bit[15] はイネーブルビットです (有効=1、無効=0)。Bit[11:0] は遅延タップです。 0x170