Algebraic Construction of Quasi-cyclic LDPC Codes - Part II: For AWGN and Binary Random and Burst...

10
IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 54, NO. 10, OCTOBER 2006 1765 Transactions Papers Algebraic Construction of Quasi-Cyclic LDPC Codes for the AWGN and Erasure Channels Ying Yu Tai, Student Member, IEEE, Lan Lan, Lingqi Zeng, Shu Lin, Life Fellow, IEEE, and Khaled A. S. Abdel-Ghaffar, Member, IEEE Abstract—This paper is concerned with construction of quasi- cyclic (QC) low-density parity-check (LDPC) codes for three dif- ferent types of channels: the additive white Gaussian noise, the bi- nary random erasure, and the binary burst erasure channels. Two algebraic methods for systematic construction of QC-LDPC codes are presented. Codes constructed perform well over all three types of channels. Index Terms—Erasure burst, erasure correction (EC), Eu- clidean geometry, iterative decoding, low-density parity-check (LDPC) codes, quasi-cyclic (QC) codes. I. INTRODUCTION E VER SINCE the rediscovery of low-density parity-check (LDPC) codes [1] in the late 1990s as a class of Shannon- limit-approaching codes [2], [3], a great deal of research ef- fort has been expended in the design and construction of LDPC codes that perform well with iterative decoding based on be- lief propagation [1], [3], [4]. Based on methods of construc- tion, LDPC codes can be classified into two categories: random- like codes and structured codes. Random-like LDPC codes [3], [5] are constructed by computer search, based on certain de- sign guidelines and required structural properties of their Tanner graphs [6], such as girth, degree distributions of variable and check nodes, and stopping sets [5]–[8]. Structured LDPC codes are constructed based on algebraic and combinatorial tools, such as are given in [9]–[24]. One particularly attractive class of structured LDPC codes for practical applications is the class of quasi-cyclic (QC) LDPC codes [9], [12], [13], [16], [18], [20], [21]. QC-LDPC codes have encoding advantage over other types of LDPC codes. They can be encoded using simple shift-registers in linear time with Paper approved by T.-K. Truong, the Editor for Coding Theory and Tech- niques of the IEEE Communications Society. Manuscript received July 5, 2005; revised December 20, 2005. This work was supported in part by the National Science Foundation under Grants CCR-0117891 and ECS-0121469, in part by NASA under Grant NNG05GD13G, and in part by a grant from Northrop Grumman Space Technology. This paper was presented in part at the 39th Annual Conference on Information Sciences and Systems, Baltimore, MD, March 2005. The authors are with the Department of Electrical and Computer Engineering, University of California at Davis, Davis, CA 95616 USA (e-mail: [email protected] davis.edu; [email protected]; [email protected]; [email protected] davis.edu; [email protected]). Digital Object Identifier 10.1109/TCOMM.2006.881361 linear complexity [25]. Furthermore, well-designed QC-LDPC codes can perform just as well as random-like LDPC codes in terms of bit-error probability, block-error probability, and error floor, collectively [16], [22], [24], [25]. So far, most of the proposed designs and constructions of LDPC codes have been focused on the additive white Gaussian noise (AWGN) channel, with only a few constructions for other types of channels, such as binary erasure, fading, and recording channels. This paper is concerned with algebraic constructions of QC-LDPC codes for three types of channels, the AWGN, bi- nary random erasure, and burst erasure channels. Two methods of code construction are presented. Experimental results show that the constructed codes decoded with iterative decoding per- form very well over all three types of channels. Design of LDPC codes that provide universally good performance across mul- tiple channels was first investigated in [26], and recently in [27]. The rest of the paper is organized as follows. Section II gives an introduction of various types of LDPC codes and some properties of their Tanner graphs that affect their performance with iterative decoding over the AWGN channel, Section III discusses LDPC codes and their decoding for the binary erasure channel (BEC), Section IV gives the mathematical foundations for code construction, Section V presents a class of QC-LDPC codes for both the AWGN channel and BEC, Section VI discusses correction of erasure bursts, Section VII presents a method for constructing QC-LDPC codes that not only are capable of correcting erasure bursts but also perform well over AWGN and binary random erasure channels; and Section VIII concludes the paper. II. LDPC CODES A binary regular LDPC code is defined [1] as the binary null space of a sparse parity-check (PC) matrix over GF(2) with the following structural properties: 1) each row has constant weight ; 2) each column has constant weight ; and 3) no two rows (or two columns) have more than one 1-component in common. Such a PC matrix is said to be -regular, and the code given by the null space of is called a -regular LDPC code. Property (3) is referred to as the row-column (RC) constraint. The RC constraint ensures that the Tanner graph of the code is free of cycles of length four, and the minimum dis- tance of the code is at least [12]. An LDPC code is said to be irregular if its PC matrix has varying column and/or varying 0090-6778/$20.00 © 2006 IEEE

Transcript of Algebraic Construction of Quasi-cyclic LDPC Codes - Part II: For AWGN and Binary Random and Burst...

IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 54, NO. 10, OCTOBER 2006 1765

Transactions Papers

Algebraic Construction of Quasi-Cyclic LDPCCodes for the AWGN and Erasure ChannelsYing Yu Tai, Student Member, IEEE, Lan Lan, Lingqi Zeng, Shu Lin, Life Fellow, IEEE, and

Khaled A. S. Abdel-Ghaffar, Member, IEEE

Abstract—This paper is concerned with construction of quasi-cyclic (QC) low-density parity-check (LDPC) codes for three dif-ferent types of channels: the additive white Gaussian noise, the bi-nary random erasure, and the binary burst erasure channels. Twoalgebraic methods for systematic construction of QC-LDPC codesare presented. Codes constructed perform well over all three typesof channels.

Index Terms—Erasure burst, erasure correction (EC), Eu-clidean geometry, iterative decoding, low-density parity-check(LDPC) codes, quasi-cyclic (QC) codes.

I. INTRODUCTION

EVER SINCE the rediscovery of low-density parity-check(LDPC) codes [1] in the late 1990s as a class of Shannon-

limit-approaching codes [2], [3], a great deal of research ef-fort has been expended in the design and construction of LDPCcodes that perform well with iterative decoding based on be-lief propagation [1], [3], [4]. Based on methods of construc-tion, LDPC codes can be classified into two categories: random-like codes and structured codes. Random-like LDPC codes [3],[5] are constructed by computer search, based on certain de-sign guidelines and required structural properties of their Tannergraphs [6], such as girth, degree distributions of variable andcheck nodes, and stopping sets [5]–[8]. Structured LDPC codesare constructed based on algebraic and combinatorial tools, suchas are given in [9]–[24].

One particularly attractive class of structured LDPC codes forpractical applications is the class of quasi-cyclic (QC) LDPCcodes [9], [12], [13], [16], [18], [20], [21]. QC-LDPC codeshave encoding advantage over other types of LDPC codes. Theycan be encoded using simple shift-registers in linear time with

Paper approved by T.-K. Truong, the Editor for Coding Theory and Tech-niques of the IEEE Communications Society. Manuscript received July 5,2005; revised December 20, 2005. This work was supported in part by theNational Science Foundation under Grants CCR-0117891 and ECS-0121469,in part by NASA under Grant NNG05GD13G, and in part by a grant fromNorthrop Grumman Space Technology. This paper was presented in part atthe 39th Annual Conference on Information Sciences and Systems, Baltimore,MD, March 2005.

The authors are with the Department of Electrical and Computer Engineering,University of California at Davis, Davis, CA 95616 USA (e-mail: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]).

Digital Object Identifier 10.1109/TCOMM.2006.881361

linear complexity [25]. Furthermore, well-designed QC-LDPCcodes can perform just as well as random-like LDPC codes interms of bit-error probability, block-error probability, and errorfloor, collectively [16], [22], [24], [25].

So far, most of the proposed designs and constructions ofLDPC codes have been focused on the additive white Gaussiannoise (AWGN) channel, with only a few constructions for othertypes of channels, such as binary erasure, fading, and recordingchannels. This paper is concerned with algebraic constructionsof QC-LDPC codes for three types of channels, the AWGN, bi-nary random erasure, and burst erasure channels. Two methodsof code construction are presented. Experimental results showthat the constructed codes decoded with iterative decoding per-form very well over all three types of channels. Design of LDPCcodes that provide universally good performance across mul-tiple channels was first investigated in [26], and recently in [27].

The rest of the paper is organized as follows. Section II givesan introduction of various types of LDPC codes and someproperties of their Tanner graphs that affect their performancewith iterative decoding over the AWGN channel, Section IIIdiscusses LDPC codes and their decoding for the binary erasurechannel (BEC), Section IV gives the mathematical foundationsfor code construction, Section V presents a class of QC-LDPCcodes for both the AWGN channel and BEC, Section VIdiscusses correction of erasure bursts, Section VII presents amethod for constructing QC-LDPC codes that not only arecapable of correcting erasure bursts but also perform well overAWGN and binary random erasure channels; and Section VIIIconcludes the paper.

II. LDPC CODES

A binary regular LDPC code is defined [1] as the binary nullspace of a sparse parity-check (PC) matrix over GF(2) withthe following structural properties: 1) each row has constantweight ; 2) each column has constant weight ; and 3) notwo rows (or two columns) have more than one 1-component incommon. Such a PC matrix is said to be -regular, andthe code given by the null space of is called a -regularLDPC code. Property (3) is referred to as the row-column (RC)constraint. The RC constraint ensures that the Tanner graph ofthe code is free of cycles of length four, and the minimum dis-tance of the code is at least [12]. An LDPC code is said tobe irregular if its PC matrix has varying column and/or varying

0090-6778/$20.00 © 2006 IEEE

1766 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 54, NO. 10, OCTOBER 2006

row weights [5], [7]. A QC-LDPC code is given by the nullspace of an array of sparse circulants [12], [13], [16].

The performance of an LDPC code with iterative decodingdepends on a number of structural properties besides its min-imum distance. One such structural property is the girth of thecode, which is defined as the length of the shortest cycles inthe code’s Tanner graph. For a code to perform well with itera-tive decoding in general, its Tanner graph must not contain toomany short cycles. The shortest cycles that affect the code per-formance the most are cycles of length four. Therefore, cycles oflength four must be prevented in code construction. This is thecase in almost every method of constructing LDPC codes thathas been proposed. The RC constraint on the PC matrix of anLDPC code (regular or irregular) automatically rules out cyclesof length four in the code’s Tanner graph. Being free of cyclesof length four ensures that the Tanner graph of an LDPC codehas a girth of at least six. Experimental results show that formany classes of structured LDPC codes, a girth of length six isall that is needed to perform well or close to the Shannon limit[16], [23]–[25]. Experimental results also show that a code withgirth larger than six does not necessarily perform well with it-erative decoding if it has a relatively small minimum distance.In general, an LDPC code with small minimum distance has ahigh error floor.

III. LDPC CODES FOR THE BEC

For transmission over the BEC [28], a transmitted symbol,0 or 1, is either correctly received with probabilityor erased with probability (called the erasure probability).Hence, the output alphabet of the BEC consists of three sym-bols, 0, 1, and ?, where the symbol “?” denotes a transmittedsymbol being erased, called an erasure. Suppose a codeword

from a binary code of length istransmitted and is the correspondingreceived sequence. Let be the set oflocations in with , where thetransmitted symbols are erased, i.e., . Let

. Define . Then is the setof locations in where the transmitted symbols are correctlyreceived, i.e., for . The set actually displays thepattern of erased symbols in . For this reason, we call anerasure pattern. An erasure pattern is said to be correctable(or resolvable) if the value of each erasure in can be uniquelydetermined.

Consider an LDPC code of length given by the nullspace of a sparse matrix . Then a binary -tuple

is a codeword in if and onlyif . Suppose a codeword is transmitted and

is the corresponding received sequence.Let be the erasure pattern contained in

. Let be the submatrix that consists of the columns ofcorresponding to the locations of the erased symbols given in

, and be the submatrix that consists of the columns ofcorresponding to the locations of the correctly received codesymbols in . Let denote the subsequence that consists ofthe erased symbols of , and denote the subsequence thatconsists of the known symbols of at the locations given in .

The symbols in are unknown. For to be a codeword in ,we must have . This constraint can be put in the form

(1)

The right-hand side of (1) is known, and can be computed fromand . On the left-hand side of (1), is unknown. Then

decoding is to solve (1). Any method of solving this equationgives a decoding algorithm. Decoding and design of efficientLDPC codes for correcting random erasures were first investi-gated in [29], and later in [8].

Let be the rows of . For, let . Then a code-

word must satisfy the condition

for ,which is called a check-sum. The code symbol is said tobe checked by the sum (or by ) if , i.e., iscontained in the sum . Then can be determined from othercode bits that are checked by as follows:

(2)

For each erased position in an erasure patternwith , if there exists a row

in that checks only the erased symbol and not any ofthe other erased symbols in , then it follows from (2)that the value of each erased symbol can be determined fromthe correctly received symbols in that are checked by row(i.e., ). Such an erasure pattern is said tobe resolvable in one step (or one iteration). However, there areerasure patterns that are not resolvable in one step, but resolv-able in multiple steps iteratively. Given an erasure pattern ,we first determine the values of those erased symbols that canbe resolved in one step using (2). Then we remove the knownerased symbols from . This results in a new erasure patternof smaller size. Next we determine the values of erased sym-bols in that are resolvable using (2). Removing the knownerased symbols from , we obtain an erasure pattern of sizesmaller than that of . We repeat the above process until eitherall the erased symbols in are resolved, or an erasure pattern

is obtained such that no erasure in can be resolved using(2). In the latter case, some erasures can not be recovered.

The above decoding process is iterative in nature, and can beformulated as an algorithm [8], [29]. To initialize the decodingprocess, we first set and . Then we execute thefollowing steps iteratively.

1) Determine . If is empty, stop decoding, otherwise goto Step 2.

2) Form , , , and .3) Compute .4) Find the rows in such that each contains only a

single 1-component. Determine the erasures in thatare checked by these rows. Determine the values of theseerasures by application of (2). If there is no row in thatcontains only a single 1-component, stop decoding.

TAI et al.: ALGEBRAIC CONSTRUCTION OF QUASI-CYCLIC LDPC CODES 1767

5) Remove the erasures resolved at Step 4 from . Setand go to Step 1.

If decoding stops at Step 1, all the erasures in the erasure patternare resolved and the decoding is successful. If decoding stops

at Step 4, some erasures in can not be recovered.Luby et al. [29] and Di et al. [8] have investigated the

threshold for regular LDPC codes with a given degree-dis-tribution pair (or column and row-weight pair of a

-regular PC matrix) using the above iterative decodingalgorithm. The threshold is a probability associatedwith an ensemble of regular LDPC codes whose Tanner graphshave constant variable-node degree and constant check-nodedegree . The implication of threshold is as follows.Over all BECs with erasure probability smaller than ,information can be reliably transmitted by using a sufficientlylong LDPC code with degree-distribution pair . Reliabletransmission of information is not possible if the erasure prob-ability is larger than the threshold .

The performance of an LDPC code over the BEC is deter-mined by the stopping sets of its Tanner graph [8]. Let bea set of variable nodes in , and be a set of check nodes in

that are adjacent to the nodes in , i.e., each check node inis connected to at least one variable node in . The nodes inare called the neighbors of the nodes in . A set of variablenodes is called a stopping set of if each check node in theneighbor check set of is connected to at least two nodes in

. If an erasure pattern corresponds to a stopping set in theTanner graph of an LDPC code, then a check-sum that checksan erasure in also checks at least one other erasure in . As aresult, no erasure in can be determined with (2) or (1).

A set of variable nodes in may contain many stoppingsets. It is clear that the union of two stopping sets in is alsoa stopping set in , and the union of all the stopping sets in

gives the maximum stopping set of . A set of vari-able nodes in is said to be stopping-set-free (SSF) if it doesnot contain any stopping set. The following theorem [8] charac-terizes the significance of stopping sets for correcting erasures.Suppose an LDPC code is used for correcting erasures usingiterative decoding. Let be a received sequence that containsan erasure pattern . Then, the erasures contained in the max-imum stopping set of cannot be recovered. This theorem saysthat any erasure pattern is recoverable if it is SSF.

Let be a stopping set of minimum size in the Tanner graphof an LDPC code, called a minimum stopping set. If the codesymbols corresponding to the variable nodes in are erased, itfollows from the above theorem that forms an irrecoverableerasure pattern of minimum size. Therefore, for random erasurecorrection (EC) with iterative decoding, it is desired to constructcodes with the largest possible minimum stopping sets in theirTanner graphs. A good LDPC code for EC must have no orvery few small stopping sets. For -regular LDPC codes,it has been proved in [30] that the sizes of minimum stoppingsets of their Tanner graphs with girths four, six, and eight are

, and , respectively. Hence, for iterative decoding ofan LDPC code over the BEC, the most critical cycles in thecode’s Tanner graph are cycles of length four. Therefore, in codeconstruction for the BEC, cycles of length four must be avoidedin the Tanner graph of a code. It is proved in [31] that for a

code with minimum distance , it must contain a stoppingset of size . In fact, [31] proves that the support of anycodeword forms a stopping set. Therefore, in the constructionof a code for EC, we need to keep its minimum distance large.For a regular LDPC code whose PC matrix has column weight

and satisfies the RC constraint, the size of a minimal stoppingset in the code’s Tanner graph is at least .

IV. FIELDS AND EUCLIDEAN GEOMETRIES

Consider the Galois field GF that is an extensionof the ground field GF , where is a power of a prime.Let be a primitive element of GF . Then ,

form all the elements of GFand . For each nonzero element with

, we form a -tuple over GF(2),, whose components correspond to

the nonzero elements of GF , where the th compo-nent and all the other components are equal to 0.This -tuple is referred to as the location vectorof [15], [20]. The location vector of the zero element ofGF is defined as the all-zero -tuple, (0, 0, , 0).Let be a nonzero element in GF , then the location vector

of is the cyclic shift (one place to the right) of thelocation vector of . Form a matrix

over GF(2) with the location vectors ofas rows. Then is a circulant permutation matrix, i.e., is apermutation matrix, but each row of is a cyclic shift of therow above it, and the first row is the cyclic shift of the last row.

Consider the -dimensional Euclidean geometry, EG ,over GF [23], [32]. This geometry consists of points and

lines. A point is simply an -tupleover GF , and the all-zero -tuple is called the origin of thegeometry. A line in EG is either a 1-D subspace of thevector space of all the -tuples over GF or a coset of .A line consists of points. Two points are connected by oneand only one line. If is a point on a line , we say that theline passes through the point . Two lines either do not haveany point in common, or they have one and only one point incommon. If two lines have a common point , we say that theyintersect at . For any point in EG , there are exactly

lines passing through (or intersecting at) .It is known that the field GF as an extension field of

GF is a realization of EG [32]. Then the elementsof GF , , , represent allthe points of EG . Let and be two linearly in-dependent points in EG , represented by two powers of ,respectively. Let be a primitive element of GF . Then, thecollection of points,

, constitutes a line in EG passing through thepoint . Let be a point in EG that is linearly inde-pendent of and . Then the line

and the line intersect at point . For, let

. It can be proved that is also aline in EG [23], [32]. The following theorem is the basisfor the construction of QC-LDPC codes based on the lines ofEG , whose Tanner graphs are free of cycles of length four.

1768 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 54, NO. 10, OCTOBER 2006

Theorem 1: Let be a nonorigin point in EG [oris not the zero element in GF ]. For , with

, form the following two -tuples over GF with thepoints on lines and as components, respectively

(3)

where connects and , connects and , andand are linearly independent. Then these two -tuples can nothave more than one position with identical symbols in GF .

Proof: Suppose there are two positions, and with ,where the two -tuples have identical symbols. Then,

and .These equalities imply that and are linearly dependent.This is a contradiction of the fact that and are two linearlyindependent points.

V. A CLASS OF QC-LDPC CODES FOR THE

AWGN AND BINARY ERASURE CHANNELS

Consider the lines in EG that in-tersect at the point . Among these lines, thereis a line passing through (or connecting) the pointand the origin . Removing this line, we obtain

lines that intersect at point anddo not pass through the origin of EG . Denote these linesby . For , the line consists ofthe points (represented by elements in GF )

, where is a point linearlyindependent of , and furthermore, arelinearly independent points in EG . For ,form the following matrix over GF with thepoints on as the entries of the th row:

...

......

. . ....

(4)

We label the columns of with that cor-respond to the powers of . We readily see that has the fol-lowing structural properties: 1) any two rows differ in every po-sition; 2) any two columns differ in every position; and 3) the

entries in each column form the nonzero elementsof GF . It follows from Theorem 1 that two rows from twodifferent matrices and can have at most one position withidentical symbols (i.e., they differ in at least positions).

For , replacing each entry in by its locationvector, we obtain a matrix over GF(2)which consists of a row of circulant permutation matrices of

size , ,where consists of the location vectors of the entries of theth column of , ,

as rows. Next, we form the following array ofcirculant permutation matrices:

......

.... . .

...

(5)is a matrix over GF(2) with

column and row weights and , respectively. It follows fromthe structural properties of matrices that sat-isfies the RC constraint. Let be the transpose of , i.e.,

(6)

Then is a array of circulantpermutation matrices and is a matrix overGF(2) with column and row weights and , respectively. For

, . For , is larger than . Clearly,also satisfies the RC constraint.

For any pair of integers with and, let be any subarray of .

Then is a matrix over GF(2)with column and row weights and , respectively. Clearly,

satisfies the RC-constraint. The null space ofgives a regular QC-LDPC code , whose Tanner

graph has a girth of at least six. Since satisfies theRC constraint, the minimum distance of is at least .Since consists of an array of permutation matrices,only even number of columns of can be added tozero. This implies that the minimum distance of must beeven. As a result, the minimum distance of is at leastfor even , and for odd . The above construction givesa class of QC-LDPC codes with various lengths, rates, andminimum distances, whose Tanner graph have girth at least six.Since the girth of the Tanner graph of a code in this class is atleast six, the size of a minimal stopping set in the Tanner graphis at least . For a given pair , it is unknown whetherdifferent choices of subarrays of have the same rankand give similar codes. However, for all the choices that wehave made, they all have the same rank and give similar codes.

In the following, we use two examples to illustrate the errorperformances of several QC-LDPC codes constructed based onthe method presented in this section for both the AWGN channeland BEC, using iterative decoding with the maximum numberof iterations set to 100. We assume binary phase-shift keying(BPSK) signaling. For the AWGN channel, each code is de-coded with the sum-product algorithm (SPA) [3], [7], [12], andthe code performance is compared with the Shannon limit. Forthe BEC, each code is decoded with the iterative decoding al-gorithm presented in Section III, and the code performance iscompared with the threshold for a degree-distributionpair of the Tanner graph of the code [8].

Example 1: Based on the 3-D Euclidean geometry EGover GF and using the method presented above, we can

TAI et al.: ALGEBRAIC CONSTRUCTION OF QUASI-CYCLIC LDPC CODES 1769

Fig. 1. Performances of the codes on AWGN channel given in Example 1,where BER and BLER stand for bit-error and block-error rates, respectively.

Fig. 2. Performances of the codes on BEC given in Example 1.

construct an 8 72 array of 511 511 circulant permuta-tion matrices. For the pairs of integers (3,6), (4,16), (4,20), and(4,32), we take the following subarrays from , ,

, , and . These subarrays are1533 3066, 2044 8176, 2044 10 220, and 2044 16 352 ma-trices with column and row weight pairs (3,6), (4,16), (4,20),and (4,32), respectively. The null spaces of these subarrays give(3066,1544), (8176,6162), (10 220,8206), and (16 352,14 338)QC-LDPC codes with rates 0.5036, 0.7537, 0.8029, and 0.8768,respectively. The performances of these codes over the AWGNchannel and BEC are shown in Figs. 1 and 2, respectively. Wesee that they perform very well for both the AWGN channeland BEC. For example, consider the (16 352,14 338) code. Ata bit-error rate (BER) of , the code performs 0.8 dB fromthe Shannon limit over the AWGN channel and 0.01 from thethreshold 0.0966 over the BEC.

Example 2: We use the 4-D Euclidean geometry EGover GF for code construction. Based on this geometry,

Fig. 3. Performances of the codes on AWGN channel given in Example 2.

Fig. 4. Performances of the codes on BEC given in Example 2.

we construct a 4 84 array of 255 255 circulant per-mutation matrices. For three pairs of positive integers (4,8),(4,20), and (4,40), we take the first 8, 20, and 40 columns ofcirculant permutation matrices of to form three subar-rays , , and , respectively.They are 1020 2040, 1020 5100, and 1020 10 200 regularmatrices over GF(2) with column and row weight pairs (4,8),(4,20), and (4,40), respectively. The null spaces of these threematrices give three QC-LDPC codes. They are (2040,1051),(5100,4111), and (10 200,9211) codes with rates 0.5152, 0.806,and 0.903, respectively. The performances of these codes overthe AWGN and binary random erasure channels are shown inFigs. 3 and 4, respectively. We see that they perform well overboth types of channels. For example, consider the (10 200,9211)code. At a BER of , it performs 0.85 dB from the Shannonlimit for the AWGN channel, and only 0.01 from the threshold

for the BEC.

1770 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 54, NO. 10, OCTOBER 2006

VI. LDPC CODES FOR BURST-ERASURE CHANNELS

In Section III, we discussed the BEC, in which erasuresoccur at random locations. However, there are channels inwhich erasures cluster in bursts, such as recording and somefading channels. Such channels are called burst-erasure chan-nels. In this section, we consider designing LDPC codes thatare capable of correcting erasure bursts. Design and analysis ofLDPC codes for erasure-burst correction were earlier investi-gated in [33]–[35].

Let be a nonzero -tuple overGF(2). The first (or the leftmost) 1-component of is called theleading-1 of , and the last (or the rightmost) 1-component ofis called the trailing-1 of . If has only a single 1-component,then the leading-1 and trailing-1 of are the same. A zero spanof is defined as a sequence of consecutive zeros betweentwo 1-components. The zeros to the right of the trailing-1 oftogether with the zeros to the left of leading-1 of also forma zero span, called the end-around zero span. The number ofzeros in a zero span is called the length of the zero span. Givena nonzero binary -tuple , we can determine all its zero spans.A zero span in with the longest length is called a maximumzero span of (not unique). Consider the binary 16-tuple

. It has three zero spans with lengthsthree, six, and four, respectively. The end-around zero span haslength four.

Consider a -regular LDPC code given by the nullspace of an RC constrained PC matrix with constantcolumn weight . Label the columns of from 0 to . For

, there are rows of , each with a “1” in the thcolumn of . For each of these rows, we find its zero spanstarting from the th column to the next 1-component andcompute its length. If the 1-component of a row at the position

(or in the th column of ) is the trailing-1 of the row, wedetermine its end-around zero span. Among the zero spans ofthe rows with a “1” in the th column of , the longest one,denoted , is called the zero-covering span of the column .

Define . This parameter is calledthe zero-covering span of the PC matrix . The next theoremgives the erasure-burst-correction capability of an LDPC codein terms of the zero-covering span of its PC matrix.

Theorem 2: An LDPC code given by the null space of aPC matrix over GF(2) with zero-covering span is capableof correcting any erasure burst of length at least up to .

Proof: Consider an erasure burst of length orshorter, whose first erasure occurs at position with .Since the zero-covering span of the PC matrix is , there ex-ists a row in that checks the erasure at the position and noother erasures in . From (2), the value of the erasure at position

can be uniquely determined. Once the value of the erasure atthe position is determined, the erasure burst is shortened.Let be the new erasure burst. Determine the position, say ,of the first erasure in . Since the length of is less than thezero-covering span , there must exist a row in that checksthe erasure in at the position and no other erasures in .Find this row and determine the value of the erasure in at theposition . This results in another shorter erasure . We repeat

the above correction process until the values of all the erasuresin are determined.

A direct consequence of Theorem 2 is Corollary 1.Corollary 1: For an LDPC code whose PC matrix has a zero-

covering span , no or fewer consecutive variable nodesin its Tanner graph form a stopping set, and hence, everyconsecutive variable nodes form an SSF zone.

The parameter given in Theorem 2 is a lower boundon the erasure-burst-correction capability of an LDPC codewhose PC matrix has a zero-covering span . It follows fromthe proof of Theorem 2 that the iterative decoding algorithmgiven in Section III can be used for decoding erasure bursts.Actually, Theorem 2 is very general, and can be applied to anylinear block codes.

Theorem 2 can be either used to determine the erasure-burst-correction capability of an existing LDPC code or to design newLDPC codes for correcting erasure bursts. To evaluate the actualerasure-burst-correction capability of a code of length , we firstdetermine the zero-covering span of the PC matrix of the code.For , we create a solid erasure burst of lengthstarting at position and apply the iterative decoding algorithmgiven in Section III, called the EC algorithm. If all the erasures inthe solid erasure burst are recovered, we then extend the lengthof the solid erasure burst starting at position to . Werepeat the EC algorithm and check whether all the erasures inthe solid erasure burst of length starting at the position

can be recovered. If decoding is successful, we continue toincrease the length of the solid erasure burst starting at position

and repeat the EC algorithm. Each time, the length of the soliderasure burst starting at position is increased by one. The aboveprocess continues until we obtain a solid erasure burst of length

for which not all the erasures can be recovered. Thenis the longest solid erasure burst starting at position that canbe corrected. Note that if a solid erasure burst of length orshorter is correctable, any erasure burst of length or shorterstarting at position is correctable. Consequently, the actualerasure-burst-correction capability of the code is

.By computer search, we have found the zero-covering spans

of the PC matrices of the codes given in Examples 1 and 2 andtheir actual erasure-burst-correction capabilities using the ECalgorithm of Section III as given in Table I. This table showsthat the codes given in Examples 1 and 2 not only perform wellover the AWGN and binary random erasure channels, but alsohave large erasure-burst-correction capabilities.

In [12], two classes of cyclic finite-geometry LDPC codeswere presented. Even though these codes were constructed forthe AWGN channel, they do have erasure-burst-correction ca-pabilities. For codes constructed based on 2-D Euclidean (orprojective) geometries, their burst-EC capabilities can be easilydetermined. Consider a cyclic EG-LDPC code constructed fromthe 2-D Euclidean geometry EG over GF . Take a line

in EG not passing through the origin, and form its inci-dence vector (a -tuple over GF(2) with componentscorresponding to the nonorigin points of EG ) [12],[32]. Form a matrix over GF(2) with

and its cyclic shifts as rows. Then, the null space ofgives a cyclic EG-LDPC code of length , with

TAI et al.: ALGEBRAIC CONSTRUCTION OF QUASI-CYCLIC LDPC CODES 1771

TABLE IERASURE-BURST-CORRECTION CAPABILITIES OF QC-LDPC CODES GIVEN IN EXAMPLES 1 AND 2

TABLE IIERASURE-BURST-CORRECTION CAPABILITIES OF SOME FINITE-GEOMETRY CYCLIC LDPC CODES [12]

minimum distance at least [12], [32]. Since the incidencevector has 1-components, it has zero spans. Determinethe maximum zero span of . Then the zero-covering spanof is equal to the maximum zero span of . Table IIgives the zero-covering spans and actual erasure-burst-correc-tion capabilities of a list of cyclic EG-LDPC codes. Computingthe zero-covering span of the PC matrix of a cyclic PG-LDPCcode constructed based on the 2-D projective geometry PG[12], [32], can be done in the same manner. The zero-coveringspans of the PC matrices and the actual erasure-burst-correctioncapabilities of some cyclic PG-LDPC codes are also given inTable II.

LDPC codes of lengths between 4000–4550 bits for cor-recting erasure bursts were also given in [33]–[35]. Some ofthem are irregular codes designed based on density evolution,and the other are regular codes taken from known classes,such as MacKay [3], array [10], and finite-geometry codes[12]. Since these codes are different from the codes givenin Tables I and II in lengths and rates (except one EG andone PG code), no fair comparison can be made. It must bepointed out that the codes given in Tables I and II are primarilydesigned for the AWGN and/or binary random erasure chan-nels. Erasure-burst correction is just an additional noise (orinterference)-combating capability of these codes.

VII. QC-LDPC CODES CONSTRUCTED BY DISPERSION

In this section, we present a dispersion method for con-structing QC-LDPC codes for correcting erasure bursts. Thecodes constructed by this method also perform well overthe AWGN and binary random erasure channels. Considera subarray of an array of circu-lant permutation matrices given by (6), with and

. Divide into subarrays

as follows: , where for

(7)

Since satisfies the RC constraint, each subarrayalso satisfies the RC constraint.

From , we form an array of circulant permutationand zero matrices, as shown in (8) at the top of the next page.

is called a dispersion of , and we can readily see thatalso satisfies the RC constraint. Each submatrix in is ei-

ther a circulant permutation matrix or azero matrix. is an

matrix over GF(2) with both column and row weights four.Since each circulant permutation matrix in is followed byfour zero matrices (including the end-aroundcase), the zero span of is at least . Replacing eachsubarray in by its dispersion , we obtainan array of circulant permu-tation and zero matrices, .

is an matrix over GF(2)with column and row weights 4 and , respectively, that sat-isfies the RC constraint and has a zero-covering span of lengthat least bits. is called the dispersion of

. The null space of gives a QC-LDPCcode whose Tanner graph has a girth of at least six. Thecode is capable of correcting any erasure burst of length at leastup to bits.

Example 3: Based on the 2-D Euclidean geometry EGover GF , we construct a 4 84 array of 255 255 cir-culant permutation matrices. Choose and . Takea 4 20 subarray of . Divide into

1772 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 54, NO. 10, OCTOBER 2006

(8)

Fig. 5. Performances of the codes on AWGN channel given in Examples 3 and4.

a row of five 4 4 subarrays, . For ,disperse each into an 8 8 array of circulant permu-tation and zero matrices, as shown in (8). Replacing eachin by its dispersion , we obtain an 8 40 array

of 255 255 circulant permutation and zero ma-trices. The null space of gives a (10 200,8191)QC-LDPC code with rate 0.803. The lower bound on its era-sure-burst-correction capability is 1021. However, by computersearch, we find that the code is capable of correcting any era-sure burst of length 1366 or shorter. The performances of thiscode over the AWGN and binary random erasure channels areshown in Figs. 5 and 6, respectively. We see that the code alsoperforms well over the AWGN channel and BEC.

The above code construction by dispersion can be generalizedby dispersing any subarray of the array givenby (6), with and . The dispersionof results in a array of

circulant permutation and zero matrices.The zero span of is at least .

Example 4: Suppose we choose and . Take a 3 6subarray from constructed from EG .Disperse this subarray into a 6 12 array of255 255 circulant permutation and zero matrices. The nullspace of this dispersed array gives a (3060,1540) QC-LDPC

Fig. 6. Performances of the codes on BEC given in Examples 3 and 4.

code with rate 0.5033. The lower bound on its erasure-burst-cor-rection capability is 766, but its actual erasure-burst-correctioncapability is 1155. The performances of this code over theAWGN channel and BEC are also shown in Figs. 5 and 6.

VIII. CONCLUSION

In this paper, we have presented two algebraic methods forconstructing regular QC-LDPC codes for the AWGN, binaryrandom erasure, and binary burst-erasure channels. The codesconstructed by these methods perform well over these threetypes of channels with iterative decoding.

REFERENCES

[1] R. G. Gallager, “Low density parity-check codes,” IRE Trans. Inf.Theory, vol. IT-8, no. 1, pp. 21–28, Jan. 1962.

[2] D. J. C. MacKay and R. M. Neal, “Near Shannon limit performanceof low density parity-check codes,” Electron. Lett., vol. 32, pp.1645–1646, Aug. 1996.

[3] D. J. C. MacKay, “Good error-correcting codes based on very sparsematrices,” IEEE Trans. Inf. Theory, vol. 45, no. 2, pp. 399–432, Mar.1999.

[4] J. Pearl, Probabilistic Reasoning in Intelligent Systems. San Mateo,CA: Morgan Kaufmann, 1988.

[5] T. J. Richardson, M. A. Shokrollahi, and R. L. Urbanke, “Design ofcapacity-approaching irregular low density parity-check codes,” IEEETrans. Inf. Theory, vol. 47, no. 2, pp. 619–637, Feb. 2001.

[6] R. M. Tanner, “A recursive approach to low complexity codes,” IEEETrans. Inf. Theory, vol. IT-27, no. 6, pp. 533–547, Sep. 1981.

[7] T. Richardson and R. Urbanke, “The capacity of low-densityparity-check codes under message-passing decoding,” IEEE Trans.Inf. Theory, vol. 47, no. 2, pp. 599–618, Feb. 2001.

TAI et al.: ALGEBRAIC CONSTRUCTION OF QUASI-CYCLIC LDPC CODES 1773

[8] C. Di, D. Proietti, I. E. Teletar, T. J. Richardson, and R. L. Urbanke, “Fi-nite-length analysis of low-density parity-check codes on binary era-sure channel,” IEEE Trans. Inf. Theory, vol. 48, no. 6, pp. 1570–1579,Jun. 2002.

[9] R. M. Tanner, “On quasi-cyclic repeat-accumulate codes,” in Proc. 37thAnnu. Allerton Conf. Commun., Control, Comput., Monticello, IL, Sep.1999, pp. 249–259.

[10] J. L. Fan, “Array codes as low-density parity-check codes,” in Proc.2nd Int. Symp. Turbo Codes, Brest, France, Sep. 2000, pp. 545–546.

[11] R. M. Tanner, D. Sridhara, and T. Fuja, “A class of group-structureLDPC codes,” in Proc. ISCTA, Ambleside, U.K., 2001, pp. 365–370.

[12] Y. Kou, S. Lin, and M. Fossorier, “Low density parity-check codesbased on finite geometries: A discovery and new results,” IEEE Trans.Inf. Theory, vol. 47, no. 11, pp. 2711–2736, Nov. 2001.

[13] R. M. Tanner, “Spectral graphs for quasi-cyclic LDPC codes,” in Proc.IEEE Int. Symp. Inf. Theory, Washington, DC, Jun. 2001, p. 226.

[14] S. J. Johnson and S. R. Weller, “Codes for iterative decoding from par-tial geometries,” IEEE Trans. Commun., vol. 52, no. 2, pp. 236–247,Feb. 2003.

[15] I. Djurdjevic, J. Xu, K. Abdel-Ghaffar, and S. Lin, “Construction oflow-density parity-check codes based on Reed-Solomon codes withtwo information symbols,” IEEE Commun. Lett., vol. 7, no. 7, pp.317–319, Jul. 2003.

[16] L. Chen, J. Xu, I. Djurdjevic, and S. Lin, “Near-Shannon-limit quasi-cyclic low-density parity-check codes,” IEEE Trans. Commun., vol. 52,no. 7, pp. 1038–1042, Jul. 2004.

[17] B. Vasic and O. Milenkovic, “Combinatorial construction of lowdensity parity-check codes for iterative decoding,” IEEE Trans. Inf.Theory, vol. 50, no. 6, pp. 1156–1176, Jun. 2004.

[18] H. Tang, J. Xu, Y. Kou, S. Lin, and K. Abdel-Ghaffar, “On algebraicconstruction of Gallager and circulant low density parity-check codes,”IEEE Trans. Inf. Theory, vol. 50, no. 6, pp. 1269–1279, Jun. 2004.

[19] B. Ammar, B. Honary, Y. Kou, J. Xu, and S. Lin, “Construction oflow density parity-check codes based on balanced incomplete blockdesigns,” IEEE Trans. Inf. Theory, vol. 50, no. 6, pp. 1257–1268, Jun.2004.

[20] L. Chen, I. Djurdjevic, J. Xu, S. Lin, and K. Abdel-Ghaffar, “Construc-tion of QC-LDPC codes based on the minimum-weight codewords ofRS codes,” in Proc. IEEE Int. Symp. Inf. Theory, Chicago, IL, Jun.–Jul.2004, p. 239.

[21] M. Fossorier, “Quasi-cyclic low density parity check codes fromcirculant permutation matrices,” IEEE Trans. Inf. Theory, no. 8, pp.1788–1793, Aug. 2004.

[22] L. Chen, L. Lan, I. Djurdjevic, S. Lin, and K. Abdel-Ghaffar, “An alge-braic method for constructing quasi-cyclic LDPC codes,” in Proc. Int.Symp. Inf. Theory Appl., Parma, Italy, Oct. 2004, pp. 535–539.

[23] H. Tang, J. Xu, S. Lin, and K. Abdel-Ghaffar, “Codes on finite geome-tries,” IEEE Trans. Inf. Theory, vol. 51, no. 2, pp. 572–596, Feb. 2005.

[24] J. Xu, L. Chen, L.-Q. Zeng, L. Lan, and S. Lin, “Construction of low-density parity-check codes by superposition,” IEEE Trans. Commun.,vol. 53, no. 2, pp. 243–251, Feb. 2005.

[25] Z.-W. Li, L. Chen, L.-Q. Zeng, S. Lin, and W. Fong, “Efficient en-coding of quasi-cyclic low-density parity-check codes,” IEEE Trans.Commun., vol. 54, no. 1, pp. 71–81, Jan. 2006.

[26] C. Jones, A. Matache, T. Tian, J. Villasenor, and R. D. Wesel, “Theuniversality of LDPC codes on wireless channels,” in Proc. MilCom,Boston, MA, Oct. 2003, pp. 440–445.

[27] F. Peng, W. E. Ryan, and R. D. Wesel, “Surrogate-channel design ofuniversal LDPC codes,” IEEE Commun. Lett., submitted for publica-tion.

[28] P. Elias, “Coding for two noisy channels,” in Proc. Inf. Theory, 3rdLondon Symp., 1955, pp. 61–67.

[29] M. G. Luby, M. Mitzenmacher, M. A. Shokrollahi, and D. A. Spielman,“Efficient erasure correcting codes,” IEEE Trans. Inf. Theory, vol. 47,no. 2, pp. 569–584, Feb. 2001.

[30] A. Orlitsky, R. L. Urbanke, K. Viswanathan, and J. Zhang, “Stoppingsets and the girth of Tanner graph,” in Proc. Int. Symp. Inf. Theory,Lausanne, Switzerland, Jun.–Jul. 2002, p. 2.

[31] T. Tian, C. Jones, J. D. Villasenor, and R. D. Wesel, “Construction ofirregular LDPC codes with low error floors,” in Proc. IEEE Int. Conf.Commun., 2003, pp. 3125–3129.

[32] S. Lin and D. J. Costello, Jr., Error Control Coding: Fundamentals andApplications, 2nd ed. Upper Saddle River, NJ: Prentice-Hall, 2004.

[33] M. Yang and W. E. Ryan, “Performance of efficiently encodable low-density parity-check codes in noise bursts on the EPR4 channel,” IEEETrans. Magn., vol. 40, no. 2, pt. 1, pp. 507–512, Mar. 2004.

[34] F. Peng, M. Yang, and W. E. Ryan, “Design and analysis of eIRA codeson correlated fading channels,” in Proc. IEEE Global Telecommun.Conf., Dallas, TX, Nov.–Dec. 2004, pp. 503–508.

[35] M. Yang and W. E. Ryan, “Design of LDPC codes for two-state fadingchannel models,” in Proc. 5th Int. Symp. Wireless Pers. MultimediaCommun., Honolulu, HI, Oct. 2002, pp. 986–990.

Ying Yu Tai (S’05) received the B.S.M.E. degreefrom National Sun Yat-Sen University, Taiwan,R.O.C., in 1995, and the M.S. degrees in mechan-ical engineering and statistics, both from StanfordUniversity, Stanford, CA, in 2000 and 2002, respec-tively. In 2004, he also received the M.S. degreein electrical engineering from the University ofCalifornia, Davis, where he is currently workingtoward the Ph.D. degree.

His current research areas include low-densityparity-check codes, coded modulation, and their

applications to digital communications systems.

Lan Lan received the B.E. and M.E. degrees fromthe University of Electronic Science and Technologyof China, Chengdu, China, in 1998 and 2001, respec-tively. She is currently working toward the Ph.D.degree in electronic engineering at the University ofCalifornia, Davis.

Her research interests include error-control codingtechniques and their application to digital communi-cations and digital storage systems.

Lingqi Zeng was born in Shanghai, China, in 1979.He received the B.S. degree in electrical engineeringfrom Shanghai Jiaotong University, Shanghai, China,in 2001, and the M.S. degree in 2004, in electrical en-gineering, from the University of California, Davis,where he is currently working toward the Ph.D. de-gree in coding theory.

Shu Lin (S’62–M’65–SM’78–F’80–LF’00) receivedthe B.S.E.E. degree from the National Taiwan Uni-versity, Taipei, Taiwan, R.O.C., in 1959, and the M.S.and Ph.D. degrees in electrical engineering from RiceUniversity, Houston, TX, in 1964 and 1965, respec-tively.

In 1965, he joined the Faculty of the Universityof Hawaii, Honolulu, as an Assistant Professor ofElectrical Engineering. He became an AssociateProfessor in 1969 and a Professor in 1973. In 1986,he joined Texas A&M University, College Station,

as the Irma Runyon Chair Professor of Electrical Engineering. In 1987, hereturned to the University of Hawaii. From 1978 to 1979, he was a VisitingScientist at the IBM Thomas J. Watson Research Center, Yorktown Heights,NY, where he worked on error-control protocols for data communicationsystems. He spent the academic year of 1996–1997 as a Visiting Professorat the Technical University of Munich, Munich, Germany. He retired fromthe University of Hawaii in 1999, and is currently a Visiting Professor atthe University of California, Davis. He has published numerous technicalpapers in IEEE TRANSACTIONS and other refereed journals. He is the authorof the book An Introduction to Error-Correcting Codes (Englewood Cliffs,NJ: Prentice-Hall, 1970). He also co-authored (with D. J. Costello) the bookError-Control Coding: Fundamentals and Applications (Englewood Cliffs,

1774 IEEE TRANSACTIONS ON COMMUNICATIONS, VOL. 54, NO. 10, OCTOBER 2006

NJ: Prentice-Hall, 1st ed., 1982, 2nd ed., 2004), and (with T. Kasami, T.Fujiwara, and M. Fossorier) the book Trellises and Trellis-Based DecodingAlgorithms (Boston, MA: Kluwer, 1998). His current research areas includealgebraic coding theory, coded modulation, error-control systems, and satellitecommunications. He has served as the Principal Investigator on 30 researchgrants.

Dr. Lin is a Member of the IEEE Information Theory Society and the Com-munication Society. He served as the Associate Editor for Algebraic CodingTheory for the IEEE TRANSACTIONS ON INFORMATION THEORY from 1976 to1978, and as the Program Co-Chairman of the IEEE International Symposiumof Information Theory held in Kobe, Japan, in June 1988. He was the Presidentof the IEEE Information Theory Society in 1991. In 1996, he was a recipient ofthe Alexander von Humboldt Research Prize for U.S. Senior Scientists, and arecipient of the IEEE Third Millennium Medal in 2000.

Khaled A. S. Abdel-Ghaffar (M’94) receivedthe B.Sc. degree from Alexandria University,Alexandria, Egypt, in 1980, and the M.S. and Ph.D.degrees from the California Institute of Technology,Pasadena, in 1983 and 1986, respectively, all inelectrical engineering.

In 1988, he joined the University of California,Davis, where he is now a Professor of Electrical andComputer Engineering. He performed research atthe IBM Almaden Research Center, San Jose, CA;Delft University of Technology, The Netherlands;

University of Bergen, Bergen, Norway; and Alexandria University, Egypt. Hismain interest is coding theory.

From 2002 to 2005, Dr. Abdel-Ghaffar served as an Associate Editor forCoding Theory for the IEEE TRANSACTIONS ON INFORMATION THEORY.