Content uploaded by Xingcheng Liu
Author content
All content in this area was uploaded by Xingcheng Liu on Oct 09, 2019
Content may be subject to copyright.
IEEE COMMUNICATIONS LETTERS, VOL. 19, NO. 2, FEBRUARY 2015 147
Variable-Node-Based Dynamic Scheduling Strategy for
Belief-Propagation Decoding of LDPC Codes
Xingcheng Liu, Senior Member, IEEE, Yuanbin Zhang, and Ru Cui
Abstract—Among the belief-propagation (BP) decoding algo-
rithms of low-density parity-check (LDPC) codes, the algorithms
based on dynamic scheduling strategy show excellent perfor-
mance. In this letter, we propose a variable-node-based dynamic
scheduling decoding algorithm. For the proposed algorithm,
the reliability of variable nodes is evaluated based on the log-
likelihood ratio (LLR) values and the parity-check equations;
then, a more accurate dynamic selection strategy is presented.
Simultaneously, the oscillating variable nodes are processed so
that the influence of the spread of error messages caused by
oscillation are suppressed. In addition, the proposed algorithm
updates the same number of messages in one iteration as the
original BP decoding algorithm does, which is different from some
other dynamic decoding algorithms. Simulation results demon-
strate that the proposed algorithm outperforms other algorithms.
Index Terms—Belief-propagation (BP), dynamic scheduling
strategy, low-density parity-check (LDPC) codes, dynamic selec-
tion strategy, oscillating variable nodes.
I. INTRODUCTION
LOW-DENSITY PARITY-CHECK (LDPC) codes which
were proposed in 1962 [1] had been proved to approach
the Shannon-limit performance with the belief-propagation
(BP) decoding algorithm [2]. Scheduling strategies play an im-
portant role in decoding algorithms of LDPC codes [3]. Among
them, the parallel scheduling strategy is the basic one, in which
all check-to-variable (C2V) messages are updated simultane-
ously first and then all variable-to-check (V2C) messages are
updated simultaneously [1]. The serial scheduling strategy is
another one, with which the messages are updated serially
according to a fixed update sequence [4], [5]. Simulation results
show that the serial scheduling strategy surpasses the parallel
one [6]. Recently, a better hardware-friendly fixed schedule is
presented [7].
Though the serial scheduling strategy has excellent perfor-
mance, the fixed update sequence is not always the best op-
tion since the error-correcting performance can still be further
improved. To this end, the residual belief propagation (RBP)
algorithm [8] is designed to formulate the update sequence, and
a new scheduling strategy, the informed dynamic scheduling
strategy, is presented [9], [10]. As for the informed dynamic
scheduling strategy, messages are updated according to the
residual, and the message with the maximum residual is up-
Manuscript received July 1, 2014; revised November 30, 2014 and December
15, 2014; accepted December 16, 2014. Date of publication December 22,
2014; date of current version February 6, 2015. This work was supported by
the National Natural Science Foundation of China under Grants 60970041
and 61173018. The associate editor coordinating the review of this paper and
approving it for publication was H. Saeedi.
The authors are with the School of Information Science and Technology,
Sun Yat-sen University, Guangzhou 510275, China (e-mail: isslxc@mail.
sysu.edu.cn).
Color versions of one or more of the figures in this paper are available online
at http://ieeexplore.ieee.org.
Digital Object Identifier 10.1109/LCOMM.2014.2385096
dated first. Simulation results demonstrated that the informed
dynamic scheduling strategy has outstanding performance with
fewer iterations. Since then, some decoding algorithms us-
ing informed dynamic scheduling strategy were introduced,
such as the Variable-to-Check residual belief-propagation (VC
RBP) [11], the efficient dynamic scheduling for layered
belief-propagation (EDS-LBP) [12], the informed Variable-
to-Check residual belief-propagation (IVC RBP) [13], the
quota-based residual belief-propagation (Q-RBP) [14] and the
silent-Variable-node-free residual belief-propagation (SVNF-
RBP) [14]. Recently, such strategy for decoding of non-binary
LDPC codes [15] was also presented.
Dynamic selection strategy is an important part in dynamic
decoding algorithm. In this letter, a more accurate dynamic
selection strategy is proposed. The oscillation phenomenon
of variable nodes, which was not paid enough attention in
the dynamic decoding algorithms, is also discussed, and a
method that processes the oscillation is presented. Based on the
new dynamic selection strategy and the suggested oscillation
processing method, we propose a new dynamic decoding algo-
rithm. Simulation results illustrate that the proposed algorithm
could not only increase convergence speed but improve the
error-correcting performance at medium to high signal-to-noise
ratio (SNR) when compared to other algorithms.
II. LLR BP DECODING ALGORITHM
A binary LDPC code is represented by an M×Nmatrix H.
This matrix can be expressed with the Tanner Graph that is
composed of Nvariable nodes, vj, and Mcheck nodes, ci, where
j=1,2,...,N,i=1,2,...,M. At the beginning of the decoding
algorithm, every variable node is initialized with the informa-
tion transmitted from the channel. We only discuss the decoding
algorithms with computation of information reliability in the
common log domain. The log-likelihood ratio (LLR) Cvj,ofthe
information for variable node vj, is computed as follows
Cvj=logp(yj|vj=0)
p(yj|vj=1),(1)
where the received signal yj=(1−2vj)+zfor binary phase-
shift keying (BPSK) modulation, zis a Gaussian distribution
random variable with mean 0 and variance σ2. The messages
from the check nodes cito variable nodes vj(C2V) are
propagated with
mci→vj=2arctanh ⎛
⎝∏
vb∈N(ci)\vj
tanh mvb→ci
2⎞
⎠,(2)
where N(ci)\vjdenotes all the variable nodes connected to
check node ciexcept variable node vj.
1089-7798 © 2014 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission.
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6994784
Xingcheng Liu, Yuanbin Zhang, and Ru Cui, Variable-Node-Based Dynamic Scheduling Strategy for Belief-Propagation Decoding of LDPC Codes,
IEEE Communications Letters, 19(2): 147-150, Feb. 2015.
148 IEEE COMMUNICATIONS LETTERS, VOL. 19,NO. 2, FEBRUARY 2015
The messages sent from the variable nodes to check nodes
(V2C) are
mvj→ci=∑
ca∈N(vj)\ci
mca→vj+Cvj,(3)
where N(vj)\cidenotes all the check nodes connected to vari-
able node vjexcept check node ci. After updating all the C2V
and V2C messages, the decoded LLR value of each variable
node vjis given as
L(vj)= ∑
ca∈N(vj)
mca→vj+Cvj.(4)
A hard decoding decision is made based on the LLR values
of these variable nodes given by (4). The LLR BP decoding
algorithm runs iteratively, where the entire operation, including
updating all the C2V and V2C messages, is counted as one
iteration. The algorithm continues the iterative processing until
either all the parity check equations are satisfied or the maxi-
mum number of iterations is reached.
III. THE PROPOSED ALGORITHM
A. Dynamic Selection Strategy
Unlike the serial strategy, the dynamic scheduling strategy
does not have a fixed update sequence. In fact, before the
next update step starting, the dynamic selection strategy is first
processed to determine which edge (node) will be updated.
Usually, the dynamic decoding algorithms update the least
reliable message preferentially. It is the main purpose of the
dynamic selection strategy that is to choose the least reliable
message. Most of the dynamic decoding algorithms [11], [14]
only take the residual as the basis of the dynamic selection
strategies, where the residual is computed as
r(mk)=f(mk)−mk,(5)
where r(mk)denotes the residual, mkand f(mk)denote the edge
(node) message before and after an update, respectively.
In the proposed dynamic decoding algorithm, the update
sequence of the information is formulated from the viewpoint
of the variable nodes, which is that the least reliable variable
has the highest updating priority. However, whether a variable
node is least reliable or not does not just only rely on the
residual. So, if the least reliable node is judged only based
on the single condition, the criterion thus yielded is not so
accurate as it should be. In fact, the variable node with the
largest residual does not mean this variable node is definitely
the least stable. In our proposed dynamic selection strategy, a
more accurate criterion with a combination of triple judgments
is adopted. First, all variable nodes are divided into two sets,
one of which consists of variable nodes whose signs of the
LLR change before and after an update, and is denoted with
C, the other of which consists of the remaining variable nodes.
Then, the number of unsatisfied parity check equations of
each variable node is counted. Thus, the largest number of the
unsatisfied parity check equations is found and denoted with P.
Obviously, P≤M. The variable nodes in set Cwhose number
of the unsatisfied parity check equations reaches Paretobe
marked and denoted with the subset, denoted with C1, while the
unmarked variable nodes form the other subset, denoted with
C2. Finally, if subset C1is non-empty, the variable node with
the largest residual in C1is to be chosen as the next one to
be updated, while the variable node with the largest residual
in set C2is to be selected for updating if C1is empty and C2is
non-empty. However, the set Ccan also be empty. If the case
appears, the variable node with the largest residual among all
the variable nodes is chosen as the next one to be updated.
Intuitively, the new dynamic selection strategy can select the
least reliable variable node more accurately than the strategy
only using one single judgement for updating [10].
B. Oscillation of Variable Nodes
The error types of the LLR BP decoding algorithm were
studied years ago [16], one of which is that the decoder does
not converge due to the oscillation of variable nodes, where
the oscillation is defined as the LLR sign changes before and
after an update [11], [14]. The reason why the variable nodes
oscillation happens is that there are two or more cycles through
one variable node. Meanwhile, the accurate and inaccurate
messages looping in the cycle and arrive at the variable node
with different times [16]. The oscillation reason is related to the
structure of the parity check matrix and has little to do with the
decoding algorithms. So, the phenomenon of the variable nodes
oscillation appears in nearly all the BP algorithms. Unfortu-
nately, all the recently-proposed dynamic decoding algorithms
neglect to treat the problem. So, no specific method is taken to
decrease the effect of the variable nodes oscillation.
As has been well-known, the main characteristic of dynamic
decoding algorithms is that one variable node can generate new
messages as many times as possible in one iteration and the
newest variable node message can be immediately used in the
same iteration. The processing of variable nodes oscillations
in dynamic decoding algorithms is very important. When a
variable node oscillates, it is relatively unreliable and tends to
be selected by the dynamic selection strategy. Meanwhile, the
method proposed here is taken to handle the oscillation. If this
variable node oscillates again, it will also be re-selected. Conse-
quently, this variable node will be updated many times and the
oscillation will also be processed many times in one iteration,
which leads to the consequence that the influence of the variable
node oscillation becomes smaller and smaller during decoding.
When processing the node oscillations, the method suggested
here is employed to recompute the LLR value as
L(vj)i←L(vj)i−1+L(vj)i,(6)
where L(vj)i−1and L(vj)irepresent the LLR values of the j-th
variable node before and after an update, respectively. When
a variable node oscillates, it means either the LLR value of
the variable node before an update or that after an update can
reflect the correct case. However, it is difficult to distinguish
which one among those before and after an update is correct.
Therefore, we take the sum of the variable node LLR value
before and after an update for the new generated message. In
this way, the incorrect LLR value will be counteracted by the
correct one to some extent.
C. The Proposed OV-RBP Algorithm
So far, we presented the two key steps for the dynamic de-
coding algorithm to be proposed. Because the new algorithm is
suggested based on the oscillating variable nodes, the algorithm
LIU et al.: VARIABLE-NODE-BASED DYNAMIC SCHEDULING STRATEGY FOR BP DECODING 149
TAB L E I
COMPUTATION COMPLEXITY TABLE OF DIFFERENT DECODING ALGORITHMS
is accordingly named as the oscillating variable nodes based
residual belief propagation (OV-RBP) algorithm. Now, the con-
crete update steps are to be introduced as follows. The first
step, all the LLR values of variable nodes are computed and
the dynamic selection strategy is performed to select the least
reliable variable node. Without loss of generality, we assume
that the selected variable node is vj. The next step, for all
the check nodes which are connected to variable node vj,the
corresponding C2V messages are updated. The third step, the
LLR value of variable node vjupdated with the new C2V
messages is calculated and an oscillation decision is made
for vj.Ifvjoscillates, the oscillation is to be processed with
(6). Again the next step, for all the check nodes which are
connected to variable node vj, the corresponding V2C messages
are updated. The last step, for each check node cathat is
connected to variable node vj, the LLR values of variable nodes
which are connected to caexcluding vjare computed and the
dynamic selection strategy is performed.
The OV-RBP algorithm in pseudo-code is given below.
Algorithm OV-RBP
1: Initialize all mc→v=0
2: Initialize all mvi→c=Cviusing (1)
3: for every check node cado
4: for every variable node vi∈N(ca)do
5: Compute mca→viusing (2)
6: end for
7: end for
8: for every variable node vido
9: Compute L(vi)using (4) and r(vi)using (5)
10: end for
11: Perform the proposed dynamic selection strategy and
select the least reliable variable node vi
12: for every ca∈N(vi)do
13: Generate and propagate mca→viusing (2)
14: end for
15: Calculate L(vi)using (4)
16: Make oscillation decision for vi
17: if variable node vioscillates then
18: Recalculate LLR value using (6)
19: end if
20: Set r(vi)=0
21: for every ca∈N(vi)do
22: Generate and propagate mvi→causing (3)
23: end for
24: if stopping rule is not satisfied then
25: Go back to line 3
26: end if
D. Computation Complexity of the OV-RBP Algorithm
In the analysis of the computation complexity of the OV-
RBP algorithm, it is assumed that, dcand dvdenote the average
degrees of check nodes and variable nodes respectively, and E
is the total number of edges in the Tanner Graph. It is easy to
obtain the relations, E=dc·M=dv·N, no matter which type of
LDPC codes (regular or irregular) is used. The total number of
updates for all of the variable nodes in one iteration is computed
as the computation complexity. For convenient comparison,
the computation complexity of different decoding algorithms
is presented in Table I. It is clear that the proposed OV-RBP
algorithm updates 2Emessages (Efor C2V and V2C each)
in one iteration, which is the same as that of the original BP
algorithm [1]. However, for other dynamic decoding algorithms
like the NWRBP [10] and the VC RBP [11], more than 2E
messages are required to be updated in one iteration, which
means the OV-RBP algorithm needs more than one iteration
to update the same number of messages. Furthermore, the OV-
RBP has lower computation complexity than the NWRBP [10]
and the IVC RBP [13].
IV. S IMULATION RESULTS
In order to examine the error-correcting performance of the
proposed OV-RBP algorithm, simulations are performed over
the AWGN channel with BPSK modulation. In the simulation,
six other decoding algorithms are used for comparison, where
the LDPC codes are constructed based on the IEEE 802.16e
standard [17]. The maximum number of iterations is set to 5.
Fig. 1 shows the bit error rate (BER) performance of the dif-
ferent decoding algorithms for block-length 576 LDPC codes.
From Fig. 1, it is clearly shown that the OV-RBP algorithm
obtains the best BER performance at medium to high SNR
among the algorithms of interest. One of the main reasons is
that the proposed dynamic selection strategy can better over-
come the influence of trapping sets [18] on the error correction
performance of LDPC codes. Meanwhile, the processing of
oscillating variable nodes can decrease the influence of error
information propagating in the Tanner Graph. The BER perfor-
mance vs. the number of iterations for block-length 576 LDPC
codes at Eb/N0=2.2 dB is presented in Fig. 2. It is demon-
strated that the OV-RBP algorithm converges faster than any
other algorithms within about 25 iterations and has almost the
same performance as that of the excellent IVC RBP algorithm
[13] when the iterations exceed 25. Fig. 3 indicates the BER vs.
Eb/N0performance of the different algorithms for block-length
2304 LDPC code. From these figures, it is clearly observed that
the OV-RBP algorithm has better BER performance and faster
convergence speed than any other algorithms.
150 IEEE COMMUNICATIONS LETTERS, VOL. 19,NO. 2, FEBRUARY 2015
Fig. 1. BER vs. Eb/N0performance of (576, 288) LDPC code for LLR BP,
CSBP, NWRBP, VC RBP, EDS-LBP, IVC RBP and OV-RBP.
Fig. 2. BER vs. the number of iterations performance of (576, 288) LDPC
code at Eb/N0=2.2 dB for LLR BP, CSBP, NWRBP, VC RBP, EDS-LBP,
IVC RBP and OV-RBP.
Fig. 3. BER vs. Eb/N0performance of (2304, 1152) LDPC code for LLR BP,
CSBP, NWRBP, VC RBP, EDS-LBP, IVC RBP and OV-RBP.
V. C ONCLUSION
An variable nodes based dynamic decoding algorithm is
proposed. A more accurate dynamic selection strategy using
triple judgements is designed, which helps the OV-RBP algo-
rithm to overcome the influence of the trapping sets effectively.
Meanwhile, the oscillating variable nodes are processed in
the proposed algorithms in order to decrease the influence
of error information caused by oscillation. The comparison
targeting the OV-RBP algorithm is relatively fair for the reason
that it updates the same number of messages as that of the
original BP algorithm in one iteration. However, the number
of messages updated in one iteration in most of the other
dynamic decoding algorithms is larger than that of the proposed
algorithm. Simulation results demonstrate that the OV-RBP
algorithm outperforms other decoding algorithms in terms of
BER performance and convergence speed. Further study shows
the high accurateness of the OV-RBP algorithm.
REFERENCES
[1] R. Gallager, “Low-density parity-check codes,” IRE Trans. Inf. Theory,
vol. 8, no. 1, pp. 21–28, Jan. 1962.
[2] D. MacKay and R. Neal, “Near Shannon limit performance of low-density
parity-check codes,” IEEE Electron. Lett., vol. 32, no. 18, pp. 1645–1646,
Aug. 1996.
[3] Y. Y. Mao and A. H. Banihashemi, “Decoding low-density parity-check
codes with probabilistic scheduling,” IEEE Commun. Lett., vol. 5, no. 10,
pp. 414–416, Oct. 2001.
[4] M. M. Mansour and N. R. Shanbhag, “High-throughput LDPC decoders,”
IEEE Trans. Very Large Scale Integr. Syst., vol. 11, no. 6, pp. 976–996,
Dec. 2003.
[5] J. Zhang and M. Fossorier, “Shuffled belief propagation decoding,” IEEE
Trans. Commun., vol. 2, no. 53, pp. 209–213, Feb. 2005.
[6] E. Sharon, S. Litsyn, and J. Goldberger, “Efficient serial messagepassing
schedule for LDPC decoding,” IEEE Trans. Inf. Theory, vol. 53, no. 11,
pp. 4076–4091, Nov. 2007.
[7] H. C. Lee and Y. L. Ueng, “LDPC decoding scheduling for faster con-
vergence and lower error floor,” IEEE Trans. Commun., vol. 62, no. 9,
pp. 3104–3113, Sep. 2014.
[8] G. Elidan, I. McGraw, and D. Koller, “Residual belief propagation:
Informed scheduling for asynchronous message passing,” in Proc.
22nd Conf. Uncertainty Artif. Intell., Cambridge, MA, USA, Jul. 2006,
pp. 165–173.
[9] A. V. Casado, M. Griot, and R. Wesel, “Informed dynamic scheduling
for belief-propagation decoding of LDPC codes,” in IEEE Int. Conf.
Commun., Glasgow, UK, Jun. 2007, pp. 923–937.
[10] A. V. Casado, M. Griot, and R. Wesel, “LDPC decoders with informed
dynamic scheduling,” IEEE Trans. Commun., vol. 58, no. 12, pp. 3470–
3479, Dec. 2010.
[11] J. H. Kim, M. Y. Nam, and H. Y. Song, “Variable-to-check residual belief
propagation for LDPC codes,” IET Electron. Lett., vol. 45, no. 2, pp. 117–
118, Jan. 2009.
[12] G. J. Han and X. C. Liu, “An efficient dynamic schedule for layered belief-
propagation decoding of LDPC codes,” IEEE Commun. Lett., vol. 13,
no. 12, pp. 950–952, Dec. 2009.
[13] Y. Gong, X. C. Liu, W. C. Ye, and G. J. Han, “Effective informed dynamic
scheduling for belief propagation decoding of LDPC codes,” IEEE Trans.
Commun., vol. 59, no. 10, pp. 2683–2691, Oct. 2011.
[14] H. C. Lee, Y. L. Ueng, S. M. Yeh, and W. Y. Weng, “Two informed
dynamic scheduling strategies for iterative LDPC decoders,” IEEE Trans.
Commun., vol. 61, no. 3, pp. 886–896, Mar. 2013.
[15] G. J. Han, Y. L. Guan, and X. M. Huang, “Check node reliability-based
scheduling for BP decoding of non-binary LDPC codes,” IEEE Trans.
Commun., vol. 61, no. 3, pp. 877–885, Mar. 2013.
[16] G. Lechner and J. Sayir, “On the convergence of log-likelihood values in
iterative decoding,” in Mini-Workshop Topic Inf. Theory, Essen, Germany,
Sep. 2002, pp. 1–4.
[17] LDPC coding for OFDMA PHY., IEEE C802.16e-05/0066r3.
[18] T. Richardson, “Error floors of LDPC codes,” in Proc. Allerton
Conf. Communications, Control and Computing, Monticello, VA, USA,
Oct. 2003, pp. 1426–1435.