LDPC Decoding With Two-Bit Reliability Bit-Flipping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing decoding methods for LDPC codes, such as SPA and MSA, face high operational complexity, while simpler algorithms like BFA have lower error correction ability. To address this, a weighted bit-flipping algorithm (WBFA) was proposed, but it requires further optimization for improved performance.
Innovation Solution
A two-bit weighted bit-flipping algorithm (TB-WBFA) is implemented in a memory system, which involves resetting iteration numbers and reliability values, calculating syndrome and flipping function values, and updating reliability values based on threshold comparisons to enhance decoding efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If SPA or MSA algorithms are used for LDPC decoding, then decoding performance approaches Shannon's channel capacity limit, but operational complexity becomes very high
Solution Approach 1:
The patent transforms the continuous reliability values from SPA/MSA into discrete two-bit reliability indicators (00, 01, 10, 11), where each pattern represents different confidence levels. This parameter discretization maintains decoding performance while dramatically reducing computational complexity by replacing complex arithmetic operations with simple bitwise operations and lookup tables.
Solution Approach 2:
The patent replaces the expensive, complex message-passing computations of SPA/MSA with a simpler, iterative bit-flipping approach that uses lightweight reliability indicators. Each iteration uses simplified syndrome calculations and threshold-based flipping decisions, effectively using disposable, low-cost computational operations to achieve near-optimal performance.
2Device complexity
If BFA algorithm is used for LDPC decoding, then operational complexity is reduced to simple modular operations, but error correction ability becomes lower
Solution Approach 1:
The patent enhances the simple BFA by introducing two-bit reliability parameters that track confidence levels for each bit decision. These reliability indicators modify the flipping criteria, allowing the algorithm to prioritize flipping low-reliability bits while preserving high-reliability decisions, thereby improving error correction capability without significantly increasing complexity.
Solution Approach 2:
The patent implements feedback mechanisms where reliability values are updated iteratively based on syndrome check results. The reliability information feeds back into the flipping decision process, creating a closed-loop system that continuously improves decoding accuracy by learning from previous iteration outcomes and adjusting flipping priorities accordingly.
3Reliability
If WBFA algorithm is used to correct errors by calculating weights, then error correction ability is improved, but operational complexity increases
Solution Approach 1:
The patent quantizes the continuous weight calculations of WBFA into discrete two-bit reliability levels, transforming complex weighted summations into simple categorical assessments. This parameter discretization preserves the essential weighting functionality (differentiating between high and low reliability) while reducing computational burden to manageable levels suitable for hardware implementation.
Solution Approach 2:
The patent extracts only the most critical aspects of weight calculation from WBFA, focusing on identifying and correcting the most unreliable bits rather than computing precise weights for all bits. By taking out and emphasizing only the essential reliability differentiation, the algorithm achieves good error correction performance with minimal computational overhead.
Data Source
AI summary
A decoding method for a low density parity check (LDPC) code includes: updating a first check node, among a plurality of check nodes, by receiving, by the first check node, a bit decision and an associated first reliability value from each of a subset of variable nodes including a first variable node among a plurality of variable nodes, calculating a syndrome value and a second reliability value of the first check node based on the received bit decisions and first reliability values, and outputting the calculated syndrome value and second reliability value of the first check node to a variable node of the plurality of variable nodes but not of the subset of variable nodes; and updating the first variable node by receiving, by the first variable node, a syndrome value and a second reliability value of a second check node among the plurality of check nodes, and updating the first reliability value of the first variable node based on the syndrome value and the second reliability value of the second check node.


