Layered Offset Min-sum Decoding for Low Density
Parity Check Codes
Nejwa EL Maammar
Electronics, Instrumentation and
Measurements
Faculty of Sciences and Technologies
Moulay Ismail University
Errachidia, Morocco
nejwa.elmaammar@gmail.com
Seddik Bri
Materials and Instrumentation
(MIN)
High School of Technology
Moulay Ismail University
Meknes,Morocco
briseddik@gmail.com
Abstract—Offset Min-Sum Algorithm (OMSA) and
Normalized Min-Sum Algorithm (NMSA) are widely used in
commercial LDPC decoders due to low complexity and
reasonable performance. In this paper we proposes an
Adaptive Layered Offset min- sum algorithm for the decoding
of LDPC codes, which utilizes an adaptive offset factor to
improve the accuracy of the soft information transferred
during the iterative decoding process, and it provides good
performance accordingly. The performed simulations showed
that the layered offset min-sum decoding for LDPC codes can
provide significant improvement compared to existing MS
based algorithm, OMSA and NMSA.
Keywords—Min-sum, Sum-product, Normalized min-sum,
Offset min-sum, AWGN, Rayleigh.
I. INTRODUCTION
Low-density parity-check (LDPC) codes, that were first
presented by Gallager [1] in the early 1960s and
rediscovered by MacKay and Neal in 1996 [2], has received
much attention in wireless communication systems because
of its excellent performance in error correction. LDPC codes
have been shown to asymptotically give near-capacity
performance when the sum-product algorithm (SPA) is used
for decoding [3]. Originally, a codeword was decoded by
using a standard sum–product (SP) algorithm [4]. However,
the high computational complexity of its check node
operation results in high hardware overhead in the design of
an LDPC decoder [5]. To replace the SP algorithm, a minsum (MS)-based algorithm, was proposed [9].
The Min-Sum algorithm can significantly reduce the
hardware complexity of SP at the cost of acceptable
performance degradation [6] where complex computations
at the check nodes are approximated by using simple
comparison and summation operations. The Min-Sum
algorithm performs optimal iterative decoding at
computational instability, increased complexity and
dependence on thermal noise [8]. Sub optimal iterative
coding is performed by Min-Sum algorithm with less
complex than Sum Product decoding algorithm [7].
In order to recover the performance loss of the Min-Sum
decoding several correction methods were proposed in the
literatures [10], for instance Normalized min-sum algorithm
that was proposed by Chen and Fossorier [12].
00978-1-5386-7328-7/18/$31.00 ©2018 IEEE
Jaouad Foshi
Electronics, Instrumentation and
Measurements
Faculty of Sciences and Technologies
Moulay Ismail University
Errachidia, Morocco
j.foshi@fste.umi.ac.ma
The MS algorithm has a performance loss compared to BP
algorithm, and it comes from the overestimation of the
message at check nodes. Therefore, the decoding
performance can be improved by employing normalization
or offset operation at check nodes, and these improved
algorithms are called as normalized min-sum (NMS) and
offset min-sum (OMS) algorithm [13]. These algorithms
share the idea that the performance loss can be recovered by
reducing the amplitudes of check-node messages, which is
desirable as these messages are actually overestimated
within the Min-Sum decoding.
Our paper is divided into six subsections. First section
deals with introduction and a short summary about LDPC
decoding algorithms. Second Section gives the Review of
Sum-Product and Min-Sum Algorithms. Section III explains
our proposed layered offset Min-sum algorithm. Section IV
shows the simulation results, and finally the last section
gives a general conclusion.
II. REVIEW OF SUM-PRODUCT AND MIN-SUM
ALGORITHMS
In this work we assume an (N, j, k) regular LDPC code of
length N having a small fixed number ’j’ of ones in each
] , and a small
column of the parity check matrix A= [
fixed number ’k’ of ones in each rows of A with M=N-K
rows and N columns . In a Tanner graph of LDPC code,
denote the elements of the first class that are N variable
nodes corresponding to the encoded symbols and the
elements of the second class are M parity-check nodes
denoted by
corresponding to the parity checks
represented by the rows of the matrix A. We refer the M
rows the checks of A, and the set of checks in which bit n
participates as M(n) ={m:
= 1}. We denote all the
elements of an LDPC codeword as variables, and the set of
variables that participate in check m by N(m) = {n:
=
1}. We also denote M(n) the set of check nodes connected
to symbol node
(i.e. the positions of ones in the
column of the parity-check matrix A) and let N(m) denotes
the set of symbol nodes that participate in the
parityrow of
check equation (i.e. the positions of ones in the
H).
Furthermore, N(m)\n represents the set N(m). We also
denote N(m)\n as the set of N(m) with bit n excluded, and
similarly, M(n)\n represents the set M(n) with check m
excluded.
x Step 3: Vertical Step
A posteriori information:
+ ∑
=
∈ ( )
(4)
→
Bit node Processing:
+ ∑
=
→
∈ ( )
(5)
→
x Step 4: Decoding
Fig. 1. Tanner graph representation for LDPC Code (10, 2, 4).
Assume c = [ , , … … . ] the codeword, before
transmission, it is mapped to a signal constellation to
obtain the vector = [ , , … … , ] , where
=2∗
−1
(1)
Is the transmitted information through an AWGN
channel with variance:
=[ ,
=
2
,
……,
=
Where;
]
+
(2)
> 0;
B. Min-Sum Algorithm
The Min-Sum algorithm follows the same steps as the
tanhrule SPA. The sum–product algorithm can be modified
to reduce the implementation complexity of the decoder. It
is composed of the same steps with only single change in
the calculation of the horizontal step which can be
manipulated to be:
This can be done by altering the Horizontal step:
→
The sum–product algorithm can be modified to reduce
the implementation complexity of the decoder [14]. This can
be summarized in the following four steps:
x Step 1: Initialization
A priori information,
= −
Bit to check message initialization,
=
→
→
2 tan
)
2)
(7)
=
=
∏ sgn (
= ∏ sgn (
→
(
→
)
)
∏ ∈ ( )\
(
→
)
)
(3)
: The LLR sent from check node m to bit node n.
∶ The LLR sent from bit node n to check node m.
→
|
) 2 tan
∏ tanh
|
→
(8)
2
݊ ∈ ܰ(݉)\݊
݊ ∈ ܰ(݉)\݊
∏ ∈ ( )\
|
) ∏ tanh
→
݊ ∈ ܰ(݉)\݊
Where;
→
→
tanh(
(6)
2 tan
Check node Processing:
→
∈ ( )\
Using the relationship:
→
x Step 2: Horizontal Step
= log
∏
= 2 tan
Equation (6) can be further modified as,
: a-priori information of bit node, n.
: Posteriori information of bit node, n
Where,
=1
If
== 0 then the algorithm stops and
is
considered as a valid decoding result. Otherwise, it goes
to next iteration until the number of iteration reaches its
maximum limit.
Where,
is the Additive White Gaussian Noise
(AWGN) with zero mean.
A. Sum Product Algorithm
=0
|
݊ ∈ ܰ(݉)\݊
2
The Min-sum algorithm simplifies the calculation of
(8) even further by recognizing that the term
→
dominates the
corresponding to the smallest
product term and so the product can be approximated
by a minimum:
→
=
sgn (
→
)
∈ ( )\
|
→
|
(9)
C. Offset min-sum Algorithm
x Initialization:
Offset Min sum algorithm modifies the min sum
1) For each variable node ∈ calculate the intrinsic
algorithm by multiplying a normalizing factor (α < 1) that can
information .
be applied to the check node update equation (Horizontal
2) choose in the ascending order the variable nodes
step) in all
∈ corresponding to the absolute values of the intrinsic
(10)
information
3) Group the variable nodes into K ≥ 0 subgroups
(
)
|
|
→
→
α
sgn
→
∈ ( )\
for
(
= 1, … … . . , ).
݊ ∈ ܰ(݉)\݊
4) For the first layer , we consider the subset of
variable nodes that has a low values of .
product algorithm. Where, α is the normalization factor
5) All check node messages are initialized to 0:
( , )
which is usually determined beforehand. A criterion is given
= 0 for variable node
∈ Where
∈ M(n)
→
for the conventional normalized min-sum algorithm, in
denotes the set of check nodes connected to symbol node .
( )
( )
which makes
and
equal on
→
→
6)
= 1 and l = 1
average sense, i.e.
E
(
→
III.
)
− α ∗
→
(
)
=0
(11)
PROPOSED LAYERED OFFSET MIN-SUM
ALGORITHM
Our work is focused on the improvement in error
performance of layered offset MS algorithm. To improve the
performance of Min-Sum decoding, we consider for the first
layer a set of variable nodes that has a low value of the
intrinsic information
for the bit
. This technique
. The
increase the security of the decision of the bit
advantage of the proposed algorithm is that the correction
factor reduces the performance loss and the complexity of
decoding. In this decoding method, we consider for the first
layer a set of variable nodes that has a low value of the
intrinsic information
of the bit .
For each sub-iteration we calculate the check node and
variable node in one layer. The decoding then progresses
sequentially.
We take the same notation already mentioned in the second
section: = { , , … … … , } which denote the set of
all variable nodes and = { , , … … … , } denotes the
set of all check nodes.
= log(
(
⁄
)
(
⁄
)
For each variable node
∈ calculate the variable node
updated message to its adjacent check nodes
∈ M(n)
+ ∑
=
∈ ( )
→
(, )
−
→
(
, )
(12)
Check node update rule: For each check node
∈ M(n),
compute the updated message to its adjacent variable nodes
∈ .
Check node update rule using offset factor α :1
→
(, )
= ∗ ∏ sgn
−
(, )
−
→
→
(, )
∗(13)
Decision rule:
C = 0 if
>0
= 1 if
<0
IV. SIMULATION RESULTS
is the
intrinsic information. It
is related to the received value
parameters.
= log(
x Iterative Processing:
(
)/
)
(
)/
)
is the
and to the channel
extrinsic
information. It is the information improvement obtained by
considering that the coded symbols respect the parity check
contraints.
is the overall information of the bit
.
The layered offset min-sum algorithm using variable nodes is
defined as follows:
Simulations are conducted to compare the performance of
the layered offset Min Sum (OMS) with different decoding
algorithms which are with the MS, NMS and SP algorithms.
The codes are transmitted on AWGN channel after BPSK
modulation. We set the maximum number of iteration to 30.
The comparison among Sum Product (SP) algorithm, Minsum (MS) algorithm, Normalized Min-sum (NMS)
algorithm, offset Min Sum (OMS) algorithm are shown in
the Fig. 2. Simulation results show that the Normalized Minsum (NMS) algorithm obtains much better performance
than
Min-sum algorithm,
comparatively
better
performance than offset Min Sum (OMS) algorithm
Fig. 4. depicts the performance of a regular (1024, 512)
LDPC codes with code rate 1/2, row weight 10 and
column weight 6 are used. The codes are also
transmitted over rayleigh fading channel after BPSK
modulation and we set the maximum number of iteration
to 50.decoding LDPC codes (1024, 512) for SP, MS,
OMS, and LOMS algorithms over Rayleigh fading
channel
Even though the layered offset Min-sum (LOMS)
algorithm obtains better performance than Min-sum
algorithm, offset Min Sum (OMS) algorithm; these
decoders still cannot provide as good performance as that
obtained in the sum-product
Fig. 2. BER performance of LDPC codes (1024, 512) for SP, MS,
NMS, and OMS algorithms with offset factor 0.2 and 0.8
Fig. 3 present a regular (1024, 512) LDPC codes with code
rate 1/2, row weight 10 and column weight 6 are used. The
codes are also transmitted on AWGN channel after BPSK
modulation and we set the maximum number of iteration to
50. The show that the performance of layered offset Minsum (LOMS) algorithm is best than Min-sum algorithm,
offset Min Sum (OMS) algorithm and closer to that of
Sum Product
algorithm. for the
BER
value,
10−2 our algorithm can achieve 0.08dB decoding gain over
offset Min Sum algorithm.
Fig. 4. Error performance for iterative decoding LDPC codes
(1024, 512) for SP, MS, OMS, and LOMS algorithms over Rayleigh
fading channel
V. CONCLUSION
In this paper, we propose a layered offset min –sum
algorithm, which can improve the offset min-sum
algorithm by introducing an adaptive offset factor. We
present the approaches to obtain the normalization look-u
table by simulations, and finally show that the proposed
adaptive algorithm achieves good performances accordingly.
This adaptive algorithm is also suitable for Normalized minsum algorithm (NMSA) for LDPC Decoding, and can be
used to bridge the error Performance between the
conventional max log-MAP and log-MAP decoding
algorithms of turbo codes or constellation demapping.
Fig. 3. Error performance for iterative decoding LDPC codes
(1024, 512) for SP, MS, OMS, and LOMS algorithms over AWGN
REFERENCES
R. G. Gallager, “Low-Density Parity-Check Codes,” Cambridge,
MA: M.I.T. Press, 1963.
[2] D. J. C. MacKay and R. M. Neal, “Near Shannon limit performance
of low density parity check codes,” Electron. Lett., vol. 32, pp. 1645–
1646, Aug. 1996.
[3] Z. Wang, T. Tang, “Design of LDPC Decoder Based On FPGA in
Digital Image Watermarking Technology,” TELKOMNIKA, Vol.15,
pp. 457-463, March 2017.
[4] Z. Wang, J. Hui, “Non-binary LDPC Decoder Design over Rayleigh
Channel for FPGA Implementation,” TELKOMNIKA, vol.14, pp.
1376-1382, December 2016.
[5] L. Fan, C. Pan, K. Peng, and J. Huang, “Adaptive Normalized MinSum Algorithm for LDPC Decoding,” IEEE, pp. 1081-1084, 2013.
[6] J. Zhang, M. Fossorier, D. Gu, and J. Zhang, “Two-Dimensional
Correction for Min-Sum Decoding of Irregular LDPC Codes,” IEEE
COMMUNICATIONS LETTERS, pp. 1-3, June 2006.
[7] M. K. Robert, R. Jayabalan “A Modified Normalized Min - Sum
Decoding Algorithm for Irregular LDPC Codes,” International
Journal of Engineering and Technology, vol. 5,pp. 4881-4893,Jan
2014
[8] Y. Jung, Y. Jung, S. Lee, and J. Kim “New Min-sum LDPC
Decoding Algorithm Using SNR-Considered Adaptive Scaling
Factors,” ETRI Journal, Vol 36, pp. 591-596, August 2014.
[9] M. Fossorier, M. Mihaljevic, and H. Imai, “Reduced Complexity
Iterative Decoding of Low-Density Parity Check Codes Based on
Belief Propagation,” IEEE Trans. Commun., vol. 47, May 1999.
[10] V. Savin, C. Leti and, Minatec “Self-Corrected Min-Sum decoding of
LDPC codes,”January 2009.
[11] M. R. Islam, D. S. Shafiullah, M. M. A. Faisal and I. Rahman
“Optimized Min-Sum Decoding Algorithm for Low Density Parity
Check Codes,” International Journal of Advanced Computer Science
and Applications, vol. 2, pp. 168-174, 2011.
[12] J. Chen, M. P. Fossorier, “Near optimum universal belief propagation
based decoding of low density parity check codes,” IEEE Trans. on
Comm., vol. 3, pp. 406–414, 2002.
[13] J. Zhang, M. Fossorier, D. Gu and J. Zhang, “Combined Normalized
and Offset Min-Sum Decoding Algorithm for Irregular LDPC
Codes,” International Journal of Electrical Electronics & Computer
Science Engineering, , pp. 30–33, NEWS 2016
[14] X. Wu, Y. Song, M.Jiang, and C. Zhao, “Adaptive-Normalized/Offset
Min-Sum Algorithm,” IEEE COMMUNICATIONS LETTERS, vol.
14, pp. 667–669, July 2010.
[1]