[ieee 2009 3rd ieee international symposium on microwave, antenna, propagation and emc technologies...

4
A Modified PEG Algorithm for Construction of LDPC codes with Polynomial of Cycle Lei Xiong, Dongping Yao, Yimeng Wu State Key Laboratory of Rail Traffic Control and Safety, Beijing Jiaotong University, School of Electronics and Information Engineering, Beijing Jiaotong University, Beijing 100044, China [email protected] Abstract—Progressive Edge-Growth (PEG) algorithm is a novel approach for construction of low-density parity-check (LDPC) codes with large girth. However, PEG algorithm ignores the effect of the number of shortest cycles. In this paper, we propose a modified PEG algorithm with Polynomial of Cycle, which achieves not only large girth, but also minimizes the number of shortest cycles significantly. Simulation results show that our proposed algorithm can improves the performance of LDPC codes. Keywords- LDPC codes, construction; cycle I. INTRODUCTION Low-density parity-check (LDPC) codes were first introduced by Gallager in his thesis in early 1960s [1-2] , and rediscovered by D.J.C Mackay [3-4] . Researches have shown that LDPC can achieve the good performance within 0.0045dB of the Shannon capacity limit [5] . LDPC codes and turbo codes are the two best known codes. Recently, LDPC codes have attract many attentions for their capacity- approaching performance, linear decoding complexity, flexibility, low error floor, and so on. Unfortunately, the capacity-approaching performance can be achieved only when the block length is infinite and the underlying Tanner graph is cycle-free [6] . Cycles, especially short cycles, will deteriorate the performance of LDPC codes seriously. Now, the construction algorithms for LDPC codes are hot spots in LDPC research area [7-10] . Progressive Edge-Growth (PEG) algorithm is a greed algorithm, which starts with a cycle-free Tanner graph, and establishes edges between variable nodes and check nodes one by one [11-12] . In each step, PEG algorithm selects the edge which minimizes effect to the girth. By thus, PEG algorithm can construct LDPC codes with large girth and good performance. PEG algorithm can construct regular LDPC codes, irregular LDPC codes, and repeat accumulated (RA) codes. In addition, PEG algorithm is simple and flexible in codes parameters. So, PEG algorithm is considered as a novel construction approach. However, PEG algorithm is not perfect. In recent years, many improved PEG algorithms are proposed. Lin Yi-Kai proposed modified PEG algorithm for construction of Structured LDPC codes with low error floor [13-14] . Dejan Vukobratovi proposed a construction of irregular QC-LDPC codes with improved Approximated Cycle Extrinsic Message Degree (ACE) properties [15] . Wei Zhan presented a general method for constructing quasi-cyclic LDPC codes without small stopping set [16] . PEG algorithm and improved PEG algorithms only consider the girth, i.e. length of shortest cycles, but ignore the effect of the number of the shortest cycles. In this paper, we proposed a modified PEG algorithm with Polynomial of cycle (PEGPC). With the aid of Polynomial of cycle, PEGPC algorithm optimizes construction, and achieves both large girth and less number of the shortest cycle. So PEGPC codes have a better performance than PEG codes, especially for moderate length codes. The rest of the paper is organized as follows. Section II introduces the background of LDPC codes. The concept of polynomial of cycle is proposed in Section III. In section IV, PEGPC algorithm is described. Finally, simulation results and conclusion are given in section V and VI respectively. II. BACKGROUND OF LDPC CODES A LDPC code is a block code specified a by sparse parity-check matrix H. H is an M×N matrix, in which M rows represent M check equations, and N columns indicate N code bits in the codeword C. A valid LDPC codeword C must satisfy HC=0. 1 1 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 1 0 1 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 1 0 1 0 0 0 0 1 0 1 0 0 1 0 0 0 1 0 1 0 1 0 0 0 0 1 0 1 0 1 0 0 0 1 0 0 0 0 0 0 0 1 1 1 1 0 H It is helpful to describe a LDPC code in terms of bipartite graphs call Tanner graph. The Tanner graph includes M check nodes corresponding to M rows of the matrix H, and N variable nodes corresponding to the N columns of H. Each edge between check nodes and variable nodes corresponds to the non-zero entry in H matrix. The Tanner graph corresponding to the H matrix above is shown in Fig.1. Supported by the National Nature Science Foundation of China (No. 60830001), the State Key Laboratory of Rail Traffic Control and Safety (No.RCS2008ZT005), Beijing Jiaotong University, and Science and Technology Foundation of Beijing Jiaotong University (No. 2007RC105) . 978-1-4244-4076-4/09/$25.00 ©2009 IEEE

Upload: yimeng

Post on 10-Mar-2017

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: [IEEE 2009 3rd IEEE International Symposium on Microwave, Antenna, Propagation and EMC Technologies for Wireless Communications (MAPE) - Beijing, China (2009.10.27-2009.10.29)] 2009

A Modified PEG Algorithm for Construction of LDPC codes with Polynomial of Cycle

Lei Xiong, Dongping Yao, Yimeng Wu State Key Laboratory of Rail Traffic Control and Safety, Beijing Jiaotong University,

School of Electronics and Information Engineering, Beijing Jiaotong University, Beijing 100044, China [email protected]

Abstract—Progressive Edge-Growth (PEG) algorithm is a novel approach for construction of low-density parity-check (LDPC) codes with large girth. However, PEG algorithm ignores the effect of the number of shortest cycles. In this paper, we propose a modified PEG algorithm with Polynomial of Cycle, which achieves not only large girth, but also minimizes the number of shortest cycles significantly. Simulation results show that our proposed algorithm can improves the performance of LDPC codes.Keywords- LDPC codes, construction; cycle

I. INTRODUCTION

Low-density parity-check (LDPC) codes were first introduced by Gallager in his thesis in early 1960s [1-2], and rediscovered by D.J.C Mackay[3-4]. Researches have shown that LDPC can achieve the good performance within 0.0045dB of the Shannon capacity limit [5]. LDPC codes and turbo codes are the two best known codes. Recently, LDPC codes have attract many attentions for their capacity-approaching performance, linear decoding complexity, flexibility, low error floor, and so on. Unfortunately, the capacity-approaching performance can be achieved only when the block length is infinite and the underlying Tanner graph is cycle-free [6]. Cycles, especially short cycles, will deteriorate the performance of LDPC codes seriously. Now, the construction algorithms for LDPC codes are hot spots in LDPC research area[7-10].

Progressive Edge-Growth (PEG) algorithm is a greed algorithm, which starts with a cycle-free Tanner graph, and establishes edges between variable nodes and check nodes one by one [11-12]. In each step, PEG algorithm selects the edge which minimizes effect to the girth. By thus, PEG algorithm can construct LDPC codes with large girth and good performance. PEG algorithm can construct regular LDPC codes, irregular LDPC codes, and repeat accumulated (RA) codes. In addition, PEG algorithm is simple and flexible in codes parameters. So, PEG algorithm is considered as a novel construction approach.

However, PEG algorithm is not perfect. In recent years, many improved PEG algorithms are proposed. Lin Yi-Kai proposed modified PEG algorithm for construction of Structured LDPC codes with low error floor [13-14]. Dejan Vukobratovi proposed a construction of irregular QC-LDPC codes with improved Approximated Cycle Extrinsic Message Degree (ACE) properties [15]. Wei Zhan presented a general

method for constructing quasi-cyclic LDPC codes without small stopping set [16].

PEG algorithm and improved PEG algorithms only consider the girth, i.e. length of shortest cycles, but ignore the effect of the number of the shortest cycles. In this paper, we proposed a modified PEG algorithm with Polynomial of cycle (PEGPC). With the aid of Polynomial of cycle, PEGPC algorithm optimizes construction, and achieves both large girth and less number of the shortest cycle. So PEGPC codes have a better performance than PEG codes, especially for moderate length codes.

The rest of the paper is organized as follows. Section II introduces the background of LDPC codes. The concept of polynomial of cycle is proposed in Section III. In section IV, PEGPC algorithm is described. Finally, simulation results and conclusion are given in section V and VI respectively.

II. BACKGROUND OF LDPC CODES

A LDPC code is a block code specified a by sparse parity-check matrix H. H is an M×N matrix, in which M rows represent M check equations, and N columns indicate N code bits in the codeword C. A valid LDPC codeword C must satisfy HC=0.

1 1 1 0 0 0 0 1 0 0 0 01 0 0 0 1 1 0 0 1 0 0 01 0 0 1 0 0 1 0 0 1 0 00 1 0 1 1 0 0 0 0 0 1 00 1 0 0 0 1 1 0 0 0 0 10 0 1 0 1 0 0 0 0 1 0 10 0 1 0 0 0 1 0 1 0 1 00 0 0 1 0 1 0 1 0 0 0 10 0 0 0 0 0 0 1 1 1 1 0

� �� �� �� �� �� �� ��� �� �� �� �� �� �� �� �

H

It is helpful to describe a LDPC code in terms of bipartite graphs call Tanner graph. The Tanner graph includes M check nodes corresponding to M rows of the matrix H, and N variable nodes corresponding to the N columns of H. Each edge between check nodes and variable nodes corresponds to the non-zero entry in H matrix. The Tanner graph corresponding to the H matrix above is shown in Fig.1.

Supported by the National Nature Science Foundation of China (No. 60830001), the State Key Laboratory of Rail Traffic Control andSafety (No.RCS2008ZT005), Beijing Jiaotong University, andScience and Technology Foundation of Beijing Jiaotong University(No. 2007RC105) .

978-1-4244-4076-4/09/$25.00 ©2009 IEEE

Page 2: [IEEE 2009 3rd IEEE International Symposium on Microwave, Antenna, Propagation and EMC Technologies for Wireless Communications (MAPE) - Beijing, China (2009.10.27-2009.10.29)] 2009

c1 c2 c3 c4 c5 c6 c7 c8 c9

v1 v2 v3 v4 v5 v6 v7 v8 v9 v10 v11 v12

check nodes

variable nodes

Fig.1. Tanner graph of a LDPC code

In Tanner graph, cycle refers to a finite set of connected edges, which starts from a node and ends at the same one. As shown in Fig.1, a cycle v1-c1-v3-c6-v10-c3-v1 is drawn with thick lines. Cycles, especially short cycles, will degrade the performance of LDPC codes, because the extrinsic information exchanged in the iterative decoding is not independence any longer. Hence, the LDPC codes with larger girth (the length of the shortest cycle) and less number of shortest cycles are desired.

III. POLYNOMIAL OF CYCLE

As described in Section II, cycle is crucial to the performance of LDPC codes. In this section, a new concept, polynomial of cycle (PC), will be introduce to depict the length, number and distribution of cycles. The PC is calculated as follow:

It is assumed that the cycles passing through variable node v1 are studied. As shown in Fig.2, the Tanner graph is expanded from v1 as a tree, i.e. v1 is the vertex of the tree-like graph.

Definition 1: The initial PC of the vertex is 1. Assume c1 is expanded from v1, i.e. c1 is one of check

nodes that have an edge with v1. So, v1 is called as father node of c1, and c1 is called as son node of v1. Notice that the son nodes must exclude its father nodes.

Definition 2: The PC of a son node equal to that of its father node multiplying x.

So the PC of c1 is x.If a son node has two or more father nodes, the PC of it

can be calculated as follow 1. add the PC of its all father nodes; 2. multiply by xFor example, as shown in Fig.2, c6 has three father nodes,

v1 , v5 and v10, so the PC of c6 is 2 2 2 33x x x x x� � �

The tree-like graph expands to its maximum size, and computes the PC of all nodes. If the cycles passing through v1exist, then the vertex v1 will appear again, and assume the PC of v1 is k

kh x . The PC indicates that the local girth (length of the shortest cycles passing through) of v1 is k, and the number of the shortest cycles is hk. Moreover, the girth of the graph is the minimum value of local girth of all variable nodes.

variable node

check node

1

x

v1

c1 c2 c3

v3x2 v5x2 v10x2

c63x3

x x

hkxk v1

Fig.2. Tree-like Tanner graph

It can be seen that PC can accurately depict not only the length but also the number of cycles passing through it. With PC, we can calculate the girth, count the number and analyze distribution of cycles in entire graph. With the aid of PC, a new approach for constructing codes with larger girth and fewer shortest cycles will be presented in Section IV.

IV. PEGPC CONSTRUCTION ALGORITHM

Similar to PEG algorithm, PEGPC is a greedy algorithm by progressively establishing edges between symbol nodes and check nodes. When establishing a new edge, PEGPC differs from PEG in that it not only maximizes the length of shortest cycles caused by the new edge, but also minimizes the number of them.

The procedure is as follow. Firstly, we assume that a new edge will be established

connected with variable node vi.Step 1: Initial PCs of all variable nodes and check nodes,

1 ,0 , 1 ,n

n if v

n N n i��

� � � ��and

0, 1mf c m M� � �Step 2: Expand Tanner graph from vi as a tree to its

maximum size, and calculates (updates) the PCs of every node in the graph as introduced in Section III. Assume cj is a son node of vi, then

j j if c f c f v x� �

Step 3: Choose the optimal check node. Step 3.1: Compare the PC’s powers of all check nodes, choose the check node with the largest power, because larger power indicates larger local girth. If the candidate is unique, go to Step 4; else go to Step 3.2.

Page 3: [IEEE 2009 3rd IEEE International Symposium on Microwave, Antenna, Propagation and EMC Technologies for Wireless Communications (MAPE) - Beijing, China (2009.10.27-2009.10.29)] 2009

Step 3.2: Compare the coefficients of the candidate check nodes, and the check node with less coefficient is optimal, because less coefficient indicates less shortest cycles.

An example is shown in Fig.3. It can be seen that the PCs of c1, c4 and c5 are 3x5, 3x5 and 2x5 respectively, and the powers of them are the largest among all check nodes. It indicates if choose one of them, i.e. establish a new edge between it and v11, the length of the cycles caused by the new edge will be 6 at least. The next problem is which one is the best among c1,c4 and c5. We compare the coefficients of the PCs of c1, c4 and c5 further. It is clear that the coefficient of c5 is less than those of c1 and c4, which implies that if add an edge between v11 and c5, 2 cycles, rather than 3, with length 6 will be caused. So, c5is the best one. Whereas, PEG algorithm can not discriminate among c1, c4 and c5.

Step 4: Establish an edge between vi and the optimal check node. Return to Step 1, and continue edge establishing until all edges have been established.

v111 11111

2x2 v22x2

c8x3 c8c8x3

c52 x5 552 x5

c2x c2c2x c3

x c3c3x

v5x2 5x2 v6x2 6x2 v3 x233 x2

c72 x3 c7c72 x3 c6 x3c6c6 x3

v1x4 11x4 v92 x42 x4 v102x4x4 v7 x477 x4

c13 x53 x5 c4 3 x53 x5

Fig.3. An example of PEGPC construction

V. SIMULATION RESULTS

In this section, we will present simulation of PEGPC code, PEG code and MacKay’s random codes without 4 cycles. In simulation, we use (N=504, M=252) regular LDPC codes with variable-node degree dv=3 and check-node degree dc=6. The simulation parameters are shown in Tab.1, and at least 50 decoding errors are collected at every SNR.

Tab.1. Simulation parameters Modulation BPSK

Decoding algorithm offset BP with �=1.15

Maximum number of iterative 100

Fig.4 compares the local girth histogram of PEGPC code, PEG code and random code (free of 4 lines). In PEGPC graph, 20 variable nodes have local girth of 10 and 484 variable nodes have local girth of 8, while in PEG graph, only 1 variable node has local girth of 10, and in random graph, 108 variable nodes have local girth of 8 and 396 variable nodes have local girth of 6. The girth and average local girth of PEGPC code, PEG code and random code are list in Tab 2. It is clear that the girth and average local girth of PEGPC and PEG codes are larger than random code. In term of girth and average local girth, PEGPC code does not outperform significantly than PEG code.

1 100 200 300 400 5040

4

6

8

101 100 200 300 400 504

0

46810121 100 200 300 400 504

0

4681012

PEG code

variable node v1 vN N=504

PEGPC code

random code

Fig.4. Local girth histograms of PEGPC code, PEG code and random code

Tab.2. Comparison of girth, local girth and number of shortest cycles

PEGPC code

PEGcode

random code

girth 8 8 6

average of local girth 8.079 8.004 6.43

Number of the shortest cycles 398 844 ——

The shortest cycle (length=8) histograms of PEGPC code and PEG code are demonstrated in Fig.5 respectively. Tab.2 compares the number of the shortest cycles of PEGPC code and PEG code. The total number of the shortest cycle in PEG code is 844, while only 398 in PEGPC code, decreased by 52.8%. The results show that PEGPC can avoid the shortest cycles with the aid of PC in deed. The fewer shortest cycles indicates better performance.

Page 4: [IEEE 2009 3rd IEEE International Symposium on Microwave, Antenna, Propagation and EMC Technologies for Wireless Communications (MAPE) - Beijing, China (2009.10.27-2009.10.29)] 2009

1 100 200 300 400 5040

10

20

1 100 200 300 400 5040

10

20PEG code

variable node v1 vN N=504

PEGPC code

Fig.5. The shortest cycles histograms of PEGPC code and PEG code

1 1.5 2 2.5 3 3.510-7

10-6

10-5

10-4

10-3

10-2

10-1

PEGPPEG

BER

Fig.6. BER curves for PEGPC code, PEG code and random code

The bit error rate (BER) curves for PEGPC code, PEG code and random code are plotted in Fig.6. It can be seen that the performance of PEGPC code is better than that of PEG code and random code, especially in the high SNR region. For example, when Eb/N0=3.5dB, the BER of PEGPC code is only 1/3 of that of PEG code, and 1/50 of that of random code. At BER=10-5, the performance improvement of PEGPC is about 0.1 dB compared to PEG code, and 0.45dB compared to random code.

VI. CONCLUSION

In this paper, we present a new concept, Polynomial of Cycle,which can depict the length, number and distribution of cycles in Tanner graph accurately. With the aid of Polynomial of Cycle, a modified PEG algorithm, PEGPC, is proposed. PEGPC algorithm achieves both larger girth and less number of shortest cycles. Simulation results show that PEGPC code has a better BER performance than PEG code.

REFERENCES

[1] R. G. Gallager. Low-density parity-check codes[J]. IRE Transactions on Information Theoryy, 1962, IT-18, pp. 21–28.

[2] R. G. Gallager. Low-Density Parity-Check Codes. Cambridge, MA: MIT Press, 1963.

[3] D. J. C. MacKay and R. M. Neal. Near Shannon limit performance of low-density parity-check codes, [J]. Electron. Lett., vol. 32, pp. 1645–1646,1996

[4] D. J. C. MacKay, “Good error correcting codes based on very sparse matrices,” IEEE Trans. Inform. Theory, vol. 45, pp. 399–431, Mar. 1999

[5] Sae-Young Chung, G.D.Forney, T.J.Richardson, et al. On the design of low-density parity-check codes within 0.0045dB of the Shannon limit[J]. IEEE Communications Letters, 2001, 5(2):58–60.

[6] S. Y. Chung, T. Richardson, R. Urbanke. Analysis of sum-product decoding of low-density parity-check codes using a Gaussian approximation [J] .IEEE Trans. on Inform. Theory, vol. 47, no. 2, pp. 657-670, Feb. 2001

[7] Jon-Lark Kim; Peled, U.N.; Perepelitsa, I., et al. Explicit construction of families of LDPC codes with no 4-cycles[J]. IEEE Transactions on Information Theory, 2004, 50(10):2378–2388.

[8] Y.Kou, S.Lin, M.Fossorier. Low-density parity-check codes based on finite geometries: A Rediscovery and new results[J]. IEEE Transactions on Information Theory, 2001, 47(7):2711–2736.

[9] J.Campello, D.S.Modha. Designing LDPC codes using bit-filling[C]. IEEE ICC 01’, 2001:55–59.

[10] J.Campello, D.S.Modha. Extended bit-filling and LDPC code design[C]. IEEE Globecom 01’, 2001:985–989.

[11] Xiao-Yu Hu, E.Eleftheriou, D.-M.Arnold. Progressive edge-growth Tanner graphs[C]. IEEE Globecom 01’, 2001:995–1001.

[12] Xiao-Yu Hu, E.Eleftheriou, D.-M.Arnold. Irregular progressive edge-growth (PEG) Tanner graphs[C]. IEEE Internation Symposium on Information Theory (ISIT 02’), 2002:480.

[13] Yi-Kai Lin; Chin-Lung Chen, Yen-Chin Liao, et al. Structured LDPC codes with low error floor based on PEG tanner graphs[C]. IEEE Internation Symposium on Circuits and systems, (ISCAS 08’), 2008:1846-1849.

[14] Wei Zhan; Guangxi Zhu; Li Peng; Xi Yan;Quasi-cyclic LDPC codes based on D and Q matrices through progressive edge growth.[C]. IEEE Internation Symposium on Intelligent Signal Processing and Communication System, (ISPACS 07’), 2007:12-15.

[15] Vukobratovic, D., Senk V. Generalized ACE Constrained Progressive Edge-Growth LDPC Code Design[J]. IEEE communication Letters, 2008, 12(1):32-34.

[16] Richter G., Hof A. On a Construction Method of Irregular LDPC Codes Without Small Stopping Sets[C]. IEEE Internation Conference on Communication(ICC 06’), 2006:1119-1124.

.