Implementation of decoders for LDPC block codes and LDPC convolutional codes based on the parallel architecture of the GPUS

Pao Yue-kong Library Electronic Theses Database

Implementation of decoders for LDPC block codes and LDPC convolutional codes based on the parallel architecture of the GPUS

 

Author: Zhao, Yue
Title: Implementation of decoders for LDPC block codes and LDPC convolutional codes based on the parallel architecture of the GPUS
Degree: M.Phil.
Year: 2012
Subject: Decoders (Electronics)
Error-correcting codes (Information theory)
Graphics processing units.
Hong Kong Polytechnic University -- Dissertations
Department: Dept. of Electronic and Information Engineering
Pages: xix, 91 p. : ill. ; 30 cm.
Language: English
InnoPac Record: http://library.polyu.edu.hk/record=b2530223
URI: http://theses.lib.polyu.edu.hk/handle/200/6761
Abstract: With the use of belief propagation (BP) decoding algorithm, low-density parity-check (LDPC) codes can achieve near-Shannon limit performance. LDPC codes can accomplish bit error rates (BERs) as low as 10⁻¹⁵ even at a small bit-energy-to-noise-power-spectral-density ratio (Eb/N0). In order to evaluate the error performance of LDPC codes, simulators running on central processing units (CPUs) are commonly used. However, the time taken to evaluate LDPC codes with very good error performance is excessive. For example, assuming 30 iterations are used in the decoder, our simulation results have shown that it takes a modern CPU more than 7 days to arrive at a BER of 10⁻⁶ for a code with length 18360. Implementing the decoder using field programmable gate array (FPGA) is one solution but the cost is high and the development period is very long. Moreover, the FPGA codes are not flexible. In this thesis, efficient LDPC block-code decoders/simulators which run on graphics processing units (GPUs) are proposed. Both standard BP decoding algorithm and layered decoding algorithm are used. By optimizing the data structures of the messages used in the decoding process, both the read and write processes can be performed in a highly parallel manner by the GPUs. In addition, a thread hierarchy avoiding the divergence of the threads is deployed, and it can maximize the efficiency of the parallel execution. With the use of a large number of cores in the GPU to perform the simple computations simultaneously, our GPU-based LDPC decoder can obtain hundreds of times speed-up compared with a CPU-based simulator. We also implement the decoder for the LDPC convolutional codes (LDPCCC). The LDPCCC is derived from a pre-designed quasi-cyclic LDPC block code with good error performance. Compared to the decoder based on the randomly constructed LDPCCC code, the complexity of the proposed LDPCCC decoder is reduced due to the periodicity of the derived LDPCCC and the properties of the quasi-cyclic structure. Moreover, by decoding multiple code frames together, the decoder can always access the global memory in a coalesced manner. The GPU-based LDPCCC decoder displays an excellent error performance and it can achieve up to 200 times speed-up compared with the CPU-based simulator.

Files in this item

Files Size Format
b25302231.pdf 1.974Mb PDF
Copyright Undertaking
As a bona fide Library user, I declare that:
  1. I will abide by the rules and legal ordinances governing copyright regarding the use of the Database.
  2. I will use the Database for the purpose of my research or private study only and not for circulation or further reproduction or any other purpose.
  3. I agree to indemnify and hold the University harmless from and against any loss, damage, cost, liability or expenses arising from copyright infringement or unauthorized usage.
By downloading any item(s) listed above, you acknowledge that you have read and understood the copyright undertaking as stated above, and agree to be bound by all of its terms.

     

Quick Search

Browse

More Information