Multilevel Flash Encoding for Small-Write Error Correction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing flash devices are inefficient in supporting error correction codes for small data writes, leading to compromised reliability due to omission of error correction in single bit per cell (SBC) regions.
Innovation Solution
A multilevel encoding scheme is implemented, where input data is encoded into a greater number of multilevel memory cells (MLCs) using level-shifting, providing error correction coverage for small granularity programming operations by managing surplus cell state transitions to achieve a desired Hamming distance and ensuring reliable data storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If single bit per cell (SBC) encoding is used for small writes, then write granularity and flexibility are improved, but error correction reliability deteriorates
Solution Approach 1:
The memory device is divided into different encoding regions: SBC regions for small writes and MBC regions for large writes. Each region uses appropriate error correction codes matched to its write granularity requirements, allowing flexible small writes while maintaining reliable error correction where needed
Solution Approach 2:
Different error correction strategies are applied locally to different regions of the memory device. SBC regions use lightweight or no error correction for flexibility, while MBC regions use robust error correction codes for reliability, optimizing each region according to its specific operational characteristics
2Device complexity
If error correction codes are omitted for small writes, then device complexity and overhead are reduced, but data reliability deteriorates
Solution Approach 1:
Error correction is applied partially only to MBC regions where it is most needed, rather than universally to all write operations. This provides sufficient protection for large writes while avoiding unnecessary overhead for small writes that are less susceptible to errors
Solution Approach 2:
The error correction strategy changes based on write size parameters. Small writes (SBC) use different error correction parameters or none at all, while large writes (MBC) use robust error correction parameters, optimizing the balance between complexity and reliability based on operational parameters
3Reliability
If multilevel encoding with error correction is implemented, then reliability for small writes is improved, but encoding complexity and processing time increase
Solution Approach 1:
The encoding process is segmented into different modes: simple encoding for SBC regions and multilevel encoding with error correction for MBC regions. This segmentation allows the system to achieve high reliability for small writes through multilevel encoding only when necessary, avoiding unnecessary complexity for all operations
Solution Approach 2:
The encoding strategy is dynamic and adapts to the specific write operation requirements. The system determines whether to use simple or multilevel encoding based on the write size and characteristics, providing flexible adaptation that balances reliability improvement with complexity management
Data Source
AI summary
Embodiments of the present disclosure provide methods, systems, and apparatuses related to multilevel encoding with error correction. In some embodiments, a plurality of bits may be encoded into a plurality of memory cells by responding to bits of the plurality of bits by changing the logic levels of corresponding groups of memory cells of the plurality of memory cells. Other embodiments may be described and claimed.


