LDPC Decoding with Check-Node-Guided Soft LLR Refinement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data communication and storage systems face challenges in efficiently decoding codewords due to the computational complexity of error-correcting codes like LDPC, Hamming, and Reed-Solomon codes, which are not adequately addressed by current methods.
Innovation Solution
A method involving a two-stage decoding process, where a first hard decision decoding is followed by a second soft decision decoding using a soft log-likelihood ratio (LLR) generated based on the difference between satisfied and unsatisfied check nodes, with the LLR calculated as ((#S - #U)*Q+1)*D*X, where #S and #U represent the number of satisfied and unsatisfied check nodes, Q is a scaling factor, D is the symbol value, and X is the original LLR magnitude.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If hard decision decoding is used for LDPC codes, then decoding speed is improved, but error correction capability deteriorates
Solution Approach 1:
The decoding process is segmented into two distinct stages: a first hard decision decoding stage for rapid initial decoding, and a second soft decision decoding stage for enhanced error correction. This segmentation allows the system to leverage the speed advantage of hard decision decoding while subsequently applying the superior error correction capability of soft decision decoding when needed.
Solution Approach 2:
The system dynamically adapts the decoding approach by generating soft LLRs based on check node satisfaction counts from the hard decision stage, and conditionally applying soft decision decoding. This dynamic adaptation allows the system to maintain high speed for easily decodable codewords while providing enhanced error correction for more challenging cases.
2Reliability
If soft decision decoding is used for LDPC codes, then error correction capability is improved, but computational complexity increases
Solution Approach 1:
Instead of applying full soft decision decoding to all codewords, the system applies it selectively based on the results of the initial hard decision decoding. The soft LLR generation uses a simplified approach based on check node satisfaction counts, performing partial soft decision processing only when the hard decision decoding indicates potential errors remain.
Solution Approach 2:
The system changes the parameter representation by generating soft LLRs from hard decision results using a specific formula involving check node satisfaction counts. This parameter transformation allows the system to leverage soft decision information without requiring the full computational apparatus of traditional soft decision decoding, effectively reducing complexity while maintaining error correction benefits.
3Reliability
If iterative hard decision decoding is performed for multiple iterations, then error correction capability is improved, but decoding time increases
Solution Approach 1:
The system performs preliminary hard decision decoding first to quickly identify codewords that are easily decodable. By evaluating check node satisfaction counts after the hard decision stage, the system can determine early whether soft decision decoding is needed, avoiding unnecessary iterative processing for codewords that are already correctly decoded.
Solution Approach 2:
The check node satisfaction count serves as an intermediary metric that bridges hard decision and soft decision decoding. By using this intermediate evaluation, the system can efficiently determine whether to proceed to soft decision decoding without requiring multiple iterative hard decision decoding passes, thus reducing decoding time while maintaining error correction capability.
Data Source
AI summary
Systems and methods are provided for decoding a codeword encoded by a linear block code. A method may comprise performing a first decoding on a codeword using a first decoder, determining a number of satisfied check nodes and a number of unsatisfied check nodes for a symbol value of the codeword for a decoding result of the first decoding, generating a soft log-likelihood ratio (LLR) for the symbol value based on the number of satisfied check nodes and the number of unsatisfied check nodes, and performing a second decoding using a second decoder with the soft LLR as an input to the second decoder.


