Compute Express Link (CXL) 2.0 Controller with AMBA AXI interface
Overview
Rambus CXL 2.0 Controller with AXI is a parameterizable Compute Express Link (CXL) controller Soft IP designed for ASIC and FPGA implementation. Rambus CXL 2.0 Controller with AXI leverages PLDA's silicon proven PCIe 5.0 Controller architecture for the CXL.io path, and adds the CXL.cache and CXL.mem paths specific to CXL. The Controller supports the AMBA® AXI™ Protocol Specification for CXL.io traffic, and either Intel CXL-cache/mem Protocol Interface (CPI) or a AMBA® AXI™ Protocol Specification for CXL.mem and CPI interface for CXL.cache traffic, or the AMBA® CXS Protocol Specification. Rambus CXL 2.0 Controller with AXI also complies with the Intel PHY Interface for PCI Express (PIPE) specification version 5.x and supports the PIPE LPC and SERDES modes. The provided Graphical User Interface (GUI) Wizard allows designers to tailor the IP to their exact requirements, by enabling, disabling, and adjusting a vast array of parameters, including CXL device type, PIPE interface configuration, buffer sizes and latency, low power support, SR-IOV parameters, etc. for optimal throughput, latency, size and power. The Controller is extensively verified using commercial as well as homegrown VIP and testsuites, and has been integrated with a number of PCIe 5.0 PHY IP.
Key Features
- CXL Protocol Layer
- Supports the CXL 2.0 specification
- Backward compatible with CXL 1.1 specification
- Implements the CXL.io, CXL.mem, and CXL.cache protocols
- Supports all 3 defined CXL device types
- Supports the PCI Express 5.0 base specification revision 1.0
- Supports the PIPE 5.x specification with 8-, 16-, 32-, 64-, and 128-bit configurable PIPE interface width
- Supports CXL device configurations
- Supports operation at x16, x8, x4, x2, x1
- Supports Host, Device, Switch ports and Dual Mode/shared silicon implementation
- Supports Low-latency CXL.mem flit encoder/decoder
- Supports Viral error containment
- Supports deferrable writes
- Supports Standard Intel CPI interface or AMBA AXI for CXL.mem
- Supports Standard Intel CPI interface for CXL.cache
- Supports AMBA® CXS interface
- Supports Sync header bypass and drift buffer modes supported
- Supports All low-power states
- Supports CXL RAS features (including Viral and Data Poisoning)
- Supports Hot-Plug
- Supports Alternate Protocol Negotiation
- Supports RCiEP
- AMBA AXI Layer for CXL.io
- Compliant with the AMBA® AXI™ Protocol Specification (AXI3, AXI4 and AXI4-Lite) and AMBA® 4 AXI4-Stream Protocol Specification
- Optional AXI4-Lite Slave interface for Bridge Configuration
- Optional AXI4-Lite Master interface for External Registers Configuration
- Optional AXI4 Master Descriptor interface to access SG-DMA Descriptors in AXI domain
- Up to 4 AXI4 Master interfaces, each supporting up to 128 outstanding read requests
- Up to 4 AXI4 Slave interfaces, each supporting up to 256 outstanding read requests
- Up to 4 AXI4 Stream Input and Output interfaces, each handling up to 8 TID/TDEST combinations simultaneously
- 64-bit, 128-bit, 256-bit, or 512-bit data support for AXI4 Master, Slave, and Stream interfaces
- Bypassable CDC for AXI4 Master, Slave, and Stream interfaces
- AXI4 Master and Slave interfaces can be configured as AXI3 interfaces
- Optional built-in Legacy DMA engine
- Up to 8 DMA channels, Scatter-Gather, descriptor prefetch
- Completion reordering, interrupt and descriptor reporting
- Optional Address Translation tables for direct PCIe to AXI and AXI to PCIe communication
- Integrity and Data Encryption (IDE)
- Implements the CXL 2.0 IDE specifications for CXL.cache/mem
- Implements the PCI Express IDE ECN for CXL.io
- Configurable IDE engine
- Supports x1 to x16 lanes
- Supports all device types
- 256-bit or 512-bit data bus for PCIe IDE
- 512-bit data bus for CXL.cache/mem IDE
- Supports containment and skid modes
- Supports early MAC termination
- Supports multi-stream
- Utilizes high-performance AES-GCM for encryption, decryption, authentication
- PCIe IDE TLP aggregation for 1, 2, 4, 8 TLPs
- PCIe IDE automatic IDE prefix insertion and detection
- PCIe IDE automatic IDE sync/fail message generation
- PCRC calculation & validation
- Efficient key control/refresh
- Bypass mode
Benefits
- Internal data path size automatically scales up or down (256-, 512- bits) based on max. link speed and width for reduced gate count and optimal throughput
- Dynamically adjustable application layer frequency down to 8Mhz for increased power savings
- Optional MSI/MSI-X register remapping to memory for reduced gate count when SR-IOV is implemented
- Configurable pipelining enables full speed operation on Intel and Xilinx FPGA, full support for production FPGA designs (when supported)
- Ultra-low Transmit and Receive Buffer latency
- Use of highly optimized CPI interface for CXL.cache and CXL.mem to maximize throughput and minimize latency
- Merged Replay and Transmit buffer enables lower memory footprint
- Optional QuickBoot mode allows for up to 4x faster link training, cutting system-level simulation time by 20%
Block Diagram
Applications
- HPC,
- Cloud Computing,
- AI,
- Machine Learning,
- Enterprise,
- Networking,
- Automotive,
- AR/VR,
- Test and Measurement
Deliverables
- Verilog RTL,
- Supporting Documentation
Technical Specifications
Foundry, Node
Any
Maturity
In production
Availability
Available
Related IPs
- Compute Express Link (CXL) 2.0 Controller
- PCIe Controller for USB4 Hosts and Devices supporting PCIe Tunneling, with optional built-in DMA and configurable AMBA AXI interface
- CXL 2.0 Premium Controller Device/Host/DM 512b with AMBA bridge
- CXL 2.0 Premium Controller Device/Host/DM 512b with AMBA bridge + LTI and MSI-GIC interfaces
- CXL 2.0 Premium Controller Device/Host/DM 512b with AMBA bridge and Advanced HPC Features (Arm CCA)
- Compute Express Link (CXL) 3.1 Controller