Polar Code CRC Segmentation for Early-Termination Decoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The finite-length performance of polar codes under successive cancellation decoding is not competitive with other modem channel coding schemes like LDPC and Turbo codes, and the use of CRC codes for error detection requires multiple polynomials for different list sizes, complicating design and implementation, while also leading to high decoding latency due to sequential decoding.
Innovation Solution
Generating additional CRC bits based on a given CRC polynomial to maintain error correcting capability and reduce latency through early termination, allowing these extra CRC bits to be placed closer to the beginning of the decoding process, and using recursive or non-recursive methods to compute them from intermediate results.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If CRC code length is increased to maintain error detection capability with larger list sizes, then error detection capability is improved, but device complexity increases due to needing multiple CRC polynomials
Solution Approach 1:
A single CRC polynomial is designed to serve multiple functions: it generates CRC bits for error detection and simultaneously enables early termination for different list sizes through strategic placement of CRC bits at different positions. This universal polynomial replaces the need for multiple specialized polynomials.
Solution Approach 2:
The CRC bits are segmented and placed at different positions within the codeword structure. By placing some CRC bits earlier in the sequence, the decoder can perform early termination checks without waiting for the complete codeword, thus reducing latency while maintaining error detection capability.
2Ease of operation
If CRC bits are placed at the end of information bits for traditional decoding, then error detection is simplified, but decoding latency increases due to sequential processing
Solution Approach 1:
CRC bits are placed at multiple positions including earlier positions before all information bits are decoded. This preliminary placement allows the decoder to perform error detection checks earlier in the decoding process, enabling early termination when errors are detected, thus reducing overall decoding latency.
Solution Approach 2:
The decoding process becomes dynamic by allowing early termination based on CRC check results at different positions. The decoder can adaptively stop processing when sufficient error detection information is available, rather than always processing the complete sequential sequence.
3Reliability
If multiple CRC polynomials are used for different list sizes, then error detection capability is maintained, but implementation complexity increases
Solution Approach 1:
A single universal CRC polynomial is designed to work across different list sizes and decoding scenarios. This polynomial can generate appropriate CRC bits for various list sizes without requiring separate polynomial definitions, simplifying implementation while maintaining error detection reliability.
4Measurement precision
If SCL decoding uses larger list sizes to approach ML decoder performance, then decoding accuracy is improved, but false alarm rate increases requiring longer CRC codes
Solution Approach 1:
CRC bits are segmented and placed at different positions in the codeword. Earlier-placed CRC bits provide initial error detection that can terminate decoding early for high-list-size SCL decoding, preventing false alarms while maintaining the accuracy benefits of larger list sizes.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
According to some embodiments, a method in a wireless device comprises obtaining a set of information bits for wireless transmission and dividing the set of information bits into one or more subsets of information bits. For each subset, generating extra cyclic redundancy check (CRC) bits using a CRC polynomial capable of generating N CRC bits. The extra CRC bits for each subset comprise less than N CRC bits. The method further comprises: generating a final set of N or less CRC bits for the set of information bits using the CRC polynomial; generating a set of coded bits by encoding the set of information bits for wireless transmission, together with the extra CRC bits and the final set of CRC bits, using a polar encoder; and transmitting the set of coded bits using a wireless transmitter.