Memory ECC Layout Using Known Data to Extend Cell Life
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional memory devices face challenges in maintaining reliable data retrieval as the bit error rate increases with aging, leading to a point where Error Correction Codes (ECC) with a predetermined code rate fail to correct errors, marking the end of the device's useful life.
Innovation Solution
The technique involves dividing memory cells into portions where user data and redundant data are stored, with redundant data generated based on a known data pattern not stored in the cells, allowing for error-free data recovery even beyond the ECC's threshold error correction capability by regenerating the known data without reading the cells.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If Error Correction Code (ECC) with a predetermined code rate is used for data storage, then error correction capability is provided for a certain period, but the bit error rate increases with aging until ECC can no longer correct errors
Solution Approach 1:
The patent applies preliminary action by pre-generating redundant data from known data patterns before actual data storage. This pre-computed redundant data is stored separately and can be immediately applied when reading data, allowing the system to proactively prepare for error correction needs without waiting for errors to occur during operation
Solution Approach 2:
The patent changes the parameter of error correction capability dynamically by adjusting the amount of redundant data applied to different data items based on their specific error rates. Instead of using a fixed code rate for all data, the system varies the error correction parameters adaptively, applying more redundant data to items with higher error rates and less to those with lower error rates
2Reliability
If redundant data is stored for every data item to improve error correction, then error correction capability increases, but storage capacity for user data decreases
Solution Approach 1:
The patent applies universality by creating a single pool of redundant data generated from known data patterns that can serve multiple data items simultaneously. Instead of dedicating separate redundant data to each individual data item, the same redundant data structure can be applied universally across many different user data items, reducing the total storage overhead while maintaining error correction capability
Solution Approach 2:
The patent changes the parameter of redundant data allocation by adjusting the amount of redundant data applied to different data items based on their specific error rates. Instead of uniformly allocating redundant data to all items, the system varies the allocation parameters adaptively, applying more redundant data to items with higher error rates and less to those with lower error rates
3Productivity
If the memory device operates beyond the ECC threshold error correction capability, then storage utilization increases, but read failure probability increases
Solution Approach 1:
The patent introduces an intermediary mechanism - a pool of redundant data generated from known data patterns - that mediates between the user data and the error correction process. This intermediary redundant data pool can be selectively applied to correct errors in user data without requiring the user data itself to contain the redundant information, allowing operation beyond traditional ECC thresholds while maintaining reliability
Solution Approach 2:
The patent changes the parameter of error correction capability dynamically by adjusting the amount of redundant data applied to different data items based on their specific error rates. Instead of using a fixed code rate for all data, the system varies the error correction parameters adaptively, applying more redundant data to items with higher error rates and less to those with lower error rates
Data Source
AI summary
An apparatus having memory cells, an error correction module with a predetermined code rate, a processing device configured to arrange data storage in the memory cells for improved capability in recovering from random bit errors in raw data retrieved from the memory cells. For example, user data and redundant data are stored in the memory cells. The redundant data is generated according to the predetermined code rate from not only the user data but also known data. The known data is not stored in the memory cells. As a result, the error correction module has increased capability in recovering from random bit errors in raw data retrieved from the memory cells. The increased capability can be used to extend the useful life of the memory cells and/or improve the reliability of retrieving error free data from the memory cells.


