Upload
baoming
View
215
Download
0
Embed Size (px)
Citation preview
. 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])
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
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
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.
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.
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)
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
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
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
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.
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