Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 4/01/2024
Public
Document Table of Contents

12.2.3.4. Two 16-bit SDRAM channels utilizing a single IOBank

In this use case, the IOBank0 is configured to support two 16-bit wide SDRAM channels using the MPFE block using IOBank0_P0 and IOBank0_P1. Since all eight IOBank0 IO12 channels are required, there is no support for direct fabric connection to the IOBank0 and choosing not to use the F2SDRAM port does not make them available. If available, direct fabric connection to IOBank1 is supported.

The application may optionally use the F2H channel but choosing not to use F2H does not make any unused IOBank0 IO12 channels available to the fabric.

All read/write traffic between the CCU/NCORE and MPFE is interleaved between the DMI0 and DMI1 ports. The CCU/NCORE must be configured to route any address where A[12] = 0 to the DMI0 port and any address where A[12] = 1 to the DMI1 port. No other CCU/NCORE configurations are supported and can lead to unpredictable results.

This use case is supported by all members of the Agilex™ 5 family.

In this topology the following data flows occur:
  • Traffic from F2H is interleaved by the CCU to the 32-bit and 16-bit HMC controllers of one IOBank on a 4Kbyte basis:
    • F2H -> CCU_DMI0 -> IOBank0_P0 (32-bit HMC) -> A[12] = 0
    • F2H -> CCU_DMI1 -> IOBank0_P1 (16-bit HMC) -> A[12] = 1
  • Traffic from F2SDRAM is interleaved by the MPFE to the 32-bit and 16-bit HMC controllers of one IOBank on a 4Kbyte basis
    • F2SDRAM -> IOBank0_P0 (32-bit HMC) -> A[12] = 0
    • F2SDRAM -> IOBank0_P1 (16-bit HMC) -> A[12] = 1