Raptor Code Pre-Encoding Using Stored Operation Lists

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing Raptor code encoding process is hindered by the time-consuming pre-encoding stage, particularly due to repeated Gaussian elimination operations, which significantly slows down the overall encoding performance.

Innovation Solution

The introduction of a pre-encoding matrix generation device and a pre-coding operation list storage device that generates and stores optimized operation lists for specific block lengths, allowing for direct use of these lists when encountering source blocks with the same number of symbols, thereby bypassing the need for repeated Gaussian elimination and optimizing XOR operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If Gaussian elimination operations are performed repeatedly for pre-encoding, then encoding accuracy is maintained, but encoding speed deteriorates significantly

Engineering Contradiction:
Improveencoding accuracyVSAvoidencoding speed
Core Design Contradiction:
Measurement precisionVSSpeed

Solution Approach 1:

The patent pre-calculates and stores operation lists for different block lengths before actual encoding occurs. When encoding is needed, the pre-computed operation lists are directly applied without performing Gaussian elimination repeatedly, thus maintaining accuracy while dramatically improving speed

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates copies of operation lists for different block lengths and stores them in a lookup table. Instead of recalculating Gaussian elimination results each time, the system copies and applies the appropriate pre-computed operation list based on the input block length, eliminating redundant calculations

Inventive Principle:
Principle #26Copying

2Reliability

If pre-encoding operations are performed for every source block, then encoding correctness is ensured, but processing time increases

Engineering Contradiction:
Improveencoding correctnessVSAvoidpre-encoding time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs pre-encoding calculations in advance and stores the results as operation lists. During actual encoding, it retrieves and applies these pre-prepared operation lists, ensuring correctness while avoiding repeated time-consuming calculations

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the parameter from performing full Gaussian elimination to applying pre-computed operation lists. By transforming the encoding process from calculation-intensive to lookup-intensive, it maintains reliability while reducing time loss

Inventive Principle:
Principle #35Parameter changes

3Manufacturing precision

If matrix multiplication is performed directly, then encoding completeness is achieved, but computational complexity increases

Engineering Contradiction:
Improveencoding completenessVSAvoidcomputational complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The patent segments the matrix multiplication process into pre-computation and application phases. The complex Gaussian elimination is segmented and performed once to generate operation lists, which are then applied repeatedly without requiring full matrix multiplication, reducing computational complexity while maintaining completeness

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8839067B2Apparatus and method for accelerating the encoding of raptor codes
Publication Date: 2014.09.16 IND TECH RES INST
  • US8839067B2 patent drawing
  • US8839067B2 patent drawing
  • US8839067B2 patent drawing

AI summary

In one exemplary embodiment of an apparatus for accelerating the encoding of Raptor codes, based on an inputted block length, a pre-encoding matrix generation device determines to generate an encoding matrix M corresponding to the inputted block length and computes an inverse matrix M−1, or makes a pre-coding operation list storage device output an operation list corresponding to the inputted block length; based on the encoding matrix or the inverse matrix M−1, a pre-encoding operation list generation device generates a new operation list; based on one of the aforementioned two operation lists and an inputted source symbol set, at least one prompt intermediate symbol generation device generates at least one intermediate symbol set to provide to a fountain code encoder for encoding.