0% found this document useful (0 votes)
22 views3 pages

LDPC Codes

Uploaded by

dhoang6679
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
22 views3 pages

LDPC Codes

Uploaded by

dhoang6679
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Low Density Parity Check Code (LDPC Codes)

Overview
Saumya Borwankar Dhruv Shah
Department of Electronics and Communication Department of Electronics and Communication
Engineering Engineering
Institute of technology, Nirma University Institute of technology, Nirma University
[email protected] [email protected]

Abstract— This paper basically expresses the core fundamentals understand in this paper. So, before we go to understand the
and brief overview of the research of R. G. GALLAGER [1] on LDPC code, we need to understand some concepts of linear
Low-Density Parity-Check (LDPC) codes and various parameters block code and the code rate.
related to LDPC codes like, encoding and decoding of LDPC
codes, code rate, parity check matrix, tanner graph. We also
discuss advantages and applications as well as the usage of LDPC A. Linear Block Codes
codes in 5G technology. We have simulated encoding and decoding
of LDPC codes and have acquired results in terms of BER vs SNR In Linear Block Code, parity bits and message bits are in
graph in MATLAB software. This report was submitted as an linear combination and this combination together form a code
assignment in Nirma University word. Parity bits in transmitted codewords over a noisy channel
help us at the receiver side by detecting, correcting and locating
Keywords - LDPC, parity check matrix, 5G, BER, SNR.
the errors with the help of decoding algorithms. This Linear
codeword can be represented as (n,k) codeword where, n
represents the block length of encoded code and k represents
I. INTRODUCTION the message bit.
With the continuous evolution of digital wireless B. Code Rate
communication and information technology, an efficient Code Rate can be defined as number of message bits / number
communication system in terms of bandwidth, speed, cost, of transmitted bits (k / n). As code rate decreases meaning the
lossless data transmission and secure communication is must number of transmitted encoded bits increases, security or
for any advancements. We do not have any control over the protection of message increases. But as code rate decreases
channel and hence the effects in terms of losses happening due bandwidth increases and also the cost per bit increases as total
to noise in the channel on wireless data transmission are not
number of transmitted bits increases.
liable to variation. So, that is where an efficient channel coding
scheme comes which should be able to detect and correct any
amount of errors at the receiver which are caused due to noise II. REPRESENTATION OF LDPC CODES
in wireless channel so that we can retrieve the original data and
thus resulting in a successful wireless transmission. But as the Basically, these parity check sets can be represented in two
generations in information technology advance and the number ways. The first way is to describe in matrix form like all other
of data in terms of bits increases, various parameters like linear block codes and second way is the graphical
complexity of structure for implementation of such logic of representation [3].
channel coding, encoding and decoding speed or we can say
computation time, cost of implementation are needed to be A. Matrix and Algebraic Representation
improvised. So, that’s where the implementation of LDPC In LDPC code, the parity check sets can be expressed in
codes can fulfil these different parameters for a quite increased terms of Sparse Parity Check Matrix. In a Sparse Parity Check
efficiency. Matrix which is having (n-k) × n dimension, the word
LDPC codes are very efficient codes since they offer practical “Sparse” means that the number of times ‘1’s are very less than
implementation at nearly achieving the Shannon channel the number of times ‘0’s. Normally for a large bit stream, the
capacity of reliable transmission. Shannon channel capacity LDPC parity check matrix are of 1000×2000 dimensions. So,
rule denotes that the code with the code rate near to the capacity out of n×(n-k) entries, the number ones are very less than the
number gives the error going to zero in decoding with the
number of zeros. There are three parameters that define the
maximum likelihood decoder as we increase the block length.
sparse parity check matrix which are (n, wc, wr). Here, n is
[2] This condition can be achieved by using random linear
block codes that are encoded as polynomial of time. But as we coded length, wr is the number of ones in a row and wc is the
increase the block length for error approaching to zero, there number of ones in a column. For a matrix to be called low-
comes the issue of complex computation algorithms for density or sparse, the condition - wc and wr << n×(n-k) be
encoding and decoding and that eventually leads us to the satisfied. To satisfy this, the parity check matrix must be very
compromise with the speed. So, here LDPC code fulfils the large.Here, a 4×8 sparse parity check matrix H of (8,4,2) is
successful implementation of LDPC code at Shannon limit with shown.Each row of matrix H represents a check node and each
long block lengths and also having additional advantages of column of matrix H represents variable nodes.
less complex algorithms and greater speed and accuracy. So
how do LDPC codes fulfil these conditions that we will briefly
m = message vector

As per the property of Linear Block Code,


𝐶. 𝐻𝑇 = 0
Figure 1: Sparse Parity Check Matrix To satisfy this condition, after matrix multiplication we get the
equations for 𝑃𝑛−𝑘 × 1 in terms of message bits. So, after getting
Variable nodes indicate the elements of the code word. Check the values of 𝑃𝑛−𝑘 × 1 , we can get the codeword of n bits.
nodes indicate the set of parity check conditions. Here, as per
the H matrix illustrated above, wherever there is a 1 in the B. Generator Matrix Formation based Encoding
matrix, it denotes that there is a connection between check node With help of parity-check matrix H Generator matrix can be
and variable node. found by performing Gauss-Jordan elimination on H to obtain
it in the form H = [A 𝐼𝑛−𝑘 ], where A is a (n-k) × k binary
Parity Check Matrix can be classified into two types.
matrix and In*k is the size of the (n-k) identity matrix. The
1) Regular Parity Check Matrix: If the parity check matrix generator matrix is then G = [ 𝐼𝐾 𝐴𝑇 ]. And then by
has uniform wr and wc(same no of ones in column and row) we multiplying the message bit stream with the generator matrix
call that a regular parity check matrix. This type makes will get us a codeword of n bits.
decoding less complex. C=m.G
However, in this approach unlike the H matrix, the
2) Irregular Parity Check Matrix: If wc and wr are different matrix G will most likely not be sparse. That will be a drawback
for different columns and rows then it is called an Irregular of this method and since the matrix multiplication is quite big
parity check matrix. as there are thousands of bits, so the encoder becomes complex.
For that a structured parity-check matrix formation has to be
B. Tanner Graph Representation used to significantly lower the implementation complexity. But
that does not go with the random selection of the parity check
set we discussed earlier. So, a good approach is to avoid
constructing a G matrix at all and instead to encode using other
encoding schemes.

IV. LDPC DECODING


Decoding algorithms for LDPC codes have been discovered
Figure 2: Tanner graph and formed several times independently and hence comes under
different names. The most common ones are the bit flipping
Figure 2 is an example for such a tanner graph and represents
algorithm and the sum-product algorithm. Basically, decoding
the same code as the matrix from Figure 1. So, there will be n
is divided into two types hard decision decoding and soft
variable nodes and (n-k) check nodes. An edge or connection is
decision decoding. The class of decoding algorithms are
made between the check node Ci and the variable node Vj if the
collectively termed as message-passing algorithms since their
element hij of matrix H is a 1. Check node 𝐶𝑖 is connected to operations can be explained by the passing of messages along
variable node 𝑉𝑗 if the element ℎ𝑖𝑗 of matrix H is a 1.Since the edges of a Tanner graph or we can say passing between
the rows in H matrix refers to the check nodes and columns of variable and check nodes. As the encoded codewords are
matrix H refers to the variable nodes, we can see that there are received then they are passed into this algorithm in which they
4 check nodes . pass back and forward between the variable and check nodes
iteratively until a result is obtained which is erasure free. Thus,
III. LDPC ENCODING they are also known as iterative decoding algorithms.
There are various encoding and decoding schemes for LDPC IV.A.1
codes. All schemes are there with the same aim of making the A. Bit-flipping Decoding
less complex and faster encoding and decoding process. This is a hard-decision message-passing algorithm for
Most common approach for the encoding process based on LDPC codes. It is based on the principle that a codeword bit
Linear Block Code is described below. involved in a large number of incorrect check equations is
likely to be incorrect itself. For every received bit a binary hard
A. Linear Block Code Encoding decision is made by the detector and is passed to the decoder.
We know that a codeword of Linear Block Code (n,k) is The messages passed along the Tanner graph edges are also
made up of the message bits and parity bits which we can binary: a bit node sends a message declaring if it is a one or a
describe as below . zero, and each check node sends a message to each connected
C = |𝑚1×𝑘 : 𝑃1×𝑛−𝑘 | bit node, declaring what value of the bit is based on the
where, p = parity vector information available to the check node. The check node
determines whether the parity-check equation is satisfied or Figure 3: BER vs SNR curve for LDPC coded vs uncoded
not. If the modulo-2 sum of the incoming bit values is zero then signal.
the condition is satisfied. If the majority of the messages
received by a bit node are different from its received value then VI. CONCLUSION
the bit node flips (1 to 0 or vice versa) its current value. This The reinvention of LDPC codes was an important event in
process is repeated until all of the parity-check equations are the study of capacity-approaching codes. These are one of the
satisfied. The bit-flipping decoder can be immediately stopped interesting topics in coding theory. LPCD codes, unlike many
whenever a valid codeword has been found by checking if all others, are already equipped with very fast (probabilistic)
of the parity-check equations are satisfied. This is valid for all encoding and decoding algorithms with the introduction of
message-passing decoding of LDPC codes and has two important variations of the sum product algorithm like
important benefits: firstly, additional iterations are avoided logarithmic sum product. It is best suited for practical
once a solution has been found, and secondly a failure to applications. LDPC codes are becoming the mainstream in
converge to a codeword is always detected. communication generations. They are already implemented in
3G and LAN standards and are being implemented for 5G
B. Sum-Product Decoding standards [4] . The other applications of LDPC codes are in
The sum-product algorithm is a soft decision type message- video transmission like DVB-S2[5] and in satellite
passing algorithm. It is quite similar to the bit-flipping communication.
algorithm but instead messages that represent each decision in
the bit-flipping algorithm, now represent probabilities. Bit- ACKNOWLEDGEMENT
flipping decoding accepts an initial hard decision on the We are very grateful to Prof. Rachna Sharma, who
received bits as input whereas the sum-product algorithm is a provided us the chance to study and gather useful information
soft decision algorithm which accepts the probability of each on LDPC codes.
received bit as input.
REFERENCES
V. SIMULATION RESULTS [1] R. G. Gallager, “Low Density Parity Check Codes,” Sc.D. thesis, Mass.
Inst. Tech., Cambridge; September, 1960.
From the results it can be concluded that using LDPC codes [2] C. E. Shannon, “A mathematical theory of communication,” Bell System
lead to lower Bit Error Rate (BER) values. It can be noted that Technical Journal, vol. 27, pp. 379–423, 1948.
it is an iterative decoding process instead of Trellis based. [3] Tu, Zongjie, and Shiyong Zhang. "Overview of LDPC codes." 7th IEEE
Another advantage of LDPC codes is that the decoding International Conference on Computer and Information Technology (CIT
2007). IEEE, 2007..
complexity decreases with the length of the blocks. From the
[4] Sybis, Michal, et al. "Channel coding for ultra-reliable low-latency
SNR vs BER graph, it is observed that at low SNR we can communication in 5G systems." 2016 IEEE 84th vehicular technology
achieve very low BER compared to other coding schemes. And conference (VTC-Fall). IEEE, 2016
also, we can correct multiple erasures which occur during the [5] Kienle, Frank, Torben Brack, and Norbert Wehn. "A synthesizable IP
transmission through the channel. core for DVB-S2 LDPC code decoding." Design, Automation and Test in
Europe. IEEE, 2005.M.

You might also like