SISO Nonvolatile Memory Decoding for High-Error Data Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Nonvolatile memory systems face challenges in accurately reading data due to errors caused by voltage shifts and physical defects, leading to incorrect data recovery, especially when traditional Error Correction Codes (ECCs) struggle with high error rates or complex computational requirements.
Innovation Solution
Implementing a Soft-Input Soft-Output (SISO) decoder that uses high-resolution read techniques to calculate likelihood values for bits stored in the memory array, allowing for iterative decoding and improved error correction by converting soft-inputs into hard-outputs, and utilizing demodulators to derive likelihood values from threshold voltages for enhanced data recovery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional ECCs are used to correct errors in nonvolatile memory, then error correction capability is provided, but the system becomes computationally complex and performance deteriorates under high error rates
Solution Approach 1:
The patent changes the parameter of decoding methodology from traditional hard-decision ECC to soft-decision SISO decoding. This allows the system to utilize likelihood values (soft information) instead of binary decisions, improving error correction capability while maintaining computational efficiency through iterative decoding algorithms that converge on correct data without requiring complex real-time calculations.
Solution Approach 2:
The patent replaces traditional mechanical ECC correction mechanisms with a soft-decision decoding approach that uses likelihood values and iterative algorithms. This substitution enables more effective error correction by considering probability information rather than relying on fixed correction tables or complex computational routines.
2Measurement precision
If high-resolution read operations are implemented to obtain likelihood values, then data recovery accuracy is improved, but read operation complexity and time increase
Solution Approach 1:
The patent performs preliminary read operations at multiple resolution levels to obtain likelihood values before the actual data recovery process. By pre-acquiring soft information about the probability of correct bit values, the system can then use this information in iterative decoding to achieve high accuracy without requiring continuous high-resolution reading throughout the entire correction process.
Solution Approach 2:
The patent implements partial high-resolution reading by selectively obtaining likelihood values for bits that are more likely to be erroneous, rather than performing full high-resolution reads on all data. This partial action approach maintains data recovery accuracy for problematic bits while reducing overall read operation time for correctly read bits.
3Reliability
If iterative decoding is used in SISO decoder, then error correction performance is improved, but decoding time increases
Solution Approach 1:
The patent implements iterative decoding with feedback mechanisms where the SISO decoder uses output from one iteration as input for the next. The likelihood values are refined through multiple passes, with each iteration providing feedback about the confidence in bit values. This feedback loop continues until convergence or a maximum iteration count is reached, improving error correction performance while limiting time through practical termination criteria.
Solution Approach 2:
The patent employs periodic iterative decoding cycles where the same decoding algorithm is applied repeatedly with updated information. Each period refines the likelihood values based on previous iterations, gradually improving accuracy. The periodic nature allows the system to achieve high error correction performance through manageable repeated operations rather than a single complex calculation.
Data Source
AI summary
In a nonvolatile memory system, data is read from a memory array and used to obtain likelihood values, which are then provided to a soft-input soft-output decoder. The soft-input soft-output decoder calculates output likelihood values from input likelihood values and from parity data that was previously added according to an encoding scheme.


