A method and system for a non-volatile memory (NVM) with multiple bits
error correction and detection for improving production yield are
provided. Forward error correction (FEC) operations and cyclic redundancy
check (CRC) operations may be utilized in an NVM array integrated in a
chip to correct errors in memory elements and detect remaining errors
respectively. When remaining errors are detected, the memory element may
be substituted by redundant memory elements in the NVM array. An erasure
operation in the FEC may be utilized to correct errors when the error
location is known. The NVM array may be partitioned into classes that may
each have specified FEC operations and a specified priority to substitute
memory elements by redundant memory elements. The FEC and CRC operations
may be utilized to protect secure information stored in the NVM array by
disabling the chip when errors are detected while reading the secure
information.