Question about TXS interface of the PCIe IP core (AVMM) for Cyclone 10 GX
- 5 months ago
When I choose to set the Avalon-MM address width to 64-bit, is the address on txs_address_i equal to the address of the PCIe domain to be accessed?
Yes. When the Avalon-MM address width is configured to 64 bits, the value presented on txs_address_i is sent directly as the PCIe address for the transaction. The bridge performs no address translation.If so, do I need to set the "Address width of accessible PCIe memory space" to 64?
Yes, if you need to access the full 64-bit PCIe address space, you must set the "Address width of accessible PCIe memory space" parameter to 64.
If I don't set it to 64, then txs_address_i cannot cover the 64-bit address.
If you configure the "Address width of accessible PCIe memory space" to be less than 64, then txs_address_i cannot represent the entire 64-bit PCIe address range. Only a subset of the PCIe address space will be accessible.
If the PCIe core does not perform address translation, how can it obtain the 64-bit PCIe domain address through this address that is less than 64 bits?
If the Avalon-MM address width or the "Address width of accessible PCIe memory space" parameter is less than 64 bits, so only a partial range of the PCIe address space can be accessed. To access the full 64-bit PCIe address space, both parameters must be set to 64.
Let us know if you have any further doubts.
References:
- Arria® 10 or Cyclone® 10 GX Avalon® Memory-Mapped (Avalon-MM) DMA Interface for PCI Express* Solutions User Guide
- Section 3.2, "Avalon-MM Settings"
- Section 5.1.5, "Non-Bursting Slave Module" (for signal widths)
- Arria® 10 and Cyclone® 10 GX Avalon® Memory-Mapped (Avalon-MM) Interface for PCI Express* User Guide
- Appendix A.4.8, "PCI Express-to-Avalon-MM Address Translation for 32-Bit Bridge"
- Arria® 10 or Cyclone® 10 GX Avalon® Memory-Mapped (Avalon-MM) DMA Interface for PCI Express* Solutions User Guide