Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 7/19/2024
Public
Document Table of Contents

4.1.6.1. CCU Initialization

The CCU must be configured to allow each initiator to address desired targets and the targets must be configured consistently with the initiator configuration. This is accomplished with a set of region descriptors containing three registers each. Two registers define the high and low bits of the base address and the third defines the size of the region, the Unit ID of the region, whether the access is to a peripheral or system space and the region valid bit. It is important to program the third register after the two base address registers even though it appears first in the address map, otherwise unexpected behavior may occur.

The CCU is configured by the HPS first stage bootloader (FSBL) with the address map shown in Address Map When Using a Single SDRAM Channel or Address Map When Using Multiple SDRAM Channels with the following connectivity:

  • The DSU, F2H, and DCE0/DCE1 must be able to access all HPS resources.
  • The GIC and SMMU only need to access SDRAM for page table walks.
  • PSS NoC initiators must be able to access all resources except H2F and LWH2F. These ports are accessible by PSS initiator directly through the PSS NoC. Therefore, these regions are not configured in the CCU to prevent accidental circular loops between CCU and PSS.
  • The system level cache must be enabled in DMI0/DMI1 to support atomic operations to SDRAM.
  • All ports are configured to perform both ECC and address decoding checks.
  • Interrupts must be enabled to notify the occurrence of an error so that further error recovery can be performed.