各 AIE-ML メモリ タイルには 512 KB のメモリがあり、16 個の 32 KB バンクとして構成されています。各バンクは 128 ビット幅で深さ 2k ワードです。各バンクは 1 サイクルに 1 回の読み出しまたは 1 回の書き込みが可能で、9 個の読み出しインターフェイスおよび 9 個の書き込みインターフェイスからアクセスできます。各インターフェイスは 128 ビットです。次に、メモリ タイルの読み出しおよび書き込みインターフェイスのブロック図を示します。
これらのインターフェイスには、次の機能もあります。
- 読み出しインターフェイス
- メモリ マップド AXI4 書き込み (メモリ タイル –1 およびメモリ タイル +1、ならびに 6 つの MM2S チャネル [0-5] に対する制御パケットを含む)
- 書き込みインターフェイス
- メモリ マップド AXI4 読み出し (メモリ タイル –1 およびメモリ タイル +1、ならびに 6 つの S2MM チャネル [0-5] に対する制御パケットを含む)
AIE-ML メモリ タイル内の DMA S2MM チャネル 0 ~ 3 と MM2S チャネル 0 ~ 3 は、ローカル メモリ バンクに加え、左右方向のタイル内のメモリ バンクにもアクセスできます。
メモリ タイル内のメモリは、設定可能なバンク インターリーブをサポートします。バンクはリニアまたはインターリーブ モードでアドレス指定できます。設定は、レジスタ ビット Memory_Interleaving (0 = メモリ インターリーブなし、1 = 16 バンクをインターリーブ) で制御します。
リニア モードでは、バンク 0 のアドレス 0、1、2 からアドレス指定が開始し、最後のアドレスに達するとバンク 1 のアドレス 0、1、2 へと進みます。インターリーブ モードでは、バンク 0 のアドレス 0 からアドレス指定が開始し、バンク 1 のアドレス 0 からバンク (N-1) のアドレス 0 に達すると、次にバンク 0 のアドレス 1 へ進みます (これ以降は同じ処理)。
メモリ タイルのバンクは ECC によって保護されます。ECC スクラビングは AIE-ML のデータ メモリと同様です。