1.1 Sparse Parity Matrix
A sparse matrix is a matrix populated with few ones in each row and column. More precisely, the ratio of nonzero entries into that matrix is kept low. This is the reason why they are called “low-density”. In particular, an (n,wc,wr) low-density-code is a code of block length n with a matrix like that of Fig..1 whose parity matrix has wc 1’s in each column, and wr 1’s in each row.
Fig. 1 low-density code matrix; N=20, wc =3, wr =4
1.2 Regular LDPC Codes
A regular LDPC code is a linear block code whose parity matrix H contains exactly wc 1’s in each column and wr = wc(n/n-k) 1’s in each row. The code rate is k/n and wc is extremely smaller than (n-k). Similarly, wr is extremely smaller than n. In , Markey shows that wc = 3 is necessary for good codes.
1.3 Irregular LDPC Codes
If the number of 1's per column or row is not constant, the code is an irregular LDPC code. It’s very easy to determine whether an LDPC code is regular or irregular through its graphical representation. Usually, irregular LDPC codes outperform regular LDPC codes.
2. Characteristics of LDPC Codes
In some specific situations, we can get the following characteristics.
2.1 Large dmin
Some facts can help LDPC codes achieve this goal. First, any two columns have an overlap of at most one 1. Secondly, the sparse property allows us to avoid over-lapping. Less over-lapping means high independence among different coded bits. The condition makes LDPC decoder good decoding ability and low bit error rate.
2.2 Low Complexity
The "Low Density" characteristic only applies to the H matrix (i.e., the parity check matrix). H matrix is a decision criterion and represents decoding algorithm. Thus, lower density in the H matrix yields low-complexity in the decoder.
3 Advantage of LDPC codes
3.1 Near-capacity Performance
Shannon's theory tells us that “long” and “random” codes achieve capacity. LDPC codes provide the solution and attain near-capacity performance. However, it doesn’t mean that an LDPC code is the best code. Different codes are good at different things. For example, Turbo Codes are better at low code rates, i.e., R = 1/2 and below.
We know that irregular LDPC codes have better performance than regular LDPC codes. Therefore, the key to a good LDPC code is how to design it. There are methodical procedures for designing LDPC codes, especially irregular ones.  proposes a class of efficiently encodable irregular LDPC codes which might be called extended IRA codes.