The Versal architecture includes several blocks for implementation of high performance, standards-based interfaces built on PCI® -SIG technologies. In Versal adaptive SoCs that contain a CPM, the CPM provides the primary interfaces for designs following the server system methodology. As part of the Versal architecture integrated shell, the CPM has dedicated connections to the NoC where it can access DDR and other hardened IP. The CPM configures separately from the programmable logic. This allows the integrated shell to become operational quickly after boot without the need to configure the PL. This separate configuration addresses a common power-up and reset timing challenge imposed by the PCIe specification. Two implementations of the CPM exist: CPM4 and CPM5.
The CPM4 block complies with the PCIe Base Specification Revision 4.0. It supports defined line rates up to 16 GT/s maximum. CPM4 contains two PCIe controllers with shared access to 16 GTY transceivers and integrates a single direct memory access (DMA) controller functionality. The DMA can be QDMA or XDMA, user selectable and it is associated with CPM PCIe Controller #0. Cache Coherent Interconnect for Accelerators (CCIX) support in CPM4 complies with CCIX Base Specification Revision 1.0.
The CPM5 block complies with the PCIe Base Specification Revision 5.0. It supports defined line rates up to 32 GT/s maximum. CPM5 contains two PCIe controllers with dedicated access to 16 GTYP transceivers. CPM5 integrates two DMA controllers (both QDMA) each associated with CPM PCIe Controller #0 and CPM PCIe Controller #1. CCIX support in CPM5 complies with CCIX Base Specification Revision 1.1.
CPM4 and CPM5 include the following additional components:
- The coherent mesh network (CMN) forms the CCIX block, which builds on the Arm CoreLink CMN-600.
- There are two Coherent Hub Interface (CHI) PL interface (CPI) blocks. CPM4 has one L2 cache instance, and CPM5 has two L2 cache instances. CPI blocks interface with the accelerators in the PL. They perform 512-to-256 bit data width conversion. They also handle clock domain crossing into the internal core clock.
- The non-coherent interconnect block, which interfaces with the PS for access to the NoC and DDR memory controller. The interconnect connects to all of the other sub-blocks. It uses an advanced peripheral bus (APB) or AXI slave interface for configuration.
- A clock/reset block, which includes a phase-locked loop (PLL) and clock dividers.
CPM availability is device specific. For more information, refer to the following documents:
- Versal Architecture and Product Data Sheet: Overview (DS950)
- Versal Adaptive SoC CPM CCIX Architecture Manual (AM016)
- Versal Adaptive SoC CPM Mode for PCI Express Product Guide (PG346)
- Versal Adaptive SoC CPM DMA and Bridge Mode for PCI Express Product Guide (PG347)