SlideShare a Scribd company logo
A new Algorithm to construct LDPC codes with large stopping sets
A new Algorithm to construct LDPC codes with
large stopping sets
Juan Camilo Salazar Ripoll† and N´estor R. Barraza‡
nbarraza@untref.edu.ar
Septiembre - 2013
†Universidad de los Andes.
‡Universidad Nacional de Tres de Febrero y Facultad de Ingenier´ıa, UBA
A new Algorithm to construct LDPC codes with large stopping sets
´Indice
1 Introduction
LDPC codes
Bipartite Tanner graph - Stopping set
Vertex Edge Incidence Matrix
Properties of Graphs - Girth
A new Algorithm to construct LDPC codes with large stopping sets
´Indice
1 Introduction
LDPC codes
Bipartite Tanner graph - Stopping set
Vertex Edge Incidence Matrix
Properties of Graphs - Girth
2 The Algorithm
The aim
The method
Getting the LDPC code
A new Algorithm to construct LDPC codes with large stopping sets
´Indice
1 Introduction
LDPC codes
Bipartite Tanner graph - Stopping set
Vertex Edge Incidence Matrix
Properties of Graphs - Girth
2 The Algorithm
The aim
The method
Getting the LDPC code
3 Simulation
A new Algorithm to construct LDPC codes with large stopping sets
´Indice
1 Introduction
LDPC codes
Bipartite Tanner graph - Stopping set
Vertex Edge Incidence Matrix
Properties of Graphs - Girth
2 The Algorithm
The aim
The method
Getting the LDPC code
3 Simulation
4 Conclusions
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
LDPC codes
H =






1 0 1 0 1 0 0
0 1 0 1 0 1 0
0 0 0 1 0 1 1
1 0 1 0 0 1 0
0 1 0 0 1 0 1






x1 + x3 + x5 = 0
x2 + x4 + x6 = 0
x4 + x6 + x7 = 0
x1 + x3 + x6 = 0
x2 + x5 + x7 = 0 (1)
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Bipartite Tanner graph - Stopping set
1
2
3
4
5
6
7
8
9
10
11
12
x1 + x3 + x5 = 0
Variable nodes
Check nodes
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Bipartite Tanner graph - Stopping set
1
2
3
4
5
6
7
8
9
10
11
12
x1 + x3 + x5 = 0
x2 + x4 + x6 = 0
Variable nodes
Check nodes
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Bipartite Tanner graph - Stopping set
1
2
3
4
5
6
7
8
9
10
11
12
x1 + x3 + x5 = 0
x2 + x4 + x6 = 0
x4 + x6 + x7 = 0
Variable nodes
Check nodes
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Bipartite Tanner graph - Stopping set
1
2
3
4
5
6
7
8
9
10
11
12
x1 + x3 + x5 = 0
x2 + x4 + x6 = 0
x4 + x6 + x7 = 0
x1 + x3 + x6 = 0
Variable nodes
Check nodes
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Bipartite Tanner graph - Stopping set
1
2
3
4
5
6
7
8
9
10
11
12
x1 + x3 + x5 = 0
x2 + x4 + x6 = 0
x4 + x6 + x7 = 0
x1 + x3 + x6 = 0
x2 + x5 + x7 = 0
Variable nodes
Check nodes
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Bipartite Tanner graph - Stopping set
1
2
3
4
5
6
7
8
9
10
11
12
Stopping Set
Variable nodes
Check nodes
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Bipartite Tanner graph - Stopping set
1
2
3
4
5
6
7
8
9
10
11
12
Stopping Set
Message Passing
Variable nodes
Check nodes
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Bipartite Tanner graph - Stopping set
1
2
3
4
5
6
7
8
9
10
11
12
Stopping Set
Message Passing
Variable nodes
Check nodes
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Vertex Edge Incidence Matrix
1 2 4
3
6
5
a c
b
e
d
VE =








a b c d e
1 1 0 0 0 0
2 1 1 1 0 0
3 0 1 0 0 0
4 0 0 1 1 1
5 0 0 0 1 0
6 0 0 0 0 1








A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Vertex Edge Incidence Matrix
1 2 4
3
6
5
a c
b
e
d
VE =








a b c d e
1 1 0 0 0 0
2 1 1 1 0 0
3 0 1 0 0 0
4 0 0 1 1 1
5 0 0 0 1 0
6 0 0 0 0 1








H
?
= VE(T)
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Properties of Graphs - Girth
3
6
2
4
1
5
9
7
10
8
Petersen Graph. Girth = 5
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Properties of Graphs - Girth
3
6
2
4
1
5
9
7
10
8
Petersen Graph. Girth = 5
VE =















a b c d e e f g h i j k l m n o
1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0
2 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0
3 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0
4 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 0
5 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0
6 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0
7 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0
8 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0
9 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1
10 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1















A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Properties of Graphs - Girth
3
6
2
4
1
5
9
7
10
8
Petersen Graph. Girth = 5
Tanner Graph. H = VET .
a b c d e f g h i j k l m n o
1 2 3 4 5 6 7 8 9 10
A new Algorithm to construct LDPC codes with large stopping sets
Introduction
Properties of Graphs - Girth
3
6
2
4
1
5
9
7
10
8
Petersen Graph. Girth = 5
Tanner Graph. H = VET . Cycles in graph → Stopping sets.
a b c d e f g h i j k l m n o
1 2 3 4 5 6 7 8 9 10
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The aim
Construct a big graph with a big girth
Generate the LDPC code from the transpose of the vertex-edge
incidence matrix
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
The aim is to get a graph which determines the minimum
stopping set of the obtained code.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
The aim is to get a graph which determines the minimum
stopping set of the obtained code.
The parity check matrix of the code is obtained as the
transpose of the vertex-edge incidence matrix of the graph.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
The aim is to get a graph which determines the minimum
stopping set of the obtained code.
The parity check matrix of the code is obtained as the
transpose of the vertex-edge incidence matrix of the graph.
This method allows to construct LDPC codes up to a
stopping set size of 12, and with a slight variation the girth
can be increased to 14.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
Take a core C which is a simple graph, its girth determines
the stopping set size of the LDPC code.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
Take a core C which is a simple graph, its girth determines
the stopping set size of the LDPC code.
Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
Take a core C which is a simple graph, its girth determines
the stopping set size of the LDPC code.
Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs.
Divide the subgraphs into two sets: a left set and a right set,
each one of |C| + 1 subgraphs. Lets name the subgraphs in
the left set 0, 1, · · · , |C| and the subgraphs in the right set
0 , 1 , · · · , |C| .
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
Take a core C which is a simple graph, its girth determines
the stopping set size of the LDPC code.
Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs.
Divide the subgraphs into two sets: a left set and a right set,
each one of |C| + 1 subgraphs. Lets name the subgraphs in
the left set 0, 1, · · · , |C| and the subgraphs in the right set
0 , 1 , · · · , |C| .
Connecting the nodes
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
Take a core C which is a simple graph, its girth determines
the stopping set size of the LDPC code.
Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs.
Divide the subgraphs into two sets: a left set and a right set,
each one of |C| + 1 subgraphs. Lets name the subgraphs in
the left set 0, 1, · · · , |C| and the subgraphs in the right set
0 , 1 , · · · , |C| .
Connecting the nodes
Take the node i from the graph j and connect it to the node j
of the graph i for i = j with 1 ≤ i, j ≤ |C|.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
Take a core C which is a simple graph, its girth determines
the stopping set size of the LDPC code.
Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs.
Divide the subgraphs into two sets: a left set and a right set,
each one of |C| + 1 subgraphs. Lets name the subgraphs in
the left set 0, 1, · · · , |C| and the subgraphs in the right set
0 , 1 , · · · , |C| .
Connecting the nodes
Take the node i from the graph j and connect it to the node j
of the graph i for i = j with 1 ≤ i, j ≤ |C|.
Connect the node i from the graph i to the node i of the
graph 0 , in a similar way connect the node i from the graph i
to the node i of the graph 0.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
Take a core C which is a simple graph, its girth determines
the stopping set size of the LDPC code.
Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs.
Divide the subgraphs into two sets: a left set and a right set,
each one of |C| + 1 subgraphs. Lets name the subgraphs in
the left set 0, 1, · · · , |C| and the subgraphs in the right set
0 , 1 , · · · , |C| .
Connecting the nodes
Take the node i from the graph j and connect it to the node j
of the graph i for i = j with 1 ≤ i, j ≤ |C|.
Connect the node i from the graph i to the node i of the
graph 0 , in a similar way connect the node i from the graph i
to the node i of the graph 0.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
Take a core C which is a simple graph, its girth determines
the stopping set size of the LDPC code.
Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs.
Divide the subgraphs into two sets: a left set and a right set,
each one of |C| + 1 subgraphs. Lets name the subgraphs in
the left set 0, 1, · · · , |C| and the subgraphs in the right set
0 , 1 , · · · , |C| .
Connecting the nodes
Take the node i from the graph j and connect it to the node j
of the graph i for i = j with 1 ≤ i, j ≤ |C|.
Connect the node i from the graph i to the node i of the
graph 0 , in a similar way connect the node i from the graph i
to the node i of the graph 0.
A graph with 2|C|(|C| + 1) nodes and girth(graph) =
m´ın(girth(core),12) is obtained. The degree of each node is
increased by one.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
j
i
j’
j
i
i
ji
0’
ij
0
i
j
j
i
j
i’
The shortest cycle involving 0
and 0’ subgraphs
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
j
i
j’
j
i
i
ji
0’
ij
0
i
j
j
i
j
i’
The shortest cycle involving 0
and 0’ subgraphs
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
j
i
j’
j
i
i
ji
0’
ij
0
i
j
j
i
j
i’
The shortest cycle involving 0
and 0’ subgraphs
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
j
i
j’
j
i
i
ji
0’
ij
0
i
j
j
i
j
i’
The shortest cycle involving 0
and 0’ subgraphs
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
j
k
i
j
i
k’
k i
j
j
ki
j
j’
k
j
i’
i
j
k
The shortest cycle not involving
0 and 0’ subgraphs
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
j
k
i
j
i
k’
k i
j
j
ki
j
j’
k
j
i’
i
j
k
The shortest cycle not involving
0 and 0’ subgraphs
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
j
i
j’
j
i
i
ji
0’
ij
0
i
j
j
i
j
i’
The shortest cycle involving 0
and 0’ subgraphs after
permutation in nodes in 0 and 0’
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
j
i
j’
j
i
i
ji
0’
ij
0
i
j
j
i
j
i’
The shortest cycle involving 0
and 0’ subgraphs after
permutation in nodes in 0 and 0’
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
j
i
j’
j
i
i
ji
0’
ij
0
i
j
j
i
j
i’
The shortest cycle involving 0
and 0’ subgraphs after
permutation in nodes in 0 and 0’
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
The method
j
i
j’
j
i
i
ji
0’
ij
0
i
j
j
i
j
i’
The shortest cycle involving 0
and 0’ subgraphs after
permutation in nodes in 0 and 0’
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
Getting the LDPC code
The parity check matrix H is obtained as the transpose of the
vertex-edge incidence matrix of the graph.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
Getting the LDPC code
The parity check matrix H is obtained as the transpose of the
vertex-edge incidence matrix of the graph.
The nodes of the graph are the check nodes of the code and
the edges of the graph are the variable nodes.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
Getting the LDPC code
The parity check matrix H is obtained as the transpose of the
vertex-edge incidence matrix of the graph.
The nodes of the graph are the check nodes of the code and
the edges of the graph are the variable nodes.
Cycles of length k give cycles of length 2k in the Tanner
graph. Then, the size of the stopping set in the LDPC code
will not be less than the girth of the graph.
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
Getting the LDPC code
The parity check matrix H is obtained as the transpose of the
vertex-edge incidence matrix of the graph.
The nodes of the graph are the check nodes of the code and
the edges of the graph are the variable nodes.
Cycles of length k give cycles of length 2k in the Tanner
graph. Then, the size of the stopping set in the LDPC code
will not be less than the girth of the graph.
If a regular graph is chosen as the core, being dv the degree of
each node, the number of nodes in the generated graph is
(|C|) (2 |C| + 2) and the number of edges is
(dv + 1)(|C|)(|C| + 1).
A new Algorithm to construct LDPC codes with large stopping sets
The Algorithm
Getting the LDPC code
The parity check matrix H is obtained as the transpose of the
vertex-edge incidence matrix of the graph.
The nodes of the graph are the check nodes of the code and
the edges of the graph are the variable nodes.
Cycles of length k give cycles of length 2k in the Tanner
graph. Then, the size of the stopping set in the LDPC code
will not be less than the girth of the graph.
If a regular graph is chosen as the core, being dv the degree of
each node, the number of nodes in the generated graph is
(|C|) (2 |C| + 2) and the number of edges is
(dv + 1)(|C|)(|C| + 1).
As a consequence, we get an LDPC code with
n = (dv + 1)(|C|)(|C| + 1) and rate R = dv −1
dv +1.
A new Algorithm to construct LDPC codes with large stopping sets
Simulation
22
21
20
19
18
1716
15
14
13
12
11
10
9
8
7
6 5
4
3
2
1
Regular core |C| = 22, dv = 2
0 0
*
1 1
1 −
1 −
Binary erasure channel (BEC).
A new Algorithm to construct LDPC codes with large stopping sets
Simulation
Core Generated graph LDPC code
Regular Regular Regular, variable node
degree = 2
|C| = 22 |C|(2|C|+2) = 1012 no-
des
1012 check nodes
dv = 2 node degree = dv +1 = 3 check nodes degree = 3
dv +1
2 |C|(2|C| + 2) =
1518 edges
1518 variable nodes
girth = 22 girth = 14 stopping set size = 14
R = dv −1
dv +1 = 1
3
A new Algorithm to construct LDPC codes with large stopping sets
Simulation
0,10,20,30,40,50,6
10−5
10−4
10−3
10−2
10−1
100
BER
Performance of the regular LDPC code in a BEC (R = 1/3, n =
1518, girth = 28) with error probability .
A new Algorithm to construct LDPC codes with large stopping sets
Simulation
0,10,20,30,40,50,6
10−5
10−4
10−3
10−2
10−1
100
BER
Performance of the regular LDPC code in a BEC (R = 1/3, n =
1518, girth = 28) with error probability .
A new Algorithm to construct LDPC codes with large stopping sets
Conclusions
A new algorithm to construct an LDPC code from a
generated graph was presented
A new Algorithm to construct LDPC codes with large stopping sets
Conclusions
A new algorithm to construct an LDPC code from a
generated graph was presented
This graph is generated by making some connections between
several copies of a given core
A new Algorithm to construct LDPC codes with large stopping sets
Conclusions
A new algorithm to construct an LDPC code from a
generated graph was presented
This graph is generated by making some connections between
several copies of a given core
Since the stopping set of the LDPC code is related to the
girth of the graph, a large stopping set size is obtained
A new Algorithm to construct LDPC codes with large stopping sets
Conclusions
A new algorithm to construct an LDPC code from a
generated graph was presented
This graph is generated by making some connections between
several copies of a given core
Since the stopping set of the LDPC code is related to the
girth of the graph, a large stopping set size is obtained
The parity check matrix is quite sparse, then, the generated
LDPC code converges in just a few iterations
A new Algorithm to construct LDPC codes with large stopping sets
Conclusions
A new algorithm to construct an LDPC code from a
generated graph was presented
This graph is generated by making some connections between
several copies of a given core
Since the stopping set of the LDPC code is related to the
girth of the graph, a large stopping set size is obtained
The parity check matrix is quite sparse, then, the generated
LDPC code converges in just a few iterations
It is possible to generate bigger codes using the obtained
graph as the core. We are working now on this issue and it
will be shown in a future work

More Related Content

PDF
Quasi Cyclic LDPC codes - Algebraic Construction
PDF
LDPC Encoding and Hamming Encoding
PPTX
LDPC Encoding
PDF
Thesis_Presentation
PPTX
02 ldpc bit flipping_decoding_dark knight
PPTX
LDPC - Low Density Parity Check Matrix
PPTX
My review on low density parity check codes
PDF
LDPC Codes
Quasi Cyclic LDPC codes - Algebraic Construction
LDPC Encoding and Hamming Encoding
LDPC Encoding
Thesis_Presentation
02 ldpc bit flipping_decoding_dark knight
LDPC - Low Density Parity Check Matrix
My review on low density parity check codes
LDPC Codes

What's hot (20)

PDF
Performance comparison of eg ldpc codes
PPTX
Low power ldpc decoder implementation using layer decoding
PPTX
PPTX
Turbo codes
PPTX
Turbo codes.ppt
PDF
Performance analysis and implementation for nonbinary quasi cyclic ldpc decod...
PPT
Turbo Codes
PPTX
BCH Codes
PDF
Error Control coding
PDF
Analysis of LDPC Codes under Wi-Max IEEE 802.16e
PDF
International Journal of Engineering Research and Development (IJERD)
DOCX
Turbo code
PPTX
Convolution codes and turbo codes
PDF
Coding
PPTX
Linear block coding
PPTX
Implementation of reed solomon codes basics
PPT
7 convolutional codes
PDF
PERFORMANCE ESTIMATION OF LDPC CODE SUING SUM PRODUCT ALGORITHM AND BIT FLIPP...
Performance comparison of eg ldpc codes
Low power ldpc decoder implementation using layer decoding
Turbo codes
Turbo codes.ppt
Performance analysis and implementation for nonbinary quasi cyclic ldpc decod...
Turbo Codes
BCH Codes
Error Control coding
Analysis of LDPC Codes under Wi-Max IEEE 802.16e
International Journal of Engineering Research and Development (IJERD)
Turbo code
Convolution codes and turbo codes
Coding
Linear block coding
Implementation of reed solomon codes basics
7 convolutional codes
PERFORMANCE ESTIMATION OF LDPC CODE SUING SUM PRODUCT ALGORITHM AND BIT FLIPP...
Ad

Viewers also liked (12)

PPTX
Source coding
PPT
Channel coding
PPT
Basics of Coding Theory
PDF
MEMS MICROPHONE INTERFACE
PPT
Pure Aloha and Slotted Aloha
PPTX
Linear block code
PPTX
ALOHA Protocol (in detail)
PPT
The Film Industry
PDF
Blogging & e portfolios PD by Jocelyn Sutherland
PDF
Совспорт. Футбол 2016 №16 "MYFOOTBALL.WS"
PDF
SmartCampus - Online School ERP
PPTX
เฉลยสถาบันหลักของชาติ M.5
Source coding
Channel coding
Basics of Coding Theory
MEMS MICROPHONE INTERFACE
Pure Aloha and Slotted Aloha
Linear block code
ALOHA Protocol (in detail)
The Film Industry
Blogging & e portfolios PD by Jocelyn Sutherland
Совспорт. Футбол 2016 №16 "MYFOOTBALL.WS"
SmartCampus - Online School ERP
เฉลยสถาบันหลักของชาติ M.5
Ad

Similar to A new Algorithm to construct LDPC codes with large stopping sets (20)

PDF
Tsp 2018 presentation Simulated Annealing Method for Construction of High-Gi...
PDF
techniques for removing smallest Stopping sets in LDPC codes
PPT
LDPC_CODES.ppt
PDF
Fpga implementation of linear ldpc encoder
PDF
Fpga implementation of linear ldpc encoder
PDF
Iisrt jona priyaa(1 5)
PDF
FPGA Hardware Design of Different LDPC Applications: Survey
PPTX
Cycle’s topological optimizations and the iterative decoding problem on gener...
PPTX
Ewdts 2018
PDF
C04922125
PDF
"Massive Parallel Decoding of Low-Density Parity-Check Codes Using Graphic Ca...
PDF
Cycle’s topological optimizations and the iterative decoding problem on gener...
PDF
Algebraic methods for design QC-LDPC codes
PPT
LDPC coing for error correction in 3g phone
PDF
Ab4102211213
PPT
Hossein Taghavi : Codes on Graphs
PPTX
Error control coding techniques
PDF
Energy-Efficient LDPC Decoder using DVFS for binary sources
PDF
REDUCED COMPLEXITY QUASI-CYCLIC LDPC ENCODER FOR IEEE 802.11N
PDF
Research Inventy : International Journal of Engineering and Science is publis...
Tsp 2018 presentation Simulated Annealing Method for Construction of High-Gi...
techniques for removing smallest Stopping sets in LDPC codes
LDPC_CODES.ppt
Fpga implementation of linear ldpc encoder
Fpga implementation of linear ldpc encoder
Iisrt jona priyaa(1 5)
FPGA Hardware Design of Different LDPC Applications: Survey
Cycle’s topological optimizations and the iterative decoding problem on gener...
Ewdts 2018
C04922125
"Massive Parallel Decoding of Low-Density Parity-Check Codes Using Graphic Ca...
Cycle’s topological optimizations and the iterative decoding problem on gener...
Algebraic methods for design QC-LDPC codes
LDPC coing for error correction in 3g phone
Ab4102211213
Hossein Taghavi : Codes on Graphs
Error control coding techniques
Energy-Efficient LDPC Decoder using DVFS for binary sources
REDUCED COMPLEXITY QUASI-CYCLIC LDPC ENCODER FOR IEEE 802.11N
Research Inventy : International Journal of Engineering and Science is publis...

Recently uploaded (20)

PDF
cuic standard and advanced reporting.pdf
PDF
Encapsulation theory and applications.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
A Presentation on Artificial Intelligence
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Empathic Computing: Creating Shared Understanding
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
cuic standard and advanced reporting.pdf
Encapsulation theory and applications.pdf
Spectral efficient network and resource selection model in 5G networks
Encapsulation_ Review paper, used for researhc scholars
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
CIFDAQ's Market Insight: SEC Turns Pro Crypto
MYSQL Presentation for SQL database connectivity
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Understanding_Digital_Forensics_Presentation.pptx
The AUB Centre for AI in Media Proposal.docx
A Presentation on Artificial Intelligence
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Empathic Computing: Creating Shared Understanding
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
20250228 LYD VKU AI Blended-Learning.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025

A new Algorithm to construct LDPC codes with large stopping sets

  • 1. A new Algorithm to construct LDPC codes with large stopping sets A new Algorithm to construct LDPC codes with large stopping sets Juan Camilo Salazar Ripoll† and N´estor R. Barraza‡ nbarraza@untref.edu.ar Septiembre - 2013 †Universidad de los Andes. ‡Universidad Nacional de Tres de Febrero y Facultad de Ingenier´ıa, UBA
  • 2. A new Algorithm to construct LDPC codes with large stopping sets ´Indice 1 Introduction LDPC codes Bipartite Tanner graph - Stopping set Vertex Edge Incidence Matrix Properties of Graphs - Girth
  • 3. A new Algorithm to construct LDPC codes with large stopping sets ´Indice 1 Introduction LDPC codes Bipartite Tanner graph - Stopping set Vertex Edge Incidence Matrix Properties of Graphs - Girth 2 The Algorithm The aim The method Getting the LDPC code
  • 4. A new Algorithm to construct LDPC codes with large stopping sets ´Indice 1 Introduction LDPC codes Bipartite Tanner graph - Stopping set Vertex Edge Incidence Matrix Properties of Graphs - Girth 2 The Algorithm The aim The method Getting the LDPC code 3 Simulation
  • 5. A new Algorithm to construct LDPC codes with large stopping sets ´Indice 1 Introduction LDPC codes Bipartite Tanner graph - Stopping set Vertex Edge Incidence Matrix Properties of Graphs - Girth 2 The Algorithm The aim The method Getting the LDPC code 3 Simulation 4 Conclusions
  • 6. A new Algorithm to construct LDPC codes with large stopping sets Introduction LDPC codes H =       1 0 1 0 1 0 0 0 1 0 1 0 1 0 0 0 0 1 0 1 1 1 0 1 0 0 1 0 0 1 0 0 1 0 1       x1 + x3 + x5 = 0 x2 + x4 + x6 = 0 x4 + x6 + x7 = 0 x1 + x3 + x6 = 0 x2 + x5 + x7 = 0 (1)
  • 7. A new Algorithm to construct LDPC codes with large stopping sets Introduction Bipartite Tanner graph - Stopping set 1 2 3 4 5 6 7 8 9 10 11 12 x1 + x3 + x5 = 0 Variable nodes Check nodes
  • 8. A new Algorithm to construct LDPC codes with large stopping sets Introduction Bipartite Tanner graph - Stopping set 1 2 3 4 5 6 7 8 9 10 11 12 x1 + x3 + x5 = 0 x2 + x4 + x6 = 0 Variable nodes Check nodes
  • 9. A new Algorithm to construct LDPC codes with large stopping sets Introduction Bipartite Tanner graph - Stopping set 1 2 3 4 5 6 7 8 9 10 11 12 x1 + x3 + x5 = 0 x2 + x4 + x6 = 0 x4 + x6 + x7 = 0 Variable nodes Check nodes
  • 10. A new Algorithm to construct LDPC codes with large stopping sets Introduction Bipartite Tanner graph - Stopping set 1 2 3 4 5 6 7 8 9 10 11 12 x1 + x3 + x5 = 0 x2 + x4 + x6 = 0 x4 + x6 + x7 = 0 x1 + x3 + x6 = 0 Variable nodes Check nodes
  • 11. A new Algorithm to construct LDPC codes with large stopping sets Introduction Bipartite Tanner graph - Stopping set 1 2 3 4 5 6 7 8 9 10 11 12 x1 + x3 + x5 = 0 x2 + x4 + x6 = 0 x4 + x6 + x7 = 0 x1 + x3 + x6 = 0 x2 + x5 + x7 = 0 Variable nodes Check nodes
  • 12. A new Algorithm to construct LDPC codes with large stopping sets Introduction Bipartite Tanner graph - Stopping set 1 2 3 4 5 6 7 8 9 10 11 12 Stopping Set Variable nodes Check nodes
  • 13. A new Algorithm to construct LDPC codes with large stopping sets Introduction Bipartite Tanner graph - Stopping set 1 2 3 4 5 6 7 8 9 10 11 12 Stopping Set Message Passing Variable nodes Check nodes
  • 14. A new Algorithm to construct LDPC codes with large stopping sets Introduction Bipartite Tanner graph - Stopping set 1 2 3 4 5 6 7 8 9 10 11 12 Stopping Set Message Passing Variable nodes Check nodes
  • 15. A new Algorithm to construct LDPC codes with large stopping sets Introduction Vertex Edge Incidence Matrix 1 2 4 3 6 5 a c b e d VE =         a b c d e 1 1 0 0 0 0 2 1 1 1 0 0 3 0 1 0 0 0 4 0 0 1 1 1 5 0 0 0 1 0 6 0 0 0 0 1        
  • 16. A new Algorithm to construct LDPC codes with large stopping sets Introduction Vertex Edge Incidence Matrix 1 2 4 3 6 5 a c b e d VE =         a b c d e 1 1 0 0 0 0 2 1 1 1 0 0 3 0 1 0 0 0 4 0 0 1 1 1 5 0 0 0 1 0 6 0 0 0 0 1         H ? = VE(T)
  • 17. A new Algorithm to construct LDPC codes with large stopping sets Introduction Properties of Graphs - Girth 3 6 2 4 1 5 9 7 10 8 Petersen Graph. Girth = 5
  • 18. A new Algorithm to construct LDPC codes with large stopping sets Introduction Properties of Graphs - Girth 3 6 2 4 1 5 9 7 10 8 Petersen Graph. Girth = 5 VE =                a b c d e e f g h i j k l m n o 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 2 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 4 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 0 5 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 6 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 7 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 8 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 9 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 1 10 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1               
  • 19. A new Algorithm to construct LDPC codes with large stopping sets Introduction Properties of Graphs - Girth 3 6 2 4 1 5 9 7 10 8 Petersen Graph. Girth = 5 Tanner Graph. H = VET . a b c d e f g h i j k l m n o 1 2 3 4 5 6 7 8 9 10
  • 20. A new Algorithm to construct LDPC codes with large stopping sets Introduction Properties of Graphs - Girth 3 6 2 4 1 5 9 7 10 8 Petersen Graph. Girth = 5 Tanner Graph. H = VET . Cycles in graph → Stopping sets. a b c d e f g h i j k l m n o 1 2 3 4 5 6 7 8 9 10
  • 21. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The aim Construct a big graph with a big girth Generate the LDPC code from the transpose of the vertex-edge incidence matrix
  • 22. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method
  • 23. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method
  • 24. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method
  • 25. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method
  • 26. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method
  • 27. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method
  • 28. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method The aim is to get a graph which determines the minimum stopping set of the obtained code.
  • 29. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method The aim is to get a graph which determines the minimum stopping set of the obtained code. The parity check matrix of the code is obtained as the transpose of the vertex-edge incidence matrix of the graph.
  • 30. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method The aim is to get a graph which determines the minimum stopping set of the obtained code. The parity check matrix of the code is obtained as the transpose of the vertex-edge incidence matrix of the graph. This method allows to construct LDPC codes up to a stopping set size of 12, and with a slight variation the girth can be increased to 14.
  • 31. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method Take a core C which is a simple graph, its girth determines the stopping set size of the LDPC code.
  • 32. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method Take a core C which is a simple graph, its girth determines the stopping set size of the LDPC code. Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs.
  • 33. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method Take a core C which is a simple graph, its girth determines the stopping set size of the LDPC code. Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs. Divide the subgraphs into two sets: a left set and a right set, each one of |C| + 1 subgraphs. Lets name the subgraphs in the left set 0, 1, · · · , |C| and the subgraphs in the right set 0 , 1 , · · · , |C| .
  • 34. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method Take a core C which is a simple graph, its girth determines the stopping set size of the LDPC code. Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs. Divide the subgraphs into two sets: a left set and a right set, each one of |C| + 1 subgraphs. Lets name the subgraphs in the left set 0, 1, · · · , |C| and the subgraphs in the right set 0 , 1 , · · · , |C| . Connecting the nodes
  • 35. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method Take a core C which is a simple graph, its girth determines the stopping set size of the LDPC code. Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs. Divide the subgraphs into two sets: a left set and a right set, each one of |C| + 1 subgraphs. Lets name the subgraphs in the left set 0, 1, · · · , |C| and the subgraphs in the right set 0 , 1 , · · · , |C| . Connecting the nodes Take the node i from the graph j and connect it to the node j of the graph i for i = j with 1 ≤ i, j ≤ |C|.
  • 36. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method Take a core C which is a simple graph, its girth determines the stopping set size of the LDPC code. Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs. Divide the subgraphs into two sets: a left set and a right set, each one of |C| + 1 subgraphs. Lets name the subgraphs in the left set 0, 1, · · · , |C| and the subgraphs in the right set 0 , 1 , · · · , |C| . Connecting the nodes Take the node i from the graph j and connect it to the node j of the graph i for i = j with 1 ≤ i, j ≤ |C|. Connect the node i from the graph i to the node i of the graph 0 , in a similar way connect the node i from the graph i to the node i of the graph 0.
  • 37. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method Take a core C which is a simple graph, its girth determines the stopping set size of the LDPC code. Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs. Divide the subgraphs into two sets: a left set and a right set, each one of |C| + 1 subgraphs. Lets name the subgraphs in the left set 0, 1, · · · , |C| and the subgraphs in the right set 0 , 1 , · · · , |C| . Connecting the nodes Take the node i from the graph j and connect it to the node j of the graph i for i = j with 1 ≤ i, j ≤ |C|. Connect the node i from the graph i to the node i of the graph 0 , in a similar way connect the node i from the graph i to the node i of the graph 0.
  • 38. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method Take a core C which is a simple graph, its girth determines the stopping set size of the LDPC code. Make 2|C|+1 copies of the core obtaining 2|C|+2 subgraphs. Divide the subgraphs into two sets: a left set and a right set, each one of |C| + 1 subgraphs. Lets name the subgraphs in the left set 0, 1, · · · , |C| and the subgraphs in the right set 0 , 1 , · · · , |C| . Connecting the nodes Take the node i from the graph j and connect it to the node j of the graph i for i = j with 1 ≤ i, j ≤ |C|. Connect the node i from the graph i to the node i of the graph 0 , in a similar way connect the node i from the graph i to the node i of the graph 0. A graph with 2|C|(|C| + 1) nodes and girth(graph) = m´ın(girth(core),12) is obtained. The degree of each node is increased by one.
  • 39. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method j i j’ j i i ji 0’ ij 0 i j j i j i’ The shortest cycle involving 0 and 0’ subgraphs
  • 40. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method j i j’ j i i ji 0’ ij 0 i j j i j i’ The shortest cycle involving 0 and 0’ subgraphs
  • 41. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method j i j’ j i i ji 0’ ij 0 i j j i j i’ The shortest cycle involving 0 and 0’ subgraphs
  • 42. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method j i j’ j i i ji 0’ ij 0 i j j i j i’ The shortest cycle involving 0 and 0’ subgraphs
  • 43. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method j k i j i k’ k i j j ki j j’ k j i’ i j k The shortest cycle not involving 0 and 0’ subgraphs
  • 44. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method j k i j i k’ k i j j ki j j’ k j i’ i j k The shortest cycle not involving 0 and 0’ subgraphs
  • 45. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method j i j’ j i i ji 0’ ij 0 i j j i j i’ The shortest cycle involving 0 and 0’ subgraphs after permutation in nodes in 0 and 0’
  • 46. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method j i j’ j i i ji 0’ ij 0 i j j i j i’ The shortest cycle involving 0 and 0’ subgraphs after permutation in nodes in 0 and 0’
  • 47. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method j i j’ j i i ji 0’ ij 0 i j j i j i’ The shortest cycle involving 0 and 0’ subgraphs after permutation in nodes in 0 and 0’
  • 48. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm The method j i j’ j i i ji 0’ ij 0 i j j i j i’ The shortest cycle involving 0 and 0’ subgraphs after permutation in nodes in 0 and 0’
  • 49. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm Getting the LDPC code The parity check matrix H is obtained as the transpose of the vertex-edge incidence matrix of the graph.
  • 50. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm Getting the LDPC code The parity check matrix H is obtained as the transpose of the vertex-edge incidence matrix of the graph. The nodes of the graph are the check nodes of the code and the edges of the graph are the variable nodes.
  • 51. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm Getting the LDPC code The parity check matrix H is obtained as the transpose of the vertex-edge incidence matrix of the graph. The nodes of the graph are the check nodes of the code and the edges of the graph are the variable nodes. Cycles of length k give cycles of length 2k in the Tanner graph. Then, the size of the stopping set in the LDPC code will not be less than the girth of the graph.
  • 52. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm Getting the LDPC code The parity check matrix H is obtained as the transpose of the vertex-edge incidence matrix of the graph. The nodes of the graph are the check nodes of the code and the edges of the graph are the variable nodes. Cycles of length k give cycles of length 2k in the Tanner graph. Then, the size of the stopping set in the LDPC code will not be less than the girth of the graph. If a regular graph is chosen as the core, being dv the degree of each node, the number of nodes in the generated graph is (|C|) (2 |C| + 2) and the number of edges is (dv + 1)(|C|)(|C| + 1).
  • 53. A new Algorithm to construct LDPC codes with large stopping sets The Algorithm Getting the LDPC code The parity check matrix H is obtained as the transpose of the vertex-edge incidence matrix of the graph. The nodes of the graph are the check nodes of the code and the edges of the graph are the variable nodes. Cycles of length k give cycles of length 2k in the Tanner graph. Then, the size of the stopping set in the LDPC code will not be less than the girth of the graph. If a regular graph is chosen as the core, being dv the degree of each node, the number of nodes in the generated graph is (|C|) (2 |C| + 2) and the number of edges is (dv + 1)(|C|)(|C| + 1). As a consequence, we get an LDPC code with n = (dv + 1)(|C|)(|C| + 1) and rate R = dv −1 dv +1.
  • 54. A new Algorithm to construct LDPC codes with large stopping sets Simulation 22 21 20 19 18 1716 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 Regular core |C| = 22, dv = 2 0 0 * 1 1 1 − 1 − Binary erasure channel (BEC).
  • 55. A new Algorithm to construct LDPC codes with large stopping sets Simulation Core Generated graph LDPC code Regular Regular Regular, variable node degree = 2 |C| = 22 |C|(2|C|+2) = 1012 no- des 1012 check nodes dv = 2 node degree = dv +1 = 3 check nodes degree = 3 dv +1 2 |C|(2|C| + 2) = 1518 edges 1518 variable nodes girth = 22 girth = 14 stopping set size = 14 R = dv −1 dv +1 = 1 3
  • 56. A new Algorithm to construct LDPC codes with large stopping sets Simulation 0,10,20,30,40,50,6 10−5 10−4 10−3 10−2 10−1 100 BER Performance of the regular LDPC code in a BEC (R = 1/3, n = 1518, girth = 28) with error probability .
  • 57. A new Algorithm to construct LDPC codes with large stopping sets Simulation 0,10,20,30,40,50,6 10−5 10−4 10−3 10−2 10−1 100 BER Performance of the regular LDPC code in a BEC (R = 1/3, n = 1518, girth = 28) with error probability .
  • 58. A new Algorithm to construct LDPC codes with large stopping sets Conclusions A new algorithm to construct an LDPC code from a generated graph was presented
  • 59. A new Algorithm to construct LDPC codes with large stopping sets Conclusions A new algorithm to construct an LDPC code from a generated graph was presented This graph is generated by making some connections between several copies of a given core
  • 60. A new Algorithm to construct LDPC codes with large stopping sets Conclusions A new algorithm to construct an LDPC code from a generated graph was presented This graph is generated by making some connections between several copies of a given core Since the stopping set of the LDPC code is related to the girth of the graph, a large stopping set size is obtained
  • 61. A new Algorithm to construct LDPC codes with large stopping sets Conclusions A new algorithm to construct an LDPC code from a generated graph was presented This graph is generated by making some connections between several copies of a given core Since the stopping set of the LDPC code is related to the girth of the graph, a large stopping set size is obtained The parity check matrix is quite sparse, then, the generated LDPC code converges in just a few iterations
  • 62. A new Algorithm to construct LDPC codes with large stopping sets Conclusions A new algorithm to construct an LDPC code from a generated graph was presented This graph is generated by making some connections between several copies of a given core Since the stopping set of the LDPC code is related to the girth of the graph, a large stopping set size is obtained The parity check matrix is quite sparse, then, the generated LDPC code converges in just a few iterations It is possible to generate bigger codes using the obtained graph as the core. We are working now on this issue and it will be shown in a future work