AMR RAVE - CIPS Configuration

For common CIPS concepts, see Common CIPS Configuration

This document describes RAVE (VE2302) CIPS configuration without CPM.

Overview

The RAVE CIPS configuration focuses on the Processing System (PS), Platform Management Controller (PMC), and peripheral setup. The VE2302 device does not include a CPM block, so there is no CPM_CONFIG section in the CIPS settings. PCIe functionality is instead provided by PL-based IP blocks.

VE2302 Device Configuration

The VE2302 is a Versal Edge-series device optimized for embedded applications. The CIPS configuration enables the essential processing blocks and peripherals while omitting features not present in Edge-series devices.

CIPS Blocks Configured:

  • RPU (Realtime Processing Unit) for firmware

  • PMC (Platform Management Controller) for boot/config

  • PS peripherals (I2C, SPI, UART, USB, eMMC)

  • NoC connections (RPU to NoC, PMC to NoC)

  • OSPI interface for boot flash

Not Present in VE2302:

  • CPM (Coherent PCIe Module) - Use PL PCIe IP instead

  • HBM - Edge devices do not include HBM

RPU Configuration

The RPU configuration matches the common AMR pattern with two Arm Cortex-R5F processors used for firmware execution. The RPU handles board management, inter-processor communication, flash management, and host communication through the PCIe interface.

RPU NoC Connection:

  • LPD_AXI_NOC_0: 128-bit @ 800MHz

  • Purpose: RPU access to LPDDR4 memory

  • Enable: PS_USE_NOC_LPD_AXI0 = 1

M_AXI_LPD Interface:

  • Data Width: 32-bit

  • Frequency: 100 MHz

  • Status: Enabled but not connected in base design

  • Purpose: Reserved for future management IP (SMBus, peripherals)

  • Enable: PS_USE_M_AXI_LPD = 1

PMC Configuration

The PMC manages boot and configuration with OSPI flash interface and NoC connectivity for memory access during initialization.

PMC NoC Connection:

  • PMC_NOC_AXI_0: 128-bit @ 400MHz (SLR0)

  • Purpose: PMC access to LPDDR4 during boot/config

  • Enable: PS_USE_PMC_NOC_AXI0 = 1

OSPI Configuration:

  • Interface: PMC Bank 500

  • Flash: 128MB OSPI

  • Frequency: 200 MHz

  • Mode: Single (not stacked)

  • Boot Mode: Custom (QSPI/OSPI)

Peripheral Configuration

I2C Interfaces

LPD_I2C0:

  • MIO Pins: PS_MIO 10-11

  • Purpose: Board-ID EEPROM (0x57), sensors, PMICs

  • Enable: PS_I2C0_PERIPHERAL

PMC_I2C / LPD_I2C1:

  • Configuration varies by board

  • Purpose: Additional I2C devices

UART Interfaces

UART0:

  • MIO Pins: PMC_MIO 16-17 or PS_MIO 8-9

  • Purpose: Primary debug console

  • Enable: PS_UART0_PERIPHERAL

UART1:

  • MIO Pins: PMC_MIO 20-21 or PS_MIO 20-21

  • Purpose: Secondary debug/logging

  • Enable: PS_UART1_PERIPHERAL

SPI Interfaces

SPI (TPM):

  • MIO Pins: PMC Bank 501

  • Purpose: TPM 2.0 security module access

  • Enable: PMC SPI configuration

Board-specific Peripherals

Some board variants include additional peripherals:

USB 2.0 Host Controller:

  • Available on select variants

  • Purpose: Front panel USB port

  • Configuration: USB 2.0 host mode via Versal MIO

eMMC Storage:

  • Available on select variants

  • Purpose: On-device persistent storage

  • Configuration: PMC_SD0 in eMMC mode

Note: For variant-specific peripheral availability and MIO pin assignments, refer to the Sapphire RAVE1 EDGE+ and hardware design repository.

PL Reference Clocks

The CIPS generates three PL reference clocks:

Clock Frequency Usage
pl0_ref_clk 100 MHz PL logic, SmartConnect, GPIO
pl1_ref_clk 33.33 MHz Clock wizard input (optional)
pl2_ref_clk 250 MHz NoC AXI interfaces

Configuration:

  • PMC_CRP_PL0_REF_CTRL_FREQMHZ: 100

  • PMC_CRP_PL1_REF_CTRL_FREQMHZ: 33.3333333

  • PMC_CRP_PL2_REF_CTRL_FREQMHZ: 250

PL Resets

pl0_resetn:

  • Count: 1 (PS_NUM_FABRIC_RESETS = 1)

  • Purpose: Main PL reset output

  • Usage: Drives proc_sys_reset blocks in PL

Interrupt Configuration

PL-PS Interrupts

LPD Interrupts (Optional):

  • IRQ 0-1: Configured but not connected in base design

  • Purpose: Reserved for firmware events (GCQ signals, peripheral interrupts)

  • Enable: PS_IRQ_USAGE configuration

Inter-Processor Interrupts (IPI)

IPI Agent Assignment:

  • IPI 0-2: PMC, PSM (default system)

  • IPI 3-4: R5_0 (first R5 core)

  • IPI 5-6: R5_1 (second R5 core)

Enable configuration:

  • PS_GEN_IPI3_ENABLE: 1, PS_GEN_IPI3_MASTER: R5_0

  • PS_GEN_IPI4_ENABLE: 1, PS_GEN_IPI4_MASTER: R5_0

  • PS_GEN_IPI5_ENABLE: 1, PS_GEN_IPI5_MASTER: R5_1

  • PS_GEN_IPI6_ENABLE: 1, PS_GEN_IPI6_MASTER: R5_1

PCIe Reset Configuration

PCIe Reset Pins:

  • PMC_MIO_24: PCIe RST (fundamental reset)

  • PMC_MIO_25: PCIe WAKE_B (wake signal)

These MIO pins connect to the PL PCIe IP for reset and power management signaling.

Configuration:

  • PS_PCIE_RESET: Enable

  • PS_PCIE_EP_RESET1_IO: PMC_MIO_24

  • PMC_MIO_EN_FOR_PL_PCIE: Configuration for PL PCIe routing

MIO Pin Configuration

MIO pins are configured for the following functions:

PMC Bank 500:

  • OSPI flash interface

  • UART0/UART1 (debug consoles)

  • I2C interface

  • PCIe control signals (reset, wake)

  • Status LED

PMC Bank 501:

  • Power control signals

  • I2C1 interface

  • SPI interface (TPM 2.0)

LPD Bank 502:

  • Status LEDs (RPU controlled)

  • I2C0 interface (Board-ID EEPROM at 0x57)

  • ROM control signals

  • Voltage monitors

Note: For complete MIO pin assignments and signal details, refer to the hardware design repository.

Boot Configuration

The VE2302 boots from OSPI flash with the PMC managing the boot sequence:

Boot Mode Settings:

  • BOOT_MODE: Custom

  • Primary Boot: OSPI (PMC Bank 500)

  • Boot Mode Pins: Configured for QSPI/OSPI boot

Boot Sequence:

  1. PMC loads PDI from OSPI flash

  2. PMC initializes LPDDR4 memory controller

  3. PMC loads RPU firmware from PDI

  4. RPU firmware begins execution

  5. RPU initializes peripherals and establishes PCIe communication

Design Mode Settings

The CIPS uses custom design mode for full configuration control:

DESIGN_MODE {1}
BOOT_MODE {Custom}
CLOCK_MODE {Custom}
DDR_MEMORY_MODE {Custom}
IO_CONFIG_MODE {Custom}
DEVICE_INTEGRITY_MODE {Custom}

These custom mode settings enable detailed configuration of all CIPS parameters specific to the RAVE hardware design.

PCIe Aperture Configuration

Aperture Settings:

  • PCIE_APERTURES_SINGLE_ENABLE: 1

  • PCIE_APERTURES_DUAL_ENABLE: 0

Single aperture mode is used for PCIe address mapping through the NoC to memory and PL address spaces.

References