Upload
bhagwat-singh-rathore
View
261
Download
7
Tags:
Embed Size (px)
Citation preview
LDPC encodingINFORMATION THEORY AND CODING (ECE 307)
Group Members:
1. Lokesh Jindal (11BEC1043)2. Bhagwat Singh (11BEC1070)3. Devanshu (11BEC1100)4. Gurpartap Singh (11BEC1124)
LDPC(Low Density Parity Codes)
LDPC Codes are characterized by the sparseness of ones in the parity-check matrix.
This low number of ones allows for a large minimum distance of the code, resulting in improved
performance.
PARITY-CHECK MATRIX
LDPC codes are classified into two different classes of codes: regular and irregular codes.
Regular codes are the set of codes in which there is a constant number of 𝑤𝐶 1’s distributed throughout
each column and a constant number of 𝑤𝑅 1’s per row.
For a determined column weight (𝑤𝐶), we can determine the row weight as𝑁∗𝑤𝐶
𝑁−𝑘, (N is the block-length
of the code and k is the message length).
Irregular codes are those of which do not belong to this set (do not maintain a consistent row weight)
MINIMUM DISTANCE OF LDPC CODES
The minimum distance is a property of any coding scheme.
Ideally this minimum distance should be as large as possible, but there is a practical limit on how large
this minimum distance can be.
LDPC posses a large problem when calculating this minimum distance efficiently as an effective LDPC
code requires rather large block-lengths.
Using random generation it is very difficult to specify the minimum distance as a parameter, rather
minimum distance will become a property of the code.
CYCLE LENGTH OF LDPC CODES
Using a Tanner Graph it is possible to view the definition of the minimum cycle length of a code.
It is the minimum number of edges travelled from one check node to return to the same check node.
Length 4 and Length 6 cycles with the corresponding parity-check matrix configurations are shown in
Figures 5 and 6 respectively.
Contd…
It has been shown that the existence of these cycles degrade the performance during iterative decoding
process.
Therefore when generating the parity-check matrix, the minimum cycle length permitted must be
determined.
It is possible control the minimum cycle length when generating the matrix, however computational
complexity and time increases exponentially with each increase in minimum cycle length.
LINEAR INDEPENDENCE
The generator matrix G, is defined such that:
𝒄 = 𝑮𝑻𝒎
Where,
𝑐 = [𝑐1, 𝑐2, 𝑐3 , ………𝑐𝑁]𝑇 – Code-word
𝑚 = [𝑚1, 𝑚2, 𝑚3 , ………𝑚𝑘]𝑇 – Message Word
𝐺 = 𝑘 by 𝑛 Generator matrix
In order to guarantee the existence of such a matrix G, the linear independence of all rows of the parity-
check matrix must be assured.
LDPC SYSTEM OVERVIEW
Where:
• m- Message
• c - Code-word
• x- Modulated signal
• n- AWGN noise
• y- Received signal
• cˆ- Estimated code-word
• mˆ- Estimated message
Encoding
𝒄 = 𝑮𝑻𝒎
we define a complete set of successful parity-checks as:
𝐻𝑐 = 0
Where:
𝑐 = [𝑐1, 𝑐2, 𝑐3 , ………𝑐𝑁]𝑇
𝐻(𝑁−𝑘)∗𝑁 = 𝑁 − 𝑘 𝑏𝑦 𝑁 Parity-Check Matrix
Contd… The location of the parity-bits in the code-word is arbitrary, therefore we will form our code-word such
that:
𝑐 = [𝑝:𝑚]𝑇
Where:
𝑚 = [𝑚1, 𝑚2, 𝑚3 , ………𝑚𝑘]𝑇 – Message Word
𝑝 = [𝑝1, 𝑝2, 𝑝3 , ………𝑝𝑁−𝑘]𝑇– Parity Bits
Therefore:
𝐻[𝑝:𝑚]𝑇= 0
H can be partitioned as:
𝐻 = [𝑋: 𝑌]
Where:
X = N-k by N-k Sub-matrix
Y = N-k by k Sub-matrix
Contd…
From this we can find:
𝑋𝑝 + 𝑌𝑚 = 0
Using modulo-2 arithmetic we can solve for p as:
𝑝 = 𝑋−1𝑌𝑚
Then we solve for c as:
𝑐 = [ 𝑋−1𝑌 𝑇: 𝐼]𝑇𝑚
Where I is the k by k identity matrix and we define G as:
𝐺 = [ 𝑋−1𝑌 𝑇: 𝐼]
G Matrix for this project
In our project we directly chose the G matrix from “Communication Systems” by Simon Haykin.
The G matrix is:
𝐺 =
1 0 0 1 1 0 1 0 0 00 0 0 1 1 1 0 1 0 00 0 1 1 1 0 0 0 1 00 1 0 1 1 0 0 0 0 1
Hamming Code
Linear block code is said to be Hamming code if following parameters are obeyed:
1. No. of bits in the code-word (n) = 2𝑚 − 1
2. No. of message bits (k) = 2𝑚 −𝑚 − 1
3. No. of parity bits (n-k) = 𝑚 and 𝑚 ≥ 3
Encoding
p= k by (n-k) Parity Matrix
Generator Matrix:
𝐺 = [𝑝: 𝐼𝑘]
Parity Check Matrix:
𝐻 = [𝐼𝑛−𝑘: 𝑝𝑇]
Encoded message:
𝑥 = 𝑏:𝑚
Where,
𝑏 = 𝑚𝑝
Syndrome:
𝑠 = 𝑦𝐻𝑇