Lee-Metric ECC Decoding for Small-Error Flash Memory Correction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing Error Correcting Code (ECC) applications, such as those using the Hamming metric, do not efficiently account for small error value changes, which can lead to suboptimal memory efficiency in scenarios where errors are likely to be relatively small, such as in flash memories.
Innovation Solution
Implementing the Lee metric in ECC applications, which counts each ±1 change as one error, and using a normalized primitive Generalized Reed Solomon (GRS) code with parity bits to generate and decode code words, allowing for more efficient error detection and correction in memory technologies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If the Hamming metric is used to detect errors, then the error detection is simple and efficient, but it does not account for error values and is suboptimal when small error changes are more likely to occur
Solution Approach 1:
The patent changes the metric parameter from Hamming distance (which only counts position differences) to Lee distance (which accounts for both position and magnitude of errors). This parameter change allows the ECC algorithm to differentiate between small errors (±1) and large errors, improving detection accuracy when small errors are more probable without requiring a fundamentally different algorithmic approach
Solution Approach 2:
The patent applies partial action by focusing the enhanced error detection capability specifically on the more common case of small errors (±1 changes). The Lee metric provides weighted detection where small errors are identified with higher precision, while still maintaining the ability to detect larger errors, thus optimizing the algorithm for the most probable error scenarios without excessive complexity
2Reliability
If a more sophisticated error metric is used to account for small error changes, then memory efficiency is improved, but the computational complexity increases
Solution Approach 1:
The patent modifies the error metric parameter from simple position-based Hamming distance to value-aware Lee distance. This parameter change enables the system to maintain data integrity more effectively by accounting for error magnitudes, while the implementation uses efficient algorithms to compute Lee distances without excessive computational overhead
Solution Approach 2:
The patent performs preliminary action by pre-defining the Lee metric parameters and error weight assignments before the actual error detection process. This allows the sophisticated error metric to be applied efficiently during runtime without requiring complex real-time calculations, thus maintaining reliability while controlling computational complexity
3Device complexity
If the Hamming metric is used, then the ECC implementation is simpler, but it uses more memory resources to maintain the same level of error correction capability
Solution Approach 1:
The patent changes the error metric parameter to Lee distance, which provides better error detection accuracy for the same amount of memory resources. By accounting for error magnitudes rather than just positions, the Lee metric achieves the same reliability level with fewer redundant check bits, thus reducing memory resource usage while maintaining implementation feasibility
Data Source
AI summary
A memory device may include memory components for storing data. The memory device may also include a controller that determines whether one or more errors exist in a data packet stored in the memory components. The controller may read a code word associated with the data packet, such that the code word may be used to indicate whether the errors exist in the data packet. The controller may then determine a syndrome polynomial based on the code word and determine an inverse of the syndrome polynomial when the syndrome polynomial is not zero. The controller may then determine a first error locator polynomial and a second error locator polynomial based on the inverse of the syndrome polynomial. The first error locator polynomial and the second error locator polynomial may be used to identify one or more locations of one or more errors in the code word.


