System and method for efficient uncorrectable error detection in flash memory
First Claim
1. A method of increasing data reliability of a memory device comprising:
- applying a first error process to a user data block resulting in first error process data;
applying a second error process to the user data block and the first error process data resulting in second error process data;
storing the user data block, the first error process data and the second error process data to the memory device as a data block.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for efficient uncorrectable error detection in flash memory is described. A microcontroller including a non-volatile flash memory utilizes an Error Correction Code (ECC) having a certain error detection and correction bit strength. The user data is first processed by a hash function and hash data is stored with the user data. Then, the user data and hash data are processed by the ECC system. In detection, the hash ensures that a relatively low bit-strength ECC system did not incorrectly manipulate the user data. Such a hash integrity check provides an efficient, robust detection of incorrectly corrected user data resulting from errors beyond the correction but strength of the ECC system utilized.
-
Citations
20 Claims
-
1. A method of increasing data reliability of a memory device comprising:
-
applying a first error process to a user data block resulting in first error process data; applying a second error process to the user data block and the first error process data resulting in second error process data; storing the user data block, the first error process data and the second error process data to the memory device as a data block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method of increasing data reliability of a memory device by detecting uncorrectable errors in the memory device utilizing a first error process resulting in a first error process data and a second error process resulting in a second error process data comprising:
-
obtaining a raw data block from the memory device including user data, first error process data and second error process data, wherein the second error process data was generated based upon the user data and the first error process data; determining if the second error process data is consistent with the user data and the first error process data by utilizing the second error process; if the second error process data is not consistent with the user data and the first error process data, utilizing the second error process to generate corrected user data and corrected first error process data; determining if the corrected first error process data is consistent with the corrected user data by utilizing the first error process; if the corrected first error process data is not consistent with the corrected user data, then indicating a failure and halting operation; and if the corrected first error process data is consistent with the corrected user data, then outputting the corrected user data. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A postage printing system achieving increased data reliability comprising:
-
a memory device; and a controller coupled to the memory device, the controller configured to include; means for obtaining a raw data block from the memory device including user data, first error process data and second error process data, wherein the second error process data was generated based upon the user data and the first error process data; means for determining if the second error process data is consistent with the user data and the first error process data by utilizing the second error process; means for utilizing the second error process to generate corrected user data and corrected first error process data if the second error process data is not consistent with the user data and the first error process data; means for determining if the corrected first error process data is consistent with the corrected user data by utilizing the first error process; means for indicating a failure and halting operation if the corrected first error process data is not consistent with the corrected user data; and means for outputting the corrected user data if the corrected first error process data is consistent with the corrected user data. - View Dependent Claims (18, 19, 20)
-
Specification