Study of Puncturing Techniques for Polar Codes in 5G Cellular and IoT Networks
R. M. Oliveira, R. C. de Lamare

TL;DR
This paper introduces a puncturing method for polar codes based on channel polarization indices, enhancing rate compatibility for 5G systems and demonstrating performance comparable to LDPC codes.
Contribution
The paper proposes a novel puncturing technique for polar codes using channel polarization indices, applicable to 5G, with performance analysis via Polar Spectra.
Findings
Punctured polar codes perform comparably to LDPC codes in 5G scenarios.
The proposed method effectively reduces code length while maintaining performance.
Polar Spectra analysis validates the puncturing technique's effectiveness.
Abstract
This paper presents a puncturing technique based on the channel polarization index for the design of rate-compatible polar codes in the fifth generation (5G) of wireless systems. The proposed strategy consists of two steps: we first generate the codeword message; and then we reduce the length of the codeword based on the channel polarization index where channels with the smallest channel polarization indices are punctured. We consider the proposed punctured polar codes with the successive cancellation (SC) decoder and the Cyclic Redundancy Check (CRC) aided SC list (CA-SCL) decoder and punctured bits known to both the encoder and the decoder. The Polar Spectra (PS) are then used to performance analysis the puncturing technique. Simulations for 5G scenarios show that the proposed polar codes perform comparable to Low-Density Parity-Check (LDPC) codes.
| eMBB | URLLC | mMTC | |
| 10Mbps | 10Mbps | 10Mbps | |
| n | 1920 | 480 | 100 |
| t | t100ms | t1ms | t100ms |
| r | 0.25 or 0.83 | 0.53 | 0.64 |
| b | 0.996 | 0.683 | 0.808 | 0.121 | 0.878 | 0.191 | 0.316 | 0.003 |
|---|---|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | |
| After sorting | ||||||||
| a | 0.003 | 0.121 | 0.191 | 0.316 | 0.683 | 0.808 | 0.878 | 0.996 |
| k | 8 | 4 | 6 | 7 | 2 | 3 | 5 | 1 |
| Proposed | RQUP | CW | |
|---|---|---|---|
| 3.73 | 3.46 | 3.45 | |
| 4.62 | 4.46 | 4.43 | |
| 5.62 | 5.44 | 5.43 |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsError Correcting Code Techniques · Advanced Wireless Communication Techniques · Cooperative Communication and Network Coding
\stackMath
Study of Puncturing Techniques for Polar Codes in 5G Cellular and IoT Networks
Robert M. Oliveira and Rodrigo C. de Lamare Robert M. Oliveira and Rodrigo C. de Lamare - Centre for Telecommunications Studies (CETUC), Pontifical Catholic University of Rio de Janeiro (PUC-Rio), Rio de Janeiro-RJ, Brasil, E-mails: [email protected] e [email protected]
Abstract
This paper presents a puncturing technique based on the channel polarization index for the design of rate-compatible polar codes in the fifth generation (5G) of wireless systems. The proposed strategy consists of two steps: we first generate the codeword message; and then we reduce the length of the codeword based on the channel polarization index where channels with the smallest channel polarization indices are punctured. We consider the proposed punctured polar codes with the successive cancellation (SC) decoder and the Cyclic Redundancy Check (CRC) aided SC list (CA-SCL) decoder and punctured bits known to both the encoder and the decoder. The Polar Spectra (PS) are then used to performance analysis the puncturing technique. Simulations for 5G scenarios show that the proposed polar codes perform comparable to Low-Density Parity-Check (LDPC) codes.
I Introdution
Polar codes was proposed by Arikan [1] in 2009 are based on the phenomenon called channel polarization, are low-complexity codes and with the SC decoder can achieve channel capacity when the code length approaches infinity. For codes of short length, however, SC decoding falls short in providing a reasonable error-correction performance. The SCL decoding solves this issue by selecting the codeword from a list of candidates generated by the decoder. When SCL is assisted with CRC aided code, polar codes demonstrate competitive performance as compared to state-of-the-art error-correcting codes for a wide range of code lengths and have been adopted in the 5G wireless systems as new radio (NR) [2].
A typical construction of conventional polar codes is based on the Kronecker product, restricted to the lengths . Polar codes with arbitrary lengths can be obtained by shortening or puncturing techniques [3], which will be required for 5G scenarios, where code lengths ranging from 100 to 1920 bits with various rates will be adopted [4]. Punctured polar codes can be decoded in a similar way to SC and SCL decoding for conventional polar codes.
An analysis on the definition of puncturing and shortening techniques can be found in [3]. In this paper we define the puncturing technique with elimination the channel synthetic generated in the polarization channel. The resulting codeword is smaller than the original one, we call the punctured codeword. Some puncturing methods of polar codes have been proposed in the literature and evaluated with the SC decoder, where in the encoder we freeze a punctured bit channel that receives the fixed zero value, at the decoder, however, it uses a plus infinite LLR for that punctured codeword bit as it knows its value with full certainty. In this paper we use the technique reported by Hoff [5] where the punctured bit channels are not processed. The work in [6] introduced the concept of capacity-one puncturing and devised a simple puncturing method based on the weight of the columns (CW), whereas the study in [7] proposed a search algorithm to jointly optimize the shortening patterns and the values of the shortened bits. The study in [8] proposes the reversal quasi-uniform puncturing scheme (RQUP) based on bit reversed permutation.
In this paper, we propose the study of a puncturing technique based on the channel polarization index for the design of rate-compatible polar codes [9], where the channel polarization index determines the choice of the punctured channel. In particular, we describe the design of rate-compatible polar codes using the proposed method and its application to 5G scenarios. A brief analysis of the proposed puncturing method using the Polar Spectra [8] is carried out along with the evaluation the performance of design examples via simulations.
This paper is organized as follows. In Section II we describe the system model and problem statement. In Section III we a brief description of the 5G scenarios. In Section IV we provide a brief description on polar codes. In Section V, we propose puncturing techniques. In Section VI, we have puncturing technical analysis. In Section VII, we evaluate our simulation and, finally, Section VIII concludes this paper.
II System Model and Problem Statement
Fig.1 shows a block diagram of the polar coding system considered in this paper.
In this system, m is the binary message transmitted, with bits, where . It is through the generator matrix G that the message m is encoded, producing the codeword with bits, that is, with . With an appropriate puncturing technique, the codeword c has its length reduced to resulting in the puncturing codeword c’, where , where is an integer that defines the levels in the polarization tree, . The punctured codeword c’ is then transmitted over a channel with additive white Gaussian noise (AWGN), resulting in the received vector, , where x is the vector corresponding to the noise. In the decoding step, the decoding algorithm observes r in order to estimate m. We call it an estimated message , and if we say that the message has been fully recovered. The problem we are interested in solving is how to design puncturing with the best code performance.
III 5G scenarios
During the 5G standardization process of the 3rd generation partnership project (3GPP), polar codes have been adopted as channel coding for uplink and downlink control information for the enhanced mobile broadband (eMBB) communication service and low-density parity-check (LDPC) codes have been adopted for the data channels. 5G foresees two other use case, namely ultra-reliable low-latency communications (URLLC) and massive machine-type communications (mMTC), for which polar codes have been selected as one of the possible coding schemes. However, within the 5G framework, various code lengths, rates and channel conditions are foreseen. Thus, substantial effort has been put in the design of polar codes that are easy to implement, having low encoding and decoding complexity, while maintaining good error-correction performance over multiple code lengths and channel parameters.
The first scenario called eMBB is dedicated to applications with high rates of users with different degrees of mobility and rural environments where transmission rates should be higher than 10Mbps a 10Gbps, latency should be less than 100ms and block size corresponding to code must be 64800 bits or 1920 bits and the code rate should be or to ensure high performance. The second scenario called URLLC is dedicated to applications IoT and Tactile Internet focuses on transmissions between machines and Internet of Things devices, where transmission rates should be in the range of 1Kbps to 10Mbps, the latency should be between 1 and 100ms, the size of the code word should be 480 bits and the code rate should be . The last scenario, called mMTC communication, focuses on transmissions between machines, where transmission rates should be in the range of 1Kbps to 10Mbps, the latency should be between 1 and 100ms, the size of the codeword should be 100 bits and the code rate should be .
Table I illustrates the requirements mentioned for the different scenarios of 5G, in which is the baud rate; n is codeword length; t is the latency and is the coding rate.
IV Polar Coding System
Let denote a binary discrete memoryless channel (B-DMC), with input alphabet , output alphabet , and the channel transition probability , , . The channel mutual information with equiprobable inputs, or symmetric capacity, is defined by [1]
[TABLE]
and the corresponding reliability metric, the Bhattacharyya parameter is described by [1]
[TABLE]
Applying the channel polarization transform for independent uses of , after channel combining and splitting operation we obtain the group of polarized channels , , defined by the transition probabilities [1]
[TABLE]
where denotes the output of , its input, where . In general, we use the notation an to designate a vector and to refer to its cardinality. The channel polarization theorem [1] states that converges to either 0 (completely noisy channels) or 1 (perfectly noiseless channels) as and the fraction of noiseless channel tends to , while polarized channels converge to either or . The vector , for some denotes the information bit set and denotes the frozen bit set. We select the channels to transmit information bits such that . For encoding, a polar codeword is generated by , where is the information sequence, is the bit-reversal permutation matrix, is the -th Kronecker power and \textbf{G}_{2}=\footnotesize\left[\begin{array}[]{cc}1&0\\ 1&1\end{array}\right] is the kernel matrix. We adopt the SC decoder so that the information bits are estimated as [1]
[TABLE]
For SCL [2], let denote the set of candidate sequences in the th step of the decoding process, and is the size of . Let be the maximum allowed size of the list and is a threshold for pruning with . The SCL algorithm can be described as follows:
- •
bits are estimated successively with index ; for each candidate in the list,
- •
generate two -length sequences with decoding as bit 0 and bit 1 by SC decoding;
- •
if the account of candidates is not larger than , there is nothing to do;
- •
otherwise, reserve candidates with the largest probabilities and drop the others from ;
- •
check each candidate , if , eliminate from .
For sequence determination, after all the bits are examined, re-encode every candidate in the list and calculate corresponding likelihood probabilities. Select the one with the maximal probability as the sequence estimate:
[TABLE]
The CA-SCL algorithm [2] consists of SCL decoding and CRC decoding algorithms. The CRC polynomial project [9] depends on the maximum total length of the block to be designed considering data and CRC. According to [10], where is the degree of the generator polynomial, the maximum total length of the block is given by . The CRC-8 is to be used for , whereas the CRC-16 is suggested for . Usually, the CRC code is included in the set of information bits [12].
V Proposed Puncturing Technique Based on Polarization Channel Index
In this section, we detail the proposed puncturing technique based on the channel polarization index and show how to calculate the polarization channels. The purpose of a puncturing technique is to reduce the codeword length for , such that . In particular, the length reduction is obtained by eliminating bit channel for codeword with lower polarization indices. Consider the polarization index vector p which contains the lower polarization indices, where indicates its number of elements. We firstly expertly generate the codeword by defining the bits channels in p as a zero value (frozen bits). The bits of information must be rearranged in the codeword message according to the order of polarization of the remaining bit channels. We then reduce the length of the codeword message based on the channel polarization index, where channels with lower indexes will be punctured.
The polarization channel is calculated with the Bhattacharya parameter satisfying the following recursion:
[TABLE]
Using the notation in [1], for we have stages of polarization and the , the polarization stages are
- •
stage 1:
and
- •
stage 2:
,
,
and
- •
stage 3, by induction:
.
The channels can be written with . We define the polarization vector as:
[TABLE]
where the polarization vector b is computed through (6). As an example for stage 3 we have
[TABLE]
The key idea of the proposed technique is to shorten in the codeword m the bits that correspond to the channels with smallest values of polarization index.
These channels can be obtained by sorting the polarization vector b. The goal of sorting is to determine a permutation of the indices that will organize the entries of the polarization vector b in increasing order [11]:
[TABLE]
Consider the sort function which implements (13), where a lists the sorted b and k contains the corresponding indices of a. Table II shows an example of the polarization vector b for , sorting vector a and the new index k.
The vector contains the indices of the polarization values of the channels in increasing order, which is used to obtain the vector p of the proposed technique:
[TABLE]
with the length of puncturing. In Algorithm 1 we have included a pseudo-code of the computation of the p vector. Note that is returned from the sort function.
In Algorithm 2 we have included a pseudo-code of the computation of the punctured codeword c’.
As the code has been punctured, the reliability of the bit channels changes and the information set should change accordingly. The Bhattacharyya parameters of the polarized channels punctured are smaller than those of the original polarized channels (Lemma 3 in [8]), we consider in this paper that the order of channel polarization given by (13) does not change after puncturing. The punctured codeword c’, which contains the bits of the binary message such that for all , and , is then transmitted over a channel.
We consider now an example with punctured polar codes with length . We choose the length of the codeword c as . For the puncturing of c to c’, the channels with the lowest polarization rank values are , and , and the puncturing vector is
[TABLE]
and . For a coding and , we have 4 information bits . According to the b polarization vector in (7) we have that the vector m
[TABLE]
with the frozen bits set to zero. Given the p puncturing vector in (11), positions 8, 4 and 6 will be set to zero, and the m bits will be reallocated according to (9). Then the vector m at the input in the encoder becomes
[TABLE]
According to Algorithm 2, the message encoding c given by
[TABLE]
must be punctured according to puncturing vector p in (11), bits 8, 4 and 6 will be eliminated. The st element of p is 8, which results in the deletion of the th position of c. The nd element of p is , which requires the elimination of the th position. At last, the rd element of the p is 6, which requires the deletion of the th position, generating vector
[TABLE]
VI Puncturing Technique Analysis
An analysis of the performance for polar codes has been presented in [12] and demonstrates that systematic encoding yields better BER performance than non-systematic coding with the same FER performance for both encoding schemes. However, the method used is quite costly in terms of processing time, since it generates all possible coded message combinations for a given polar code and calculates the Hamming distance between them.
An alternative metric called Polar Spectra has been studied in [8], which has a lower computational cost compared to the method in [12], and is sufficient to indicate the performance of the adopted puncturing technique. This metric is based on the channel polarization tree, the Hamming weight (HW), the complement Hamming weight (CHW) of each branch and the relation between the polarized channels and the rows of the generator matrix G.
In this paper, the spectrum distance (SD) is considered as the criterion to compare puncturing techniques. The spectrum distance for path weight (SDP) is given by [8]
[TABLE]
where is the probability of path weight with bits puncturing. The spectrum distance for the complementary path weight (SDC) is given by [8]
[TABLE]
where . We use SDC as the main metric to evaluate the performance of the proposed and existing puncturing techniques.
The SD of the complementary Hamming weight , where , is the quantity are the levels in the polarization tree. The term describes the total number of branches with a given number of zeros, or alternatively , is the number of zeros of each branch. As an example, for a , we have , one branch with no zero, four branches with 1 zero, six branches with 2 zeros, 4 branches with 3 zeros and one branch with 4 zeros, the .
Given a puncturing, the final metric of the SD is given by where the is updated by removing the branches cut by puncturing, each branch corresponds to a channel, which in turn corresponds to a row (and column) in the generator matrix G. For with , updating and new , always less than the previous value .
In the Table III we compare the proposed technique with CW[6] and RQUP[8]. Note that the proposed technique value got has a higher value than the CW and RQUP techniques.
VII Simulation
In this section, we present simulations of rate-compatible polar codes with puncturing and a system equipped with the SCL decoder, as described for the eMBB 5G scenario, which requires the use of short to moderate block lengths. We measure the BER against the signal-to-noise ratio, defined as the ratio of the bit energy, , and the power spectral density, , in dB. The algorithm for polar codes use the Tal-Vardy method [13].
In the first example, we consider the URLLC scenario with and with the SC decoder. The results in Fig. 2 show that the proposed puncturing technique (PD) outperforms the RQUP and the CW techniques by up to dB in for the same BER performance, and approaches the performance of the mother code (MC) with and .
In the second example, we assess the list decoders using different CRC and with the proposed puncturing technique. Fig. 3 shows the performance of the list decoders with different CRC for systematic polar codes in the URLLC scenario with and . The results show that the performance of the list decoder improves with the increase of candidates in the lists and the size of the CRC.
In the third example, we consider the eMBB scenario with and and a comparison with LDPC codes designed using a Progressive Edge Growth (PEG) technique [16, 17, 18]. Even though the LDPC codes are decoded with the standard sum-product algorithm other decoders such as [19] can also be used. The results in Fig. 4 show that the proposed puncturing technique for polar codes with SC decoder achieves a similar BER performance to LDPC codes, which were decoded with the sum-product algorithm using 40 iterations. The results show that LDPC and Polar codes are comparable in performance.
Future work will consider applications to multiple-antenna systems [20, 21], precoding [22, 23, 24, 25, 26, 27, 28, 29] and iterative detection and decoding [34, 31, 30, 33, 32, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47] techniques.
VIII Conclusion
We have proposed a puncturing method, which is based on the channel polarization index, that can bring a performance improvement in punctured polar codes as compared to existing puncturing methods in the literature. We have then designed rate-compatible polar codes for 5G scenarios using the proposed approach and carried out comparisons with existing puncturing techniques and LDPC codes. The use of the polar spectra as a benchmark for performance comparison has also been shown as a valuable tool to indicate the best puncturing strategy, while requiring a low computational complexity. Simulations have shown that the performance of the proposed puncturing technique for the eMBB 5G scenario using the CA-SCL decoder is quite competitive as compared to existing rate-compatible polar and LDPC codes.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] E. Arikan, “Channel Polarization: A Method for Constructing Capacity-Achieving Codes for Symmetric Binary-Input Memoryless Channels”, IEEE Transactions on Information Theory , vol. 55 no. 7, July 2009.
- 2[2] I. Tal and A. Vardy, “List decoding of polar codes”, IEEE Trans. Inf. Theory , vol. 61, no. 5, pp. 2213–2226, 2015.
- 3[3] V. Bioglio, F. Gabry and I. Land, “Low-Complexity Puncturing and Shortening of Polar Codes”, https://arxiv.org/pdf/1701.06458.pdf , 2017.
- 4[4] A. Osseiran et al., “Scenarios for 5G Mobile and Wireless Communications: The Vision of the METIS Project”, IEEE Communications Magazine , May 2014.
- 5[5] E. Hof, “Sliced Polar Codes”, IEEE Asia Pacific Conference on Circuits and Systems (APCCAS) , 2016.
- 6[6] R. Wang and R. Liu, “A novel puncturing scheme for polar codes”, IEEE Communications Letters , vol. 18, no. 12, pp. 2081-2084, 2014.
- 7[7] V. Miloslavskaya, “Shortened polar codes”, IEEE Transactions on Information Theory , vol. 61, no. 9, pp. 4852-4865, 2015.
- 8[8] K. Niu et al., “Rate-Compatible Punctured Polar Codes: Optimal Construction Based on Polar Spectra”, https://arxiv.org/pdf/1612.01352 , 2016.
