Compute-In-Memory GRAND Decoding for Low-Latency Channel Codes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The hardware implementation of the Guessing Random Additive Noise Decoding (GRAND) algorithm for channel codes faces significant challenges in reducing worst-case decoding latency due to limited parallelization, which is critical for mission-critical applications with ultra-low latency requirements.
Innovation Solution
The implementation of the GRAND algorithm using Compute-in-Memory (CIM) technology, which allows for the concurrent evaluation of multiple error patterns by integrating storage and computing operations within memory cells, reducing the latency by leveraging the small size of memory cells relative to logic gates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional hardware implementation with registers and logic gates is used, then codebook membership checking can be performed, but the device complexity and overhead increase significantly
Solution Approach 1:
The patent replaces conventional logic gate-based computing with compute-in-memory technology, where memory cells directly perform computational operations. This substitution eliminates the need for separate logic gates and interconnections, significantly reducing device complexity while maintaining the codebook membership checking capability. The memory cells themselves execute the syndrome computation and error pattern evaluation functions that traditionally required complex logic circuits.
Solution Approach 2:
The patent merges the storage function and computing function into a single integrated structure. The compute-in-memory device combines memory cells for storing test error pattern syndromes with computing elements that perform concurrent evaluation operations. This merging eliminates the separation between memory and logic units, reducing overall device complexity and overhead while enabling efficient GRAND decoding operations.
2Device complexity
If limited parallelization is used in hardware implementation, then device complexity is reduced, but the worst-case decoding latency increases
Solution Approach 1:
The patent implements dynamic parallel evaluation capabilities in the compute-in-memory device, where multiple test error pattern syndromes are evaluated concurrently through programmable computation operations. This dynamic parallelism allows the system to adaptively process multiple error patterns simultaneously without requiring a fixed, overly complex hardware structure, thereby reducing worst-case decoding latency while maintaining manageable device complexity.
Solution Approach 2:
The patent segments the decoding process into multiple parallel evaluation streams within the compute-in-memory device. Different test error pattern syndromes are evaluated in parallel through divided computational paths, allowing simultaneous processing of multiple candidates. This segmentation enables high parallelization factors without proportionally increasing overall device complexity, as the compute-in-memory architecture handles multiple operations within its integrated structure.
3Loss of time
If more error patterns are evaluated in parallel, then decoding latency is reduced, but the overhead of logic gates and circuitry increases
Solution Approach 1:
The patent replaces logic gate-based parallel computation with compute-in-memory operations, where memory cells perform computational functions directly. This substitution enables high parallelization of error pattern evaluation without the exponential increase in logic gates and interconnections that would normally accompany increased parallelism. The memory-native computation architecture inherently supports concurrent operations with minimal additional overhead.
Data Source
AI summary
A method and an apparatus for decoding channel codes received from a noisy communication channel are provided. The method comprises: demodulating the received channel codes to obtain a demodulated data vector; and decoding, using a compute-in-memory (CIM), the demodulated data vector to obtain one or more candidate output codewords, the demodulated data vector is decoded with a guessing random additive noise decoding (GRAND) algorithm to obtain a candidate output codeword. By leveraging CIM technique for GRAND implementation, due to the intrinsic small size of memory cells relative to logic gates, the integration of storing and computing operations (e.g. multiply-and-accumulate (MAC) operation on the input vector with the weight matrix) in memory cells enables concurrently evaluating a multitude error patterns, therefore substantially reduce the worst-case latency of GRAND hardware implementation.


