design considerations leading to the development of good π-rotation ldpc codes

3
IEEE COMMUNICATIONS LETTERS, VOL. 9, NO. 5, MAY 2005 447 Design Considerations Leading to the Development of Good π -Rotation LDPC Codes Rich Echard, Member, IEEE, and Shih-Chun Chang, Senior Member, IEEE Abstract— In this letter we present two theoretical results that lead to the development of good π-rotation LDPC codes. The first theorem derives bounds on the weight of the parity vector when the weight of the information vector is two. The second theorem establishes the expected number of short-loops in the parity check matrix. Several performance examples are given. Index Terms— Lattice, LDPC codes, Manhattan metric. I. I NTRODUCTION T HE π-rotation LDPC codes were introduced in [1] as a class of deterministic LDPC codes with easy description, simple circuitry and superb performance [2], [3], [4]. The π-rotation pattern traces back to the semi-random matrix introduced in [5] and similar to the ‘RA turbo-codes’ of [6]. In this letter we discuss two theorems that play an essential role in the development of good π-rotation LDPC codes. The first theorem derives the bounds on the weight of the parity vector when the information vector has exactly two non- zero elements. The second theorem establishes the expected number of short-loops (girth-4) in the parity-check matrix. II. DESCRIPTION The π-rotation LDPC code of rate 1 2 is created from the parity check matrix of (1). H = 110 0 011 . . . 11 0 01 π A π B π C π D π B π C π D π A π C π D π A π B π D π A π B π C (1) Here, H =[H p | H d is composed of two sub-matrices. The sub-matrix on the right-hand side of H is composed of rotated versions of a single permutation. We define the permutation vector with the triplet [ m, a, b ] as shown in the appendix. A. The Weight-Two Distance Representation To facilitate our study we diverge for the moment from the fully deterministic form discussed above and consider the more general permutation sub-matrices. Thus we consider a general H d matrix as a q × t array of arbitrary m × m permutation matrices. We can then represent each permutation Manuscript received September 16, 2004. The associate editor coordinating the review of this letter and approving it for publication was Prof. Marc Fossorier. Rich Echard is with the Naval Research Laboratory, Washington, DC (e- mail: [email protected]). Shih-Chun Chang is with the Department of Electrical and Computer En- gineering, George Mason University, Fairfax, VA (e-mail: [email protected]). Digital Object Identifier 10.1109/LCOMM.2005.05026. g h f e a b c d m = 5 t = 4 q = 4 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 Fig. 1. In (a) we show an H d sub-matrix composed of a 4 x 4 array of permutation matrices described with 16 row vectors of length m. The row vectors are partitioned as column vectors in (b). The weight of the parity vector associated with the information vector of weight-2 as indicated is given by the Manhattan Metric, d 2 = |a e| + |b f | + |c g| + |d h|. This is the d 2 distance between the lattice points, (a, b, c, d) and (e,f,g,h). matrix as a row vector of m elements, each element taken from the set of integers 1 to m. For example, Fig. 1(a) is an H d matrix presented as 16 row vectors where q = t =4. Each column of H d can be treated as a point in a q-dimensional lattice. It is easy to show [7] that the weight of the parity vector, d 2 , associated with a weight-two information vector can be ob- tained as the Manhattan metric [8] between the corresponding lattice points. An example is shown in Fig. 1(b) with m = 5 where a, ..., h represent integers from the set 1 to 5. B. Distance Bound The entire space occupied by all q-tuples with elements taken from a finite set of size m is m q . Around any point (called a center-point) in a q-dimensional lattice, we define the volume, written V q (r), as the number of lattice points that are located a distance less than or equal to the radius, r from the center-point. If we require that the minimum distance between any two points in the lattice is d, then the lattice must 1 reserve a volume around each point with radius d 2 . Thus we have mt columns (or center points in the lattice) that must fit within the m q total lattice volume. Likewise, the lower bound is obtained by considering mt 1 lattice points within a space of m q with minimum separation d. If the mt 1 spheres of radius d do not completely cover the space, then an additional point is allowed while maintaining the minimum distance d. 1 Ignoring edge effects 1089-7798/05$20.00 c 2005 IEEE

Upload: s-c

Post on 07-Nov-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

IEEE COMMUNICATIONS LETTERS, VOL. 9, NO. 5, MAY 2005 447

Design Considerations Leading to theDevelopment of Good π-Rotation LDPC Codes

Rich Echard, Member, IEEE, and Shih-Chun Chang, Senior Member, IEEE

Abstract— In this letter we present two theoretical results thatlead to the development of good π-rotation LDPC codes. Thefirst theorem derives bounds on the weight of the parity vectorwhen the weight of the information vector is two. The secondtheorem establishes the expected number of short-loops in theparity check matrix. Several performance examples are given.

Index Terms— Lattice, LDPC codes, Manhattan metric.

I. INTRODUCTION

THE π-rotation LDPC codes were introduced in [1] as aclass of deterministic LDPC codes with easy description,

simple circuitry and superb performance [2], [3], [4]. Theπ-rotation pattern traces back to the semi-random matrixintroduced in [5] and similar to the ‘RA turbo-codes’ of [6].In this letter we discuss two theorems that play an essentialrole in the development of good π-rotation LDPC codes.The first theorem derives the bounds on the weight of theparity vector when the information vector has exactly two non-zero elements. The second theorem establishes the expectednumber of short-loops (girth-4) in the parity-check matrix.

II. DESCRIPTION

The π-rotation LDPC code of rate 12 is created from the

parity check matrix of (1).

H =

⎡⎢⎢⎢⎢⎢⎣

1 1 0 00 1 1

...1 1

0 0 1

∣∣∣∣∣∣∣∣∣∣∣

πA πB πC πD

πB πC πD πA

πC πD πA πB

πD πA πB πC

⎤⎥⎥⎥⎥⎥⎦ (1)

Here, H = [Hp| Hd] is composed of two sub-matrices. Thesub-matrix on the right-hand side of H is composed of rotatedversions of a single permutation. We define the permutationvector with the triplet [ m, a, b ] as shown in the appendix.

A. The Weight-Two Distance Representation

To facilitate our study we diverge for the moment fromthe fully deterministic form discussed above and considerthe more general permutation sub-matrices. Thus we considera general Hd matrix as a q × t array of arbitrary m × mpermutation matrices. We can then represent each permutation

Manuscript received September 16, 2004. The associate editor coordinatingthe review of this letter and approving it for publication was Prof. MarcFossorier.

Rich Echard is with the Naval Research Laboratory, Washington, DC (e-mail: [email protected]).

Shih-Chun Chang is with the Department of Electrical and Computer En-gineering, George Mason University, Fairfax, VA (e-mail: [email protected]).

Digital Object Identifier 10.1109/LCOMM.2005.05026.

gh

fea

bcd

m = 5

t = 4

q = 4

0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 01

Fig. 1. In (a) we show an Hd sub-matrix composed of a 4 x 4 array ofpermutation matrices described with 16 row vectors of length m. The rowvectors are partitioned as column vectors in (b). The weight of the parityvector associated with the information vector of weight-2 as indicated is givenby the Manhattan Metric, d2 = |a − e| + |b − f | + |c − g| + |d − h|. Thisis the d2 distance between the lattice points, (a, b, c, d) and (e, f, g, h).

matrix as a row vector of m elements, each element taken fromthe set of integers 1 to m. For example, Fig. 1(a) is an Hd

matrix presented as 16 row vectors where q = t = 4. Eachcolumn of Hd can be treated as a point in a q-dimensionallattice.

It is easy to show [7] that the weight of the parity vector, d2,associated with a weight-two information vector can be ob-tained as the Manhattan metric [8] between the correspondinglattice points. An example is shown in Fig. 1(b) with m = 5where a, ..., h represent integers from the set 1 to 5.

B. Distance Bound

The entire space occupied by all q-tuples with elementstaken from a finite set of size m is mq. Around any point(called a center-point) in a q-dimensional lattice, we define thevolume, written Vq(r), as the number of lattice points that arelocated a distance less than or equal to the radius, r from thecenter-point. If we require that the minimum distance betweenany two points in the lattice is d, then the lattice must1 reservea volume around each point with radius d

2 . Thus we have mtcolumns (or center points in the lattice) that must fit within themq total lattice volume. Likewise, the lower bound is obtainedby considering mt−1 lattice points within a space of mq withminimum separation d. If the mt − 1 spheres of radius d donot completely cover the space, then an additional point isallowed while maintaining the minimum distance d.

1Ignoring edge effects

1089-7798/05$20.00 c© 2005 IEEE

448 IEEE COMMUNICATIONS LETTERS, VOL. 9, NO. 5, MAY 2005

III. THEOREM I

The minimum weight-two distance, d∗2, is bounded by

Vq(d∗22

) ≤ mq−1

t≤ Vq(d∗2) (2)

A. Discussion

We note that Vq(0) = 1. For a one-dimensional space thevolume is simply the number of points less than or equal toa distance x from the origin and is given by V1(x) = 2x + 1.Given a volume Vq−1(x), we find the volume Vq(x) by notingthat there are exactly 2

∑x−1j=0 Vq−1(j) additional lattice points

in Vq(x). Thus,

Vq(x) = Vq−1(x) + 2x−1∑j=0

Vq−1(j) (3)

which leads to the following recursive relation:

Vq(x) − Vq(x − 1) = Vq−1(x) + Vq−1(x − 1) (4)

For example, the volume polynomials for 2, 3 and 4 dimen-sions are given by the following:

V2(x) = 2x2 + 2x + 1

V3(x) = 4x3+6x2+8x3 + 1

V4(x) = 2x4+4x3+10x2+8x3 + 1

IV. CHOOSING GOOD PERMUTATIONS

Based on extensive trials we have found that the d2 distanceis the critical parameter for the (deterministic) π-rotationdesign. In addition, for short codes, the d4 distance2 alsoplays a significant role in determining the minimum distanceof the code. In [7] we present an efficient method to searchfor permutations that provide large minimum d2 and d4. Thefollowing table and performance curves provide examples ofπ-rotation permutation designs based on the distance charac-teristics described in this letter.

Lower d∗2 Observed Observedm a b bound min d2 min d4

15 6 4 6 7 531 1 20 10 10 863 1 27 17 15 10

126 18 119 29 16 16

V. THE EXPECTED NUMBER OF SHORT-LOOPS

In this section we consider the structure of the Hd matrixfrom a different point of view. Our interest now is patternswithin the matrix that we call cycles or loops. In this sectionwe provide the analysis to determine the number of 4-cycle(short-loops) in the Hd matrix.

We begin by considering the construction of a quad matrixconsisting of four permutation matrices arranged two by two.

2d4 is the weight of the parity-check vector when the weight of theinformation vector is 4.

0 1 2 3 4 5 6 710

-10

10-8

10-6

10-4

10-2

100

Rate 1/2 Classic π-Rotation Codes

Eb/No (dB)

Bit E

rror R

ate

[15, 6, 4] (n = 120) [31, 1, 20] (n = 248) [63, 1, 27] (n = 504) [126, 18, 119] (n = 1008)

Fig. 2. The performance curves for the π-rotation LDPC codes as shown inthe table.

The resulting square matrix has exactly two ‘ones’ in eachcolumn and each row. When a pattern of ‘ones’ exists suchthat a four corner cycle is formed we count one ‘short-loop’.

The instance of short-loops can be converted to a simplemapping problem by considering the placement of threematrices of the quad pattern and observing the row-columnrelationship to create loops with the fourth matrix. For anygiven row in the fourth matrix, there is exactly one columnposition that corresponds to a short-loop for that row. Thus thiscan be formulated into a classic combinatorics problem [9].The problem can be stated as follows, ‘Of all possible permu-tations, what is the probability of having no fixed points?’

We first find the probability of obtaining no fixed points(short-loops) in the quad pattern. Define N(m) as the num-ber of one-to-one mappings of m elements to m elementssuch that no fixed points occur. Since there are m! one-to-one mappings, the probability of getting no short-loops isN(m)/m!. We note that N(2) = 1 and obtain values forN(m) recursively. In general for m > 2 the following relationholds.

N(m) = m! − 1 −m−1∑j=2

(m

m − j

)N(j) (5)

It is shown in [7] that (5) is equivalent to the followingrecursion formula:

N(m) = mN(m − 1) + (−1)m (6)

From this we see that the probability of getting no short loopsrapidly converges to a constant value.3

N(m)m!

=12!

− 13!

+14!

− ... +(−1)m

m!≈ 0.3679 (7)

The probability of getting an arbitrary number of short-loopsis found similarly.

3It is interesting to note, although not important to the result, that this valueapproximates the value of 1

e.

ECHARD and chang: DESIGN CONSIDERATIONS LEADING TO THE DEVELOPMENT OF GOOD π-ROTATION LDPC CODES 449

Pr(X = 0) =N(m)

m!≈ 0.3679 (8)

Pr(X = 1) =

(m1

)N(m − 1)

m!=

N(m − 1)(m − 1)!

≈ 0.3679 (9)

Pr(X = 2) =

(m2

)N(m − 2)

m!=

N(m − 2)(m − 2)!

12!

≈ 0.1840

(10)...

Pr(X = x) =

(mx

)N(m − x)

m!=

N(m − x)(m − x)!

1x!

(11)

In the above definition, N(1) = 0. We extend this definitionto include N(0) = 1 which is consistent with (6) and providesthe correct probability for Pr(X = m) = 1

m! . The expectednumber of short loops for the quad is given by:

Em(X) =m∑

x=1

xN(m − x)(m − x)!

1x!

(12)

=n∑

y=0

N(n − y)(n − y)!

1y!

(13)

= 1 (14)

where n = m − 1 and y = x − 1.

VI. THEOREM II

The expected number of short-loops in a quad composed offour m × m randomly generated permutation matrices is 1.

A. Discussion

The macro pattern that forms the basis of the rate 12

π-rotation LDPC codes uses a collection of 16 permutationmatrices to create the Hd matrix. These matrices are placed ina 4×4 mosaic pattern within which several permutation quadscan contribute to the total short-loop count. One can find 36unique quad permutation arrangements from the 2 out of 4choices of ‘row’ matrices and 2 out of 4 choices of ‘column’matrices. Thus for random permutations the expected total4

short-loop count is 36 regardless of the size of m.

VII. SUMMARY

The structure of the π-rotation LDPC codes is based onthe parity-check matrix composed of the dual-diagonal sub-matrix and a composition of permutation matrices. This matrixpattern presents two fundamental characteristics of great valueto the code designer. In this letter we present these results inthe form of two theorems. The first result provides boundson the minimum weight of codewords when the informationvector is weight-two. With random permutations the weight-two information vector is the dominant contributor to low-weight codewords [7]. The second result proves that theexpected number of short loops in matrices constructed from

4Here we ignore the loops associated with links across to the dual-diagonalwhich have probability O( 1

m).

random permutations is constant. We note that the π-rotationcodes are based on a constructed pattern and thus do notnecessarily comply with results based on random permuta-tions. However, our investigations revealed that both the loopcount and distance profiles of the π-rotation pattern displayedsimilar characteristics as those for random matrices. This ledus to pursue the π-rotation construction as a candidate fordeterministic forms with random characteristics. We note thatthe minimum d2 of our constructed pattern significantly fallsaway from the lower d∗2 bound as the length grows. Thisis due in part to the additional d4 constraint but it mayalso suggest that other types of constructions could provideimproved performance.

APPENDIX

We define a permutation vector of length m with the triplet[ m, a, b ]. To do this, we begin with the set of integers, S =s0, s1, ...sm−1 where s0 = 0, s1 = 1, ..., sm−1 = m− 1. Thepermutation vector, πA is generated as follows:

l = mfor j1 = 1 to m

i = a ∗ j1 + b mod(m + 1 − j1)πA(j1) = m − si

for j2 = i to l − 1sj2 = sj2+1

next j2l = l − 1

next j1

This vector maps to the permutation matrix, πA, by iden-tifying the nonzero element in each column - counting fromthe bottom.

ACKNOWLEDGMENTS

The authors are very grateful for the many helpful com-ments from anonymous reviewers. Rich Echard was supportedin part by the Naval Research Laboratory through the Edisonlong-term training award.

REFERENCES

[1] R. Echard and S. C. Chang, “The π-rotation low-density parity checkcodes,” in Proc. GLOBECOM 2001, pp. 980-984, Nov. 2001.

[2] R. Echard and S. C. Chang, “Deterministic π-rotation low-density paritycheck codes,” Electron. Lett., vol. 38, pp. 464-465, May 2002.

[3] R. Echard and S. C. Chang, “Irregular π-rotation LDPC codes,”in Proc.GLOBECOM 2002, pp. 1274-1278, Nov. 2002.

[4] R. Echard and S. C. Chang, “The extended irregular π-rotation LDPCcodes,” IEEE Commun. Lett., vol. 7, pp. 230-232, May 2003.

[5] L. Ping, W. K. Leung, and N. Phamdo, “Low density parity check codeswith semi-random parity check matrix,” Electron. Lett., vol. 35, pp. 38-39, Jan. 1999.

[6] D. Divsalar, H. Jin, and R. J. McEliece, “Coding theorems for “turbo-like” codes,” in Proc. 36th Allerton Conf. Communication, Control andComputing, pp. 201-210, Sept. 1998.

[7] R. Echard, “On the construction of some deterministic low-density parity-check codes,” Ph.D. dissertation, George Mason Univ., Fairfax, VA, 2002.

[8] M. Barnsley, Fractals Everywhere. Boston, MA: Academic Press, Inc.,1988 (page 11).

[9] J. Herman, R. Kucera, and J. Simsa, Counting and Configurations- Problems in Combinatorics, Arithmetic, and Geometry. New York:Springer-Verlag, 2002 (page 83).