Improved Bilayer LDPC Codes Using Irregular Check Node Degree ...

5 downloads 20551 Views 120KB Size Report
search for the best degree distribution for both bilayer- lengthened and bilayer-expurgated LDPC codes. We show that the performance gap of the codes is ...
ISIT 2008, Toronto, Canada, July 6 - 11, 2008

Improved Bilayer LDPC Codes Using Irregular Check Node Degree Distribution Marwan H. Azmi, Jinhong Yuan, Jun Ning and Hieu Q. Huynh School of Electrical Engineering and Telecommunications University of New South Wales, Sydney, NSW 2052, AUSTRALIA Email: [email protected], [email protected], [email protected], [email protected]

Abstract— This paper presents an improved LDPC code design for decode-and-forward relay system. Our design is based on the recent work of bilayer LDPC code structures. We introduce an irregular check node degree distribution for the lower and hyper (overall) bilayer LDPC code Tanner graphs. We derive the exact relationship between the lower and hyper graphs in terms of degree distributions (node perspective). This relationship acts as constraint to perform the density evolution. We apply the differential evolution algorithm to search for the best degree distribution for both bilayerlengthened and bilayer-expurgated LDPC codes. We show that the performance gap of the codes is within 0.07595dB and 0.28407dB from the theoretical limits.

I. I NTRODUCTION The surge of user cooperation opens a new research area in wireless communication [1]. Relay networks introduce cooperative diversity by forming a virtual antenna array among the relays to provide spatial diversity. Even though the capacity for a general relay channel is still an open problem, there are a few achievable bounds that can be attained using several relay transmission schemes [2], [3]. Two main schemes are decode-andforward (DF) and compress-and-forward (CF). When the source-relay link is strong the achieving rate for the DF scheme outperforms the CF scheme [3]. One of the important researches for practical implementation of a decode-and-forward cooperation relay system is the design of practical codes. Previous coding work for relay channels can be traced back to the idea of distributed turbo codes [4], [5]. Several DF schemes via LDPC coding techniques were also developed [6]– [12]. In [7], two bilayer LDPC codes structures known as bilayer-expurgated and bilayer-lengthened were designed to approach the information theoretic limit of the DF scheme in [2]. The bilayer LDPC code are designed by fixing the check node degree distribution to a regular degree and optimizing the variable node degree distribution via linear programming under a modified density evolution called bilayer density evolution. The main result in this paper is based on the bilayer LDPC code structure in [7]. The bilayer LDPC code is represented by two Tanner graph structures called lower and hyper (overall) graphs. We introduce another approach to search for an optimum degree profile for

978-1-4244-2571-6/08/$25.00 ©2008 IEEE

141

the bilayer LDPC code. Our method optimizes the degree profile under density evolution [13] via differential evolution [14] where the optimum degree distribution of the designed bilayer LDPC code consists of not only optimum irregular variable node profile but also an optimum irregular check node profile. This methodology can be applied to both bilayer-expurgated and bilayerlengthened LDPC code. The relationship between lower and hyper graphs degree distributions of the bilayer LDPC code is derived in terms of node perspective degree distribution which acts as the constraint to perform the density evolution. We show that the asymptotic performance of the bilayer LDPC code is improved when we apply irregular degree distribution at the check nodes.

Fig. 1.

Degraded relay channel model

II. DF STRATEGY A degraded relay channel is shown in Fig. 1. In this paper, we use the following notations. X1 and X2 denote the transmitted signals from the source and relay while Y and Y1 denote the received signals at the destination and relay, respectively. The transmission can be defined by Y1 Y

= X1 + Z1 = X1 + X2 + Z2

(1) (2)

where Z1 ∼ N (0, N1 ) and Z2 ∼ N (0, N1 + N2 ) denote additive Gaussian noises at relay and destination, respectively. The power constraint at the source and relay are P1 and P2 . The overall DF rates at source is [2]  R1

= max min α

  1 αP1 log 1 + , 2 N1

ISIT 2008, Toronto, Canada, July 6 - 11, 2008

   P1 + P2 + 2 (1 − α) P1 P2 1 (3) log 1 + 2 N1 + N2 where α is the optimal cooperation factor to maximize the rate. To ensure a successful decoding at the destination, the rate for relay’s codeword, X2 , must satisfy ⎛ √

2 ⎞  P + 1 − α P ( ) 2 1 1 ⎜ ⎟ R2 ≤ log ⎝1 + (4) ⎠ 2 αP1 + N1 + N2 Please refer to [2] to review a full DF strategy. By adapting Cover and El Gamal DF strategy [2], Razaghi and Yu formulized a general code design problem for the scheme. We will briefly explain the formulization in [7] in this section. The relay’s codebook, X2 , can be constructed as a conventional error-correcting code that guarantees successful decoding at the destination while the source’s codebook, X1 , must be constructed so that it can be decoded successfully at both relay and destination. The source’s codebook needs to be designed at two SNR values (rates). The first SNR value is to ensure relay can successfully decode X1 at SNR+ = αP1 /N1 while the destination can successfully decode X1 with some extra parity digits (bin index information) from the relay at SNR− = αP1 /( N1 + N2 ).

Fig. 2.

The achievable rates, R+ , R− and R2 using DF stratefy

The code construction problem is abstracted in a schematic form shown in Fig. 2 where   1 αP (5) R+ = log 1 + 1 2 N1   1 αP1 (6) R− = log 1 + 2 N1 + N2 denote the effective source-relay and the effective sourcedestination rates. These two rates are the targeted rates for the bilayer LDPC code design in this paper. III. B ILAYER -L ENGTHENED LDPC C ODE A. Bilayer-lengthened ensembles We begin by explaining the bilayer-lengthened LDPC code structure in [7]. The core feature of this bilayer code is to approach the rates given by (5) and (6). The Tanner graph of this code is shown in Fig. 3. It is divided into lower and upper graphs. The lower and upper graphs

142

Fig. 3.

Bilayer-lengthened LDPC code structure

have n1 and n2 variable nodes. Both variable nodes connect to k check nodes. The overall graph is known as the hyper graph consisting of n1 + n2 variable nodes and k check nodes. Lengthening of a linear code is referred to as a process of increasing the codeword length while maintaining the number of parity check equations fixed. We can see that the hyper graph of the bilayerlengthened LDPC code corresponds to a lengthened version of lower graph with the same number of parity check equations, k. Designing a bilayer-lengthened LDPC code corresponds to finding the overall graph so that the lower graph corresponds to a good LDPC code at rate R− optimized for SNR− , while the overall bilayer graph (which can be constructed by adding extra variable nodes to the lower graph) represents a good LDPC code at rate R+ optimized for SNR+ [7]. In our bilayer-lengthened LDPC code design, we follow a similar procedure as introduced in [7]. We start with optimizing the lower graph by finding the best degree distribution, which achieves R− . Then by fixing the optimized lower graph degree distribution, we search the upper graph degree distribution so that the hyper graph will approach rate, R+ . There are two main differences between our bilayer-lengthened (expurgated) LDPC code design and the code design in [7]. First, instead of fixing the check node with a regular degree distribution, we adopt irregular check node degree distribution for both lower and hyper graphs. To do this, we apply differential evolution to search for the best degree profile under density evolution. Second, the search is done from a node perspective degree distribution point of view. We consider the node perspective due to the fact that the relationship between hyper, lower and upper graph is linear in node perspective. The ensembles of our bilayer-lengthened (expurgated) LDPC code is given by the lower graph variable and check node (node perspective) degree distribution (v1 ,h1 ), the upper graph variable and check node (node perspective) degree distribution (v M ,h M ) and the hyper graph variable and check node (node perspective) degree distribution (v H ,h H ). The LDPC code rate can be

ISIT 2008, Toronto, Canada, July 6 - 11, 2008

calculated using R = 1−

∑i ivi ∑i ihi

(7)

where vi denotes the variables node degree distribution (node perspective) and hi denotes the check node degree distribution (node perspective).

Referring to Fig. 3, the parity check matrix for the hyper graph can be defined as (8)

where HH , H1 and H M are the parity check matrix for the hyper, lower and upper graphs, respectively. Both H1 and HH matrices have the same number of rows, k, corresponding to a fix number of parity check equations. The design of the bilayer-lengthened LDPC code begins with finding the best lower graph degree distribution (v1 ,h1 ), which achieves rate, R− with the highest noise threshold under density evolution. This provides the parity check matrix, H1 . Next, we fix the optimized lower graph degree distribution and search for the best upper graph degree distribution so that the hyper graph achieves rate, R+ . We defined 1 − R+ n1 = (9) N= 1 − R− n1 + n2 where N is the ratio between the number of variable nodes in the lower graph, n1 , and the total number of variable nodes in the hyper graph code, n1 + n2 . We also defined hi,j as the percentage of the check nodes with i edges connected to the lower graph and j edges connected to the upper graph. The relationship between hi,j and the lower graph check node degree distribution, h1i , is h1i =

∑ hi,j

(10)

j

while hi,j can be related to the hyper graph check node degree distribution, hlH , using hlH =



i,j,l =i + j

hi,j

(11)

By generating hi,j , we get the hyper graph check node degree distribution, h H ( x ). Having the lower graph variable node profile, v1 ( x ), lower graph check node profile, h1 ( x ), and hyper graph check node profile, h H ( x ), we obtain the hyper graph variable node profile using v H ( x ) = Nv1 ( x ) + (1 − N ) v M ( x )

and

∑ viM = 1

(14)

i

B. Design of bilayer-lengthened LDPC code

HH = [ H1 H M ]

generated (v H , h H ) satisfy the rate, R+ . Considering (7) and (12), we derive that v M ( x ) should satisfy   1 M H 1 ∑ ivi = (1 − N ) ∑ ihi (1 − R+ ) − N ∑ ivi (13) i i i

(12)

Now, we only need to generate the upper graph variable node degree distribution, v M ( x ) that ensure the

143

Finally, the optimization problem for the hyper graph is to search for the (hi,j , v M ( x )) pair which generates a hyper graph degree distribution, (v H , h H ), and provides the highest noise threshold (σ) via density evolution subject to (9), (10), (13) and (14).

Fig. 4.

Bilayer-expurgated LDPC code structure

IV. B ILAYER -E XPURGATED LDPC C ODE A. Bilayer-expurgated ensembles Now the design for the second bilayer LDPC structure will be addressed. The Tanner graph of this code is shown in Fig. 4. As in bilayer-lengthened LDPC code, bilayer-expurgated LDPC code can also be represented using lower and upper graphs. The lower and upper graphs have k1 and k2 check nodes, respectively. Both check nodes connect to n variable nodes. The hyper graph consists of n variable nodes and k1 + k2 check nodes. Designing a bilayer-expurgated LDPC code corresponds to finding the overall graph so that the lower graph corresponds to a good LDPC code at rate R+ optimized for SNR+ , while the overall bilayer graph (which can be constructed by adding extra check nodes to the lower graph) represents a good LDPC code at rate R− optimized for SNR− . B. Design of bilayer-expurgated LDPC code Referring to Fig. 4, the parity check matrix for the hyper graph can be defined as   H1 HH = (15) HM where HH , H1 and H M are the parity check matrix for the hyper, lower and upper graphs, respectively. Both H1

ISIT 2008, Toronto, Canada, July 6 - 11, 2008

CODE 1 j=6 0.51724 0.25806

hi,j i=8 i=9 Vi1 0.48395 0.29443

i=2 i=3 i=4 i=5 i=6 i=7 i=8 i=9 i = 11 i = 12 i = 13 i = 14 i = 15 i = 16 i = 17 i = 19 i = 20 R+ , R− Gap+ Gap−

j=7 0.2247

ViM 0.34187 0.36543

0.085134 0.074056

0.22053 0.010968

0.062433

0.061209 0.7,0.5 0.09451dB 0.10393dB

CODE 2 j = 41

hi,j i=4 i=5 i=6

0.48876 0.16594

Vi1 0.561322 0.246077 0.029722 0.0052 0.053836 0.049872 0.001712 0.000658 0.000727 0.006856 0.005584 0.002725 0.000226 0.001105 0.000162 0.002117 0.032099

j = 42 0.01659 0.32871

ViM 0.29573 0.4114 0.030423 0.184853

0.077594 0.9,0.3 0.07595dB 0.14217dB

CODE 3 j=1

hi,j i=4 i=5 i=6

0.52187 0.16594

Vi1 0.561322 0.246077 0.029722 0.0052 0.053836 0.049872 0.001712 0.000658 0.000727 0.006856 0.005584 0.002725 0.000226 0.001105 0.000162 0.002117 0.032099

ViM 0.247021 0.431501

0.183927 0.016073

0.121478 0.4,0.3 0.130456dB 0.142176dB

TABLE I R ESULT OF THE BILAYER - LENGTHENED LDPC CODE . T HE LOWER GRAPH FOR C ODE 1

Vi,j i=2 i=3 i=6 i=7 i = 20

j=0 0.39559 0.22364 0.01733 0.01648 0.008

j=1 0.09389 0.01349 0.00654 0.00988 h1i

i = 15

j=2 0.02274 0.00278 0.00791 0.00804 0.00178

1

R+ ,R− Gap+ Gap−

CODE 4 j=3

j=4

j=5

j=6

0.01145 0.002645 0.01506 0.00022

0.01717 0.03691 0.01094

0.00398 0.01565 0.00664

0.00687 0.00585

hiM 0.0007406 0.0115633 0.9876961

i=3 i=4 i=5 0.7 , 0.5 0.08474dB 0.28407dB

R ESULT OF THE BILAYER - EXPURGATED LDPC

1 − R+ k1 = 1 − R− k1 + k2

IS OBTAINED FROM

CODE 5 j=1 j=2

j=0 0.41832 0.31193 0.02821

j=4

0.01983 0.04117

0.01115 i = 15

[15]

0.006 h1i

i=6 i=7

1

0.05885 hiM 0.0087192 0.9912808

0.7 , 0.65 0.08474dB 0.1266dB

CODE .

TABLE II T HE LOWER GRAPH FOR C ODE 4 AND 5 IS OBTAINED FROM [15]

and HH matrices have the same n number of column correspond to the fix length of the bilayer-expurgated LDPC code. We also begin with finding the best lower graph degree distribution (v1 ,h1 ) that achieves rate, R+ with the highest noise threshold using density evolution. Then, we fix the optimized lower graph degree distribution and search the upper graph degree distribution to make sure that the hyper graph is capacity achieving at R− . Here, we defined N=

j=2 0.01659 0.2956

(16)

where N is the ratio between the number of check nodes in the lower graph, k1 , and the total number of check nodes in the hyper graph, k1 + k2 . We also defined vi,j

144

as the percentage of the variable nodes with i edges connected to the lower graph and j edges connected to upper graph. The relationship between vi,j and the lower graph variable node degree distribution, v1i , is v1i =

∑ vi,j

(17)

j

while vi,j can be related to the hyper graph variable node degree distribution, vlH , using vlH =



i,j,l =i + j

vi,j

(18)

By generating vi,j , we have the hyper graph variable node degree distribution, v H ( x ). Having the lower graph

ISIT 2008, Toronto, Canada, July 6 - 11, 2008

variable node profile, v1 ( x ), lower graph check node profile, h1 ( x ), and hyper graph variable node profile, v H ( x ), we obtain the hyper graph check node profile using this linear relationship h H ( x ) = Nh1 ( x ) + (1 − N ) h M ( x )

(19)

Now, we only need to generate the upper graph check node degree distribution, h M ( x ) that ensure the generated (v H , h H ) satisfy rate R− . Applying (7) and (19), we derive that h M ( x ) should satisfy   1 ∑i iviH M 1 (20) ∑ ihi = (1 − N ) (1 − R− ) − N ∑ ihi i i and

∑ hiM = 1

(21)

i

Finally, the optimization problem for the hyper graph is to find the (vi,j , h M ( x )) pair which generates a hyper graph degree distribution, (v H , h H ), and provides the highest noise threshold (σ) via density evolution subject to (16), (17), (20) and (21).

asymptotic performance is improved. Code 4 performs within 0.28407dB from the theoretical limit at R− = 0.5 and Code 5 which is designed at R− = 0.65 performs within 0.1266dB from the theoretical limit. We also observed that it is easier to design the bilayerlengthened LDPC code because we can easily control the check node degree profile of the hyper graph to be concentrated. It is difficult to achieve this condition in the case of bilayer-expurgated LDPC code. VI. C ONCLUSION In this paper, an improved bilayer LDPC code in terms of asymptotic performance with an irregular check node degree distribution for decode-and forward relay systems is presented. The searching for the best degree distribution is obtained via the differential evolution algorithm. The relationship between the lower and hyper graph of bilayer LDPC code is derived in terms of node perspective degree distribution. We design good bilayer LDPC codes using the proposed method in this paper. The performance of the codes is about 0.07595-0.28407dB away from from the theoretical limits. R EFERENCES

V. N UMERICAL R ESULT We designed three bilayer-lengthened LDPC codes given in Table I (Code 1, Code 2 and Code 3) and two bilayer-expurgated LDPC codes shown in Table II (Code 4 and Code 5). To make a fair comparison with the bilayer LDPC code in [7], we use an irregular variable node with a maximum degree of 20 for both bilayerlengthened and bilayer-expurgated LDPC codes. For the bilayer-lengthened LDPC code, the designed rates are at three different pairs, (R+ ,R− ) similar to [7]. The results show an improvement in terms of asymptotic performance for all three codes compared to [ [7], Table 2]. Code 1 performs within 0.09451dB and 0.10393dB from the theoretical limit at (R+ = 0.7,R− = 0.5) and Code 2 which is designed at (R+ = 0.9,R− = 0.3) performs within 0.07595dB and 0.14217dB from the theoretical limit. Finally, Code 3 performs within 0.130456dB and 0.14217dB from the theoretical limit at (R+ = 0.4,R− = 0.3) The key of selecting a good irregular check node degree distribution for the hyper graph is to ensure that the generated hi,j gives a concentrated irregular check node degree distribution for the hyper graph, h H ( x ). As can be observed in Table I, the optimum hi,j generates h H ( x ) which consists of degrees 15 and 14 for Code 1, 46, 47 and 48 for Code 2 and 6, 7 and 8 for Code 3. For the bilayer-expurgated LDPC code, Code 4 and Code 5 are designed at (R+ = 0.7,R− = 0.5) and (R+ = 0.7,R− = 0.65) using the same lower graph degree profile as in [ [7],Table 1]. The lower graphs for both codes perform within 0.08478dB from the theoretical limit at R+ = 0.7 which has been obtained from [15]. By adopting the irregular check node degree to the upper graph for both bilayer-expurgated LDPC codes, the

145

[1] A. Sendoris, E. Erkip, and B. Aazhang, “User cooperation diversity - part 1: System description,” IEEE J. Sel. Areas Commun., vol. 51, no. 1927-1938, Nov. 2003. [2] T. M. Cover and A. E. Gamal, “Capacity theorems for the relay channel,” IEEE Trans. Inf. Theory, vol. 25, no. 5, pp. 572–584, Sept. 1979. [3] G. Kramer, M. Gastpar, and P. Gupta, “Cooperative strategies and capacity theorems for relay networks,” IEEE Trans. Inf. Theory, vol. 51, no. 9, pp. 3037–3063, Sept. 2005. [4] B. Zhao and M. C. Valenti, “Distributed turbo coded diversity for relay channel,” Electronics Letters, vol. 39, pp. 786–787, May 2003. [5] Z. Zheng and T. M. Duman, “Capacity-approaching turbo coding and iterative decoding for relay channels,” IEEE Trans. Inf. Theory, vol. 53, no. 11, pp. 1895–1905, Nov. 2005. [6] J. Hu and T. M. Duman, “Low desntity parity check codes over half-duplex relay channels,” in Proc. IEEE Int. Symp. Inf. Theory (ISIT), no. 972-976, 2006. [7] P. Razaghi and W. Yu, “Bilayer low density parity check codes for decode-and-forward in relay channels,” IEEE Trans. Inf. Theory, vol. 53, no. 10, pp. 3723–3739, Oct. 2007. [8] M. A. Khojastepour, N. Ahmed, and B. Aazhang, “Code design for the relay channel and factor graph decoding,” in Conf. Rec. 30th Asilomar Conf. Signals, Sys., Comp., vol. 2, pp. 2000–2004, 2004. [9] C. Li, M. A. Khojastepour, G. Yue, X. Wang, and M. Madihian, “Performance analysis and code design for cooperative relay channels,” in Proc. 40th ANnn. Conf. Inf. Sco., Sys. (CISS), 2006. [10] A. Chakrabarti, A. de Baynast, A. Sabharwal, and B. Aazhang, “Low density parity checks codes for the relay channel,” IEEE J. of Sel. Areas Commun., vol. 25, pp. 280–291, Feb. 2007. [11] J. Ezri and M. Gastpar, “On the performance of independently designed ldpc codes for the relay channel,” in Proc. IEEE Int. Symp. Inf. Theory (ISIT), pp. 977–981, 2006. [12] P. Razaghi and W. Yu, “Bilayer ldpc codes for the relay channel,” in Porc. IEEE Intl. Commun. Conf. (ICC), pp. 1574–1579, Jun 2006. [13] T. Richardson and R. Urbanke, “The capacity of low-density parity check codes under message-passing decoding,” IEEE Trans. Inf. Theory, vol. 2, pp. 599–618, Feb. 2001. [14] K. Price and R. Storn, “Differential evolution- a simple and efficient heuristic for global optimization over continuous spaces,” J. Global Optimiz, vol. 11, pp. 341–359, 1997. [15] “A fast and accurate degree distribution optimizer for ldpc code ensembles,” available:http://lthcwww.epfl.ch/research/ldpcopt/.

Suggest Documents