QC-LDPC Layered Min-Sum Decoding by Increasing Row Weights

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current LDPC code decoding methods, such as the layered min-sum algorithm, suffer from low decoding efficiency due to high decoding complexity and slow convergence speed, especially in high-code-rate LDPC codes.

Innovation Solution

The proposed data transmission method employs an iterative decoding process using a block matrix within a quasi-cyclic LDPC code matrix, where the row weight of the block matrix is preferentially selected for decoding based on its magnitude, starting with smaller row weights to increase convergence speed and efficiency, and only converges when confidence reaches a preset threshold, thereby saving computing resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the layered min-sum algorithm is used for decoding, then the convergence speed is improved compared to flood MS algorithm, but the decoding complexity remains high and decoding efficiency is still relatively low

Engineering Contradiction:
Improveconvergence speedVSAvoiddecoding complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The check matrix H is divided into multiple block matrices based on row weights, creating distinct decoding groups. Each block matrix corresponds to a specific row weight value, allowing the decoder to process rows with the same weight together. This segmentation enables selective decoding where only certain block matrices are processed in each iteration, reducing overall decoding complexity while maintaining convergence speed improvements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention changes the decoding parameter from uniform processing of all rows to selective processing based on row weight values. By introducing row weight as a key parameter for determining decoding order and selection, the system dynamically adjusts which block matrices are decoded in each iteration, optimizing the balance between convergence speed and decoding complexity.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If all rows in the check matrix are decoded in each iteration, then decoding thoroughness is improved, but decoding efficiency deteriorates due to high computational overhead

Engineering Contradiction:
Improvedecoding thoroughnessVSAvoiddecoding efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Instead of decoding all rows in each iteration, the invention applies partial action by selectively decoding only certain block matrices based on row weight criteria. The decoder processes a subset of block matrices in each iteration, using the row weight values to determine which blocks to prioritize. This partial processing approach maintains sufficient decoding thoroughness while significantly improving decoding efficiency by avoiding redundant computations on already-decoded or low-priority rows.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The invention performs preliminary action by pre-calculating and storing row weight values for all rows in the check matrix before the iterative decoding process begins. This preliminary computation of row weights allows the decoder to quickly determine which block matrices should be processed in each iteration without recalculating weights during decoding, thus improving efficiency while maintaining thoroughness.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If rows with higher row weights are processed first, then certain error patterns are corrected more effectively, but overall convergence speed deteriorates compared to processing rows with smaller row weights first

Engineering Contradiction:
Improveerror correction effectivenessVSAvoidconvergence speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The invention changes the processing order parameter from conventional (arbitrary or weight-descending) to weight-ascending order. By sorting block matrices based on row weight values in ascending order and processing them sequentially, the system achieves faster convergence. The parameter change involves using row weight as the primary sorting criterion and processing blocks with smaller weights first, which propagates reliable information more effectively through the Tanner graph.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The invention applies inversion by reversing the conventional decoding order approach. Instead of processing rows with higher weights first (which was the conventional wisdom for error correction), the system processes rows with smaller weights first. This inverted approach proves more effective because it allows information to flow from more reliable (lower weight) checks to less reliable ones, achieving both faster convergence and effective error correction.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentEP3531561B1Layered min-sum decoding for QC-LDPC codes according to increasing row weights
Publication Date: 2023.07.12 HUAWEI TECH CO LTD
  • EP3531561B1 patent drawingFigure 1~2
  • EP3531561B1 patent drawingFigure 3
  • EP3531561B1 patent drawingFigure 4

AI summary

A data transmission method, a sending device, and a receiving device are provided. A sending device obtains information data, encodes the information data by using a quasi-cyclic low-density parity-check LDPC code matrix, modulates the encoded data to obtain first data, and sends the first data. A receiving device obtains second data, demodulates the second data to obtain to-be-decoded data, and decodes the to-be-decoded data by using a block matrix in a quasi-cyclic low-density parity-check LDPC code matrix, where the block matrix is a submatrix in the quasi-cyclic LDPC matrix, and in the quasi-cyclic LDPC matrix, a row weight of a row (H-1) is greater than or equal to a row weight of a row H, or a row weight of a row (H-1) is less than or equal to a row weight of a row H. In this way, decoding efficiency can be improved.