In this paper, we show that over the binary erasure channel, Quasi-Cyclic LDPC codes can efficiently accommodate the hybrid iterative/ML decoding. We demonstrate that the quasicyclic structure of the parity-check matrix can be advantageously used in order to significantly reduce the complexity of the ML decoding. This is achieved by a simple row/column permutation that transforms a QC matrix into a pseudo-band form. Based on this approach, we propose a class of QC-LDPC codes with almost ideal error correction performance under the ML decoding, while the required number of row/symbol operations scales as k √ k, where k is the number of source symbols.
I. PROBLEM POSITION AND RELATED WORKSIn modern communication systems, data is often transmitted as independent packets. These packets can be subject to losses (erasures) caused by bad channel conditions, intermittent connectivity, congested routers, or failures. If solutions based on the retransmission of lost packets are possible (ARQ, Automatic Repeat Requests), they are not always suitable (e.g. broadcasting), nor possible (no return link, e.g. satellite communications). In such cases Forward Error Correction (FEC) schemes represent the foremost alternative. These schemes rely on erasure codes operating either at the transport or the application layer of the communication system, which are able to recover lost data thanks to the transmission of redundant (repair) packets.In the family of error-correcting codes, a prominent role is played by Low-Density Parity-Check (LDPC) codes. They feature a linear complexity iterative (IT) decoding, and can be optimized for a broad class of channels, with asymptotically performance close to the theoretical Shannon limit. Although iterative and maximum likelihood (ML) are equivalent for cycle-free codes, for a given finite code (with cycles) the gap between their performance can be significant. Hence, ML decoding has been recently considered in order to improve the correction capacity of LDPC codes over the binary erasure channel (BEC) for short to moderate code-length. This comes at a cost in the decoding complexity; however, efficient ML decoding algorithms with reduced complexity have been proposed over the last few years [1].Before discussing the complexity of the ML decoding, let us first consider the complexity of the encoding process. Encoding a systematic LDPC code is equivalent to solving a linear system H p P = H s S, where H = (H s , H p ) is the paritycheck matrix of the code, and S and P denote respectively This work was supported by the French ANR grant No 2006 TCOM 019 (CAPRI-FEC project).the sequences of source and parity bits. This can be done by Gaussian elimination (GE), whose complexity 1 , expressed as the number of row operations 2 , is expected to scale as k 2 , where k denotes the number of source bits. However, it has been shown in [9] that the GE can take advantage of the sparseness of the parity check matrix, and it can be efficiently performed in O((gk) 2 ) row/symbol operations, where g is called the...