Efficient Search of Compact QC-LDPC and SC-LDPC Convolutional Codes with Large Girth
Mohammad H. Tadayon, Alireza Tasdighi, Massimo Battaglioni, Marco Baldi, Franco Chiaraluce
aa r X i v : . [ c s . I T ] A p r Efficient Search of Compact QC-LDPC andSC-LDPC Convolutional Codes with Large Girth
Mohammad H. Tadayon, Alireza Tasdighi, Massimo Battaglioni, Marco Baldi and Franco Chiaraluce
Abstract —We propose a low-complexity method to find quasi-cyclic low-density parity-check block codes with girth or and shorter length than those designed through classicalapproaches. The method is extended to time-invariant spatiallycoupled low-density parity-check convolutional codes, permittingto achieve small syndrome former constraint lengths. Severalnumerical examples are given to show its effectiveness. Index Terms —Code design, girth, QC-LDPC block codes, spa-tially coupled LDPC convolutional codes, time-invariant codes.
I. I
NTRODUCTION
The error rate performance of quasi-cyclic low-densityparity-check (QC-LDPC) block codes decoded through it-erative algorithms is adversely affected by the presence ofcycles with short length in their associated Tanner graphs [1].Therefore, the minimum length of cycles, also known as girthof the graph (and denoted by g afterwards), should be keptas large as possible [2]. At the same time, short block codesare required in modern applications, like machine-to-machinecommunications, where low latency must be achieved.Motivated by these considerations, we propose a methodfor designing QC-LDPC block codes with large girth ( g =10 , ) and short length. QC-LDPC block codes are the basisfor the design of spatially coupled low-density parity-checkconvolutional codes (SC-LDPC-CCs). These codes can exploitshift register-based circuits for encoding [3], whereas slidingwindow (SW) iterative algorithms based on belief propagation(BP) can be used for their decoding [3], [4]. These decodersperform BP over a window including W blocks of a bits eachand, at any decoding stage, give in output the first a decodedbits; the window is then shifted forward by a bits. The smallestnumber of blocks required for achieving good performance is W = α ( m h + 1) , where m h is the syndrome former memoryorder of the code and α ∈ N usually takes values in [5 , . . . , .The decoding latency ( Λ SW ) and per output bit complexity( Γ SW ) of a SW decoder can be expressed as ( Λ SW = W a = α ( m h + 1) a, Γ SW = W aI avg · f ( w avg ,R ) a = α ( m h + 1) I avg · f ( w avg , R ) , (1)where I avg is the average number of decoding iterations and f ( w avg , R ) is a function of the average column weight w avg Mohammad H. Tadayon is with Iran Telecommunication Research Center(ITRC), Tehran, Iran (e-mail: [email protected]). Alireza Tasdighi is with theDepartment of Mathematics and Computer Science, Amirkabir University ofTechnology, Tehran, Iran (e-mail: [email protected]). Massimo Battaglioni,Marco Baldi and Franco Chiaraluce are with the Dipartimento di Ingegneriadell’Informazione, Università Politecnica delle Marche, Ancona, Italy (e-mail:[email protected], [email protected], [email protected]) of the parity-check matrix and the code rate R (see [5] forfurther details). As mentioned, for fixed values of w avg and R , a SW decoder returns a bits per window, independently ofthe window size W . Hence, if m h is kept small, SC-LDPC-CCs can be decoded with a small window size, thus yielding,according to (1), low decoding latency and complexity.We aim at designing QC-LDPC block codes with smallerblocklength and SC-LDPC-CCs with smaller m h than thosewith comparable girth available in the literature, and weintroduce the notion of compact codes to encompass block andconvolutional LDPC codes with these features in one word.In order to design compact codes, we resort to a constructionexploiting sequentially multiplied columns (SMCs). The latterare obtained starting from a base column and consecutivelymultiplying it by suitably chosen coefficients. These columnsare used to form the parity-check matrix of a QC-LDPC code(SC-LDPC-CC) and then a greedy search algorithm is usedto find compact codes. The SMC assumption significantlyreduces the search space and permits us to exhaustivelyexplore it. Moreover, we use a recently introduced integerprogramming optimization model, called min-max [6], in orderto find the minimum possible m h . This model, instead ofperforming an exhaustive search, takes benefit of a heuristicoptimization approach, thus further reducing the search time.II. N OTATION
A. CPM-based QC-LDPC block codes
Let us consider a QC-LDPC block code, in which the parity-check matrix is an m × n array of N × N circulant permutationmatrices (CPMs), I ( p ij ) , ≤ i ≤ m − , ≤ j ≤ n − , where N is the lifting degree of the code. I ( p ij ) is obtained fromthe identity matrix through a cyclic shift of its rows by p ij positions, with ≤ p ij ≤ N − . The code length is L = nN .The m × n matrix P having the integer values p ij as its entriesis referred to as the exponent matrix of the code. For such aQC-LDPC block code, a necessary and sufficient condition forthe existence of a cycle of length k in its Tanner graph is [7] k − X i =0 (cid:0) p m i n i − p m i n i +1 (cid:1) = 0 mod N, (2)where n k = n , m i = m i +1 , n i = n i +1 .To achieve a certain girth g , for given values of m and n ,and for a fixed value of N , one has to find a matrix P whoseentries do not satisfy (2) for any value of k < g/ , and anypossible choice of the row and column indexes m i and n i .Starting from P , the Tanner graph of the code can be easilyobtained, as it is unambiguously related to the values of p ij . We define an avoidable cycle in the Tanner graphof a CPM-based QC-LDPC block code as a cycle forwhich P k − i =0 (cid:0) p m i n i − p m i n i +1 (cid:1) = βN , β > . A strictly avoidable cycle is defined as a cycle for which P k − i =0 (cid:0) p m i n i − p m i n i +1 (cid:1) = 0 . B. SC-LDPC convolutional codes
Time-invariant SC-LDPC-CCs are characterized by semi-infinite parity-check matrices in the form H = H . . . H H . . . H H H . . .... H H . . . H m h ... H . . . m h ... . . . m h . . .... ... ... . . . , (3)where each block H i , i = 0 , , , . . . , m h , is a binary ma-trix with size c × a . The syndrome former matrix H s = (cid:2) H T | H T | H T | . . . | H Tm h (cid:3) , where T denotes transposition, has a rows and ( m h + 1) c columns. The code defined by theparity-check matrix (3) has asymptotic code rate R = a − ca ; m h determines the height of the non-zero diagonal bandin (3), whereas the code syndrome former constraint length v s = ( m h + 1) a gives its length. C. Link between QC-LDPC block codes and SC-LDPC-CCs
A common representation of the syndrome former matrix H s of an SC-LDPC-CC is based on polynomials ∈ F [ x ] , thering of polynomials with coefficients in the Galois field F .In this case, the code is described by a c × a symbolic matrix with polynomial entries, that is H ( x ) = h , ( x ) h , ( x ) . . . h ,a − ( x ) h , ( x ) h , ( x ) . . . h ,a − ( x ) ... ... . . . ... h c − , ( x ) h c − , ( x ) . . . h c − ,a − ( x ) , (4)where each h i,j ( x ) , i = 0 , , , . . . , c − , j = 0 , , , . . . , a − ,is a polynomial ∈ F [ x ] . The code representation based on H s can be converted into that based on H ( x ) as follows h i,j ( x ) = m h X m =0 h ( i,j ) m x m , (5)where h ( i,j ) m is the ( i, j ) -th entry of the matrix H m , the latterbeing the m -th block of H s .We focus on codes described by a symbolic parity-checkmatrix containing only monomials, also known as monomial codes . In this case, H ( x ) can be described through an exponentmatrix in the form P = p , p , . . . p ,a − p , p , . . . p ,a − ... ... . . . ... p c − , p c − , . . . p c − ,a − , (6)where p i,j is the exponent of the (only) non-null term in h i,j ( x ) . This extends the definition of exponent matrix intro-duced above for a QC-LDPC block code, thus evidencing thelink between the two representations. The syndrome formermemory order m h is the largest difference, in absolute value,between any two elements of P .III. C ODE DESIGN VIA SEQUENTIALLY MULTIPLIEDCOLUMNS
It is shown in [8] that the complexity of exhaustivelychecking equations of the type (2) goes exponentially high byincreasing each one of the parameters m , n or N . Solutionswith reduced complexity where proposed, for example, in [9],[10], but the corresponding design methods result in g = 8 .Next, we prove that by using the SMC assumption we caninstead design codes with girth up to .Let m < n ≤ N ( m, n, N ∈ N ) and consider the exponentmatrix P for a QC-LDPC code in the form (SMC assumption) P SMC m × n = (cid:2) ~ ~P γ ⊗ ~P γ ⊗ ~P . . . γ n − ⊗ ~P (cid:3) , (7)where ~ and ~P are column vectors of size m . ~ is an allzero vector and ~P is a vector with first (i.e., top most) entryequal to zero, second entry equal to one, while its remainingentries are selected from { , . . . , N − } , in an increasing order.Vectors γ j ⊗ ~P ( j = 2 , . . . , n − γ j ∈ { , . . . , N − } and γ j < γ j +1 ) are obtained from the base vector ~P throughsequential multiplications, and ⊗ represents multiplicationmod N . Let us denote by I k , , ,...,j , j = 2 , . . . , n − aset containing all relations (2) corresponding to the potentialcycles having lengths ranging between and k ( k = 2 , , , )in the Tanner graph of (7). The following proposition holds. Proposition 1.
Let P SMC m × n be the exponent matrix of a QC-LDPC block code C as defined in (7). Suppose that the Tannergraph associated to the submatrix (cid:2) ~ ~P (cid:3) contains no strictlyavoidable cycles of length up to . Then, the Tanner graphof C has no strictly avoidable cycle of length up to forsufficiently large N and a proper choice of γ j ’s.Proof. Demonstration is conducted inductively, which meansthat γ is determined first, followed sequentially by γ , γ , . . . , γ n − . Since we are considering cycles with lengthup to , for each element in I k , ,...,s − we can write a relationof type (2) consisting of, at most, five parts (depending on theoverall length of a considered cycle), namely a i γ i + a j γ j + a h γ h + a k γ k + a s − γ s − (8)where each two successive indexes are distinct, i.e. i = j = h = k = s − . According to (7), the coefficients a l ’s includeonly the elements p i = 0 and p i , i = 0 , . . . , m − . Hence, a = 0 , while, if present in (8), γ = 1 . Having assumed that the Tanner graph relative to the submatrix (cid:2) ~ ~P (cid:3) has nostrictly avoidable cycles with length up to , it has to be a i = 0 , ∀ i ∈ [1 , . . . , s − . In order to ensure that the wholeexpression is different from as well, it is sufficient to choose γ s − > (cid:12)(cid:12)(cid:12)(cid:12) − a i γ i − a j γ j − a h γ h − a k γ k a s − (cid:12)(cid:12)(cid:12)(cid:12) (9)with values ∈ { γ s − + 1 , . . . , N − } . This condition musthold for any element of I k , ,...,s − . So, setting λ k , ,...,s − =max {| x | | x ∈ I k , ,...,s − } , and N > λ k , ,...,s − , all theelements in I k , ,...,s − are non-zero mod N . The final valueof N results at the end of this analysis, that is for s = n . (cid:4) Example 1.
Let m = 3 and n = 6 . Suppose that P SMC3 × is theexponent matrix of a QC-LDPC block code C , as defined in(7), such that ~P = (0 , , T . Considering (2), it is easy tocheck that the Tanner graph associated to (cid:2) ~ ~P (cid:3) contains nostrictly avoidable cycles of length up to . Then, according toProposition 1, the Tanner graph of C has no strictly avoidablecycle of length up to for sufficiently large N and a properchoice of γ j ’s. Choosing γ = 3 , γ = 7 , γ = 67 and γ =144 and N = 271 , it is easily verified that C has g = 12 . Thecode length is L = 1626 . IV. G
REEDY SEARCH ALGORITHM
Based on Proposition 1, we have developed a search algo-rithm that finds the smallest possible γ j ∈ { γ j − + 1 , . . . , N − } , j = 2 , . . . , n − , that leads to g = 12 . From the complexityviewpoint, we can estimate the advantage resulting from theSMC assumption by considering that the exhaustive search of P requires to find mn elements. Instead, with our method, weonly need to find m + n − values, namely, m − entriesof the vector ~P and n − multiplication factors. A formaldescription of the proposed greedy search procedure is givenin Algorithm 1. As inputs, it takes m, n, N ( m < n ≤ N ) ,with m, n, N ∈ N , k ( = 2 , , , ), and an all zero matrix P of dimension m × n . As output, it returns if there is nofeasible solution, or an exponent matrix with girth g ≥ k ,otherwise. Moreover, the minimum possible m h for eachexponent matrix of SC-LDPC-CCs has been found throughthe min-max optimization model, recently proposed in [6].V. N UMERICAL R ESULTS
By applying the method presented in the previous sections,we have designed several codes with values of N and m h in many cases significantly smaller than those of classicalcodes with the same code rate and girth. The method thatin Section III has been illustrated for the case of g = 12 hasbeen applied also for the case of g = 10 . In particular, wehave considered m = 3 , and n = 4 , . . . , for the QC-LDPC block codes, and c = 3 , and a = 4 , . . . , for theSC-LDPC-CCs. The obtained values of N and m h have beencompared with those resulting from the application of classicaldesign approaches reported in [6], [8], [11]–[13], which, tothe best of our knowledge, are those producing the codes withthe minimum values of N and m h . The comparison with ourresults is shown in Figs. 1 and 2. We see that the valuesobtained through our approach are everywhere smaller (often Algorithm 1
Greedy search algorithm
Input: m, n, N, k and zero matrix P = (cid:2) ~ ~P ~P . . . ~P n − (cid:3) Output:
Exponent matrix P with girth k p ← , p ← , S ← ( m − -combinations of { , . . . , N − } top : Pick ( p , . . . , p ( m − ) from S in a way that p < p <. . . < p ( m − S ← S \ { ( p , . . . , p ( m − ) } if at least one of the relations in I k − , results in a cycle and |S | > then goto top else if |S | = 0 then return for j : 2 to n − do N j ← { γ j − + 1 , . . . , N − } loop : Pick γ j from the set N j N j ← N j \ { γ j } ~P j ← γ j ⊗ ~P if at least one of the relations in I k − , ,...,j results in a cycleand |N j | > then goto loop else if |N j | = 0 then return return P significantly) than those derived with the previous solutions.Let us denote as ˜ N ( ˜ m h ) the smallest lifting degree (syndromeformer memory order) found with our approach, and as N ∗ ( m ∗ h ) the minimum value found through previous approaches.The ratio of the decoding latency of the newly designed QC-LDPC block codes over that of the classical ones is Θ N = ˜ NN ∗ . (10)Based on (1), we can also assess the ratio of decodingcomplexity (per output bit) and latency achieved by the newlydesigned SC-LDPC-CCs over the classical ones, as Θ m h = ˜ m h + 1 m ∗ h + 1 . (11)The values of Θ N and Θ m h should be kept as small as possibleif we aim at minimizing the decoding latency and complexity.We have obtained values of Θ N as small as . , which meansa reduction in decoding latency by more than , and valuesof Θ m h as small as . , yielding a reduction of Λ SW and Γ SW by more than , with respect to previous solutions.As a further benchmark of the newly designed codes, wehave estimated the bit error rate (BER) of our SC-LDPC-CCsthrough Monte Carlo simulations of binary phase shift keyingmodulated transmissions over the additive white Gaussiannoise channel, and compared it with that of some codesconstructed following [6], [12]. A full-size BP decoder anda BP-based SW decoder, both performing iterations, havebeen used in the simulations. Decoding is performed on a fullcodeword of length L → ∞ (practically, L ≈ × ) whenthe full BP decoder is considered, whereas the SW decoderworks over sliding windows of W a bits each. Let us considertwo of our codes ( C and C ) with R = and g = 10 and ,two previous codes ( C B and C B ) designed following [6] and n N new codes m=3, g=10prev. codes m=3, g=10new codes m=4, g=10prev. codes m=4, g=10new codes m=3, g=12prev. codes m=3, g=12new codes m=4, g=12prev. codes m=4, g=12 Fig. 1. Minimum lifting degree ( N ) of new and previously designed QC-LDPC codes versus n , for m = 3 , . a m h new codes c=3, g=10prev. codes c=3, g=10new codes c=4, g=10prev. codes c=4, g=10new codes c=3, g=12prev. codes c=3, g=12new codes c=4, g=12prev. codes c=4, g=12 Fig. 2. Minimum syndrome former memory order ( m h ) of new andpreviously designed SC-LDPC-CCs versus a , for c = 3 , .TABLE IValues of a , c , m h , v s and g of the considered SC-LDPC-CCs with R = .Code a c m h v s g Θ m h C − C − C B . C B . C B . C B . two codes ( C B and C B ) obtained by unwrapping QC-LDPCblock codes designed as in [12]. The parameters of thesecodes are summarized in Table I. Their BER performance isshown in Fig. 3. We notice that the performance degradationis minimal for both very large and small window sizes. So,we can conclude that the new SC-LDPC-CCs do not exhibitany significant loss with respect to the classical codes, whilethey enjoy reduced latency and complexity. The value of Θ m h ,according to (11), is also shown in Table I.VI. C ONCLUSION
We have proposed a method for the design of QC-LDPCblock codes able to achieve girths g = 10 , with very short E b /N (dB) -6 -5 -4 -3 -2 -1 B E R C W C B1 W C B3 W C W=108C B1 W=108C B3 W=108 (a) E b /N (dB) -5 -4 -3 -2 -1 B E R C W C B2 W C B4 W C W=442C B2 W=442C B4 W=442 (b)Fig. 3. Simulated performance of SC-LDPC-CCs with: (a) g = 10 and (b) g = 12 as a function of the signal-to-noise ratio. block lengths. The same approach has been used to design SC-LDPC-CCs with very short syndrome former constraint length.Our method achieves important reductions in the decodinglatency and per output bit complexity at the cost of negligibleperformance losses over classical approaches.R EFERENCES[1] R. M. Tanner, “A recursive approach to low complexity codes,”
IEEETrans. Inf. Theory , vol. IT-27, no. 5, pp. 533–547, Sep. 1981.[2] Y. Wang, J. S. Yedidia, and S. C. Draper, “Construction of high-girth QC-LDPC codes,"
Proc. 5th Int. Symp. Turbo Codes Rel. Topics ,Lausanne, Switzerland, pp. 180-185, Oct. 2008.[3] A. J. Felström and K. Sh. Zigangirov, “Time-varying periodic convo-lutional codes with low-density parity-check matrix,”
IEEE Trans. Inf.Theory , vol. 45, no. 6, pp. 2181-2191, Sep. 1999.[4] M. Lentmaier, A. Sridharan, K. S. Zigangirov, and D. J. Costello, “Ter-minated LDPC convolutional codes with thresholds close to capacity,"
Proc. IEEE ISIT 2005 , Adelaide, Australia, pp. 1372–1376, Sep. 2005.[5] X.-Y. Hu, E. Eleftheriou, E., D.-M. Arnold, and A. Dholakia, “Efficientimplementations of the sum-product algorithm for decoding LDPCcodes",
Proc. IEEE Global Telecommunications Conference GLOBE-COM ’01 , San Antonio, TX, pp. 1036–1036E, Nov. 2001.[6] M. Battaglioni, A. Tasdighi, G. Cancellieri, F. Chiaraluce, and M. Baldi,“Design and analysis of time-invariant SC-LDPC convolutional codeswith small constraint length,"
IEEE Trans. Commun. , vol. 66, no. 3, pp.918-931, Mar. 2018.[7] M. P. Fossorier, “Quasi-cyclic low-density parity-check codes fromcirculant permutation matrices,”
IEEE Trans. Inf. Theory , vol. 50, no. 8,pp. 1788-1793, Aug. 2004.[8] A. Tasdighi, A. H. Banihashemi, and M. R. Sadeghi, “Efficient searchof girth-optimal QC-LDPC codes,”
IEEE Trans. Inf. Theory , vol. 62,no. 4, pp. 1552-1564, Apr. 2016.[9] A. Tasdighi, A. H. Banihashemi, and M. R. Sadeghi, “Symmetrical con-structions for regular girth-8 QC-LDPC codes,”
IEEE Trans. Commun. ,vol. 65, no. 1, pp. 14-22, Jan. 2017.[10] M. Gholami and Z. Gholami, “An explicit method to generate some QCLDPC codes with girth 8,”
Iranian Journal of Science and Technology,Transactions A: Science , vol. 40, no. 2, pp. 145–149, Jun. 2016.[11] M. E. O’Sullivan, “Algebraic construction of sparse matrices with largegirth,”
IEEE Trans. Inf. Theory , vol. 52, no. 2, pp. 718-727, Feb. 2006.[12] I. E. Bocharova, F. Hug, R. Johannesson, B. D. Kudryashov, and R.V. Satyukov, “Searching for voltage graph-based LDPC tailbiting codeswith large girth,”