Table of Contents
Fetching ...

Optimizing Puncturing Patterns of 5G NR LDPC Codes for Few-Iteration Decoding

Reinhard Wiesmayr, Darja Nonaca, Chris Dick, Christoph Studer

TL;DR

This work shows that one can optimize LDPC code puncturing patterns for few-iteration-constrained decoders using a method it calls swapping of punctured and transmitted blocks (SPAT), and results show improved signal-to-noise ratio performance.

Abstract

Rate-matching of low-density parity-check (LDPC) codes enables a single code description to support a wide range of code lengths and rates. In 5G NR, rate matching is accomplished by extending (lifting) a base code to a desired target length and by puncturing (not transmitting) certain code bits. LDPC codes and rate matching are typically designed for the asymptotic performance limit with an ideal decoder. Practical LDPC decoders, however, carry out tens or fewer message-passing decoding iterations to achieve the target throughput and latency of modern wireless systems. We show that one can optimize LDPC code puncturing patterns for such few-iteration-constrained decoders using a method we call swapping of punctured and transmitted blocks (SPAT). Our simulation results show that SPAT yields from 0.20 dB up to 0.55 dB improved signal-to-noise ratio performance compared to the standard 5G NR LDPC code puncturing pattern for a wide range of code lengths and rates.

Optimizing Puncturing Patterns of 5G NR LDPC Codes for Few-Iteration Decoding

TL;DR

This work shows that one can optimize LDPC code puncturing patterns for few-iteration-constrained decoders using a method it calls swapping of punctured and transmitted blocks (SPAT), and results show improved signal-to-noise ratio performance.

Abstract

Rate-matching of low-density parity-check (LDPC) codes enables a single code description to support a wide range of code lengths and rates. In 5G NR, rate matching is accomplished by extending (lifting) a base code to a desired target length and by puncturing (not transmitting) certain code bits. LDPC codes and rate matching are typically designed for the asymptotic performance limit with an ideal decoder. Practical LDPC decoders, however, carry out tens or fewer message-passing decoding iterations to achieve the target throughput and latency of modern wireless systems. We show that one can optimize LDPC code puncturing patterns for such few-iteration-constrained decoders using a method we call swapping of punctured and transmitted blocks (SPAT). Our simulation results show that SPAT yields from 0.20 dB up to 0.55 dB improved signal-to-noise ratio performance compared to the standard 5G NR LDPC code puncturing pattern for a wide range of code lengths and rates.

Paper Structure

This paper contains 15 sections, 6 equations, 8 figures, 1 algorithm.

Figures (8)

  • Figure 1: Base graph 1 of dimension $46\times68$ (left) and base graph 2 of dimension $42\times52$ (right). White represents zeros in the BG and will be replaced by zero matrices during lifting. The black boxes represent ones in the BG and will be replaced by circularly shifted identity matrices during lifting. The 5G NR standard specifies a set of shift coefficients for each one-entry in the BG.
  • Figure 2: Default 5G NR puncturing pattern for $n=128,~k=64$, working on BG 2 lifted by $L=11$. Each rectangle illustrates a lifted block (i.e., column of the BG). Colors indicate transmitted bits (light blue), punctured bits (red), and filler bits (dark blue) which are always punctured.
  • Figure 3: Punctured (left) and transmitted block (right) arrays in the first iteration of alg:excel when initialized with the 5G NR puncturing pattern shown in fig:default_puncturing. Array elements specify indices of punctured and transmitted blocks, each representing $L$ bits, except for the last element of the punctured block array, which represents the partially punctured block (cf. the 18th block in fig:default_puncturing).
  • Figure 4: BLER vs. SNR of flooding (top) and layered (bottom) decoding of a rate-half code of length $n=128$ with SPA (left) and MPA (right), puncturing pattern optimized for SPA with $N_{\textnormal{F}}=10$ (bottom).
  • Figure 5: BLER vs. SNR of flooding decoding of a rate-3/4 code of length $n=512$ with $N_{\textnormal{F}}=10$ (left) and SNR operation points for varying $N_{\textnormal{F}}$ (right), puncturing pattern optimized for SPA with $N_{\textnormal{F}}=10$ (bottom).
  • ...and 3 more figures