The PCIe controller master port (using AXI protocol with an adapter to the device L3_MAIN interconnect) has the following key fetures:
- 64-bit data, 32-bit address bus width
- Up to 16 simultaneous outstanding transactions, on up to 16 different IDs (4-bit ID port) total for read and write ports together, as follows:
- Posted incoming PCIe transactions are all mapped to AXI ID 0, which ensures that they are executed in order. This includes all high-bandwidth writes, which are memory-type - posted.
- Non-posted incoming PCIe transactions are mapped to AXI ID 1 and above. This includes the high-bandwidth memory-type reads.
- uses the same clock source as the PCIe slave port, but potentially on a different divider ratio
- PCIe master port, does not use a disconnect interface, because unlike the PCIe slave port, it is expected to be always active when the PCIe controller has to initiate a transaction over the device L3_MAIN.
- The PCIe controller maximum inbound payload size is 256 Bytes. The PCIe master port burst maximum length is 16 words (16 x 64-bit data words = 128 Bytes per burst). Hence a 256 Byte inbound data payload is converted by the PCIe master port to 2 max-sized bursts (128 Byte each) towards the device L3_MAIN interconnect PCIe slave port which is 128 Byte-burst compatible.
- Only incremental bursts (INCR) are supported by the PCIe controller master port.
- Non-aligned bursts can be generated - bursts that are not aligned with their own size: a burst-aligned portion of 2N-bytes aligned burst starts on a byte address multiple of 2N, that is a byte address with the N LSBs at '0').
The PCIe memory space supports a 64-bit address mode but in the device PCIe controller, the AXI master port address size is restricted to 32 bits.
Note: A PCIe controller remains fully functional, and able to receive transactions from , for example, anywhere within the 64-bit PCIe memory space, as long as they are correctly remapped by the inbound address translation unit (ATU) to a 32-bit L3_MAIN space address (device L3_MAIN 4 GiB - memory space). The limitation is that the range addressable by the PCIe master is reduced, and that regions larger than 232 bytes (4GiB) total, cannot be mapped to the AXI master port on L3_MAIN.