5.1. コンフィグレーション・スペース・レジスターとPCIe仕様の対応関係
5.2. Type 0コンフィグレーション・スペース・レジスター
5.3. Type 1コンフィグレーション・スペース・レジスター
5.4. PCI Express機能構造
5.5. Intel定義のVSECレジスター
5.6. CvPレジスター
5.7. 64ビットおよび128ビットのAvalon-MMブリッジ・レジスターの説明
5.8. Avalon-MMルートポートのプログラミング・モデル
5.9. Uncorrectable Internal Error Mask(訂正不能な内部エラーマスク)レジスター
5.10. Uncorrectable Internal Error Status(訂正不能な内部エラー・ステータス)レジスター
5.11. Correctable Internal Error Mask(訂正可能な内部エラーマスク)レジスター
5.12. Correctable Internal Error Status(訂正可能な内部エラー・ステータス)レジスター
5.7.1.1. Avalon-MM to PCI Express割り込みステータス・レジスター
5.7.1.2. Avalon-MM to PCI Express割り込みイネーブル・レジスター
5.7.1.3. PCI Express Mailbox Registers
5.7.1.4. Avalon-MM-to-PCI Expressアドレス変換テーブル
5.7.1.5. エンドポイント用のPCI Express to Avalon-MM Interrupt StatusレジスターおよびEnableレジスター
5.7.1.6. Avalon-MM Mailbox Registers
5.7.1.7. Control Register Access (CRA) Avalon-MMスレーブポート
複数のBARを含むデザインでは、BARが消費するアドレススペースを最小限に抑えるために、Platform Designerが自動で割り当てるベースアドレスの割り当ての変更を必要とする場合があります。例えば、次のコンポーネントを持つPlatform Designerシステムがこれに該当します。
- Offchip_Data_Mem DDR3 (UniPHYベースのSDRAMコントローラー)が256 Mbのメモリーを制御する — Platform Designerが自動で割り当てるベースアドレスは、0x00000000となります。
- Quick_Data_Mem (オンチップ・メモリー(RAMまたはROM))の4 KB — Platform Designerが自動で割り当てるベースアドレスは、0x10000000となります。
- Instruction_Mem (オンチップ・メモリー(RAMまたはROM))の64 KB — Platform Designerが自動で割り当てるベースアドレスは、0x10020000となります。
- PCIe (Avalon‑MM PCI Express用のハードIP)
- Cra(Avalon‑MMスレーブ) — 自動で割り当てるベースアドレスは、0x10004000となります。
- Rxm_BAR0は、Offchip_Data_Mem DD R3 avlに接続します。
- Rxm_BAR2は、Quick_Data_Mem s1に接続します。
- Rxm_BAR4は、PCIe接続します。Cra Avalon MM Slave
- Nios2 (Nios® IIプロセッサー)
- data_masterは、PCIe Cra、Offchip_Data_Mem DDR3 avl、Quick_Data_Mem s1、Instruction_Mem s1、Nios2 jtag_debug_moduleに接続します。
- instruction_masterは、Instruction_Mem s1に接続します。
アドレススペース使用率が良好でないPCI ExpressへのPlatform Designerシステム次の図では、この内容には直接関係しないConduitインターフェイスを非表示にするためにフィルターを使用しています。
良好ではないアドレスマップ次の図は、このシステムのアドレスマップを示しています。
ベースアドレスが自動で割り当てられると、次の3つの大きなBARが生成されます。
- BAR0は28ビットです。BAR0は28ビットアドレスを必要とするOffchip_Data_Memをアドレス指定するため、これは最適なサイズとなります。
- BAR2は29ビットです。BAR2は、4 KBであるQuick_Data_Memをアドレス指定します。12アドレスビットのみを必要とすべきですが、512 MBのアドレススペースを消費します。
- BAR4も29ビットです。BAR4アドレスPCIe Craは16 KBです。14アドレスビットのみを必要とすべきですが、512 MBのアドレススペースを消費します。
このデザインは1.25 GBのPCIeアドレススペースを消費していますが、実際に必要となるのは276 MBです。解決方法は、アドレスマップを編集して、各BARのベースアドレスを0x0000_0000に配置することです。次の図は、最適化されたアドレスマップを示しています。
最適化されたアドレスマップ
BAR2とBAR4に対して低減されたアドレスビット次の図は、BAR2とBAR4がアクセスするより小さメモリーが0x0000_0000のベースアドレスを持つ場合に必要なアドレスビットの数を示しています。
BAR Avalon-MM RXマスターポートが複数のAvalon-MMスレーブに接続する場合は、スレーブのベースアドレスを順番に割り当て、スレーブを可能な限り小さな2の累乗サイズのアドレス空間に配置します。これにより、BARが使用するシステムアドレス空間が最小限に抑えられます。