188.8.131.52. Avalon-MM Address to PCIe Address Mapping
The Bursting Slave module transforms read and write transactions on its Avalon® -MM interface into PCIe memory read (MRd) and memory write (MWr) request packets. The Bursting Slave uses the Avalon® -MM address provided on its 64-bit wide address bus directly as the PCIe address in the TLPs that it creates.
The Bursting Slave, with its 64-bit address bus, uses up the whole Avalon® -MM address space and prevents other slaves from being connected to the same bus. In many cases, the user application only needs to access a few relatively small regions of the PCIe address space, and would prefer to dedicate a smaller address space to the Bursting Slave to be able to connect to other slaves.
The example design includes an address mapping module that maps sixteen 1 MB regions of the Avalon® -MM memory space into sixteen 1 MB regions of the PCIe address space. The module occupies only 16MB of the Avalon® -MM address space, and only needs a 24-bit wide address bus, leaving space for other Avalon® -MM slaves.