アドレス デコードとシステム アドレス マップ - 1.0 日本語

Versal ACAP Programmable Network on Chip and Integrated Memory Controller v1.0 LogiCORE IP 製品ガイド (PG313)

Document ID
PG313
Release Date
2021-04-08
Version
1.0 日本語

Versal™ ACAP プログラマブル NoC のシステム アドレス マップは、Versal デバイスのスレーブのデフォルト アドレスを定義します。このアドレス マップは、NoC の統合インターコネクトに組み込まれています。NoC にはアドレス マップを変更する機能があり、ターゲット アプリケーションに合わせてアドレス マップをカスタマイズできます。

次の表に、NoC から見た最上位のシステム アドレス マップを示します。

表 1. システム アドレス マップ
名前 開始アドレス 終了アドレス 説明
DDR_LOW0 0x0000_0000_0000 0x0000_7FFF_FFFF DDR チャネル 0 サブ領域 0
LPD_AFI_FS 0x0000_8000_0000 0x0000_9FFF_FFFF 低電力ドメインの AFI ポートを介した PL へのアクセス
予約 0x0000_A000_0000 0x0000_A3FF_FFFF デコードされない
FPD_AFI_0 0x0000_A400_0000 0x0000_AFFF_FFFF フル電力ドメインの AFI ポートを介した PL へのアクセス
FPD_AFI_1 0x0000_B000_0000 0x0000_BFFF_FFFF フル電力ドメインの AFI ポートを介した PL へのアクセス
QSPI 0x0000_C000_0000 0x0000_DFFF_FFFF QSPI/OSPI インターフェイスへのアクセス
PCIe_0 0x0000_E000_0000 0x0000_EFFF_FFFF PCIe 領域 0 へのアクセス
PMC 0x0000_F000_0000 0x0000_F7FF_FFFF PMC スレーブ デバイスへのアクセス
STM_CORESIGHT 0x0000_F800_0000 0x0000_F90F_FFFF CoreSight STM および GIC プログラミング インターフェイスへのアクセス
予約 0x0000_F910_0000 0x0000_FBFF_FFFF デコードされない
CPM 0x0000_FC00_0000 0x0000_FCFF_FFFF CPM ブロックへのアクセス
FPD_SLAVES 0x0000_FD00_0000 0x0000_FDFF_FFFF フル電力ドメイン内のスレーブ デバイスへのアクセス
LPD_SLAVES 0x0000_FE00_0000 0x0000_FFFF_FFFF 低電力ドメイン内のスレーブ デバイスへのアクセス
PMC_ALIAS_0 0x0001_0000_0000 0x0001_07FF_FFFF SSIT デバイス上のほかのダイからマスター ダイ上の PMC へのアクセス
PMC_ALIAS_1 0x0001_0800_0000 0x0001_0FFF_FFFF SSIT デバイス上のほかのダイからダイ 1 上の PMC へのアクセス
PMC_ALIAS_2 0x0001_1000_0000 0x0001_17FF_FFFF SSIT デバイス上のほかのダイからダイ 2 上の PMC へのアクセス
PMC_ALIAS_3 0x0001_1800_0000 0x0001_1FFF_FFFF SSIT デバイス上のほかのダイからダイ 3 上の PMC へのアクセス
予約 0x0001_2000_0000 0x0003_FFFF_FFFF デコードされない
PS_TO_PL_0 0x0004_0000_0000 0x0005_FFFF_FFFF AFI インターフェイスを介した PS から PL へのアクセス
PCIe_1 0x0006_0000_0000 0x0007_FFFF_FFFF PCIe 領域 1 へのアクセス
DDR_LOW1 0x0008_0000_0000 0x000F_FFFF_FFFF DDR チャネル 0 サブ領域 1
予約 0x0010_0000_0000 0x007F_FFFF_FFFF デコードされない
PCIe_2 0x0080_0000_0000 0x00BF_FFFF_FFFF PCIe 領域 2 へのアクセス
DDR_LOW2 0x00C0_0000_0000 0x00FF_FFFF_FFFF DDR チャネル 0 サブ領域 2
DDR_LOW3 0x0100_0000_0000 0x01B7_7FFF_FFFF DDR チャネル 0 サブ領域 3
予約 0x01B7_8000_0000 0x01FF_FFFF_FFFF デコードされない
[AIE] 0x0200_0000_0000 0x0200_3FFF_FFFF AI エンジン アレイへのアクセス
予約 0x0200_8000_0000 0x0200_FFFF_FFFF デコードされない
PL_LO 0x0201_0000_0000 0x03FF_FFFF_FFFF PL 内のスレーブ デバイスへのアクセス (下位アドレス領域)
予約 0x0400_0000_0000 0x04FF_FFFF_FFFF デコードされない
DDR_CH1 0x0500_0000_0000 0x057F_FFFF_FFFF DDR チャネル 1 の下位半分
DDR_CH1_1 0x0580_0000_0000 0x05FF_FFFF_FFFF DDR チャネル 1 の上位半分
DDR_CH2 0x0600_0000_0000 0x067F_FFFF_FFFF DDR チャネル 2 の下位半分
DDR_CH2_1 0x0680_0000_0000 0x06FF_FFFF_FFFF DDR チャネル 2 の上位半分
DDR_CH3 0x0700_0000_0000 0x077F_FFFF_FFFF DDR チャネル 3 の下位半分
DDR_CH3_1 0x0780_0000_0000 0x07FF_FFFF_FFFF DDR チャネル 3 の上位半分
PL_HI 0x0800_0000_0000 0x0FFF_FFFF_FFFF PL 内のスレーブ デバイス (上位アドレス領域)
予約 0x1000_0000_0000 0xFFFF_FFFF_FFFF デコードされない

アドレス領域

DDR_CH0
アドレス領域 DDR_CH0 は、複数のサブ領域(DDR_LOW0、DDR_LOW1、DDR_LOW2、および DDR_LOW3、合計 1TB の空間) で構成されます。この空間の下位 2GB (DDR_LOW0) は、32 ビット アドレス マスターによってアドレス指定可能です。アドレス領域 DDR_CH1、DDR_CH2、および DDR_CH3 は、それぞれ 2 つのサブ領域に分割できます。各サブ領域は、独立したメモリ コントローラーにマップできます。
CIPS
各種の CIPS スレーブ領域 (LPD_AFI_FS、FPD_AFI_0、FPD_AFI_1、QSPI、PCIe_0、PMC、STM_CORESIGHT、CPM、FPD_SLAVES、および LPD_SLAVES) には、アドレス空間の下位 4GB 内に固定されたアドレス領域があり、32 ビット マスターによるアクセスが可能です。
PMC_ALIAS
PMC_ALIAS 領域により、SLR 内のマスターから、ほかの SLR 内の PMC ブロックのアドレス空間にアクセスできます。たとえば、SLR0 から SLR1 内の PMC にアクセスするには、PMC_ALIAS_1 アドレス空間を使用します。
PS_to_PL
PS_to_PL アドレス領域により、AFI インターフェイスを介して PS 内のマスターから PL 内のスレーブに直接アクセスできます。この領域には NoC からアクセスできません。
AIE、PL_LO および PL_HI
AIE、PL_LO、および PL_HI 領域には、専用のアドレス デコーダーはありません。これらの領域へのトランザクションには、固定されたデスティネーション ID、マスターで定義されるデスティネーション ID、またはアドレス リマップ レジスタを使用する必要があります。

トランザクションが AXI アドレスを使用して配線され、受信したアドレスがどのアドレス マッチャーにもヒットしないか、AIE、PL_LO、または PL_HI 空間内にない場合は、AXI DECERR が生成され、割り込みステータス ビットがセットされてアドレス マップ エラーを示します。トランザクションが AIE、PL_LO、または PL_HI 空間内にあるが、リマップ レジスタ内でヒットせず、有効なデスティネーション ID を受信できない場合、トランザクションは NoC 配線ファブリック内に挿入できます。この場合、1 つの NSU を、このような無効なトランザクションを受信するエラー スレーブとして設定できます。エラー スレーブは、SLVERR の代わりに DECERR を返すように設定されます。