Channel Coding NR

25 Aug

In 5G NR two type of coding chosen by 3GPP.

  • LDPC : Low density parity check
  • Polar code 

Why LDPC and Polar code chosen for 5G Network

Although many coding schemes with capacity achieving performance at large block lengths are available, many of those do not show consistent good performance in a wide range of block lengths and code rates as the eMBB scenario demands. But turbo, LDPC and polar codes show promising BLER performance in a wide range of coding rates and code lengths; hence, are being considered for 5G physical layer. Due to the low error probability performance within a 1dB fraction from the the Shannon limit, turbo codes are being used in a variety of applications, such as deep space communications, 3G/4G mobile communication in Universal Mobile  Telecommunications System (UMTS) and LTE standards and Digital Video Broadcasting (DVB). Although it is being used in 3G and 4G, it may not satisfy the performance requirements of eMBB for all the code rates and block lengths as the implementation complexity is too high for higher data rates.

Invention of LDPC

LDPC codes were originally invented and published in 1962.

(5G) new radio (NR) holds promise in fulfilling new communication requirements that enable ubiquitous, low-latency, high-speed, and high-reliability connections among mobile devices. Compared to fourth-generation (4G) long-term evolution (LTE), new error-correcting codes have been introduced in 5G NR for both data and control channels. In this article, the specific low-density parity-check (LDPC) codes and polar codes adopted by the 5G NR standard are described.

Turbo codes, prevalent in most modern cellular devices, are set to be replaced by LDPC codes as the code for forward error correction, NR is a pair of new error-correcting channel codes adopted, respectively, for data channels and control channels. Specifically, LDPC codes replaced turbo codes for data channels, and polar codes replaced tail-biting convolution codes (TBCCs) for control channels.This transition was ushered in mainly because of the high throughput demands for 5G New Radio (NR). The new channel coding solution also needs to support incremental-redundancy hybrid ARQ, and a wide range of block lengths and coding rates, with stringent performance guarantees and minimal description complexity. The purpose of each key component in these codes and the associated operations are explained. The performance and implementation advantages of these new codes are compared with those of 4G LTE.

Why LDPC ?

  • Compared to turbo code decoders, the computations for LDPC codes decompose into a larger number of smaller independent atomic units; hence, greater parallelism can be more effectively achieved in hardware.
  • LDPC codes have already been adopted into other wireless standards including IEEE 802.11, digital video broadcast (DVB), and Advanced Television System Committee (ATSC).
  • The broad requirements of 5G NR demand some innovation in the LDPC design. The need to support IR-hybrid automatic repeat request (HARQ) as well as a wide range of block sizes and code rates demands an adjustable design.
  • LDPC codes can offer higher coding gains than turbo codes and have lower error floors.
  • LDPC codes can simultaneously be computationally more efficient than turbo codes, that is, require fewer operations to achieve the same target block error rate (BLER) at a given energy per symbol (signal-to noise ratio, SNR)
  • Consequently, the throughput of the LDPC decoder increases as the code rate increases.
  • LDPC code shows inferior performance for short block lengths (< 400 bits) and at low code rates (< 1/3) [ which is typical scenario for URLLC and mMTC use cases. In case of TBCC codes, no further improvements have been observed towards 5G new use cases.


 The main advantages of 5G NR LDPC codes compared  to turbo codes used in 4G LTE 


  •         1.Better area throughput efficiency (e.g., measured in Gb/s/mm2) and substantially                 higher achievable peak throughput.
  •         2. reduced decoding complexity and improved decoding latency (especially when                     operating at high code rates) due to higher degree of parallelization.
  •        3. improved performance, with error floors around or below the block error rate                       (BLER) 10¯5 for all code sizes and code rates.

These advantages make NR LDPC codes suitable for the very high throughputs and ultra-reliable low-latencycommunication targeted with 5G, where the targeted peak data rate is 20 Gb/s for downlink and 10 Gb/s for uplink.


Structure of LDPC


Structure of NR LDPC Codes


The NR LDPC coding chain contain

  • code block segmentation,
  • cyclic-redundancy-check (CRC)
  • LDPC encoding
  • Rate matching
  • systematic-bit-priority interleaving

code block segmentation allows very large transport blocks to be split into multiple smaller-sized code blocks that can be efficiently processed by the LDPC encoder/decoder. The CRC bits are then attached for error detection purposes. Combined with the built-in error detection of the LDPC codes through the parity-check (PC) equations, very low probability of undetected errors can be achieved. The rectangular interleaver with number of rows equal to the quadrature amplitude modulation (QAM) order improves performance by making systematic bits more reliable than parity bits for the initial transmission of the code blocks.

NR LDPC codes use a quasi-cyclic structure, where the parity-check matrix (PCM) is defined by a smaller base matrix.Each entry of the base matrix represents either a Z # Z zero matrix or a shifted Z # Z identity matrix, where a cyclic shift (given by a shift coefficient) to the right of each row is applied.

The LDPC codes chosen for the data channel in 5G NR are quasi-cyclic and have a rate-compatible structure that facilitates their use in hybrid automatic-repetition-request (HARQ) protocols

General structure of the base matrix used in the quasi-cyclic LDPC codes selected for the data channel in NR.

To cover the large range of information payloads and rates that need to be supported in 5G NR,
two different base matrices are specified.

Each white square represents a zero in the base matrix and each nonwhite square represents a one.

The first two columns in gray correspond to punctured systematic bits that are actually not transmitted.

The blue (dark gray in print version) part constitutes the kernel of the base matrix, and it defines a high-rate code.

The dual-diagonal structure of the parity subsection of the kernel enables efficient encoding. Transmission at lower code rates is achieved by adding additional parity bits,

The base matrix #1, which is optimized for high rates and long block lengths, supports LDPC codes of a nominal rate between 1/3 and 8/9. This matrix is of dimension 46 × 68 and has 22 systematic columns. Together with a lift factor of 384, this yields a maximum information payload of k = 8448 bits (including CRC).

The base matrix #2 is optimized for shorter block lengths and smaller rates. It enables transmissions at a nominal rate between 1/5 and 2/3, it is of dimension 42 × 52, and it has 10 systematic columns.
This implies that the maximum information payload is k = 3840.


Polar Code 

Polar codes, introduced by Erdal Arikan in 2009 , are the first class of linear block codes that provably achieve the capacity of memoryless symmetric  (Shannon) capacity of a binary input discrete memoryless channel using a low-complexity decoder, particularly, a successive cancellation (SC) decoder. The main idea of polar coding  is to transform a pair of identical binary-input channels into two distinct channels of different qualities: one better and one worse than the original binary-input channel.

Polar code is a class of linear block codes based on the concept of Channel polarization. Explicit code construction and simple decoding schemes with modest complexity and memory requirements renders polar code appealing for many 5G NR applications.

Polar codes with effortless methods of puncturing (variable code rate) and code shortening (variable code length) can achieve high throughput and BER performance better.

At first, in October 2016 a Chinese firm Huawei used Polar codes as channel coding method in 5G field trials and achieved downlink speed of 27Gbps.

In November 2016, 3GPP standardized polar code as dominant coding for control channel functions in 5G eMBB scenario in RAN 86 and 87 meetings.

Turbo code is no more in the race due to presence of error floor which make it unsuitable for reliable communication.High complexity iterative decoding algorithms result in low throughput and high latency. Also, the poor performance at low code rates for shorter block lengths make turbo code unfit for 5G NR.

Polar Code is considered as promising contender for the 5G URLLC and mMTC use cases,It offers excellent performance with variety in code rates and code lengths through simple puncturing and code shortening mechanisms respectively

Polar codes can support 99.999% reliability which is mandatory for  the ultra-high reliability requirements of 5G applications.

Use of simple encoding and low complexity SC-based decoding algorithms, lowers terminal power consumption in polar codes (20 times lower than turbo code for same complexity).

Polar code has lower SNR requirements than the other codes for equivalent error rate and hence, provides higher coding gain and increased spectral efficiency.

Framework of Polar Code in 5G Trial System

The following figure is shown for the framework of encoding and decoding using Polar code. At the transmitter, it will use Polar code as channel coding scheme. Same as in Turbo coding module, function blocks such as segmentation of Transmission Block (TB) into multiple Code Blocks (CBs), rate matching (RM) etc. are also introduced when using Polar code at the transmitter. At the receiver side, correspondingly, de-RM is firstly implemented, followed by decoding CB blocks and concatenating CB blocks into one TB block. Different from Turbo decoding, Polar decoding uses a specific decoding scheme, SCL to decode each CB block. For the encoding and decoding framework of Turbo.

  NR polar coding chain



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: