Abstract
We present an approach for constructing LDPC codes without cycles of length 4 and 6. Firstly, we design 3 submatrices with different shifting functions given by the proposed schemes, then combine them into the matrix specified by the proposed approach, and, finally, expand the matrix into a desired parity-check matrix using identity matrices and cyclic shift matrices of the identity matrices. The simulation result in AWGN channel verifies that the BER of the proposed code is close to those of Mackay's random codes and Tanner's QC codes, and the good BER performance of the proposed can remain at high code rates.
1. Introduction
LDPC codes can be described by a bipartite graph called Tanner graph [1], and the girth of a Tanner graph is the length of the shortest cycle in the graph. Girths in the Tanner graphs of LDPC codes prevent the sum-product algorithm from converging [2–10]. Further, cycles, especially short cycles, degrade the performance of LDPC decoders, because they affect the independence of the extrinsic information exchanged in the iterative decoding [2, 3]. Hence, LDPC codes with large girth are desired. Most methods for designing LDPC codes are based on random construction techniques, the lack of structure implied by this randomness presents serious disadvantages in terms of storing and accessing a large parity-check matrix, encoding data, and analyzing code performance (e.g., determining a code’s distance properties). Recent research results [4–10] about LDPC codes with large girths show that there are many possible ways to construct the LDPC codes with large girths. However, some of the code constructions [4–10] are not satisfied for application due to the complicated constraints for the structures of parity-check matrices. To solve the problem, this letter provides a different construction of LDPC codes with large girth. The column weight of our codes is 3 and the row weight is (). The BER performance of the proposed codes is near to those of Mackay’s random codes and Tanner’s QC codes.
This letter is structured as follows. In Section 2, we analyze the figures of 4-cycles and 6-cycles in the parity-check matrix.
Section 3 presents the design algorithm of the parity-check matrix. Section 4 provides three lemmas show that the proposed codes do not contain 4-cycles and 6-cycles. Section 5 evaluates the BER performance of the proposed codes for AWGN channels via computer simulations. Finally, In Section 6 we make some conclusions.
2. Definitions of the Cycles
An LDPC code has the parity-check matrix of columns, where has ones in each column, ones in each row, and zeros elsewhere, then the parity-check matrix has rows [1, 2]. A bipartite graph with check nodes and bit nodes can be created with the edges between the bit and check nodes if there are corresponding 1s in the parity-check matrix . Such a graph is frequently called a Tanner graph [1, 11]. A cycle in a Tanner graph refers to a finite set of connected edges, the edge starts and ends at the same node, and it satisfies the condition that no node (except the initial and final node) appears more than once [4–10, 12]. The length of a cycle is simply the number of edges of the cycle.
A cycle also can be shown in a tree. Figure 1 shows a 4-cycle in a tree, and Figure 2 shows a 6-cycle in a tree. Figures 1 and 2 are not general descriptions for a 4-cycle and 6-cycle in a tree. It is also possible that a 4-cycle or a 6-cycle starts from a variable (bit) node, similar to the trees in Figures 1 and 2. In a tree, check nodes represent rows in parity-check matrix, and variable (bit) nodes represent columns. We try to design a parity-check matrix without 4-cycles and 6-cycles.
2.1. Figures of 4-Cycles in Parity-Check Matrix
In Figure 1, two 1s (we mark them as and ) in row belong to column and , respectively, two 1s (we mark them as and ) in row belong to column and , respectively, so the figure of the 4-cycle in the parity-check matrix as shown in Figure 3. If there is no figure as shown in Figure 3 in parity-check matrix, there is no 4-cycle in the LDPC code. We denote 4-cycles as .
2.2. Figures of 6-Cycles in Parity-Check Matrix
Figure 4 shows that and in row belong to column and respectively, in column belongs to row , in column belongs to row , in row and in row belong to column , where , , , , , represent six 1s in 6-cycle, as shown in Figure 4. We denote 6-cycles as .
From Figure 4 we know that six 1s in a 6-cycle belong to 3 rows and 3 columns equally, so we can get the number of 6-cycles with different figures to be 6 from Figure 5.
Figure 5 shows six different kinds of figures of 6-cycles. If there is no figure as shown in Figure 5 in the parity-check matrix, there is no 6-cycle in the LDPC code.
3. Design Algorithm of Parity-Check Matrix
If there is a parity-check matrix , row weight is (), column weight is 3. We design three submatrices , , , combine them into matrix , , transpose into , expand into desired parity-check matrix using identity matrices and cyclic shift matrices of the identity matrix randomly.
3.1. Design Algorithm of Submatrix
The design algorithm of is as following.
(1)Design a matrix with the dimension . , other elements are “0”(2)Let , , , where represents circularly shift in (1) for right-shifting steps circularly.(3)Let and its dimension is .
3.2. Design Algorithm of Submatrix
The design algorithm of is as following.
(1)Design a matrix with the dimension . , other elements are 0s(2)Let , the number of included in is (3)Let , , where represents circularly right-shifting for steps.(4)Let with the dimension .
3.3. Design Algorithm of Submatrix
The design algorithm of is as following.
(1)Designing a matrix with dimension . , other elements are “0.” For , we can get by the following way: (2)Let , , , where represents with circularly right-shifting steps.(3)Let .(4)Let there are copies of in so the dimension of is
We can get by the following way:
Let , then the dimension of is .
3.4. Expansion of
The expansion algorithm is as follows.
(1)Select an identity matrix with dimension ,(2)Let , , where represents the matrix with circularly right-shifting steps.(3)Exchanging the 1s in by the elements in the matrix set randomly and exchanging 0s by null matrices with the same dimension as , then we get the parity-check matrix , whose dimension is .
From the structure of the parity-check matrix , we can see that the proposed code is a deterministic LDPC code, so the proposed code has the advantage for encoding. To get the LDPC code with the large length (), we can expand the by selecting the desired dimension p of the identity matrix in (5) with stochastically shifting.
4. The Demonstration of the Code with Girth 8
In Section 3, we present a method for constructing parity-check matrix with girth 8 based on the submatrices’ shifting. In this section, we add three lemmas with theoretic proofs showing that the parity-check matrix does not contain 4-cycles and 6-cycles.
Lemma 1. If a matrix is constructed by (4), there is no 4-cycle in .
Proof. We can know from Figure 3 that if there are 4-cycles
in the matrix in (4), the edges connecting and must be in two different submatrices of , , because and are in the same row. The following formula
must be true:
In the
submatrix ,
the lengths and could be .
In the submatrix ,
the lengths and could be .
In the submatrix ,
the lengths and could be We can easily know that ,
so there is no 4-cycle in the matrix .
Lemma 2. If a matrix is constructed by (4), there is no 6-cycle in .
Proof. As shown in Figure 4, if there are 6-cycles in the
matrix the edges connecting , and must be in , and respectively. Without loss of generality, we assume that is the longest length among the three lengths.
The following formula must be true:
In the
submatrix ,
the lengths , and could be .
In the submatrix ,
the length of , and could be In the submatrix ,
the lengths , and could be We can know that the edge of must be in ,
or else
We know that
and ,
so
Thus there is no 6-cycle in the matrix ,
which means to be free from 6-cycles.
We know that , so the matrix is also free of 4-cycles and 6-cycles.
Lemma 3. If there is no 4-cycle and 6-cycle in the matrix , there is no 4-cycle and 6-cycle in the parity-check matrix .
Proof. If there is a 4-cycle in the parity-check matrix , from Figure 3 we can know that , , and must be in four different identity matrices or cyclic shift matrices of identity matrices. Since an identity matrix and a cyclic shift matrix of the in means a “1” in , there is a 4-cycle in . However, we know that there is no 4-cycle in , so there is no 4-cycle in the parity-check matrix . Using the same method, we can know that there is no 6-cycle in the parity-check matrix .
5. Performance Evaluation
To demonstrate the error-correcting performance, we constructed two rate-1/2 LDPC codes by the proposed method. For the purpose of comparison, we also construct two classes of Tanner’s QC codes and Mackay’s random codes [10, 11, 13]. We get Mackay’s random codes from [13]. Tanner’s QC codes are constructed by the method introduced in Tanner’s paper [10, 11]. Both Mackay’s random codes and constructed Tanner’s QC codes for the comparison are good codes. The selected codes’ parameters are given in Table 1.
Table 1 lists the typical values of the row weight , the column weight , the code length , the code rate and the girth for the three codes. The girths of the LDPC codes in Table 1 are tested by the approach of [12]. Table 2 lists the typical values of the proposed codes for different high code and code lengths. In Tables 1 and 2, the means the proposed code with the code length n and m parity check bits, so do the and .
We simulate the proposed code’s error-correcting performance with the assumption that each code is modulated by BPSK and transmitted over additive white Gaussian noise (AWGN) channel. All the codes are decoded with the sum-product algorithm [2, 3]. Figure 6 shows the simulated BER versus signal-to-noise ratio (). As shown in Figure 6. The BER performance of the proposed codes is very close to MacKay's random codes and Tanner’s QC codes. From Figure 7, it can be seen that the proposed codes also have a good BER performance at high code rates 0.67, 0.7, and 0.75. The BER curves of the two codes of at high code rates 0.67, 0.7 are close since two LDPC codes with different code lengths may have approximate minimum weights [10]. In the expansion algorithm of the proposed code, we replace “1” in by the elements in the set randomly, which will lead to the minimum weights of the obtained codes to be different, the shorter codes may have larger minimum weights.
6. Conclusions
In this paper, we proposed a QC LDPC code without girth-4 and girth-6, three lemmas are provided to prove the short girths’ properties of the proposed codes. Simulation verified the good error-correcting performance of the proposed code, whose BER performance is near to those of Tanner’s QC codes and MacKay’s random codes [10, 11, 13]. The good BER performance can remain at high code rates.
Acknowledgments
This paper is supported by the National Natural Science Foundation of China under Grant no. 60572093, Specialized Research Fund for the Doctoral Program of Higher Education (20050004016) of China, and IITA Professorship Program of Gwangju Institute of Science and Technology, South Korea. Part of contents of this paper was presented on IET International Conference on Wireless Mobile and Multimedia Networks Proceedings (ICWMMN 2006).