Random Linear Code Encoding With Interleaved Blocks for Low-Latency GRAND

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional encoders and decoders for Guessing Random Additive Noise Decoders (GRAND) face high encoding and decoding latency due to complex matrix multiplication operations, making them impractical for many applications.

Innovation Solution

The proposed solution involves an apparatus and method for random linear code encoding that initializes a current vector, interleaves its values, groups them into smaller vectors, and multiplies these by an encoding or decoding matrix, reducing latency through a loop process that transmits the resulting codeword over a communication channel.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If matrix multiplication operations are used for encoding and decoding in GRAND-based systems, then error correction capability is achieved, but encoding and decoding latency increases

Engineering Contradiction:
Improveerror correction capabilityVSAvoidencoding and decoding latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the large matrix multiplication operations into smaller sub-matrix operations. The encoding matrix is divided into blocks, and the multiplication is performed in stages through multiple smaller operations, reducing the computational complexity and latency of each individual operation while maintaining the overall error correction capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary preparation of encoding matrices and sub-matrix blocks in advance. Pre-computed matrices and structured block formulations are prepared beforehand to enable faster real-time encoding and decoding operations, reducing the latency during actual transmission.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If conventional encoders and decoders are used for GRAND, then error correction is performed, but hardware complexity increases

Engineering Contradiction:
Improveerror correctionVSAvoidhardware complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The conventional encoder and decoder are segmented into modular components including separate encoding matrix blocks, sub-matrix processing units, and standardized interface modules. This modular segmentation reduces hardware complexity by allowing independent optimization and reuse of common functional blocks across multiple encoding/decoding operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the structural parameters of the encoding matrices to standardized block forms with specific dimensions and patterns. This parameter standardization enables more efficient hardware implementation through regular, predictable computation patterns that can be optimized for specific hardware architectures.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20250007650A1Apparatus and method for random linear code encoding and guessing random additive noise decoding (GRAND)
Publication Date: 2025.01.02 HUAWEI TECH CO LTD
  • US20250007650A1 patent drawing
  • US20250007650A1 patent drawing
  • US20250007650A1 patent drawing

AI summary

An apparatus for encoding an information word of size N into a codeword includes a processing unit to initialize a current vector as being the information word and run T times, T being a predetermined integer greater or equal to 1, a loop. The loop includes generating a scrambled vector by interleaving values of the current vector, grouping values of the scrambled vector into N/m input vectors of size m, and multiplying each of the input vectors by an encoding matrix of size m×m to obtain output vectors. The loop further includes setting the current vector with a concatenation of the output vectors. Moreover, the apparatus includes a transmitting unit configured to transmit the codeword through a communication channel, the codeword being the last current vector in the loop.