This thesis investigates the acceleration of Low-Density Parity-Check (LDPC) decoding for 5G New Radio (5G NR) communication systems using NVIDIA Graphics Processing Units (GPUs) and the NVIDIA Sionna simulation framework. LDPC codes are widely used in modern wireless communication systems, including 5G NR, because of their strong error-correction capabilities. However, the decoding process is computationally intensive since it relies on iterative algorithms that require multiple rounds of calculations before a final decoding decision can be made. As communication systems continue to demand higher data rates and lower latency, improving the efficiency of LDPC decoding has become increasingly important. A complete LDPC-based communication system was implemented using Sionna. The system included Cyclic Redundancy Check (CRC) encoding, LDPC encoding, modulation, transmission through an Additive White Gaussian Noise (AWGN) channel, demodulation, LDPC decoding, and CRC decoding. Three LDPC decoding algorithms were evaluated: Sum-Product Algorithm (SPA), Min-Sum Algorithm (MSA), and Offset Min-Sum Algorithm (OMSA). The study focused on measuring decoding performance on NVIDIA GPUs and investigating optimization techniques that could reduce LDPC decoding execution time while maintaining reliable decoding performance. Two optimization techniques were implemented and evaluated: CRC-based early termination and Accelerated Linear Algebra (XLA) graph compilation. Early termination allowed the LDPC decoder to stop before reaching the maximum number of decoding iterations. XLA was used to improve the efficiency of the computations executed during LDPC decoding. The performance of the optimized implementations was compared with a baseline implementation across different signal-to-noise ratio (SNR) values. The results showed that both optimization techniques reduced decoding execution time, while maintaining reliable Block Error Rate (BLER) performance compared to the baseline scheme.
This thesis investigates the acceleration of Low-Density Parity-Check (LDPC) decoding for 5G New Radio (5G NR) communication systems using NVIDIA Graphics Processing Units (GPUs) and the NVIDIA Sionna simulation framework. LDPC codes are widely used in modern wireless communication systems, including 5G NR, because of their strong error-correction capabilities. However, the decoding process is computationally intensive since it relies on iterative algorithms that require multiple rounds of calculations before a final decoding decision can be made. As communication systems continue to demand higher data rates and lower latency, improving the efficiency of LDPC decoding has become increasingly important. A complete LDPC-based communication system was implemented using Sionna. The system included Cyclic Redundancy Check (CRC) encoding, LDPC encoding, modulation, transmission through an Additive White Gaussian Noise (AWGN) channel, demodulation, LDPC decoding, and CRC decoding. Three LDPC decoding algorithms were evaluated: Sum-Product Algorithm (SPA), Min-Sum Algorithm (MSA), and Offset Min-Sum Algorithm (OMSA). The study focused on measuring decoding performance on NVIDIA GPUs and investigating optimization techniques that could reduce LDPC decoding execution time while maintaining reliable decoding performance. Two optimization techniques were implemented and evaluated: CRC-based early termination and Accelerated Linear Algebra (XLA) graph compilation. Early termination allowed the LDPC decoder to stop before reaching the maximum number of decoding iterations. XLA was used to improve the efficiency of the computations executed during LDPC decoding. The performance of the optimized implementations was compared with a baseline implementation across different signal-to-noise ratio (SNR) values. The results showed that both optimization techniques reduced decoding execution time, while maintaining reliable Block Error Rate (BLER) performance compared to the baseline scheme.
Low-Density Parity-Check (LDPC) codes are linear error-correcting codes used to establish reliable communication between units on a noisy transmission channel in mobile telecommunications. LDPC algorithms detect and recover altered or corrupted message bits using sparse parity-check matrices in order to decipher messages correctly. LDPC codes have been shown to be fitting coding schemes for the fifth generation (5G) New Radio (NR), according to the third generation partnership project (3GPP). TietoEvry, a consultant in telecom, has discovered that optimizations of LDPC decoding algorithms can be achieved/obtained with the use of a parallel computing platform called Compute Unified Device Architecture (CUDA), developed by NVIDIA. This platform utilizes the capabilities of a graphics processing unit (GPU) rather than a central processing unit (CPU), which in turn provides parallel computing. An optimized version of an LDPC decoding algorithm, the Min-Sum Algorithm (MSA), is implemented in CUDA and in C++ for comparison in terms of CPU execution time, to explore the capabilities that CUDA offers. The testing is done with a set of 12 sparse parity-check matrices and input-channel messages with different sizes. As a result, the CUDA implementation executes approximately 55% faster than a standard, unoptimized C++ implementation.
Over the last ten years, there has been an incremental growth of mobile network data traffic. The evolution leading to the development of 5G stands as a testament to the increased demands for high speed networks. Channel coding plays a pivotal role in 5G networks, making it possible to recover messages from errors introduced when sent through the network. Channel decoding is however a time consuming task for a receiver, and making optimization to this process could therefore have a significant impact on receiver processing time. Low-Density Parity-Check (LDPC) codes are one of the channel coding schemes used in the 5G standard. These codes could benefit from parallel processing, making Graphics Processing Units (GPUs) with their parallel computation abilities a possible platform for effective LDPC decoding. In this thesis, our goal is to evaluate a GPU as a platform for 5G LDPC decoding. The LDPC codes adhering to the 5G standard belong to the Quasi-Cyclic LDPC (QC-LDPC) subclass. Optimizations targeting this subclass, as well as other optimization techniques, are implemented in our thesis project to promote fast execution times. A GPU-based decoder is evaluated against a Central Processing Unit (CPU)-based decoder, written with Compute Unified Device Architecture (CUDA) and C++ respectively. The functionally equivalent decoders implement the layered offset Min-Sum Algorithm (MSA) with early termination to decode messages. Execution time for the decoders were measured while varying message size, Signal-to-Noise Ratio (SNR) and maximum iterations. Additionaly, we evaluated the decoders with and without including early termination, and also evaluated the GPU-decoder when it was integrated into a MATLAB 5G channel simulator used by Tietoevry. The results from the experiments showed that the GPU-based decoder experienced up to 4.3 times faster execution than the CPU-based decoder for message sizes ranging from 3000-12000 bits. The GPU-based decoder however experienced a higher baseline execution time, making the CPU-based decoder faster for smaller message sizes. It was also concluded that the benefit of including early termination in the decoder generally outweighs the cost of additional processing time.
Low-Density Parity-Check (LDPC) codes are used for channel coding in the 5G NR standard, where efficient decoding is essential for meeting the low-latency demands of modern wireless communication. As data traffic continues to grow, the computational cost of LDPC decoding becomes an increasingly important factor in system performance. In this thesis we investigate how the decoding time of LDPC decoding algorithms can be reduced through code optimization, without affecting decoding accuracy. Starting from an existing MATLAB codebase provided by Tieto, four algorithms were optimized: the Sum-Product Algorithm (SPA), the Min-Sum Algorithm (MSA), and their layered variants (LSPA and LMSA). Optimizations were applied in stages: code restructuring to eliminate redundant computations, vectorization to replace sequential loops with array operations, and early termination to allow the decoder to stop once a valid codeword is found. Each stage was evaluated against the original baseline by comparing decoding time and Block Error Rate (BLER) performance across a range of signal-to-noise conditions. The results show decoding time reductions of approximately 80 % for the SPA and 70 % for the MSA through code optimization alone. For the layered variants, the combined effect of optimization and vectorization reduced decoding time by approximately 85 % for the LSPA and 89 % for the LMSA. With early termination enabled, reductions of up to 96 % and 99 % were achieved for the LSPA and LMSA respectively. BLER performance remained consistent across all versions.
Modern 5G New Radio (NR) systems demand high data rates, low delays, and consistent reliability, particularly in Cloud-Based Radio Access Network (C-RAN) where standard hardware handles signal processing. To meet these requirements, 5G NR uses Low-Density Parity-Check (LDPC) codes for channel coding. Although LDPC codes provide robust error correction, decoding them is computationally intensive. Consequently, achieving efficient LDPC software decoding is a significant obstacle in creating high-performing and adaptable 5G systems. Previous research has shown that performing Quasi-Cyclic Low-Density Parity-Check (QC-LDPC) decoding in parallel on Graphics Processing Units (GPUs) using proprietary tools like CUDA can yield much higher performance than sequential Central Processing Unit (CPU) approaches. However, relying on such solutions can result in vendor lock-in and reduce portability across hardware platforms. This thesis investigates whether SYCL, a hardware-agnostic parallel programming framework based on C++, can provide efficient QC-LDPC decoding suitable for 5G NR C-RAN environments. This work introduces a QC-LDPC decoder implemented in SYCL that utilizes the Layered Offset Min-Sum algorithm. Its performance is evaluated against a comparable sequential C++ version and a CUDA-based GPU implementation. The experiments employ simulated 5G NR data, varying message sizes, base graph configurations, and channel conditions. The findings indicate that SYCL enables the code to operate on both CPUs and GPUs, though its effectiveness depends on the underlying hardware and specific workloads. On CPUs, SYCL does not surpass the sequential approach due to additional runtime overhead. On GPUs, SYCL shows advantages in the most computationally intensive decoding scenarios but still lags behind native CUDA implementations. These out comes highlight key trade-offs among performance, portability, and reliance on specific vendors when selecting programming models for QC-LDPC decoding in 5G systems.
This thesis presents a study on implementing a low-density parity-check (LDPC) decoder on a graphics processing unit (GPU) for 5G New Radio (NR). The proposed modifications include distributed execution configuration, compressed parity-check matrices (PCM) and message passing matrices to save memory space and applying the optimal iteration limit to the decoder. The performance of the LDPC decoder is evaluated using various testing cases with different algorithms, code rates and transport block sizes. The results show that the proposed decoder has more than 5× decoding speedup improvement on the short codes and more than 20× decoding speedup improvement on the long codes, while maintaining the error-correction performance. The optimal iteration limit is found to depend on the specific code rate and transport block size. The layered scheduling is a viable option on short codes over noisy channels.
5G technology new radios (5G NR) require high-speed decoders that operate on highly irregular low-density parity-check (LDPC) codes.LDPC decoders have gained significant attention due to their excellent error correction performance.This study evaluates on different algorithms and scheduling techniques used for LDPC decoders.The analysis highlights that Min-Sum-based approaches can reduce the computational complexity compared to the basic sum-product algorithm, while the normalized and extended Min-Sum algorithms provide a better trade-off owing to their accurate value assumptions.Furthermore, different scheduling methods are implied for MS to improve speed and reduce latency.This study provides a comparative analysis of the algorithms and architectures that yield high throughputs without compromising performance efficiency.The LNMS algorithm with a data-level rescheduling technique resolves data dependency issues.This resolves the complexity of CN and VN and improves the throughput, making it suitable for 5G NR applications.The decoded throughput achieved with this scheduling is 7.0 Gbps.This throughput is achieved by maintaining the standard parameters and worst case parameters, such as four/eight iterations, BG1, and a code rate of 0.8/0.5.The evaluated architectures are implemented on Field Programmable Gate Array (FPGA) devices.This study aids in selecting the optimal architecture and scheduling techniques for LDPC decoders by considering various performance standards to deploy wireless networks in 5G and beyond.