Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

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

5.3.4. NAND Flash Controller System Integration

This section provides information about how the NAND Flash controller interfaces with other components inside of the HPS. The following block diagram shows the NAND Flash controller interfaces.

Figure 91. NAND Flash Controller Block Diagram
  • APB register interface: This is 32-bit APB completer interface and is used to access the controller's control, status, and command registers. This port operates asynchronously and supports only single beat transactions. All configuration registers can be written only when the controller is in idle state, otherwise, the register operation is ignored.
  • AXI MDMA Interface: This is a 64-bit AXI manager interface and handles all communication between the controller data path and AXI bus. The DMA manager uses this interface to transfer data between the core internal buffer and system memory. The DMA manager data path is optimized for data throughput. This is also used by the command engine to fetch command descriptor when it works in the command DMA mode. Any error on the manager data port is reported via interrupts. The ddma_terr or cdma_terr bits of the intr_status (0x0110) register indicate DMA manager interface received an error response from the target. The transaction address which resulted in target error is put in dma_target_error_l (0x0140) and dma_target_error_h (0x0144) register. This address is not overwritten by the controller until both ddma_terr and cdma_terr are cleared by software.
  • AXI SDMA interface: This is a 64-bit AXI subordinate interface that receives the incoming data transaction from the host interface and passes it onto the slave DMA (SDMA) module. This path is optimized for the data throughput. For the data sent through this interface, the host must ensure that the issued transactions are correct with respect to the corresponding bus specification. Sending incorrect data format can lead to unknown behavior from the controller. This interface accepts all incoming transactions independently of the configured number of outstanding transactions. The SDMA interface is mapped in a 64 KB region under the HPS address map.
  • Interrupt interface: The interrupt output signal (which is asserted when an interrupt condition is satisfied) is connected to the GIC-600 module to indicate to the MPU that the interrupt occurred.
  • Device discovery interface: This interface is used by the system manager to control the flow of the device discovery mechanism to identify the single NAND device connected and retrieve from this the device parameters that later are used to perform the minimal settings required to perform simple operations. More precisely, after successfully finishing the initialization protocol, the controller is ready to perform simple data transfers (with disabled cache, multi-plane, Multi-LUN, and ECC) on the device connected in timing mode 0, and with all timings set to the maximum value.
  • Write protection interface: This interface is used by the system manager to control the write protection mechanism which protects some regions in the NAND device against write and erase operations. The signals that are driven by the system manager are described in the write protection mechanism section.
  • Combo PHY registers APB interface: This is a 32-bit APB requester interface and is used by the NAND Flash controller during PHY training as this interface allows mapping of the PHY control and status registers under the memory map of the NAND Flash controller. This interface is connected to the Combo PHY completer APB interface via the PSS NoC.
  • DFI interface: This interface is the actual connection between the NAND Flash controller and the Combo PHY module and is used to transfer the data, commands, and control signal that the Combo PHY needs later to transmit to the NAND device.
  • Reset interface: The NAND Flash controller receives a single nand_flash_rst_n signal from the reset manager.
Table 177.  APB and AXI Interface Configurations

Interface

Standard

Address AxADDR

ALEN AxLEN

Burst

Word Size

Outstanding Transactions

APB registers APB V3 32-bits N/A 32-bit 32-bit 1
AXI MDMA AXI4

64-bits (bits 63:40 are not used by HPS

0 to 255 INCR 64-bit 8
AXI SDMA AXI4 64-bits (but implementation may use up to 12-bit or 16- bit address) 0 to 255 INCR 64-bit 8

Combo PHY APB registers

APB3 V3 16-bits N/A 32-bit 32-bit 1