Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

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

5.3.6.9.4. Data Integrity Errors

The NAND Flash controller is capable of detecting the following data integrity errors:

  • Parity error on the system bus during descriptor read and sync flag read.
  • Parity error on data read from context memory.
  • CRC/parity error in the data path.

For the data integrity errors detected, the following events occur:

  • di_dsc_err bit is set in the last operation status descriptor field or status register when parity error was detected during access to the system bus. It applies to the descriptor read and sync flag read. The controller also sets the Fail flag. The value in the cont_on_err bit in the device_ctrl (0x0430) register is ignored.
  • di_ctx_err bit is set in the last operation status descriptor field or status register when parity error was detected on the data bus during access to the context memory. Additionally, this is set when parity error is detected during access to the remap memory. If the di_ctx_err is detected, then command engine interrupts current command execution because it cannot trust data read from the context memory. Command is terminated immediately after error condition is detected. For the same reason, descriptor status field is not written back to the host memory, only the cmd_status (0x0014) register is updated. The controller also sets the Fail flag. The value of the cont_on_err field in the device_ctrl (0x0430) register is ignored. Under the detection of this error, the NAND Flash controller should be reset and the NAND Flash devices connected to the controller should be reinitialized by sending the reset command.
  • di_dat_err bit is set in the last operation status descriptor field or status register when data integrity error was detected in the data path. The controller also sets the Fail flag. If the cont_on_err bit in the device_ctrl (0x0430) register is cleared, then for CDMA work mode following descriptors are dropped from execution, in the opposite case, the controller continues command execution.

For more information about the enabling and results of data integrity checking, refer to the "Observed Result after DI Errors Detected" table in the Data Integrity Mechanism section.