LDPC Base Matrix Layout for Lower-Complexity 5G Decoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current LDPC base matrices for 5G wireless communications are complex and require significant chip area for switching networks, which hinders efficient encoding and decoding processes, especially for large block sizes and high throughput requirements.
Innovation Solution
The proposed solution involves adapting the LDPC base matrix to comprise multiple non-identical, row-orthogonal parts, where each part's column-wise combinations of rows are derived from a common starting vector, with optional cyclic shifting or interleaving, and substitution of vector values with all-zero matrix indicators.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a conventional LDPC base matrix is used for 5G wireless communications, then encoding and decoding functions are achieved, but the complexity and chip area required for switching networks increases significantly
Solution Approach 1:
The base matrix is divided into multiple parts, where each part corresponds to a subset of rows. This segmentation allows the switching network to be decomposed into smaller, more manageable components, reducing overall complexity while maintaining the error correction capability through the structured arrangement of the divided parts
2Reliability
If a conventional LDPC base matrix is used for 5G wireless communications, then encoding and decoding functions are achieved, but significant chip area is required for switching networks
Solution Approach 1:
By segmenting the base matrix into multiple parts with row-orthogonal properties, the switching network can be implemented using smaller, distributed components rather than a single large network, thereby reducing the total chip area required while preserving error correction functionality
Solution Approach 2:
The row-orthogonal parts are designed to enable shared layered decoding across multiple layers, allowing a single decoding structure to handle multiple code rates and configurations, thus reducing the overall chip area needed for supporting various communication requirements
3Device complexity
If multiple non-identical row-orthogonal parts are used in the base matrix, then chip area and complexity are reduced, but the base matrix structure becomes more complex to generate
Solution Approach 1:
The method involves pre-defining the row-orthogonal parts and their structures before generating the full base matrix. This preliminary preparation allows for systematic construction of the matrix with reduced complexity, as the orthogonal parts serve as building blocks that can be systematically combined rather than designing the entire matrix from scratch
4Productivity
If conventional base matrices are used, then encoding functionality is provided, but data storage needs are significant
Solution Approach 1:
The row-orthogonal parts are designed to support shared layered decoding across multiple layers and different code rates. This universal structure allows the same decoding machinery to handle various configurations, reducing the need for storing multiple separate base matrices and thereby decreasing data storage requirements while maintaining high encoding throughput
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A base matrix is applied to an LDPC coder. The base matrix includes multiple parts, each including multiple of rows and columns, and containing integers, each representative of an identity matrix cyclically shifted in accordance with the integer or representative of an all-zero matrix. At least two of the multiple parts are configured such that their respective column-wise combinations of rows represents a same starting vector, cyclically shifted or interleaved, with zero or more but not all integers not indicative of the all-zero matrix of the same vector substituted by integers indicative of the all-zero matrix. The at least two of the multiple parts are not identical. The applied base matrix is used for one of encoding data using the LDPC coder or decoding data using the LDPC coder.