11
. RESEARCH PAPER . SCIENCE CHINA Information Sciences February 2014, Vol. 57 022305:1–022305:11 doi: 10.1007/s11432-013-4948-9 c Science China Press and Springer-Verlag Berlin Heidelberg 2014 info.scichina.com link.springer.com Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation WANG XiuNi 1 , MA Xiao 2 & BAI BaoMing 3 1 Department of Computer Engineering, Guangzhou University, Guangzhou 510006, China; 2 Department of Electronics and Communication Engineering, Sun Yat-sen University, Guangzhou 510275, China; 3 State Key Laboratory of ISN, Xidian University, Xi’an 710071, China Received October 12, 2012; accepted February 22, 2013 Abstract This paper is concerned with constructions of nonbinary low-density parity-check (LDPC) codes for adaptive coded modulations (ACM). A new class of efficiently encodable structured nonbinary LDPC codes are proposed. The defining parity-check matrices are composed of scalar circulant sub-matrices which greatly reduce the storage requirement when compared with random LDPC codes. With this special structure of parity- check matrix, an efficient encoding algorithm is presented. Based on the proposed codes, a family of variable- rate/variable-field nonbinary LDPC codes is designed for the ACM system. When combined with matched-size signal constellations, the family of constructed codes can achieve a wide range of spectral efficiency. Furthermore, the resultant ACM system can be implemented via a set of encoder and decoder. Simulation results show that the proposed nonbinary LDPC codes for the ACM system perform well. Keywords adaptive coded modulation (ACM), nonbinary LDPC codes, q-ary codes, variable-field LDPC codes, variable-rate LDPC codes Citation Wang X N, Ma X, Bai B M. Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation. Sci China Inf Sci, 2014, 57: 022305(11), doi: 10.1007/s11432-013-4948-9 1 Introduction Low-density parity-check (LDPC) codes, invented by Gallager in the early 1960s [1] and rediscovered independently by MacKay et al. in the late 1990s [2,3], were shown to be a class of capacity-approaching codes. Various constructions of binary LDPC codes (including random LDPC codes and structured LDPC codes) have been extensively investigated in the literatures. In 1998, Davey and MacKay demonstrated by simulation that randomly constructed nonbinary LDPC codes can outperform binary ones [4]. They also devised an efficient q-ary sum-product decoding algorithm based on Fast Fourier Transform (FFT) over GF(q) [5], which has been further improved by Barnault et al. in 2003 [6]. Zeng et al. proposed constructions of nonbinary LDPC codes based on algebraic methods. They also illustrated that nonbinary LDPC codes can achieve significant coding gain over comparable Reed-Solomon codes [7,8]. As we know, the fascinating performance of nonbinary LDPC codes is at the expense of high decoding complexity. Many researches have focused on the issue of decoding complexity, such as [9,10] and so on. Corresponding author (email: [email protected])

Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

  • Upload
    baoming

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

. RESEARCH PAPER .

SCIENCE CHINAInformation Sciences

February 2014, Vol. 57 022305:1–022305:11

doi: 10.1007/s11432-013-4948-9

c© Science China Press and Springer-Verlag Berlin Heidelberg 2014 info.scichina.com link.springer.com

Design of efficiently encodable nonbinary LDPCcodes for adaptive coded modulation

WANG XiuNi1∗, MA Xiao2 & BAI BaoMing3

1Department of Computer Engineering, Guangzhou University, Guangzhou 510006, China;2Department of Electronics and Communication Engineering, Sun Yat-sen University, Guangzhou 510275, China;

3State Key Laboratory of ISN, Xidian University, Xi’an 710071, China

Received October 12, 2012; accepted February 22, 2013

Abstract This paper is concerned with constructions of nonbinary low-density parity-check (LDPC) codes

for adaptive coded modulations (ACM). A new class of efficiently encodable structured nonbinary LDPC codes

are proposed. The defining parity-check matrices are composed of scalar circulant sub-matrices which greatly

reduce the storage requirement when compared with random LDPC codes. With this special structure of parity-

check matrix, an efficient encoding algorithm is presented. Based on the proposed codes, a family of variable-

rate/variable-field nonbinary LDPC codes is designed for the ACM system. When combined with matched-size

signal constellations, the family of constructed codes can achieve a wide range of spectral efficiency. Furthermore,

the resultant ACM system can be implemented via a set of encoder and decoder. Simulation results show that

the proposed nonbinary LDPC codes for the ACM system perform well.

Keywords adaptive coded modulation (ACM), nonbinary LDPC codes, q-ary codes, variable-field LDPC

codes, variable-rate LDPC codes

Citation Wang X N, Ma X, Bai B M. Design of efficiently encodable nonbinary LDPC codes for adaptive coded

modulation. Sci China Inf Sci, 2014, 57: 022305(11), doi: 10.1007/s11432-013-4948-9

1 Introduction

Low-density parity-check (LDPC) codes, invented by Gallager in the early 1960s [1] and rediscovered

independently by MacKay et al. in the late 1990s [2,3], were shown to be a class of capacity-approaching

codes. Various constructions of binary LDPC codes (including random LDPC codes and structured LDPC

codes) have been extensively investigated in the literatures. In 1998, Davey and MacKay demonstrated

by simulation that randomly constructed nonbinary LDPC codes can outperform binary ones [4]. They

also devised an efficient q-ary sum-product decoding algorithm based on Fast Fourier Transform (FFT)

over GF(q) [5], which has been further improved by Barnault et al. in 2003 [6]. Zeng et al. proposed

constructions of nonbinary LDPC codes based on algebraic methods. They also illustrated that nonbinary

LDPC codes can achieve significant coding gain over comparable Reed-Solomon codes [7,8]. As we know,

the fascinating performance of nonbinary LDPC codes is at the expense of high decoding complexity.

Many researches have focused on the issue of decoding complexity, such as [9,10] and so on.

∗Corresponding author (email: [email protected])

Page 2: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

Wang X N, et al. Sci China Inf Sci February 2014 Vol. 57 022305:2

For data transmission over time-varying channels (e.g. wireless communications), conventional fixed-

parameter systems fail to make full use of the channel capacity. Information theoretic results show that,

if the channel state information (CSI) is available at the transmitter, the transmitter can adapt itself to

achieve capacity-approaching performance. This can be attained in practice using the so-called adaptive

coded modulation (ACM) techniques that adaptively adjust signaling parameters such as transmitting

power, constellation size and channel coding rate, etc. [11]. Typically, ACM varies transmission rates via

adapting constellation size and coding according to the channel conditions. Also note that ACM can be

implemented by adapting the transmitting power with a fixed-rate coded-modulation scheme [12].

The key step to design ACM systems with variable coding is the construction of variable-rate forward

error correction (FEC) codes. Conventionally, ACM systems are designed by combining binary variable-

rate codes and variable-size constellations in a serial concatenation manner. Such a configuration may

incur performance loss especially when no iterations exist between the decoder and the demodulator due

to the required (imperfect) likelihood conversion between the coded bits and the modulated symbols.

In this paper, we will propose to use nonbinary variable-rate LDPC codes over finite fields to implement

ACM systems. Our main contributions include

1) A class of efficiently encodable nonbinary LDPC codes are proposed. The parity-check matrices of

the proposed nonbinary LDPC codes are composed of scalar circulant sub-matrices, which are devised in

two steps. Firstly, a binary base matrix composed of m×n circulant sub-matrices is designed. Secondly, a

nonbinary matrix is constructed by replacing all ones in the binary base matrix with n different non-zero

elements at most from the finite field GF(q). The constructed parity-check matrix is further modified

into a block dual-diagonal form that results in a systematic code with efficient encoding algorithms.

2) Variable-rate nonbinary LDPC codes are constructed by simply shortening the sequence of input

symbols to the encoder. By modulating the shortened nonbinary LDPC codes using a fixed-size constel-

lation, we obtain an ACM system that can be implemented via a set of encoder and decoder.

3) Variable-field nonbinary LDPC codes are proposed, which have a topologically identical factor graph

but operate on different fields. By modulating the variable-field nonbinary LDPC codes using a variable-

size constellation, we obtain an ACM system that can be implemented via a set of encoder and decoder

with easily configurable parameters.

The rest of this paper is organized as follows. Section 2 describes in detail the constructions of the

nonbinary LDPC codes as well as their efficient encoding algorithms. Section 3 presents approaches to

design variable-rate/variable-field nonbinary LDPC codes for ACM systems. Construction examples and

simulation results are provided in Section 4. Section 5 concludes this paper.

2 Construction of nonbinary LDPC codes with efficient encoding

Let GF(q) be the Galois field with q elements. A q-ary LDPC code C with length N and dimension K

is specified by a q-ary low-density parity-check matrix H with M � N −K rows and N columns. Note

that the rank of H is N −K. A vector c = (c0, c1, . . . , cN−1) is a codeword in C if and only if cHT = 0,

where HT denotes the transpose of H and 0 is the zero vector of length M .

A q-ary low-density parity-check matrix can be constructed either in a direct way or in two steps. For

the direct design using finite field approaches, see [8]. In this paper, we employ the two-step method.

First, a binary low-density parity-check matrix (called the binary base matrix) is constructed. Then the

ones in the binary base matrix are replaced by nonzero elements from GF(q).

2.1 Construction of binary base matrices

In principle, any binary low-density parity-check matrix with good cycle properties can be taken as the

base matrix. In this paper, we focus on structured matrices with circulant sub-matrices [13–15].

For a prime positive integer �, the set of positive integers less than � (denoted by Z∗� ) form a group

under the modulo � multiplication. Let a be an element in Z∗� with multiplication order �− 1. Following

Page 3: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

Wang X N, et al. Sci China Inf Sci February 2014 Vol. 57 022305:3

Tanner [14], we define the binary base matrix as

B =

⎛⎜⎜⎜⎜⎜⎝

H0,0 H0,1 · · · H0,�−2

H1,0 H1,1 · · · H1,�−2

...... · · · ...

H�−2,0 H�−2,1 · · · H�−2,�−2

⎞⎟⎟⎟⎟⎟⎠

, (1)

where Hi,j is a circulant sub-matrix of size � × � which is obtained by cyclically shifting the columns

of the identity matrix to the left by a(i+j) mod � positions. That is, the sth column of Hi,j is the

(s+a(i+j) mod �)th column of the identity matrix. The resulting binary matrix is of size �(�−1)×�(�−1).

Let H(b) be a sub-matrix of B in the following form

H(b) =

⎛⎜⎜⎜⎜⎜⎝

H0,0 H0,1 · · · H0,n−1

H1,0 H1,1 · · · H1,n−1

...... · · · ...

Hm−1,0 Hm−1,1 · · · Hm−1,n−1

⎞⎟⎟⎟⎟⎟⎠

. (2)

Then we can use H(b) as a parity-check matrix to define a binary LDPC code. The associated code has a

rate Rc � 1−m/n. It can be shown that the corresponding Tanner graph has girth greater than four [16].

To make this more clear, we take � = 5 as an example. It is easy to verify that a = 2 is an element in

Z∗5 with order �− 1 = 4. We have

B =

⎛⎜⎜⎜⎜⎝

H0,0 H0,1 H0,2 H0,3

H1,0 H1,1 H1,2 H1,3

H2,0 H2,1 H2,2 H2,3

H3,0 H3,1 H3,2 H3,3

⎞⎟⎟⎟⎟⎠

, (3)

where for example,

H1,3 =

⎛⎜⎜⎜⎜⎜⎜⎜⎝

0 0 0 0 1

1 0 0 0 0

0 1 0 0 0

0 0 1 0 0

0 0 0 1 0

⎞⎟⎟⎟⎟⎟⎟⎟⎠

, (4)

which is obtained by cyclically shifting the columns of the identity matrix to the left by 2(1+3) = 1 (mod 5)

positions. If we take the first 2× 4 sub-array of B, we have

H(b) =

(H0,0 H0,1 H0,2 H0,3

H1,0 H1,1 H1,2 H1,3

). (5)

The associated code is a binary [11,17] block code with the minimum distance dmin = 4.

Note that this construction scheme is a slightly generalized version of the method proposed in [14].

2.2 Construction of q-ary low-density parity-check matrices

By construction, every column of H(b) contains m ones and every row of H(b) contains n ones, so there

are in total mn ones in H(b). To construct a q-ary matrix, we may replace all ones in H(b) by nonzero

elements from GF(q). This can be done by randomly selecting a nonzero element for each one in H(b).

The storage for such a random q-ary matrix could be so large that the resulting code may be prohibited

for some applications due to its high implementation complexity. Here we propose a simple assignment for

the nonzero elements of H(b). First, we choose (repetition is allowed) n nonzero elements β0, β1, . . . , βn−1

Page 4: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

Wang X N, et al. Sci China Inf Sci February 2014 Vol. 57 022305:4

from GF(q). A simple way to do this is setting βj = αj for 0 � j � n− 1, where α is a prime element of

GF(q). The q-ary parity-check matrix is then defined as

H =

⎛⎜⎜⎜⎜⎜⎝

β0H0,0 β1H0,1 · · · βn−1H0,n−1

β0H1,0 β1H1,1 · · · βn−1H1,n−1

...... · · · ...

β0Hm−1,0 β1Hm−1,1 · · · βn−1Hm−1,n−1

⎞⎟⎟⎟⎟⎟⎠

. (6)

That is, all the ones in the same binary sub-matrix Hi,j are replaced by an identical element βj . In other

words, the sub-matrix at the ith row and the jth column is a circulant matrix (i.e., a shifted-identity

matrix multiplied by a scalar). It should be pointed out that the nonzero elements in a column of H are

the same value which leads to a class of CS-LDPC codes defined in paper [18]. This can help to lower

both the encoding and decoding complexity.

2.3 Construction of systematic q-ary LDPC codes

It is obvious that the structured q-ary low-density parity-check matrices described above can reduce

greatly the storage requirement compared with random low-density parity-check matrices. However, it is

still complicated to implement the corresponding encoders. This issue is mainly caused by the difficulty to

transform the parity-check matrices into systematic forms. Also note that systematic codes are preferred

for practical applications. In the following, we will modify the proposed parity-check matrices to obtain

systematic codes. To do this, we simply define a q-ary matrix

H = (HL, HR), (7)

where HL is composed of the left-most (n −m)� columns of H and HR is a block dual-diagonal matrix

in the form as

HR =

⎛⎜⎜⎜⎜⎜⎜⎜⎝

H0,k 0 0 0 · · · 0 0

αH1,k H1,k+1 0 0 · · · 0 0

0 αH2,k+1 H2,k+2 0 · · · 0 0...

......

... · · · ......

0 0 0 0 · · · αHm−1,n−2 Hm−1,n−1

⎞⎟⎟⎟⎟⎟⎟⎟⎠

, (8)

where k = n−m and α is a primitive element of GF(q).

Obviously, the code defined by H is a systematic code with dimension K = k�, length N = n� and

code rate Rc = k/n. Based on the parity-check matrix H , an efficient encoder can be devised. Let

u = (u0, u1, . . . , u�k−1) be the information sequence of length �k, where uj ∈ GF(q). The corresponding

codeword is c = (u, v), where v is the parity-check sequence of length m� such that (u, v)HT = 0.

Equivalently, v = −uHTL (H

TR)

−1. The task of the encoder is to compute v. To describe the encoding

algorithm, we partition c into sub-vectors of length �. That is, we write c as

c =(u(0), u(1), . . . , u(k−1), v(0), v(1), . . . , v(m−1)

), (9)

where u(j) (0 � j � k−1) is the jth information sub-vector of length � and v(i) (0 � i � m−1) is the ith

parity-check sub-vector of length �. From the structure of H , we can compute v(i) efficiently according

to the following algorithm.

• Encoding Algorithm.

1. Initialization. Initially, the q-ary information sequence u of length �k is partitioned into k sub-

vectors, i.e., u = (u(0), u(1), . . . , u(k−1)). For 0 � j � k − 1, the jth information sub-vector u(j) is

multiplied by βj , resulting in a vector βju(j) of length �. Set v(−1) = 0.

2. Recursion. For 0 � i � m − 1, compute v(i) recursively according to the following procedure as

illustrated in Figure 1.

Page 5: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

Wang X N, et al. Sci China Inf Sci February 2014 Vol. 57 022305:5

Cyclically shiftedto the right by ai+0

mod l positions

Cyclically shiftedto the right by ai+j

mod l positions

Cyclically shiftedto the right by ai+k−1

mod l positions

Cyclically shiftedto the right by ak+2i−1

mod l positions

Sum

Multiplied by −1 and cyclically shifted to the left by ak+2i mod l positions

β0u(0) … βju(j) … β(k−1)u(k−1) αv(i−1)

β0u(0)HTi,0

βju(j)HTi,j

β(k−1)u(k−1)HTi,k−1

αv(i−1)HTi,k+i−1

∑βju(j)HTi,j + αv(i−1)HT

i,k+i−1

k−1

j=0

v(i) = −(∑βju(j)HTi,j + αv(i−1)HT

i,k+i−1)(HTi,k+i)−1k−1

j=0

Figure 1 A flow chart for calculating the ith parity-check sub-vector v(i).

Step 2.1: For 0 � j � k−1, the jth sub-vector βju(j) is first cyclically shifted to the right by ai+j mod �

positions, resulting in a vector βju(j)HT

i,j of length �.

Step 2.2: The (i−1)th parity-check sub-vector v(i−1) is first multiplied by α and then cyclically shifted

to the right by ak+2i−1 mod � positions, resulting in a vector αv(i−1)HTi,k+i−1 of length �.

Step 2.3: First, all the vectors of length � obtained in previous two steps are added together. Then the

obtained sum is multiplied by −1 and cyclically shifted to the left by ak+2i mod � positions, resulting in

the wanted parity-check sub-vector v(i). That is,

v(i) = −(

k−1∑j=0

βju(j)HT

i,j + αv(i−1)HTi,k+i−1

)(HT

i,k+i

)−1. (10)

We will now demonstrate this procedure by means of an example. Let � = 7. It is easy to verify that

a = 3 is an element in Z∗7 with order �− 1 = 6. Define a parity-check matrix H of size 21× 42 as

H =

⎛⎜⎜⎝

β0H0,0 β1H0,1 β2H0,2 H0,3 0 0

β0H1,0 β1H1,1 β2H1,2 αH1,3 H1,4 0

β0H2,0 β1H2,1 β2H2,2 0 αH2,4 H2,5

⎞⎟⎟⎠ . (11)

Then H defines a q-ary LDPC code of length 42 and dimension 21. Let information sub-vector u(0) =

(1, 0, 0, 0, 0, 0, 0) and information sub-vector u(1) = u(2) = (0, 0, 0, 0, 0, 0, 0). From (10) we know that⎧⎪⎪⎪⎪⎨⎪⎪⎪⎪⎩

v(0) = −(β0u

(0)HT0,0 + β1u

(1)HT0,1 + β2u

(2)HT0,2

) (HT

0,3

)−1,

v(1) = −(β0u

(0)HT1,0 + β1u

(1)HT1,1 + β2u

(2)HT1,2 + αv(0)HT

1,3

) (HT

1,4

)−1,

v(2) = −(β0u

(0)HT2,0 + β1u

(1)HT2,1 + β2u

(2)HT2,2 + αv(1)HT

2,4

) (HT

2,5

)−1.

(12)

From the encoding algorithm described above, we can calculate successively v(0) = (0, 0, 0, 0, 0,−β0, 0),

v(1) = (0, 0,−β0, 0, 0, 0,−αβ0) and v(2) = (0,−(1 + α2)β0, 0, 0,−αβ0, 0, 0). A quick check can verify that

(u0, u1, u2, v0, v1, v2)HT = 0, as required.

Nonbinary LDPC codes can be iteratively decoded using the sum-product algorithm (SPA), FFT-based

q-ary SPA (FFT-QSPA) [5,6,17,19] and extended min-sum (EMS) algorithms [9,10], etc. Compared

with SPA, FFT-QSPA is more efficient without performance degradations, while EMS algorithms have

slightly degraded performance with even lower complexity. In this paper, the FFT-QSPA is used for all

simulations.

Page 6: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

Wang X N, et al. Sci China Inf Sci February 2014 Vol. 57 022305:6

Figure 2 Traditional Tanner graph of q-ary LDPC code. Figure 3 Tanner graph of new constructed q-ary LDPC

code.

2.4 Complexity analysis

Given �, a, m and n, the proposed q-ary systematic LDPC code is uniquely determined by k nonzero

elements β0, β1, . . . , βk−1. This greatly reduces the storage requirement when compared with random

q-ary LDPC codes.

From the encoding algorithm, we can see that the encoding complexity is dominated by arithmetic

operations over GF(q). After initialization, it is not hard to see that only �multiplications and k� additions

are required to compute a parity-check sub-vector of length �. On average, only one multiplications and

k additions are required to compute one parity-check symbol. Therefore, the encoding complexity of

the proposed q-ary LDPC code is linearly proportional to the number of parity-check symbols. More

importantly, Steps 2.1 and 2.2 in the proposed encoding algorithm can be done in parallel, which implies

that the encoding speed can be very high especially for small m.

For decoding algorithm, the traditional Tanner graph is shown in Figure 2, where the symbol “�”

represents a nonbinary element of parity check matrix. During each iteration, the messages exchanging

between variable nodes and parity check nodes have to be permuted for every edge associated with non-

unity element. However the parity check matrix we constructed here is composed of scalar circulant

sub-matrices and has the same nozero element at each column. This special structure leads to a different

Tanner graph shown in Figure 3, which requires fewer permutations and reduces the decoding complexity,

as illustrated in [18].

3 Constructions of nonbinary LDPC codes for the ACM system

3.1 Adaptive coded modulation based on Q-ary LDPC codes

Considering a Rayleigh flat fading channel [20], the discrete-time model is represented by yt = htxt +wt,

where xt, yt, ht and wt are the transmitted signal, the received signal, the channel gain and the additive

white Gaussian noise (AWGN) sample at time t, respectively. In this paper, a slow fading channel is

assumed for our ACM system.

In an ACM system, there are many parameters such as transmitting power, constellation size and

coding rate that can be varied at the transmitter according to the channel gain. Here we consider the

ACM system based on q-ary LDPC codes by changing code and constellation size. The system model

is shown in Figure 4 and described as follows. Based on the currently available CSI from the feedback

channel, the transmitter selects constellation size, field size and coding rate according to a prescribed

strategy for transmission. Assume that the receiver knows this strategy. Based on the received sequence,

the receiver estimates the CSI and feeds it back to the transmitter. Let C[N,K] over GF(q) and X be the

selected code and signal constellation, respectively. The information symbol sequence u is first encoded

into a codeword c ∈ C. The corresponding code rate Rc = K/N . The codeword c is then mapped to a

signal sequence x = {xt} with xt ∈ X . The spectral efficiency for this transmission is

ρ = Rc log2 |X |, (13)

Page 7: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

Wang X N, et al. Sci China Inf Sci February 2014 Vol. 57 022305:7

Variable-rate/variable-fieldnonbinary LDPC encoder

Signalmapper

Channel

Signaldemapper

Channelestimation

Feedbackchannel

u c x

Variable-rate/variable-fieldnonbinary LDPC decoder

y

u

Figure 4 An adaptive coded modulation system based on nonbianry LDPC codes.

where |X | denotes the size of the constellation X . Given the transmission strategy, the average spectral

efficiency can be calculated out.

At the receiver, the demapper takes the received signal sequence y as input and delivers as output

likelihood values for every possible transmitted symbol at each time t. If the constellation size is equal to

the field size, these likelihood values can be directly used as input to the q-ary LDPC decoder. Otherwise,

the conversion from |X | dimensional likelihood vectors to q dimensional likelihood vectors is required.

Therefore we usually set q = |X |.To build a practical ACM system described above, we need a family of nonbinary LDPC codes. These

codes must satisfy the following conditions.

1) These codes should either have different rates or be defined over different fields. A wide range of

spectral efficiency must be achieved by combining them with matched constellations,

2) These codes must be capable of sharing a set of encoder and decoder.

We will discuss the constructions of such a family of LDPC codes in the following subsections.

3.2 Variable-rate nonbinary LDPC codes

Let Cq[N,K] be an LDPC code of length N and dimension K over GF(q) constructed in Section 2. Since

C is a systematic code, we can construct a family of codes by information symbol shortening technique.

The coding rate can be varied by choosing the shortening length λ. It is known that systematic shortened

codes can share the same encoder and decoder with the mother code. To see this, let C(λ)q [N − λ,K − λ]

be a shortened code. Let u′ be the information sequence of length K − λ to be encoded by C(λ)q . We

simply pad λ zeros to u′, resulting in u = (0, u′). The vector u is then encoded using the mother code Cq,producing a codeword c = (u, v). The shortened codeword c′ = (u′, v) is then modulated and transmitted

over the channel. At the receiver, the output from the demapper is first lengthened accordingly and then

set as the input for the decoder of the mother code. Finally, the estimate of u′ is extracted from the

estimate of u.

3.3 Variable-field nonbinary LDPC codes

Let H = (HL, HR) be the matrix in (7) defined over GF(q). The associated code is denoted by Cq[N,K].

Given the binary base matrix, we have observed that Cq is determined uniquely by α ∈ GF(q) and

β = (β0, β1, . . . , βk−1) with βi ∈ GF(q). Now we assume that GF(q′) is another finite field with a

primitive element α′. Let β′ = (β′0, β

′1, . . . , β

′k−1) be a vector of length k over GF(q′) with β′

i �= 0.

Trivially, based on the same binary base matrix, we can define a new code Cq′ [N,K] using α′ and β′.These two codes have the same coding rate. However, when combined with matched-size constellations,

we can obtain variable spectral efficiency. By varying the base fields, we can obtain a family of nonbinary

Page 8: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

Wang X N, et al. Sci China Inf Sci February 2014 Vol. 57 022305:8

LDPC codes. In the following, we will show that all these variable-field LDPC codes can share in essence

the same encoder and decoder with Cq.For practical reasons, we only consider finite fields with characteristic 2). We also assume that the

elements in the considered fields are represented by binary vectors. In this case, all additions involved in

the encoding process can be implemented in a unified way. For multiplications, we turn to table-lookups

that can be switched among different fields easily.

Regarding the implementation of the decoder, we note that variable-field LDPC codes have the same

Factor graph in terms of topological structure. Therefore, the decoding of variable-field LDPC codes can

be implemented in a unified way with the aid of table-lookups.

3.4 Variable-rate variable-field nonbinary LDPC codes

Obviously, the proposed variable-field and variable-rate techniques can be combined to provide more

flexibility of design.

4 Construction examples and numerical results

4.1 New construction of nonbinary LDPC codes

In this section, we will present three q-ary LDPC codes to show the process of systematic construction.

Example 1 (a 16-ary LDPC code). In this example, we will design an LDPC code over GF(16). Set � =

251, a = 6, m = 3 and n = 12. The nonzero sequence we used here is (β0, β1, . . . , β8) = (α3, α4, . . . , α11),

where α is a primitive element of GF(16). The resulting code has code length N = 3012, dimension

K = 2259 and rate Rc = 3/4.

Example 2 (a 32-ary LDPC code). In this example, we will design an LDPC code over GF(32). Set � =

199, a = 3, m = 3 and n = 15. The nonzero sequence we used here is (β0, β1, . . . , β11) = (α3, α4, . . . , α14),

where α is a primitive element of GF(32). The resulting code has code length N = 2985, dimension

K = 2388 and rate Rc = 4/5.

Example 3 (a 64-ary LDPC code). In this example, we will design an LDPC code over GF(64). Set � =

167, a = 5, m = 3 and n = 18. The nonzero sequence we used here is (β0, β1, . . . , β14) = (α3, α4, . . . , α17),

where α is a primitive element of GF(64). The resulting code has code length N = 3006, dimension

K = 2505 and rate Rc = 5/6.

The performance of the above three codes over AWGN channels using BPSK modulation are shown

in Figure 5(a). Also shown in Figure 5(a) are the corresponding Shannon limits. It can be seen that the

gaps between the simulation results and the corresponding Shannon limits are about 0.8 dB.

We also modulate the three codes using 16-QAM, 32-QAM and 64-QAM, respectively. The simulation

results for AWGN channels are shown in Figure 5(b). It can be seen that the gaps between the simulation

results and the corresponding Shannon limits are about 0.8 dB, 1.0 dB and 1.3 dB, respectively.

The simulation results for independent Rayleigh fading channel are shown in Figure 6. Here we assume

that the channel state is perfectly known to the receiver but not known to the transmitter. It can be seen

that the gaps between the simulation results and the corresponding Shannon limits are less than 2.0 dB.

It is worth noting that m = 3 in these three examples. Hence very high speed encoders can be

implemented.

4.2 Variable-rate nonbinary LDPC codes

In this subsection, we will construct a family of variable-rate nonbinary LDPC codes over GF(16). To

design a mother code over GF(16), we set � = 271, a = 6, m = 3 and n = 30. The nonzero sequence we

used here is (β0, β1, . . . , β26) = (α3, α4, . . . , α29), where α is a primitive element of GF(16). The resulting

code has code length N = 8130, code dimension K = 7317 and code rate Rc = 9/10. By information

Page 9: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

Wang X N, et al. Sci China Inf Sci February 2014 Vol. 57 022305:9

1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5

N = 3012, Rc = 3/4

N = 2985, Rc = 4/5

N = 3006, Rc = 5/6Shannon limit of3/4 bits/BPSK symbolsShannon limit of4/5 bits/BPSK symbolsShannon limit of5/6 bits/BPSK symbols

10−1

10−2

10−3

10−4

10−5

10−6

BE

R

Eb/N0 (dB)

(a)

4 6 8 10 12 14 16 18 20

10−1

10−2

10−3

10−4

10−5

10−6

BE

REb/N0 (dB)

16-QAM,N=3012,r=3/432-QAM,N=2985,r=4/564-QAM,N=3006,r=5/6Shannon limit o3bits/16-QAM symbolsShannon limit o4bits/32-QAM symbolsShannon limit o5bits/64-QAM symbols

(b)

Figure 5 Performance of the proposed systematic nonbinary LDPC codes on AWGN channels. (a) BPSK signalling;

(b) QAM signalling.

7 9 11 13 15 17 19 21 23

16-QAM,N=3012,r=3/432-QAM,N=2985,r=4/564-QAM,N=3006,r=5/6Shannon limit of3bits/16-QAM symbolsShannon limit of4bits/32-QAM symbolsShannon limit of5bits/64-QAM symbols

10−1

10−2

10−3

10−4

10−5

10−6

BE

R

Eb/N0 (dB)

Figure 6 Performance of the proposed systematic nonbi-

nary LDPC codes on independent Rayleigh fading channel

with QAM signalling.

4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0 8.5

Rc = 9/10

Rc = 8/9

Rc = 7/8

Rc = 6/7

Rc = 5/6

Rc = 4/5

Rc = 3/4

Rc = 2/3

100

10−2

10−4

10−6

10−8

BE

R

Eb/N0 (dB)

Figure 7 BER performance of variable-rate 16-ary LDPC

codes over AWGN channels using 16-QAM signalling.

symbol shortening technique, we obtain a series of codes with rates (9/10, 8/9, 7/8, 6/7, 5/6, 4/5, 3/4,

2/3, 1/2) and length (8130, 7317, 6504, 5691, 4878, 4065, 3252, 2439, 1626), respectively. We modulate

these codes using 16-QAM signalling. The simulation results for AWGN channels are shown in Figure 7.

The gaps between the simulation results and the corresponding Shannon limits are shown in Figure 8. It

can be seen that the gaps are less than 1.3 dB, verifying the effectiveness of the construction method.

4.3 Variable-field nonbinary LDPC codes

In this subsection, we will construct a family of variable-field nonbinary LDPC codes. We set � = 271,

a = 6, m = 3 and n = 18. Then we may get a systematic binary base matrix B in the form as in (7).

1) Let α be a primitive element of GF(64). To design a code over GF(64), we use (β0, β1, . . . , β14) =

(α3, α4, . . . , α29) to replace the ones in B. The resulting code is denoted by C.2) Let α′ be a primitive element of GF(32). To design a code over GF(32), we use (β′

0, β′1, . . . , β

′14) =

(α′3, α′4, . . . , α′29) to replace the ones in B. The resulting code is denoted by C′.3) Let α′′ be a primitive element of GF(16). To design a code over GF(16), we use (β′′

0 , β′′1 , . . . , β

′′14) =

(α′′3, α′′4, . . . , α′′29) to replace the ones in B. The resulting code is denoted by C′′.As we can see, these three codes C, C′ and C′′ have the same code length N = 4878, the same code

dimension K = 4065 and hence the same code rate Rc = 5/6, but defined over different fields. If we

Page 10: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

Wang X N, et al. Sci China Inf Sci February 2014 Vol. 57 022305:10

2 3 4 5 6 7 8 9 10 11 122.0

2.5

3.0

3.5

4.0

Dat

a ra

te (

bits

/16-

QA

M)

Simulation resultsShannon capacity

Eb/N0 (dB)

Figure 8 Comparison between the simulated results of

variable-rate 16-ary LDPC codes and the Shannon limits.

5 6 7 8 9 10 11 12 13 14 15

10−1

10−2

10−3

10−4

10−5

10−6

BE

R

GF(64), 64-QAMGF(32), 32-QAMGF(16),16-QAMShannon limit of5 bits/64-QAMShannon limits of4.16 bits/32-QAMShannon limits of3.33 bits/16-QAM

Eb/N0 (dB)

Figure 9 Performance of variable-field nonbinary LDPC

codes over AWGN channels with matched-size modulations.

Table 1 Spectral efficiency of variable-rate variable-field LDPC codes (bits/signal)

Rc GF(64)/64-QAM GF(32)/32-QAM GF(16)/16-QAM

9/10 5.4000 4.5000 3.6000

8/9 5.3333 4.4444 3.5556

7/8 5.2500 4.3750 3.5000

6/7 5.1429 4.2857 3.4286

5/6 5.0000 4.1667 3.3333

4/5 4.8000 4.0000 3.2000

3/4 4.5000 3.7500 3.0000

2/3 4.0000 3.3333 2.6667

1/2 3.0000 2.5000 2.0000

modulate these three codes using 64-QAM, 32-QAM and 16-QAM, respectively, we have three different

spectral efficiencies (5 bits/signal, 4 bits/signal and 3 bits/signal, respectively). The simulation results

for AWGN channels are shown in Figure 9. It can be seen that the gaps between the simulation results

and the corresponding Shannon limits are about 1.0 dB.

4.4 Variable-rate variable-field nonbinary LDPC codes

A family of nonbinary LDPC codes can be obtained by combining the variable-rate technique with the

variable-field technique. Shown in Table 1 are some combination examples. It can be seen that a wide

range of spectral efficiency can be achieved using variable-rate variable-field nonbinary LDPC codes.

5 Conclusion

In this paper, we have proposed a family of nonbinary LDPC codes for adaptive coded modulations (ACM).

The parity-check matrices of the constructed nonbinary LDPC codes are composed of scalar circulant

sub-matrices. Such a special structure greatly reduces the storage requirement. Since the proposed

codes are systematic codes, an efficient encoder with linear encoding complexity is devised. Furthermore,

the variable-rate variable-field techniques are proposed to design the nonbinary LDPC codes for ACM

systems. When combined with matched-size constellations, a wide range of spectral efficiency can be

obtained. Meanwhile, the proposed ACM system based on variable-rate variable-field codes can be eas-

ily implemented via a set of encoder and decoder. It has been shown by simulation that variable-rate

variable-field nonbinary LDPC codes perform well.

Page 11: Design of efficiently encodable nonbinary LDPC codes for adaptive coded modulation

Wang X N, et al. Sci China Inf Sci February 2014 Vol. 57 022305:11

Acknowledgements

This work was supported jointly by National Basic Research Program of China (973 Program) (Grant No.

2012CB316100), National Natural Science Foundation of China (Grant Nos. 61100224, 61302061), Foundation for

Distinguished Young Talents in Higher Education of Guangdong, China (Grant No. LYM11095), and Foundation

for Distinguished Young Talents in Higher Education of Guangzhou, China (Grant No. 10A052).

References

1 Gallager R G. Low density parity check codes. IRE Trans Inform Theory, 1962, 8: 21–28

2 MacKay D J C, Neal R M. Near Shannon limit performance of low density parity check codes. Electron Lett, 1997,

33: 457–458

3 Spielman D A. Linear-time encodable and decodable error-correcting codes. IEEE Trans Inform Theory, 1996, 42:

1723–1731

4 Davey M C, MacKay D J C. Low density parity check codes over GF(q). IEEE Commun Lett, 1998, 2: 165–167

5 MacKay D J C, Davey M C. Evaluation of gallager codes for short block length and high rate application. In:

International Conference on Mathematic and its Applications: Codes, Systems and Graphincal Models, New York,

2000. 113–130

6 Barnault L, Declercq D. Fast decoding algorithm for nonbinary LDPC codes over GF(q). In: IEEE Information Theory

Workshop, Paris France, 2003. 70–73

7 Zeng L Q, Lan L, Tai Y Y, et al. Dispersed Reed-Solomon codes for iterative decoding and construction of q-ary LDPC

codes. In: IEEE Global Telecommunications Conference, St. Louis, 2005. 1193–1198

8 Zeng L Q, Lan L, Tai Y Y, et al. Constructions of nonbinary quasi-cyclic LDPC codes: a finite field approach. IEEE

Trans Commun, 2008, 56: 545–554

9 Voicila A, Declercq D, Verdier F, et al. Low-complexity, low-memory EMS algorithm for nonbinary LDPC codes. In:

IEEE International Conference on Communications, Glasgow, 2007. 671–676

10 Ma X, Zhang K, Chen H Q, et al. Low complexity X-EMS algorithms for nonbinary LDPC codes. IEEE Trans

Commun, 2012, 60: 9–13

11 Goldsmith A. Wireless Communications. Cambridge: Cambridge University Press, 2005

12 Caire G, Kumar K R. Information theoretic foundations of adaptive coded modulation. Proc IEEE, 2007, 95: 2269–

2273

13 Kou Y, Lin S, Fossorier M P C. Low-density parity-check codes based on finite geometries: a discovery and new results.

IEEE Trans Inform Theory, 2001, 47: 2711–2736

14 Tanner R M, Sridhara D, Sridharan A, et al. LDPC block and convolutional codes based on circulant matrices. IEEE

Trans Inform Theory, 2004, 50: 2966–2984

15 Lan L, Zeng L Q, Tai Y Y, et al. Construction of quasi-cyclic LDPC codes for AWGN and binary erasure channels: a

finite field approach. IEEE Trans Inform Theory, 2007, 53: 2429–2458

16 Fossorier M. Quasi-cyclic low-density parity-check codes from ciuculant permutation matrices. IEEE Trans Inform

Theory, 2004, 50: 1788–1793

17 Declercq D, Fossorier M. Decoding algorithms for nonbinary LDPC codes over GF(q). IEEE Trans Commun, 2007,

55: 633–643

18 Zhao S C, Ma X, Zhang X Y, et al. A class of nonbinary LDPC codes with fast encoding and decoding algorithms.

IEEE Trans Commun, 2013, 60: 1–6

19 Goupil A, Colas M, Gelle G, et al. FFT-based BP decoding of general LDPC codes over Abelian groups. IEEE Trans

Commun, 2007, 55: 644–649

20 Zhu H L, Wang J Z. Chunk-based resource allocation in OFDMA systems—Part I: chunk allocation. IEEE Trans

Commun, 2009, 57: 2734–2744