Linear Block Code Decoder Using Reliability-Guided Graph Selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current decoding methods for linear block codes, particularly in communications systems, face challenges in efficiently reconstructing data due to high computational expenses and limitations in handling errors in noisy channels, especially for high-rate codes.

Innovation Solution

The introduction of a configuration graph-based decoding scheme that represents linear block codes as a maximum-weighted vertex packing problem, allowing for efficient decoding through a greedy algorithm that selects nodes based on reliability information and parity-check constraints, reducing computational complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional decoding methods are used for linear block codes, then decoding can be performed, but computational expenses are high

Engineering Contradiction:
Improvedecoding performanceVSAvoidcomputational complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the decoding problem into two distinct phases: an information set selection phase that identifies suitable information sets based on parity-check constraints, and a decoding phase that operates on the selected information set. This segmentation allows the complex decoding task to be broken down into manageable steps, reducing overall computational complexity while maintaining decoding performance

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary action by pre-selecting information sets that satisfy parity-check constraints before the actual decoding process. By identifying valid information sets in advance using the parity-check matrix, the system prepares the data structure to facilitate more efficient decoding operations, avoiding unnecessary computations during the main decoding phase

Inventive Principle:
Principle #10Preliminary action

2Reliability

If traditional decoding methods are used, then data can be reconstructed, but efficiency is reduced due to high computational expenses

Engineering Contradiction:
Improveerror correction capabilityVSAvoiddecoding efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent changes key parameters of the decoding process by working with information sets of size k (where k is the dimension of the code) rather than processing the entire codeword of length n. By transforming the problem to operate on smaller, carefully selected subsets of the data that satisfy parity-check constraints, the computational complexity is reduced from O(n) to O(k), significantly improving decoding efficiency while maintaining error correction capability

Inventive Principle:
Principle #35Parameter changes

3Productivity

If high-rate codes are used to improve data transmission, then throughput increases, but error correction becomes more difficult

Engineering Contradiction:
Improvedata transmission rateVSAvoiderror handling complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

For high-rate codes where k is close to n, the patent performs preliminary selection of information sets that are guaranteed to satisfy parity-check constraints. This pre-processing step is particularly beneficial for high-rate codes because it identifies the minimal necessary subset of symbols needed for decoding, avoiding the complexity of handling the full codeword while maintaining the high data transmission rate advantage

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8190977B2Decoder of error correction codes
Publication Date: 2012.05.29 APPLE INC
  • US8190977B2 patent drawing
  • US8190977B2 patent drawing
  • US8190977B2 patent drawing

AI summary

In a method of decoding data symbols into codewords, reliability information of the data symbols is provided. A first group of symbols from a first set of groups of symbols is selected, wherein the first set of groups of symbols is defined by at least a first parity-check of a parity-check matrix of a linear block code which has been used to encode the data symbols. The selection is based on the reliability information. A second group of symbols from a second set of groups of symbols is selected, wherein the second set of groups of symbols is defined by at least a second parity-check of the parity-check matrix. The selection is based on the selected first group of symbols and the reliability information. At least a part of the codeword is composed on the basis of the first group of symbols and the second group of symbols.