Half Rate Quasi Cyclic Low Density Parity Check Codes Based on Combinatorial Designs

This paper presents new half rate Quasi Cyclic Low Density Parity Check (QCLDPC) codes formed on the basis of combinatorial designs. In these codes, circulant matrices of the parity check matrix are formed on the basis of subsets in which the difference between any two elements of a subset is unique with all differences obtained from the same or different subsets. This structure of circulant matrices guarantees non-existence of cycle-4 in the Tanner graph of QC-LDPC codes. First, an irregular code with girth 6 constituted by two rows of circulant matrices is proposed. Then, more criteria will be considered on the structure of subsets with the mentioned feature aiming to represent a new scheme of regular QC-LPDC codes with girth at least 8. From simulations, it is confirmed that codes have similar to or better performance than other well-known half rate codes, while require lower complexity in their design.


Introduction
Quasi-Cyclic Low Density Parity Check (QC-LDPC) codes are represented as reputable structured-type LDPC codes, which are considered in the current and next generations of broadband transmission and storage systems [1] [2].This is mainly because of their high error correcting performance in different channels, low-complex encoding and parallel iterative decoding conducted on the constituted circulant matrices.QC-LDPC codes are conventionally implemented as high rate and long length codes, while short cycles (in particular cycle-4) are prohibited in structure of their parity check matrix 1 .On the other hand, half rate of these codes with girth 6 and short lengths has been in- In this letter, codes with rates greater than half and length greater than 1000 are categorized as high rate and long-length codes.
terested in some applications such as multirate transmission systems affected by fading phenomenon [3].For short to medium block length codes, an algorithm was proposed, which removes harmful structures of the code's graph and improves the performance at the medium to high signal to noise ratios.Indeed, this improvement provides a lower error floor for the code.
It is also possible to have half rate of QC-LDPC codes with girth greater than 6 to produce the error floor at lower bit error rates (BERs).These codes are initially designed as a regular code with girth 6 based on approximate cycle extrinsic message degree (ACE) algorithm [4] or arithmetic progression (AP) sequence [5].Then, a masking technique is accomplished on their parity check matrix to prohibit existence of cycle-6 and form an irregular code with girth at least 8. QC-LDPC codes can be implemented based on progressive edge growth algorithm (PEG).In PEG algorithm, check nodes are formed so as to produce the maximum distance possible from the considered variable code [6].This structure will lead to construct cycles with the long length and consequently provides a code with the high girth.Error correcting capability of these codes can be improved by selecting those edges that provide the best performance for its iterative decoder [7].
Alternatively, half-rate QC-LDPC codes with the high performance are constructed based on circulant permutation matrices (CPMs).In one method, CPMs with an arbitrary column and row weights are designed based on greatest common divisor (GCD) concept.In addition, a proper masking technique is applied to construct a code with girth at least 8 [8].A modification on the GCD-based structure of CPMS was proposed aiming to reduce the encoding complexity.In this case, information part of parity check matrix is only formed by the greatest common divisor concept [9].A criterion is defined for construction of this part of the parity check matrix to prohibit existence of cycles 4 and 6.Then, a quasi-diagonal structure is applied on the parity check matrix to maintain girth 8 for the code.Similarly, a suitable masking technique is applied to increase girth of the code.
CPM-based parity check matrix of QC-LDPC codes is possibly formed by combination of finite fields and combinatorial designs.In this case, circulant matrices are obtained by combination of two arbitrary subsets of elements from a defined field.Finally, an appropriate masking technique is applied on the obtained CPM-based matrix to construct QC-LDPC codes with girth 8 or higher [10].
QC-LDPC codes can also be designed on the basis of cyclic difference sets (CDF) in which every specific number of elements defined in the subsets of a group occurs only once [11] [12].Subsets with this feature conventionally define constituent circulant matrices of the parity check matrix with the girth 6.Despite CDF, it is not necessary to have difference of elements in a subset as an element of the subsets.This simplifies formation of subsets and consequently provides more flexibility in design of codes.Recently, new QC-LDPC codes with girth 6 and rates greater than half were proposed by difference sets concept [13].In this method, the elements of the first subset are optionally selected so as the difference between any two elements is unique.Then, elements of other subsets are determined based on elements of the first subset, while the difference between any two elements of a subset is also unique.This guarantees non-existence of cycle-4 in Tanner graph of the code.Codes implemented by this technique demonstrate high error correcting performance so as they are compared by QC-LDPC codes with girth 8.
In this letter, we apply concept of difference sets in constructing two new schemes of QC-LDPC codes.Despite the method presented in [13], codes have half rate and subsets are defined by unequal lengths.Based on this feature of circulant matrices, an irregular QC-LDPC code with girth 6 is proposed.Subsets defined with the abovementioned structure will also apply to represent a regular QC-LDPC code with girth 8.For the regular code, instead of utilizing a masking technique, circulant matrices are interactively designed with each other to prohibit existence of cycles with lengths 4 and 6 in the Tanner graph of the parity check matrix.Simulation results express that the newly proposed codes have low error floors.In addition, these demonstrate performances similar to or better than other well-known half-rate QC-LDPC codes, while a lower complexity in their design is applied.
The rest of paper is organised as follows: Section 2 explains how subsets with unique differences between their elements are formed.Section 3 presents structure of an irregular QC-LDPC code based on subsets defined in section 2.Moreover, it explains how subsets with different lengths are applied to form a regular QC-LDPC code with column weight 3 and girth 8. Section 4 gives simulation results of the newly designed codes and compares their performance with half-rate QC-LDPC codes constructed by other methods and masking techniques.Finally, Section 5 summarises the paper and gives suggestions for the further work.

Subsets with Different Lengths and Unique Differences between Elements
For given , n t ∈  , we define sets , which satisfy the following conditions: 1) 1,1 0 α = and for every 1 , , , where ( ) ( ) for every Based on this condition, non-zero elements of i S , 2 i n ≤ ≤ can be directly determined from non-zero elements of 1 S .The relationship between jth element of ith subset and its correspondence at subset 1 S , is obtained by: where 3) For every 1 , , , , , where For the given m ∈  , we define sets for all For every Based on the above constructions, there exists an additive group such that for all 1 i n ≤ ≤ , ( ) are repeated only once in this group and ν is the minimum value, which sa- tisfies this property 2 .For example, let are sets of differences between elements of 1 S , 2 S , 3 S , 4 S and 5 S , respectively.It is concluded that difference between any two elements of a subset is unique with other differences obtained from the same or other subsets.Note that 41 ν = is the minimum value that provides this condition for the given subsets.

Construction of Half Rate QC-LDPC Codes Based on Subsets with Different Lengths
In this section, two new schemes of half rate QC-LDPC codes are presented.In the first method, an irregular code with girth 6 is constructed based on two rows of circulant matrices.In the second method, structure of a regular code with girth 8 formed by more than three rows of circulant matrices is discussed.

Irregular Half Rate QC-LDPC Codes with Girth 6
Irregular half rate ( ) 2 ,   QC-LDPC code is constructed by the parity check matrix having the below form: where  is an even value, i C , The above matrix can be viewed as two ×   matrices and one of these matrices should be full rank to obtain the generator matrix of the code.
Positions of 1 in circulant matrices are based on elements of subsets defined in Equations ( 1)- (7), where ν =  .Indeed, elements of each subset give positions of 1 in the first row of a circulant matrix.Other elements of the first row of circulant matrices are zero.By 1 −  cyclic shifts of the first row, other rows of the circulant matrix will be obtained.That means, there exist Similarly, there exist { } , which define 1 I and 2 I , respectively.In the given parity check matrix, As differences between position of 1s in a circulant matrix with column weight 3 are unique, a cycle-4 will not be obtained from C i s,

Regular Half Rate QC-LDPC Codes with Girth 8
As another scheme of half rate QC-LDPC code, the parity check matrix is formed by more than two rows of circulant matrices.This matrix is generally expressed by: where H γ , 0 1 γ ≤ ≤ , are ×   matrices defined by: , . , 1 u i C γ + and ,i I γ , respectively.All these subsets follow the properties defined in Equations ( 1)-( 7) with ν =  .Other elements in the first row of these circulant matrices are zero.By construction, at least one of H γ s is full rank to achieve code's generator matrix from H .The matrix given in (9) expresses existence of two circulant matrices in its every column.This introduces a regular LDPC code with column weight 3.
Lemma 1 The parity check matrix given in Equation ( 9) with ( ) ( ) ( ) has cycle-4 if the below condition is satisfied: Proof.
( ) 0, 1 u i C + has 1 at its zeroth column of the zeroth row.Hence, ( ) shifts of the zeroth row of ( ) th row of this matrix has 1 at ( ) th columns, respectively.On the other hand, the zeroth rows of 0,i I and 1,i I , which represent ( ) th columns, respectively.This means that two rows of H have two common 1 and consequently a cycle-4 is formed for the given H .
By the same argument presented in Lemma 1, it is possible to have other conditions for the existence of a cycle-4, which are dependent on elements of subsets applied in construction of parity check matrix of QC-LDPC code.Table 1 gives criteria for the existence of cycle-4 based on the relationships existed between elements of different subsets.
Table 1.Cycle-4 condition based on definition of subsets applied for construction of parity check matrix given in (9).

Structure of subsets
Cycle-4 condition . Existence of a cycle-4 based on combination of four circulant matrices.
As an example, Figure 1 shows structure of H constituted by u rows of ×   circulant matrices ( ) In this case,  is an arbitrary value, which satisfies conditions in ( 1)-( 7).The second column of 0,1 C has 1 in its second row obtained from two cyclic shifts of the zeroth row.By equal number of shifts conducted on the zeroth row of 1,1 C , its third column of the second row is also 1.In the zeroth row of 0,u I and 1,u I , the second and third columns are 1.This means that the second and zeroth rows C and 0,u I have common 1 in their second column, respectively.Existence of common 1 also exists in the second and zeroth rows of 1,1 C and 1,u I .As a result, combination of the mentioned circulant matrices will conclude a cycle-4 for the matrix constructed by the utilized circulant matrices.
Lemma 2 In a circulant matrix with length λ and column weight 2, let 0 and ρ be positions of 1 in the zeroth row, where 0 1 ρ λ < ≤ − .The matrix has cycle-6 if and only if Proof.By [10], a circulant matrix has cycle-6, if a 3 3 × submatrix of the main matrix includes two identical terms in its determinant expansion.This means, in every three rows of the circulant matrix, any row pair should have one and only one 1 in common and position of this common-1 must be different with positions of common-1 in other row pairs.Figure 2 Proof.In the given H , each ≤ ≤ , has two 1s in every row and column.This matrix is free of cycle-4 because circulant matrices are formed on the basis of conditions given in (1)- (7).In addition, in circulant matrices with column weight 2, position of 1s in their first row do not provide the condition mentioned in Lemma 1.
By the same argument in Lemma 2, in the structure of every ,a C γ , in every three rows, any row pair does not have one common 1 in a unique position as differences between positions of 1 are unique and length of circulant matrices does not satisfy conditions of the lemma.This structure is not even observed in ,b I γ s because in their every row or column only one 1 exists.
The given H can also have cycle-6, when combination of circulant matrices forms one of the shapes shown in Figure 2(a).Indeed, circulant matrices in these graphs are interpreted as nodes of graph.Hence, in order to have cycle-6, it is essential to have six non-zero circulant matrices positioned in three different rows and columns of H , while in every row and column, there are exactly two of these circulant matrices.Considering structure of H , cycle-6 is prohibited, when H is constructed by more than three rows of circulant matrices ( )

Simulation Results
The , when it shows 0.25 dB improvement compared to PEG QC-LDPC code [6].It is also concluded that the error floor of the proposed irregular code will be occurred at  non-existence of cycle-6 in structure of regular code, which deteriorates effect of harmful trapping sets on the error correcting performance of codes.The results obtained from simulations demonstrate that the error floor of the newly designed codes with girth 8 will be for

Conclusions and Future Work
The paper presented new schemes of half rate QC-LDPC codes with girth 6 or 8.They are designed on the basis of difference set property of subsets, which determine structure of constituent circulant matrices.Based on defining new criteria in structure of subsets and proper combination of circulant matrices, regular QC-LDPC codes with girth 8 were obtained.This concluded a high girth code without applying a masking technique.Simulation results confirmed that newly proposed codes have similar performance to other well-known half rate codes, while are designed with the lower complexity.In future work, the performance of constructed codes in the error floor region will be verified by trapping sets analysis and determining their minimum weight.

.
Non-zero elements of 2 S and 3 S can be obtained from (3), where 2 p = and 1 r = .In this case,

2
It is possible to have greater ν and provide all given conditions.
position of one 1 in 1 I and 2 I does not lead a cycle-4 in these circulant matrices.Similarly, combination of 1 C , 3 C and 1 I will not produce more than one common 1 in every two rows or two columns of H .In order not to have cycle-4 from circulant matrices positioned in two rows of H , position of 1 in 2 I , should be different with differences between position of any two 1s of 1 C and 2 C as well as position of 1 in 1 I .Note that existence of zero matrices will also conclude no cycle-4 from combination of 3 C or 4 C with the left ×   submatrix of H .
and ,b I γ , 1 b u ≤ ≤ , are u u ×   sparse circulant matrices with column weights 2 and 1, respectively.Moreover, O presents u u ×   zero matrix.Note that,  is a multiple of u.Similar to our first scheme, elements of

Figure 2 . 1 3 u
Figure 2. Expression of cycle-6.(a) All possible shapes of cycle-6 (b) existence of cycle-6 in the parity check matrix given in 9.

Figure
2(b) shows two possible cycle-6 formed by combination of six circulant matrices.

Figure 3 .
Figure 3. Performance of the half rate QC-LDPC codes with lengths 128 and 255.

Figure 4 .
Figure 4. Bit error rate (BER) and block error rate (BLKER) performance of the half rate QC-LDPC codes with lengths 128, 255 and 516.
gives the block error rate (BLKER) performance of the constructed QC-LDPC codes.In general, no error floor is observed for performance of proposed QC-LDPC codes is verified for additive white gaussian noise (AWGN) channel.Codes are modulated by Binary Phase Shift Keying (BPSK) modulation and decoded by Sum Product Algorithm (SPA).