Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 11/27/2024
Public
Document Table of Contents

5.3.6.3.3. Layout Between Pages

The layout in the NAND Flash controller device is different when multiplanes support is enabled than when multiplanes support is disabled.

  • Multi-plane disabled: Page address is incremented for each transferred page.
  • Multi-plane enabled: One page from each plane is transferred. The block address determines the block number in the plane from which the page is selected. The number of pages transferred must be a multiplicity of the number of planes. If the number of pages to be transferred is higher than the number of planes then after a set of pages is transferred from/to all planes, then the page address is increased and another set of pages from all planes is transferred again. The following figure shows the layout between pages when 2 planes exist, block 0 is selected, and 4 pages are transferred from host memory to NAND device.
Figure 98. Layout between Pages in Multiplane Operations

On the host memory side, data is transferred in ascending order starting from address programmed in the controller (either descriptor or command register).

For write direction, the DMA engine is triggered to transfer each page separately. In the read direction, DMA is triggered to transfer data block composed for all planes.

In the case of sending control command sequence such as READ ID, SET FEATURES, GET FEATURES in NV-DDR working mode, each data byte is transmitted twice. In these cases, the NAND controller does not remove the redundant data, so the software should be in charge of doing this when reading data. In the case of writing data, the software needs to program transferred data size taking into consideration that additional data that needs to be transferred.