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