IP インテグレーターでは、さまざまなメモリ マップされたマスターおよびスレーブ インターフェイスに対し、業界標準の IP-XACT データ フォーマットに従って、終点のマスターおよびスレーブのメモリ要件および機能をキャプチャします。このセクションでは、IP インテグレーター モデルによるメモリ マップド スレーブの情報処理方法の概要を説明します。
マスター インターフェイスにはアドレス空間 (address_space オブジェクト) があります。スレーブ インターフェイスには、関連付けられているマスターのアドレス空間にスレーブをマップするためのメモリ マップと呼ばれる address_space コンテナーがあります。通常は、これらのメモリ マップの名前は、S_AXI
など、スレーブ インターフェイス ピンと同じ名前が付けられますが、同じにする必要はありません。
各スレーブ インターフェイス ピンのメモリ マップには、アドレス セグメント (address_segment オブジェクト) が含まれます。これらのアドレス セグメントは、そのスレーブのアドレス デコード ウィンドウに対応します。典型的な AXI4-Lite スレーブ インターフェイスには、アドレス範囲を表すアドレス セグメントが 1 つ含まれます。スレーブの中には、ブリッジのように複数のアドレス セグメントが含まれているものや、各アドレス デコード ウィンドウに複数のアドレスが含まれるものもあります。
スレーブをマスター アドレス空間にマップすると、マスターの address_segment オブジェクトが作成され、スレーブのアドレス セグメントがマスターにマップされます。Vivado IP インテグレーターでは、デザインのすべてのスレーブに対してアドレスを自動的に割り当てることができますが、[Address Editor] ウィンドウを使用してアドレスを手動で割り当てることもできます。[Address Editor] ウィンドウにはスレーブのアドレス セグメントが表示され、それらをマスターのアドレス空間にマップできます。
- [Address Editor] ウィンドウをクリックし、デザイン内のすべてのスレーブのメモリ マップを表示します。注記: [Address Editor] ウィンドウが表示されていない場合は、 コマンドをクリックして開きます。
- [Address Editor] ウィンドウのどこかを右クリックし、Assign All をクリックします。
このコマンドにより、スレーブ アドレス セグメントがマスター アドレス空間にマップされ、マスターにアドレス セグメントが作成されます。自動生成されたアドレスは、対応する列をクリックして値を変更すれことにより変更できます。
または、[Address Editor] ウィンドウの Assign All ツールバー ボタンをクリックし、アドレスを自動的に割り当てます。
[Auto Assign Address] ダイアログ ボックスが表示されます。
-
OK をクリックします。
[Address Editor] ウィンドウは次の図のようになります。
- AXI BRAM Controller コアのアドレス セグメントのサイズを変更します。
Range 列をクリックし、ドロップダウン リストから 64K を選択します。
- Diagram ウィンドウをクリックして IP インテグレーターのデザイン キャンバスに戻ります。