IP インテグレーターでは、マスター インターフェイスおよびスレーブ インターフェイス間 (インターコネクト IP を介す場合もあり) がブロック図上で接続されます。これは、アドレス パスと呼ばれます。スレーブ インターフェイスには、スレーブ セグメント (マスターがアクセスするメモリまたはレジスタのアドレス指定可能な領域) が 1 つまたは複数含まれます。
各マスター ブロックには、1 つまたは複数のアドレス空間 (例: 命令およびデータ アドレス空間) が含まれます。スレーブ セグメントは、マスターのアドレス空間内の特定のアドレスでマスターに対して可視になります。アドレス割り当てとは、ベース アドレス (例: 開始アドレスなど)、およびスレーブがマスターに対して可視になるマスターのアドレス空間内の範囲を選択することです。この後、割り当てられたアドレスがマスターのアドレス空間にマスター セグメントとして格納されます。マスター セグメントは、単にベース アドレスとマスターがスレーブにアクセスできる範囲を割り当てるアドレス割り当てにすぎません。
次の図は、マスター インターフェイス (master_block
) からスレーブ インターフェイス (slave_block
) までのアドレス パスにより、マスターのアドレス空間がスレーブ セグメント リソースにアクセスできるようにしたところを示しています。マスター セグメントは、アドレス割り当て中にマスターのアドレス空間内に作成されます。マスター セグメントは、マスターのアドレス空間の一部を使用してスレーブ セグメント リソースにアクセスします。
重要:
AXI4-Lite の範囲は 4K 未満であれば問題ないため、128 などの範囲が許容可能となります。ただし、この制限は、AXI Interconnect IP を介して接続された AXI4-Lite スレーブに適用されるものです。AXI4-Lite が 4K 未満 (たとえば 128) のインターコネクトに接続されている場合、その AXI インターコネクトに接続されているすべてのスレーブが AXI4-Lite スレーブであるか、またはこの特定の AXI4-Lite スレーブの範囲を 4K 以上にしてデザインが機能するようにする必要があります。
図 1. アドレス構造