SPRUIM2H May 2020 – October 2023 AM2431 , AM2432 , AM2434 , AM6411 , AM6412 , AM6421 , AM6422 , AM6441 , AM6442
The PCIe Core module supports dual mode of operation - it can be configured as an End Point (EP) and also as a Root Complex (RC). The operational mode is selected with the CTRLMMR_PCIE0_CTRL[7] MODE_SEL register bit within the device Control Module (CTRL_MMR). It is expected that the MODE_SEL bit is programmed during initial power up based on settings in the SoC boot configuration or a non-volatile storage such as eFuse or Flash memory.
It is not expected that the MODE_SEL setting would have to change during a full power cycle of the device. It is more likely that the operational mode of a SoC will stay as EP or RC for a particular end product’s life cycle. It is not expected to switch back and forth during operation without a reset cycle.
The PCIe core module supports four virtual channels (VC) and four transfer classes (TC). The VCs can be used to implement Quality-of-Service (QoS) mechanism by enabling priority or round-robin arbitration. Typically, the highest numbered enabled VC is assigned the highest priority.
There is one iinitiator port and one target port in the PCIe core. All ingress data traffic regardless of the VC assigned will be delivered on the initiator port. Similarly, all egress data that is presented on target port of the PCIe core will be assigned VCs through the outbound address translation registers.