Polar Coding in NR
![Polar Coding in NR](/content/images/size/w960/2023/03/Polar-Coding-in-NR.jpeg)
Introduction:
Polar coding is a powerful coding technique that has recently been adopted in the 5G New Radio (NR) standard for 5G networks. It is a relatively new coding scheme, which was first introduced by Erdal Arikan in 2008, that has demonstrated exceptional performance in various communication scenarios. In NR, Polar coding is used for control channel signaling and data channel transmission, and it has been selected as one of the candidate channel coding schemes for the Enhanced Mobile Broadband (eMBB) and Ultra-Reliable Low-Latency Communications (URLLC) use cases.
In this article, we will provide an in-depth technical discussion of Polar coding, starting with its basic concepts and properties, and then moving on to its application in NR. We will also discuss some of the key challenges and limitations of Polar coding and its future research directions.
Polar Coding Basics:
Polar coding is a type of channel coding that exploits the polarizing effect of a binary symmetric channel (BSC). The basic idea is to transform a set of independent and identically distributed (i.i.d) bits, which are subject to the BSC, into a new set of bits that are either highly reliable or highly unreliable. The reliable bits are used for transmitting the message, while the unreliable bits are discarded. The polarizing effect of the BSC is achieved by recursively applying a transformation matrix to the input bits, which gradually separates the reliable and unreliable bits.
The transformation matrix used in Polar coding is called the polar transformation matrix, and it is defined as follows:
Gn = G1⊗G2⊗…⊗Gn-1⊗Gn
Where Gn is the n × n polar transformation matrix, G1 = [1 0; 1 1] is the 2 × 2 base matrix, and ⊗ denotes the Kronecker product. The matrix Gn has the property that it transforms n i.i.d bits into n new bits, such that the first half of the new bits are the reliable bits, and the second half are the unreliable bits. The number of reliable bits is denoted by K, which is a function of n, and can be computed as follows:
K = 2m
where m is the number of stages of the polar transformation matrix, and m = log2n. The value of K can be any integer between 1 and n.
The reliable bits are encoded using a systematic polar code, which means that the original message bits are included in the encoded bit stream. The encoding process involves multiplying the message bits with a generator matrix, which is a submatrix of the polar transformation matrix. The generator matrix is constructed by selecting the K rows of the polar transformation matrix that correspond to the reliable bits.
The decoding process of Polar coding is performed using the successive cancellation (SC) algorithm, which is a simple and efficient decoding algorithm that exploits the recursive structure of the polar transformation matrix. The SC algorithm works by iteratively estimating the probability of each bit based on its neighbors, and then using the estimated probabilities to compute the log-likelihood ratios (LLRs) of the input bits. The LLRs are then passed to the next stage of the decoding process, where they are used to estimate the probabilities of the next set of bits. The decoding process continues until all the bits are decoded.
Polar Coding in NR:
Polar coding is a key component of the NR standard, and it is used for both control channel signaling and data channel transmission. In NR, Polar coding is used for the following channels:
Control Channel (CCCH/PDCCH): The control channel is used for signaling control information between the base station (BS) and the user equipment (UE). The control channel is divided into two parts: the Common Control Channel (CCCH) and the Physical Downlink Control Channel (PDCCH). Polar coding is used for both parts of the control channel.
The CCCH is used for initial access, which is the process by which the UE establishes a connection with the BS. The CCCH uses a short Polar code with a block length of 48, which is designed to provide reliable transmission of a small amount of control information.
The PDCCH is used for scheduling and resource allocation of the data channel. The PDCCH uses a long Polar code with a block length of up to 10,240, which is designed to provide reliable transmission of a large amount of control information.
Data Channel (PDSCH): The data channel is used for transmitting user data between the BS and the UE. Polar coding is used for the data channel in the eMBB and URLLC use cases.
The PDSCH uses a hybrid automatic repeat request (HARQ) scheme, which is a retransmission-based error control mechanism. The Polar code is used to encode the original message bits, and the encoded bits are transmitted over the air. The UE then decodes the received bits using the SC algorithm. If the decoding is successful, the UE sends an acknowledgement (ACK) to the BS. If the decoding is unsuccessful, the UE sends a negative acknowledgement (NACK) to the BS, which triggers a retransmission of the encoded bits.
The Polar code used for the data channel in NR is a rate-compatible Polar code, which means that it can support different code rates. The code rate is determined based on the channel conditions and the quality of service (QoS) requirements of the user. The rate-compatible Polar code is constructed by puncturing or shortening the original Polar code to achieve the desired code rate.
Challenges and Limitations of Polar Coding:
Despite its exceptional performance, Polar coding still faces some challenges and limitations that need to be addressed in future research. Some of the key challenges and limitations of Polar coding are as follows:
- Complexity: The encoding and decoding complexity of Polar coding can be high for large block lengths, which can limit its practical applicability in some scenarios. Various techniques have been proposed to reduce the complexity of Polar coding, such as reduced-complexity decoding algorithms and hardware-efficient implementations.
- Finite Block Length Effects: Polar coding performance can be affected by finite block length effects, which occur when the block length is not large enough to achieve the asymptotic performance of the code. Various techniques have been proposed to mitigate finite block length effects, such as using rate-compatible codes and optimizing the design of the code for specific block lengths.
- Dependence on Channel Model: Polar coding performance can be dependent on the channel model used for design and analysis. Various techniques have been proposed to design Polar codes for specific channel models, such as the additive white Gaussian noise (AWGN) channel and the Rayleigh fading channel.
- Dependence on Puncturing Pattern: The rate-compatible Polar code is constructed by puncturing or shortening the original Polar code to achieve the desired code rate. The performance of the rate-compatible Polar code can be sensitive to the puncturing pattern used, which can limit its practical applicability in some scenarios. Various techniques have been proposed to optimize the puncturing pattern for specific channel conditions.
Conclusion:
In conclusion, Polar coding is a powerful coding technique that has been adopted in the NR standard for 5G networks. Polar coding exploits the polarizing effect of a binary symmetric channel to transform i.i.d bits into a new set of reliable and unreliable bits, which are used for transmitting the message. Polar coding is used for both control channel signaling and data channel transmission in NR, and it has demonstrated exceptional performance in various simulation studies and real-world deployments.
The use of Polar coding in NR offers several advantages over traditional coding techniques, such as improved coding gain, reduced latency, and increased flexibility in code rate selection. Polar coding is particularly well-suited for low-latency and high-reliability applications, such as URLLC, due to its low decoding delay and high error-correcting performance.
Despite its many advantages, Polar coding still faces some challenges and limitations that need to be addressed in future research. These challenges include the high complexity of encoding and decoding for large block lengths, the effects of finite block length, the dependence on channel model, and the sensitivity to puncturing patterns.
Overall, Polar coding is a promising coding technique that has already been widely adopted in the 5G NR standard and is expected to play a crucial role in future wireless communication systems. As research continues to advance in this area, we can expect to see further improvements in the performance and practical applicability of Polar coding in various use cases.