Iterative Erasure-LDPC Decoding for Fault-Tolerant Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current digital decoding systems in hyperscale data clusters face inefficiencies due to linear storage growth in replicated data schemes and increased computational complexity in erasure coded pools, leading to underutilization of hardware and reduced response times from hard-decision LDPC decoding.
Innovation Solution
Implementing a soft-decision erasure decoder and combining it with LDPC decoders and MAP/SOVA detectors for iterative error detection and confidence-based symbol assignment, distributing decoding work between global erasure coding and drive-level error correction to predict and correct erasures proactively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is replicated across drives to ensure fault tolerance, then reliability is improved, but storage quantity increases linearly and becomes impractical
Solution Approach 1:
The patent uses erasure coding to create redundant data representations through mathematical encoding rather than simple replication. Data is encoded into multiple fragments with parity information, allowing recovery from failures without storing complete copies of the original data, thus achieving reliability with reduced storage overhead
Solution Approach 2:
The system changes the storage architecture from replication (1:N copies) to erasure coding (1:N fragments with redundancy). By transforming the data representation parameters and using algebraic codes, the system maintains fault tolerance while significantly reducing the storage quantity required
2Device complexity
If hard-decision LDPC decoding is used for error correction, then device complexity is reduced, but response time increases and productivity decreases
Solution Approach 1:
The patent segments the decoding process into two distinct stages: first LDPC decoding for drive-level error correction, then RS decoding for global erasure recovery. This segmentation allows each decoder to operate independently on its specific code type, optimizing performance for each stage while maintaining overall system efficiency
Solution Approach 2:
The system implements periodic action by conditionally executing RS decoding only when LDPC decoding fails or indicates potential erasures. This periodic engagement of the more complex RS decoder based on LDPC feedback maintains low average complexity while ensuring high-speed response when errors are detected
3Productivity
If RS decoding is skipped when drives produce error-free data, then productivity is improved, but reliability may be compromised
Solution Approach 1:
The patent implements feedback mechanisms where LDPC decoders report their decoding status and confidence levels to the RS decoder. This feedback loop allows the system to intelligently determine when RS decoding is necessary, maintaining reliability by catching errors that LDPC missed while improving productivity by avoiding unnecessary RS decoding operations
Solution Approach 2:
The system performs preliminary LDPC decoding first to detect and correct drive-level errors before potentially engaging RS decoding. This preliminary action filters out many errors early, allowing the system to skip expensive RS decoding when not needed while maintaining the ability to recover from more severe errors that require the full power of RS decoding
Data Source
AI summary
The disclosed embodiments are directed to systems, devices, and methods for iterative message-passing decoding. In one embodiment, a method is disclosed comprising decoding a first codeword at a storage device using a detector and a decoder, the first codeword comprising a set of symbols from a first set of codewords; assigning, via the decoding, a set of confidence levels for each symbol in the first codeword; transmitting, by the storage device, the confidence levels to an iterative decoder; generating, by the iterative decoder, a second codeword based on the set of confidence levels, the second codeword excluding at least one symbol in the set of symbols; and iteratively decoding, by the iterative decoder, the second codeword using an erasure decoder; and transmitting, by the iterative decoder, soft information generated by the erasure decoder to the storage device for subsequent decoding by the storage device.


