4
1640 IEEE COMMUNICATIONS LETTERS, VOL. 17, NO. 8, AUGUST 2013 A Variant of the EMS Decoding Algorithm for Nonbinary LDPC Codes Shancheng Zhao, Zhifei Lu, Xiao Ma, and Baoming Bai Abstract—This letter is concerned with low-complexity de- coding algorithms for nonbinary low-density parity-check (NB- LDPC) codes. A new truncation rule based on an adaptive thresh- old μ is proposed for the extended min-sum (EMS) algorithm. The threshold μ is determined by the mean of the message vector. Therefore, it can be matched to channel observation and decoding iteration. The resulting algorithm is referred to as μ-EMS algorithm. Simulation results show that the μ-EMS algorithm performs almost as well as the Q-ary sum-product algorithm (QSPA). Simulation results also show that the μ-EMS algorithm is simpler than the other X-EMS algorithms for NB- LDPC over high order finite fields. Index Terms—Extended min-sum (EMS) algorithm, min- sum (MS) algorithm, nonbinary LDPC (NB-LDPC) code, QSPA, X-EMS. I. I NTRODUCTION N ONBINARY low-density parity-check (NB-LDPC) codes were first introduced by Gallager based on modulo arithmetic [1]. In [2], Davey and Mackay presented a class of NB-LDPC codes defined over the finite field F q . They also introduced the Q-ary sum-product algorithm (QSPA) for decoding NB-LDPC codes. NB-LDPC codes outperform their binary counterparts when used in the channels with burst errors or combined with higher-order modulations. However, the applications of NB-LDPC codes are limited due to their high decoding complexity. To reduce the decoding complexity, extended min-sum (EMS) algorithms were proposed in [3][4][5]. The EMS algorithm in [4] was re- described in [6] as a reduced-search trellis algorithm, called M -EMS algorithm, which retains only those states/branches with M -largest metrics at each trellis section. Also presented in [6] are two variants of the M -EMS algorithm, called T -EMS algorithm and D-EMS algorithm. All these variants are referred to as X -EMS algorithms in [6]. For majority- logic decodable NB-LDPC codes, a low-complexity decoding algorithm has been proposed in [7]. In this letter, we propose a new variant of the EMS algorithm, called μ-EMS algorithm, based on a new truncation rule. In μ-EMS algorithm, the threshold μ is determined by the mean of the message vector. Therefore, it is data-dependent and can be matched to decoding iteration. Simulation results show that the μ-EMS algorithm performs as well as the QSPA and the X -EMS algorithms. Simulation results also show that Manuscript received April 10, 2013. The associate editor coordinating the review of this letter and approving it for publication was G. Liva. S. Zhao, Z. Lu and X. Ma are with the Department of ECE, Sun Yat-sen University, Guangzhou 510275, China (e-mail: [email protected]). B. Bai is with the State Key Lab. of ISN, Xidian University, Xi’an 710071, China. This work was supported by 973 Program (No.2012CB316100) and NSF (No.61172082) of China. Digital Object Identifier 10.1109/LCOMM.2013.070113.130806 + . . . . . . ij X 1 N V 1 C = + : V-node : C-node . . . = + H j V ij H C = + . . . . . . . . . H : H-node ij Y 0 C j V 0 V 0 V 1 N V = Fig. 1. Normal graphical realization of an NB-LDPC code. the μ-EMS algorithm admits a lower computational loads than X -EMS algorithms for NB-LDPC over high order finite fields. II. NB-LDPC CODES AND THE SYSTEM MODEL A. NB-LDPC Codes Let F q be the finite field with q =2 m elements. An NB- LDPC code C q [N,K] is defined as the null space of a sparse parity-check matrix H =[h i,j ] M×N with h i,j F q . A vector v =(v 0 ,v 1 , ··· v N1 ) F N q is a codeword if and only if Hv T =0. We define the following two index sets N i = {j :0 j N 1,h i,j =0} for each row i of H and M j = {i :0 i M 1,h i,j =0} for each column j of H. Given the parity-check matrix H, we can realize the code by a normal graph as shown in Fig. 1. The normal graph has three types of nodes: M check nodes (C- node), N variable nodes (V-node) and δ H-node, where δ denotes the number of nonzero elements in H. The function of H-node is message permutation. B. The System Model The considered system is described as follows. Encoding: The sequence u =(u 0 ,u 1 , ··· ,u K1 ) F K q to be transmitted is encoded by the NB-LDPC encoder into a codeword v =(v 0 ,v 1 , ··· ,v N1 ) F N q . Modulation: The codeword v is interpreted as a binary vector of length mN by replacing each component v j with its binary representation v j =(v (0) j ,v (1) j , ··· v (m1) j ). The binary vector v is mapped into a bipolar vector x = (x (0) 0 , ··· x (m1) 0 ,x (0) 1 , ··· x (m1) 1 , ··· ,x (0) N1 , ··· x (m1) N1 ) 1089-7798/13$31.00 c 2013 IEEE

A Variant of the EMS Decoding Algorithm for Nonbinary LDPC Codes

  • Upload
    baoming

  • View
    239

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Variant of the EMS Decoding Algorithm for Nonbinary LDPC Codes

1640 IEEE COMMUNICATIONS LETTERS, VOL. 17, NO. 8, AUGUST 2013

A Variant of the EMS Decoding Algorithm for Nonbinary LDPC CodesShancheng Zhao, Zhifei Lu, Xiao Ma, and Baoming Bai

Abstract—This letter is concerned with low-complexity de-coding algorithms for nonbinary low-density parity-check (NB-LDPC) codes. A new truncation rule based on an adaptive thresh-old µ is proposed for the extended min-sum (EMS) algorithm.The threshold µ is determined by the mean of the messagevector. Therefore, it can be matched to channel observationand decoding iteration. The resulting algorithm is referred toas µ-EMS algorithm. Simulation results show that the µ-EMSalgorithm performs almost as well as the Q-ary sum-productalgorithm (QSPA). Simulation results also show that the µ-EMSalgorithm is simpler than the other X-EMS algorithms for NB-LDPC over high order finite fields.

Index Terms—Extended min-sum (EMS) algorithm, min-sum (MS) algorithm, nonbinary LDPC (NB-LDPC) code, QSPA,X-EMS.

I. INTRODUCTION

NONBINARY low-density parity-check (NB-LDPC)codes were first introduced by Gallager based on

modulo arithmetic [1]. In [2], Davey and Mackay presented aclass of NB-LDPC codes defined over the finite field Fq. Theyalso introduced the Q-ary sum-product algorithm (QSPA)for decoding NB-LDPC codes. NB-LDPC codes outperformtheir binary counterparts when used in the channels withburst errors or combined with higher-order modulations.However, the applications of NB-LDPC codes are limited dueto their high decoding complexity. To reduce the decodingcomplexity, extended min-sum (EMS) algorithms wereproposed in [3][4][5]. The EMS algorithm in [4] was re-described in [6] as a reduced-search trellis algorithm, calledM -EMS algorithm, which retains only those states/brancheswith M -largest metrics at each trellis section. Also presentedin [6] are two variants of the M -EMS algorithm, calledT -EMS algorithm and D-EMS algorithm. All these variantsare referred to as X-EMS algorithms in [6]. For majority-logic decodable NB-LDPC codes, a low-complexity decodingalgorithm has been proposed in [7].

In this letter, we propose a new variant of the EMSalgorithm, called μ-EMS algorithm, based on a new truncationrule. In μ-EMS algorithm, the threshold μ is determined by themean of the message vector. Therefore, it is data-dependentand can be matched to decoding iteration. Simulation resultsshow that the μ-EMS algorithm performs as well as the QSPAand the X-EMS algorithms. Simulation results also show that

Manuscript received April 10, 2013. The associate editor coordinating thereview of this letter and approving it for publication was G. Liva.

S. Zhao, Z. Lu and X. Ma are with the Department of ECE, Sun Yat-senUniversity, Guangzhou 510275, China (e-mail: [email protected]).

B. Bai is with the State Key Lab. of ISN, Xidian University, Xi’an 710071,China.

This work was supported by 973 Program (No.2012CB316100) andNSF (No.61172082) of China.

Digital Object Identifier 10.1109/LCOMM.2013.070113.130806

+...

.

.

.

ijX

1NV1C

= +: V-node : C-node

.

.

.= +

HjV

ijH

C= +...

.

.

.

.

.

.

H : H-node

ijY

0C

jV

0V0V

1NV =

Fig. 1. Normal graphical realization of an NB-LDPC code.

the μ-EMS algorithm admits a lower computational loads thanX-EMS algorithms for NB-LDPC over high order finite fields.

II. NB-LDPC CODES AND THE SYSTEM MODEL

A. NB-LDPC Codes

Let Fq be the finite field with q = 2m elements. An NB-LDPC code Cq[N,K] is defined as the null space of a sparseparity-check matrix H = [hi,j ]M×N with hi,j ∈ Fq. A vectorv = (v0, v1, · · · vN−1) ∈ F

Nq is a codeword if and only if

HvT = 0. We define the following two index sets

Ni = {j : 0 ≤ j ≤ N − 1, hi,j �= 0}for each row i of H and

Mj = {i : 0 ≤ i ≤ M − 1, hi,j �= 0}for each column j of H. Given the parity-check matrix H, wecan realize the code by a normal graph as shown in Fig. 1. Thenormal graph has three types of nodes: M check nodes (C-node), N variable nodes (V-node) and δ H-node, where δdenotes the number of nonzero elements in H. The functionof H-node is message permutation.

B. The System Model

The considered system is described as follows.Encoding: The sequence u = (u0, u1, · · · , uK−1) ∈ F

Kq to

be transmitted is encoded by the NB-LDPC encoder into acodeword v = (v0, v1, · · · , vN−1) ∈ F

Nq .

Modulation: The codeword v is interpreted as a binaryvector of length mN by replacing each component vjwith its binary representation vj = (v

(0)j , v

(1)j , · · · v(m−1)

j ).The binary vector v is mapped into a bipolar vector x =

(x(0)0 , · · ·x(m−1)

0 , x(0)1 , · · ·x(m−1)

1 , · · · , x(0)N−1, · · ·x(m−1)

N−1 )

1089-7798/13$31.00 c© 2013 IEEE

Page 2: A Variant of the EMS Decoding Algorithm for Nonbinary LDPC Codes

ZHAO et al.: A VARIANT OF THE EMS DECODING ALGORITHM FOR NONBINARY LDPC CODES 1641

with x(i)j = 2v

(i)j − 1, for 0 ≤ j ≤ N − 1 and 0 ≤ i ≤ m− 1.

Then the vector x is transmitted over the channels.Decoding: The received sequence is denoted as y =

(y(0)0 , · · · y(m−1)

0 , · · · , y(0)N−1, · · · y(m−1)N−1 ) with y

(i)j = x

(i)j +

w(i)j , for 0 ≤ j ≤ N − 1 and 0 ≤ i ≤ m − 1, where w

(i)j

is a sample of a white Gaussian noise. Upon receiving y,the receiver can execute the QSPA or X-EMS algorithms torecover u.

C. Possibility Function Calculation

We use log-domain messages in this letter. Let Z be adiscrete random variable over Z . We use PZ(z) to denote itsprobability mass function. Its possibility function is definedas LZ(z) = [a0 logPZ(z) + a1], z ∈ Z , where [x] representsthe integer closest to x ∈ R and a0 > 0, a1 ∈ R are twoconstants. Obviously, by properly choosing a0 and a1, we canconfine the range of LZ(z) to be [0, 2p − 1], where p > 0is bits number for quantization. Let X denote the variable onthe edge connecting the node A and B in Fig. 1. We will useL(A→B)X to denote the message from A to B.The following algorithm is implemented to compute the

messages L(|→Vj)Vj

(vj) from the received sequence y.Algorithm 1: Given the received vector y, 2p − 1 and themaximum allowable squared Euclidean distance dmax forquantization. For j = 0, 1, · · · , N − 1,

Step 1 : Calculate d(vj) =∑m−1

i=0 ||y(i)j − (2v(i)j − 1)||2 for

each vj ∈ Fq;Step 2 : If d(vj) > dmax, set d(vj) = dmax;Step 3 : For vj ∈ Fq , calculate

L(|→Vj)Vj

(vj) =

[dmax − d(vj)

dmax× (2p − 1)

]. (1)

Remark: Noting that dmax is time-invariant. Obviously, theleast possible element vj have the smallest value L

(|→Vj)Vj

(vj);while the most possible element vj has the largest valueL(|→Vj)Vj

(vj).

III. THE μ-EMS ALGORITHM

A. Message-Truncation Rule

Given a log-domain message LZ(z), z ∈ Fq, we maypartition the finite field into F and Fq − F . Three differentmessage-truncation rules have been proposed in [6], which are

FM = {z ∈ Fq|LZ(z) is one of the M

largest components of LZ},(2)

FT = {z ∈ Fq|LZ(z) ≥ T }, (3)

andFD = {z ∈ Fq|Lmax − LZ(z) ≤ D}, (4)

where Lmax denotes the largest component of LZ(z), D andT are designated parameters.

In this paper, we define the following truncation rule,

FµΔ= {z ∈ Fq|LZ(z) ≥ μ},

in which μ is determined by

μ =1

q

∑z∈Fq

LZ(z)− c, (5)

where c is a constant to be designated. That is, μ is equal tothe arithmetic mean of the components of LZ with an offsetof c. The resultant EMS algorithm is referred to as μ-EMS.

Remark: In EMS algorithms, the truncation rules are usedto classify the elements of a message vector into dominantelements and non-dominant elements. Only the dominantelements are used for decoding. On one hand, to reduce thedecoding complexity, the size of the dominant set should beas small as possible. On the other hand, to guarantee theerror performance, the element associated with the transmittedsymbol should be contained in the dominant set, which meansthat the size of the dominant set should not be too small.Intuitively, we need a truncation rule that results in a largedominant set for initial iterations, but a small dominant setwhen the message vector becomes “determined” with itera-tions. For M -EMS, the size of the dominant set is fixed to M .For T -EMS, the threshold T for classification is independentof iterations. For D-EMS, the classification is related to Lmax

and D, where D is independent of iterations. In contrast,the Fµ depends on the whole message vector, and hencecan match to iterations. It can be expected that the μ-EMSalgorithm is preferable for higher order fields1.

B. The μ-EMS Decoding Algorithm

1) V-node: Computing the Extrinsic Message to H-node:Given Xij = x , the event of an V-node Vj being satisfied isequivalent to the event {Vj = x}⋂k �=i{Xki = x}. We have

L(Vj→Hij)Xij

(x) = L(|→Vj)Vj

(x) +∑k �=i

L(Hkj→Vj)Xkj

(x), (6)

where L(|→Vj)Vj

(x) determined by Algorithm 1 and

L(Hkj→Vj)Xkj

(x) are initialized as zeros for x ∈ Fq.2) H-node: Message Permutation: Given Yij = y, the event

of an H-node Hij being satisfied is equivalent to the event{Xij = h−1

ij y}. We have

L(Hij→Ci)Yij

(y) = L(Vj→Hij)Xij

(h−1ij y), y ∈ Fq. (7)

3) C-node: Computing the Extrinsic Message to H-node:Given a truncation rule (FM , FT , FD or Fµ), the messageL(Ci→Hij)Yij

from the Cj to Hij can be calculated by the algo-rithm in [6], in which a scaling parameter will be optimized.

4) H-node: Message Permutation: Given Xij = x, theevent of an H-node Hij being satisfied is equivalent to theevent {Yij = hijx}. Then

L(Hij→Vj)Xij

(x) = L(Ci→Hij)Yij

(hijx), x ∈ Fq. (8)

5) V-node: Making Decisions: For the V-node Vj , 0 ≤ j ≤N − 1, calculate the message

LVj(x) = L(|→Vj)Vj

(x) +∑i∈Mj

L(Hij→Vj)Xij

(x) (9)

and make decisions according to

v̂j = argmaxx∈Fq

LVj(x). (10)

If Hv̂T = 0, output v̂ as the estimated codeword.Remark: Note that the proposed algorithm requires only

integer operations and finite field operations.

1In this case, the message vector has large dimensions.

Page 3: A Variant of the EMS Decoding Algorithm for Nonbinary LDPC Codes

1642 IEEE COMMUNICATIONS LETTERS, VOL. 17, NO. 8, AUGUST 2013

0.5 1 1.5 2 2.5 310

−6

10−5

10−4

10−3

10−2

10−1

100

Eb/N

0(dB)

BE

R/F

ER

QSPAD−EMSM−EMST−EMSμ−EMS

BER

FER

Fig. 2. Performances of different algorithms: C64[142, 71].

10−6

10−5

10−4

10−3

10−2

10−1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Bit Error Rate

Com

plex

ity R

atio

QSPAD−EMSM−EMST−EMSμ−EMS

Fig. 3. Complexity ratios of different algorithms: C64[142, 71].

IV. COMPLEXITY ANALYSIS AND NUMERICAL RESULTS

A. Complexity Analysis

The complexity of the μ-EMS algorithm varies from itera-tion to iteration owing to the adaptive threshold μ. Apparently,for each iteration, the μ-EMS algorithm and the X-EMSalgorithm require less operations than QSPA. However, theymay require more iterations to converge. Therefore, for a faircomparison, we take the complexity ratio

ρ =average number of operations of a given algorithm

average number of operations of the QSPA(11)

as the complexity measurement. Note that the statisticalmean (averaging over frames) of the total number of opera-tions involved in all iterations for decoding one frame is usedin (11). Also note that the ratio in (11) gives a conservativecomparison, as the QSPA requires real operations and the μ-EMS requires integer operations and field operations.

B. Numerical Results

Let Xs and Xb denote the parameters in the truncation ruleX for state metrics and branch metrics, respectively. In our

1.2 1.4 1.6 1.8 2 2.2 2.4 2.610

−6

10−5

10−4

10−3

10−2

10−1

100

Eb/N

0(dB)

BE

R/F

ER

QSPAD−EMSM−EMST−EMSμ−EMS

FER

BER

Fig. 4. Performances of different algorithms: C64[378, 197].

10−6

10−5

10−4

10−3

10−2

10−1

0.2

0.4

0.6

0.8

1

1.2

1.4

Bit Error Rate

Com

plex

ity R

atio

QSPAD−EMSM−EMST−EMSμ−EMS

Fig. 5. Complexity ratios of different algorithms:C64 [378, 197].

simulations, all the algorithms are carried out with maximumiteration number L = 30.

Example 1: We have simulated a 64-ary LDPC codeC64[142, 71] constructed using the PEG method [8] withrow weight 4 and column weight 2. The squared Euclideandistances are quantized with p = 8 and dmax = 40. Theparameters of the implemented algorithms are listed as follows

1) for μ-EMS algorithm, c = 8; for D-EMS algorithm,Ds = 140, Db = 130; for T -EMS algorithm, Ts = 30,Tb = 20; for M -EMS algorithm, M = 32;

2) the scaling factors of the four algorithms are all equalto 0.9.

The simulation results are shown in Fig. 2. It can be seen thatthe μ-EMS algorithm performs as well as X-EMS algorithmsand the QSPA. The complexity ratio ρ’s of these algorithms areshown in Fig. 3. At bit-error-rate (BER) 10−5, the complexityratio of the μ-EMS algorithm is about 0.3 which is the lowest.

Page 4: A Variant of the EMS Decoding Algorithm for Nonbinary LDPC Codes

ZHAO et al.: A VARIANT OF THE EMS DECODING ALGORITHM FOR NONBINARY LDPC CODES 1643

1 1.5 2 2.510

−6

10−5

10−4

10−3

10−2

10−1

100

Eb/N

0(dB)

BE

R/F

ER

QSPAD−EMSM−EMST−EMSμ−EMS

FER

BER

Fig. 6. Performances of different algorithms: C256[106, 53].

10−6

10−5

10−4

10−3

10−2

10−1

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

Bit Error Rate

Com

plex

ity R

atio

QSPAD−EMSM−EMST−EMSμ−EMS

Fig. 7. Complexity ratios of different algorithms:C256 [106, 53].

Example 2: We have simulated a 64-ary LDPC codeC64[378, 197] [9][10] constructed based on finite field. Thesquared Euclidean distances are quantized with p = 8 anddmax = 40. The parameters of the implemented algorithmsare listed below.

1) for μ-EMS algorithm, c = 1; for D-EMS algorithm,Ds = 80, Db = 70; for T -EMS algorithm, Ts = 15,Tb = 15; for M -EMS algorithm, M = 32;

2) the scaling factors of the M -EMS algorithm, the T -EMS algorithm, the D-EMS algorithm and the μ-EMSalgorithm are 0.85, 0.6, 0.6 and 0.8, respectively.

The simulation results are shown in Fig. 4. It can be seenthat the μ-EMS algorithm performs as well as the X-EMSalgorithms and the QSPA. The complexity ratio ρ’s of thesealgorithms are shown in Fig. 5. At BER=10−5, the μ-EMSalgorithm requires the lowest computational loads.

Example 3: We have simulated a 256-ary LDPC codeC256[106, 53] [4]. The squared Euclidean distances are quan-tized with p = 9 and dmax = 70. The parameters of the

implemented algorithms are listed as follows

1) for μ-EMS algorithm, c = 3; for D-EMS algorithm,Ds = 155, Db = 145; for T -EMS algorithm, Ts = 15,Tb = 5; for M -EMS algorithm, M = 128;

2) the scaling factors of the M -EMS algorithm, the T -EMS algorithm, the D-EMS algorithm and the μ-EMSalgorithm are 0.9, 0.8, 0.8 and 0.9, respectively.

The simulation results are shown in Fig. 6. It can be seenthat the μ-EMS algorithm performs as well as the X-EMSalgorithms and the QSPA. The complexity ratio ρ’s of thesealgorithms are shown in Fig. 7. At BER=10−5, the μ-EMSalgorithm requires the lowest computational loads.

Remark: The parameters are selected as follows. We adjustjointly the scaling factor and the offset to minimize the signal-to-noise ratio (SNR) required to achieve the BER around 10−5.Once the parameters are obtained, they are fixed for the codefor all SNRs.

V. CONCLUSION

In this paper, we have proposed a new variant of theEMS algorithm, called μ-EMS, to decode NB-LDPC codes.Simulation results show that the μ-EMS algorithm performs aswell as the X-EMS algorithms and the QSPA. It is also shownthat the μ-EMS requires lower computational loads than QSPAand the X-EMS for NB-LDPC over high order finite fields. Itprovides a good candidate for trade-offs between performanceand decoding complexity for NB-LDPC codes.

REFERENCES

[1] R. G. Gallager, Low-Density Parity-Check Codes. MIT Press, 1963.[2] M. Davey and D. MacKay, “Low-density parity check codes over

GF(q),” IEEE Commun. Lett., vol. 2, pp. 165–167, June 1998.[3] D. Declercq and M. Fossorier, “Decoding algorithms for nonbinary

LDPC codes over GF(q),” IEEE Trans. Commun., vol. 55, pp. 633–643,Apr. 2007.

[4] A. Voicila, D. Declercq, F. Verdier, M. Fossorier, and P. Urard, “Low-complexity decoding for non-binary LDPC codes in high order fields,”IEEE Trans. Commun., vol. 58, pp. 1365–1375, May 2010.

[5] E. Li, K. Gunnam, and D. Declercq, “Trellis based extended min-sum for decoding nonbinary LDPC codes,” in Proc. 2011 InternationalSymposium Wireless Communication Systems, pp. 46–50.

[6] X. Ma, K. Zhang, H. Chen, and B. Bai, “Low complexity X-EMSalgorithms for nonbinary LDPC codes,” IEEE Trans. Commun., vol. 60,pp. 9–13, Jan. 2012.

[7] D. Zhao, X. Ma, C. Chen, and B. Bai, “A low complexity decodingalgorithm for majority-logic decodable nonbinary LDPC codes,” IEEECommun. Lett., vol. 14, pp. 1062–1064, Nov. 2010.

[8] X.-Y. Hu, E. Eleftheriou, and D. Arnold, “Regular and irregular pro-gressive edge-growth Tanner graphs,” IEEE Trans. Inf. Theory, vol. 51,pp. 386–398, Jan. 2005.

[9] L. Zeng, L. Lan, Y. Tai, S. Song, S. Lin, and K. Abdel-Ghaffar,“Constructions of nonbinary quasi-cyclic LDPC codes: a finite fieldapproach,” IEEE Trans. Commun., vol. 56, pp. 545–554, Apr. 2008.

[10] S. Zhao, X. Ma, X. Zhang, and B. Bai, “A class of nonbinary LDPCcodes with fast encoding and decoding algorithms,” IEEE Trans. Com-mun., vol. 61, no. 1, pp. 1–6, 2013.