Multi-Stage Flash Decoding with Adaptive Read-Voltage Sequencing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flash memory introduces data errors due to manufacturing variations and aging, which existing error correcting codes like LDPC struggle to address efficiently without adding latency to read operations.
Innovation Solution
A multi-stage decoding operation is executed using a sequence of read-level voltages determined based on previous decoding data, optimizing the order of voltages to prioritize those with higher success rates, thereby reducing the number of stages required to successfully decode data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If LDPC error correcting codes are used to correct data errors in flash memory, then error correction capability is improved, but read operation latency increases
Solution Approach 1:
The system performs preliminary actions by determining an optimal sequence of read-level voltages based on previous decoding data before attempting to decode current data. This preparation allows the multi-stage decoding operation to start with the most promising voltage sequence, reducing the number of stages needed and thus lowering latency while maintaining robust error correction capability
Solution Approach 2:
The system dynamically adjusts the sequence of read-level voltages based on previous decoding results and memory cell aging patterns. By making the voltage sequence adaptive rather than static, the system optimizes decoding efficiency for current memory conditions, reducing unnecessary decoding stages and latency while preserving error correction effectiveness
2Reliability
If multiple read-level voltages are applied in a fixed sequence to decode data from aging memory cells, then error correction reliability is maintained, but the number of decoding stages increases latency
Solution Approach 1:
The system uses feedback from previous decoding operations to determine the optimal sequence of read-level voltages for current decoding attempts. By incorporating feedback about which voltage sequences have been successful in the past, the system can prioritize those sequences first, reducing the average number of stages needed while maintaining reliable error correction for aging memory cells
Solution Approach 2:
The system changes the parameters of the decoding operation by dynamically adjusting the sequence of read-level voltages based on memory cell aging and previous decoding performance. This parameter optimization allows the system to achieve successful decoding in fewer stages, reducing latency while maintaining the reliability needed to handle errors from aging memory cells
Data Source
AI summary
Methods and systems for decoding raw data may include determining a sequence of a plurality of read-level voltages based on previous decoding data and executing a multi-stage decoding operation to decode raw data read from the plurality of memory cells using the determined sequence of the plurality of read-level voltages. Decoded data is returned from the multi-stage decoding operation upon completion of the multi-stage decoding operation and the previous decoding data is updated based on results of the multi-stage decoding operation.


