Construction of HighRate Regular QuasiCyclic LDPC Codes Based on Cyclic Difference Families
Abstract
For a highrate case, it is difficult to randomly construct good lowdensity paritycheck (LDPC) codes of short and moderate lengths because their Tanner graphs are prone to making short cycles. Also, the existing highrate quasicyclic (QC) LDPC codes can be constructed only for very restricted code parameters. In this paper, a new construction method of highrate regular QC LDPC codes with paritycheck matrices consisting of a single row of circulants with the columnweight 3 or 4 is proposed based on special classes of cyclic difference families. The proposed QC LDPC codes can be constructed for various code rates and lengths including the minimum achievable length for a given design rate, which cannot be achieved by the existing highrate QC LDPC codes. It is observed that the paritycheck matrices of the proposed QC LDPC codes have full rank. It is shown that the error correcting performance of the proposed QC LDPC codes of short and moderate lengths is almost the same as that of the existing ones through numerical analysis.
I Introduction
Lowdensity paritycheck (LDPC) codes [1] have been one of dominant errorcorrecting codes for highspeed communication systems or data storage systems because they asymptotically have capacityapproaching performance under iterative decoding with moderate complexity. Among them, quasicyclic (QC) LDPC codes are well suited for hardware implementation using simple shift registers due to the regularity in their paritycheck matrices so that they have been adopted in many practical applications.
For a highrate case, it is difficult to randomly construct good LDPC codes of short and moderate lengths because their paritycheck matrices are so dense compared to a lowrate case for the given code length and degree distribution that they are prone to making short cycles. Among wellknown structured LDPC codes, finite geometry LDPC codes [2][6] and LDPC codes constructed from combinatorial designs [7][12] are adequate for highrate LDPC codes. The error correcting performance of these LDPC codes is verified under proper decoding algorithms but they have severe restrictions on flexibly choosing the code rate and length. Also, since finite geometry LDPC codes usually have much redundancy and large weights in their paritycheck matrices, they are not suitable for a strictly powerconstrained system with iterative messagepassing decoding.
It is known that the paritycheck matrix structure consisting of a single row of circulants [5][10], [13], [14] is adequate for generating highrate QC LDPC codes of short and moderate lengths. The classI circulant EGLDPC codes in [5] and the duals of onegenerator QC codes in [6] are constructed from the Euclidean geometry and the affine geometry, respectively, and they have very restricted rates and lengths and much redundancy. In [7][10], QC LDPC codes constructed from cyclic difference families (CDFs) [15] are proposed, which also have restricted lengths. Computer search algorithms are proposed in [13] and [14] for variouslength QC LDPC codes of this paritycheck matrix structure, but they cannot generate QC LDPC codes as short as the QC LDPC codes constructed from CDFs for most of code rates.
In this paper, new highrate regular QC LDPC codes with paritycheck matrices consisting of a single row of circulants with the columnweight 3 or 4 are proposed based on special classes of CDFs. In designing the proposed QC LDPC codes, we can flexibly choose the code rate and length including the minimum achievable code length for a given design rate. The paritycheck matrices of the proposed QC LDPC codes have full rank when the columnweight is 3 and have almost full rank when the columnweight is 4 because there is just one redundant row. Numerical analysis shows that the error correcting performance of the proposed QC LDPC codes of short and moderate lengths is almost the same as that of the existing highrate QC LDPC codes.
The remainder of the paper is organized as follows. Section II introduces the definition and the existence theorems of CDFs, and provides a construction method of a class of CDFs. In Section III, highrate regular QC LDPC codes are proposed and analyzed. In Section IV, the error correcting performance of the proposed QC LDPC codes is compared to that of the existing highrate QC LDPC codes via numerical analysis. Finally, the conclusions are provided in Section V.
Ii Cyclic Difference Families
Iia Definition and Existence
A cyclic difference family is defined as follows.
Definition 1 ([15])
Consider the additive group . Then element subsets of , , , , form a cyclic difference family (CDF) if every nonzero element of occurs times among the differences , , , .
According to [7][12], CDFs are adequate for constructing paritycheck matrices of QC LDPC codes with girth at least 6. Theorem 1 shows the existence of such CDFs.
Theorem 1
In this paper, a special class of CDFs, called perfect difference family (PDF), will be used to construct highrate regular QC LDPC codes with paritycheck matrices consisting of a single row of circulants so that more various code parameters can be achieved. Before introducing its definition, we will define two terms as follows. Consider element subsets of , , , . Among the differences , , , , we will call differences , , , as the forward differences over of the subsets and the remaining differences as the backward differences over of the subsets.
Definition 2 ([15])
Consider a CDF, , , , with . Then the CDF is called a perfect difference family (PDF) if the backward differences cover the set .
The condition on the existence of PDFs is stricter than that of CDFs. Some recent results on the existence of PDFs are summarized in the following theorem.
Theorem 2
IiB Construction of CDFs for
Although PDFs do not exist for , a class of CDFs constructed from hooked Skolem sequences for can be used to construct paritycheck matrices of QC LDPC codes with various code parameters, which consist of a single row of circulants.
Definition 3 ([15])
A Skolem sequence of order is a sequence of integers satisfying the following two conditions:

For every , there exist exactly two elements and in such that .

If with , then .
Skolem sequences are also written as collections of ordered pairs with . A hooked Skolem sequence of order is a sequence satisfying the conditions i) and ii).
A hooked Skolem sequence of order exists if and only if , and it can be constructed by the method in [15] as follows. Note that the ordered pairs are used to represent a hooked Skolem sequence as in Definition 3.

;

;

, ;


, ;

From hooked Skolem sequences, CDFs can be constructed for . After constructing a hooked Skolem sequence of order , , a CDF is obtained by letting . We can easily check that all differences in ’s cover the set .
Iii HighRate QC LDPC Codes Constructed From PDFs and CDFs
Iiia Proposed QC LDPC Codes
Consider a binary regular LDPC code whose paritycheck matrix is a array of circulants given as
(1) 
where a circulant is defined as a matrix whose each row is a cyclic shift of the row above it. This LDPC code is quasicyclic because applying circular shifts within each length subblock of a codeword gives another codeword. A circulant is entirely described by the positions of nonzero elements in the first column. Let , , be the index of the st element in the first column. Then, the shift value(s) of a circulant is (are) defined as the index (indices) of the nonzero element(s) in the first column. Note that a shift value takes the value from to . Let () denote the columnweight (rowweight) of . Then we have and the design rate of this LDPC code is . Let , and , denote the th smallest shift value of , that is, , which correspond to the indices of 1’s in the first column of .
We propose a new class of highrate QC LDPC codes which have the paritycheck matrix form in (1) constructed from PDFs or CDFs given in Subsection IIB. Under some proper constraints, a paritycheck matrix of QC LDPC code with the columnweight 3 or 4 can be obtained by taking shift values of from in the CDF or the PDF. More concretely, QC LDPC codes can be constructed by using , , of CDF or PDF as follows:

Choose the code parameters , , and such that

for and for

, where for and .


Let , and .
For , QC LDPC codes with paritycheck matrices consisting of a single row of circulants can also be constructed by the proposed procedure, but for other than 6, 8, and 10, PDFs are still unknown as in Theorem 2.
IiiB Girth of the Proposed QC LDPC Codes
It is well known that paritycheck matrices including a circulant of columnweight larger than or equal to 3 have a girth at most 6 [21]. In this subsection, we will show that the proposed QC LDPC codes have the girth 6 by proving that there is no cycle of length 4 in the paritycheck matrices. Let denote the difference of shift values and in .
Theorem 3
Consider a PDF , . The proposed QC LDPC codes constructed from this PDF do not have any cycle of length 4 for every .
The necessary and sufficient condition for avoiding cycles of length 4 is that all ’s, and , are distinct. The backward differences over of the shift values cover to due to the property of the PDF, and thus the forward differences over of the shift values cover to . Since , all ’s are distinct.
Theorem 4
For , consider a CDF , , constructed from a hooked Skolem sequence of order . The proposed QC LDPC codes constructed from this CDF do not have any cycle of length 4 for every and .
We only need to show that all ’s, and , are distinct for . We can see from Definition 3 that the maximum value of in a hooked Skolem sequence of order is . Since , the minimum and the maximum of the backward differences over of the shift values are and , respectively. Since all backward differences over are distinct and take values through , every forward difference over has a value from to . Therefore, all ’s are distinct for .
Note that for , , and , a forward difference and a backward difference over of the shift values in the proposed QC LDPC codes have in common. Thus it seems that another construction method is needed for . However, in fact, there does not exist any construction method which avoids cycles of length 4 as shown in the following theorem.
Theorem 5
Assume that there exists a shift value assignment such that the paritycheck matrix avoids cycles of length 4. If for some , , , the difference is also . Therefore, all differences , and , have to cover to except .
Let denote the sum of backward differences over of the shift values. Note that the addition is calculated over the integer. Then, is odd because
(2) 
On the other hand, since can be expressed as
this contradicts (2) in that the parities of are different. Therefore, there is no shift value assignment such that the paritycheck matrix in (1) avoids cycles of length 4 for , , and .
IiiC Advantages of the Proposed QC LDPC Codes
The proposed QC LDPC codes have advantages mainly on being able to have various code parameters while guaranteeing the girth 6. For , only has to be larger than or equal to 2 and for , can be any integer from 4 to 1000, which are the same as the conventional QC LDPC codes constructed from CDFs [7][10] except for and . Moreover, for a fixed , can have any value as long as except for the case of , , and . On the other hand, the conventional QC LDPC codes constructed from CDFs generally do not guarantee the girth 6 for for a given . In fact, it can be easily seen that can have the arbitrary value from and for the conventional QC LDPC codes to have the girth 6 because for the given CDF , , the conventional QC LDPC codes can be constructed by only using the sets for . However, the conventional QC LDPC codes cannot still have sufficiently various code lengths.
It is obvious that the proposed QC LDPC codes can achieve the minimum code length, which corresponds to the theoretical lower bound, among all possible regular LDPC codes for given and design rate under the girth 6 is guaranteed because the paritycheck matrix of the proposed QC LDPC code with is actually an incidence matrix of a Steiner system [7], [9]. That is, the minimum achievable code length of the proposed QC LDPC codes is . For comparison, consider QC LDPC codes whose paritycheck matrices have the form of a array of circulant permutation matrices, which correspond to the most common form of the existing regular QC LDPC codes. Obviously, these QC LDPC codes have the same design rate, row and columnweights of the paritycheck matrices with the proposed QC LDPC codes. The necessary condition on for these QC LDPC codes to have the girth larger than or equal to 6 is [22] and the array LDPC codes [23] are known to achieve the equality [24]. Thus, the minimum achievable code length of these QC LDPC codes for guaranteeing the girth 6 is . Fig. 1 illustrates such minimum achievable code lengths and by varying for and and we can see that the proposed QC LDPC codes can flexibly have a very short length up to the theoretical lower bound unlike the array LDPC codes. Note that QC LDPC codes in [13] and [14] cannot achieve the minimum code length.
The error correcting performance of the proposed QC LDPC codes may not be good for much larger than because, regardless of the code length, the girth of the proposed QC LDPC codes is fixed to 6 and the minimum distance of these QC LDPC codes has a value between and [7], [13]. However, these restrictions on the girth and the minimum distance are not problematic for the proposed highrate short QC LDPC codes and for large and small , the error correcting performance of the proposed QC LDPC codes will be compared with that of other QC LDPC codes in Section IV. Therefore, the proposed construction is adequate for highrate QC LDPC codes of short and moderate lengths.
It is difficult to analyze the rank of the paritycheck matrices of the proposed QC LDPC codes because they do not have an algebraic structure like the codes in [2][6]. Instead, the rank of the proposed paritycheck matrices for various parameters can be numerically computed. It is observed that the paritycheck matrices of the proposed QC LDPC codes have full rank for the parameters , , and such that the code length is less than or equal to 3,000, and have almost full rank, i.e., just one redundant row, for the parameters , , and such that the code length is less than or equal to 3,000. Moreover, every paritycheck matrix has at least one fullrank circulant for , which enables a simple encoding of the proposed QC LDPC codes, and has at least one almost fullrank circulant for . Assume that in (1) is invertible. Then, a generator matrix of systematic form is simply obtained [10] as
where represents the identity matrix. This fullrank property of the paritycheck matrices differentiates the proposed QC LDPC codes from the QC LDPC codes in [5] and [6], whose paritycheck matrices consist of a single row of circulants and have many redundant rows.
Iv Simulation Results
In this section, the error correcting performance of the proposed QC LDPC codes is verified via numerical analysis and compared with that of some algebraic QC LDPC codes and progressive edgegrowth (PEG) LDPC codes [25] with girth 6. As algebraic QC LDPC codes, affine geometry QC LDPC codes [6] and array LDPC codes [23] are used. Note that the PEG LDPC codes are not quasicyclic but randomlike, and they are known to have the error correcting performance as good as random LDPC codes. The parameters of the algebraic QC LDPC codes are set to have as equal values with those of the proposed QC LDPC codes as possible and the parameters of the PEG LDPC codes are exactly the same as those of the proposed QC LDPC codes. All results are obtained based on PC simulation using the sumproduct decoding under the additive white Gaussian noise (AWGN) channel. The maximum number of iterations is set to 100.
First, the rate0.9167 (1020, 935) proposed QC LDPC code with , , and is compared with the rate0.9131 (1024, 935) affine geometry QC LDPC code and the rate0.9167 (1020, 935) PEG LDPC code. The bit error rate (BER) performance of these LDPC codes is shown in Fig. 2 and we can see that the proposed QC LDPC code and the PEG LDPC code show a better BER performance than the affine geometry QC LDPC code in the high signaltonoise ratio (SNR) region. Second, the rate0.9333 (2115, 1974) proposed QC LDPC code with , , and is compared with the rate0.9348 (2115, 1977) array LDPC code and the rate0.9333 (2115, 1974) PEG LDPC code. It is shown in Fig. 2 that these LDPC codes have almost the same BER performance. Finally, the rate0.9006 (1640, 1477) proposed QC LDPC code with , , and is compared with the rate0.9024 (1640, 1480) array LDPC code and the rate0.9006 (1640, 1477) PEG LDPC code. It is shown in Fig. 2 that these LDPC codes also have almost the same BER performance.
V Conclusions
In this paper, a new class of highrate QC LDPC codes with or is proposed, which have paritycheck matrices consisting of a single row of circulants and having the girth 6. The construction of these QC LDPC codes exploits the CDFs constructed from hooked Skolem sequences in the case of and , and the PDFs in other cases. In designing the proposed QC LDPC codes, we can flexibly choose the values of and including the minimum achievable code length for a given design rate. The paritycheck matrices of the proposed QC LDPC codes have full rank when and have almost full rank, i.e., just one redundant row, when . Via numerical analysis, it is verified that the error correcting performance of the proposed QC LDPC codes is better than or almost equal to that of the affine geometry QC LDPC codes, the array LDPC codes, and the PEG LDPC codes.
References
 [1] R. G. Gallager, Low Density Parity Check Codes. Cambridge, MA: MIT Press, 1963.
 [2] Y. Kou, S. Lin, and M. P. C. Fossorier, “Lowdensity paritycheck codes based on finite geometries: A rediscovery and new results,” IEEE Trans. Inf. Theory, vol. 47, no. 7, pp. 27112736, Nov. 2001.
 [3] I. Djurdjevic, J. Xu, K. AbdelGhaffar, and S. Lin, “A class of lowdensity paritycheck codes constructed based on ReedSolomon codes with two information symbols,” IEEE Commun. Lett., vol. 7, no. 7, pp. 317319, Jul. 2003.
 [4] S. J. Johnson and S. R. Weller, “Codes for iterative decoding from partial geometries,” IEEE Trans. Commun., vol. 52, no. 2, pp. 236243, Feb. 2004.
 [5] H. Tang, J. Xu, Y. Kou, S. Lin, and K. AbdelGhaffar, “On algebraic construction of Gallager and circulant lowdensity paritycheck codes,” IEEE Trans. Inf. Theory, vol. 50, no. 6, pp. 12691279, Jun. 2004.
 [6] N. Kamiya, “Highrate quasicyclic lowdensity paritycheck codes derived from finite affine planes,” IEEE Trans. Inf. Theory, vol. 53, no. 4, pp. 14441459, Apr. 2007.
 [7] B. Vasic and O. Milenkovic, “Combinatorial constructions of lowdensity paritycheck codes for iterative decoding,” IEEE Trans. Inf. Theory, vol. 50, no. 6, pp. 11561176, Jun. 2004.
 [8] B. Ammar, B. Honary, Y. Kou, J. Xu, and S. Lin, “Construction of lowdensity paritycheck codes based on balanced incomplete block designs,” IEEE Trans. Inf. Theory, vol. 50, no. 6, pp. 12571268, Jun. 2004.
 [9] S. J. Johnson and S. R. Weller, “Regular lowdensity paritycheck codes from combinatorial designs,” in Proc. IEEE Inf. Theory Workshop, Cairns, Australia, Sep. 2001, pp. 9092.
 [10] S. J. Johnson and S. R. Weller, “A family of irregular LDPC codes with low encoding complexity,” IEEE Commun. Lett., vol. 7, no. 2, pp. 7981, Feb. 2003.
 [11] S. J. Johnson and S. R. Weller, “Resolvable 2designs for regular lowdensity paritycheck codes,” IEEE Trans. Commun., vol. 51, no. 9, pp. 14131419, Sep. 2003.
 [12] M. Fujisawa and S. Sakata, “A construction of high rate quasicyclic regular LDPC codes from cyclic difference families with girth 8,” IEICE Trans. Fundamentals, vol. E90A, no. 5, pp. 10551061, May 2007.
 [13] T. Xia and B. Xia, “Quasicyclic codes from extended difference families,” in Proc. IEEE Wireless Commun. Networking Conf., New Orleans, LA, Mar. 2005, pp. 10361040.
 [14] M. Baldi and F. Chiaraluce, “New quasi cyclic low density parity check codes based on difference families,” in Proc. Int. Symp. Commun. Theory and Appl., Ambleside, UK, Jul. 2005, pp. 244249.
 [15] C. J. Colbourn and J. H. Dinitz, The CRC Handbook of Combinatorial Designs. Boca Raton, FL: CRC, 1996.
 [16] R. Peltesohn, “Eine Losung der beiden Heffterschen Differenzenprobleme,” Compos. Math., vol. 6, pp. 251257, 1938.
 [17] G. Ge, Y. Miao, and X. Sun, “Perfect difference families, perfect difference matrices, and related combinatorial structures,” J. Combin. Des., vol. 18, no. 6, pp. 415449, Nov. 2010.
 [18] R. Julian, R. Abel, S. Costa, and N. J. Finizio, “Directedordered whist tournaments and difference families: Existence results and some new classes of cyclic solutions,” Discrete Appl. Math., vol. 143, pp. 4353, 2004.
 [19] T. Beth, D. Jungnickel, and H. Lenz, Design Theory, London, UK: Cambridge University Press, 1986.
 [20] R. Mathon, “Construction for cyclic Steiner 2designs,” Ann. Discrete Math., vol. 34, pp. 353362, 1987.
 [21] R. M. Tanner, “Spectral graphs for quasicyclic LDPC codes,” in Proc. Int. Symp. Inf. Theory, Washington, D.C., Jun. 2001, p. 226.
 [22] M. P. C. Fossorier, “Quasicyclic lowdensity paritycheck codes from circulant permutation matrices,” IEEE Trans. Inf. Theory, vol. 50, no. 8, pp. 17881793, Aug. 2004.
 [23] J. L. Fan, “Array codes as lowdensity paritycheck codes,” in Proc. Int. Symp. Turbo Codes, Brest, France, Sep. 2000, pp. 543546.
 [24] M. Karimi and A. H. Banihashemi, “On the girth of quasi cyclic protograph LDPC codes,” in Proc. Int. Symp. Inf. Theory, Cambridge, MA, Jul. 2012, pp. 30883092.
 [25] X.Y. Hu, E. Eleftheriou, and D. M. Arnold, “Regular and irregular progressive edgegrowth Tanner graphs,” IEEE Trans. Inf. Theory, vol. 51, no. 1, pp. 386398, Jan. 2005.