Agilex™ 7 Hard Processor System Technical Reference Manual

ID 683567
Date 8/13/2024
Public
Document Table of Contents

15.5.2.4.1. Read-Modify-Write Operation Flow

  1. Start the flow by reading a page from the memory:
    • Write to the command register, setting the CMD_MAP field to 2 and the BLK_ADDR field to the starting address of the desired block.
    • Write 0x60 to the Data register.
    This step makes the page available to you in the page buffer in the flash device.
  2. Provide the destination page address:
    • Write to the command register, setting the CMD_MAP field to 2 and the BLK_ADDR field to the destination address of the desired block.
    • Write 0x61 to the Data register.
    This step initiates the page program and provides the destination address to the device.
  3. Use the MAP00 page buffer read and write commands to modify the data in the page buffer.
  4. Write the page buffer data back to memory:
    • Write to the command register, setting the CMD_MAP field to 2 and the BLK_ADDR field to the same destination address.
    • Write 0x62 to the Data register.
    This step performs the write.

After the device completes the load operation, the NAND flash controller issues a load_comp interrupt. A program_comp interrupt is issued when the host issues the write command and the device completes the program operation.

If the page program operation (as a part of an RMW operation) results in a program failure in the device, program_fail interrupt is issued. The failing page's block and page address is updated in the err_block_addr0 and err_page_addr0 registers in the status group.