A Transform Approach for Constructing Quasi-Cyclic Euclidean ...

1 downloads 0 Views 148KB Size Report
Quasi-Cyclic Euclidean Geometry LDPC Codes. Qiuju Diao, Wei Zhou, Shu Lin and Khaled Abdel-Ghaffar. Department of Electrical and Computer Engineering.
A Transform Approach for Constructing Quasi-Cyclic Euclidean Geometry LDPC Codes Qiuju Diao, Wei Zhou, Shu Lin and Khaled Abdel-Ghaffar Department of Electrical and Computer Engineering University of California Davis, CA 95616, USA Email: {judiao, weizhou, shulin, ghaffar}@ucdavis.edu

Abstract—A method for constructing quasi-cyclic Euclidean geometry (QC-EG) LDPC codes in the Fourier transform domain is presented. Given a Euclidean geometry over a finite field of characteristic 2, base matrices in the Fourier transform domain are first constructed. Then the inverse Fourier transforms of these base matrices, combined with row and column permutations, result in low-density arrays of circulant permutation matrices and/or zero matrices. The null spaces of these low-density arrays give a family of QC-EG-LDPC codes. Codes in a special subclass have large minimum distances and their Tanner graphs contain no harmful trapping sets with sizes smaller than their minimum distances.

I. I NTRODUCTION Quasi-cyclic (QC) LDPC codes have advantages over other types of LDPC codes in hardware implementation of encoding and decoding. Encoding of a QC-LDPC code can be efficiently implemented using simple shift registers with complexity linearly proportional to its number of parity-check symbols (or its length) [1]. In hardware implementation of its decoder, the circular structure of the parity-check matrix of the code simplifies the wire routing for message passing [2] and allows partially parallel decoding [3] which offers a tradeoff between decoding complexity and decoding speed. Well designed or constructed QC-LDPC code can perform as well as other types of LDPC codes. Over the last 12 years, many methods for constructing QC-LDPC codes have been proposed. Several QC-LDPC codes have been adopted as standard codes for various next generations of communication systems and they are appearing in recent data storage products. More applications are expected to come. Major methods for constructing LDPC codes can be divided into two general categories: graph-theoretic-based methods and algebraic methods. Each type of construction has its advantages and disadvantages. In general, algebraically constructed LDPC codes have lower error-floors and their decoding using iterative message-passing algorithms converges faster. Furthermore, it is much easier to construct algebraic LDPC codes with large minimum distances. Algebraic constructions of LDPC codes are mainly based on finite geometries, finite fields and combinatorial designs. These constructions result in either QC-LDPC codes or cyclic LDPC codes. Recently, we have proposed a transform domain approach for constructing algebraic QC-LDPC codes [4], [5]. This

approach makes code construction much easier and simplifies the computations of the dimensions of the constructed codes (or the ranks of their parity-check matrices) and the girth of the codes’ Tanner graphs, as demonstrated in [4], [5]. Furthermore, this approach puts all the algebraic constructions presented in [6]-[12] under a single framework. In this paper, we are only concerned with constructions of binary QC-LDPC codes. A binary QC-LDPC code is given by the null space of an array H of sparse circulants over GF(2) of the same size. If the array H, viewed as a matrix, has constant column weight γ and constant row weight ρ, then the code given by the null space of H is said to be (γ, ρ)regular, otherwise it is said to be irregular. In almost all of the proposed constructions of LDPC codes (quasi-cyclic or not), the following constraint on the rows and columns of the parity-check matrix H is imposed: no two rows (or two columns) can have more than one place where they both have non-zero components. This constraint on the rows and columns of H is referred to as the row-column (RC)constraint. This RC-constraint ensures that the Tanner graph of the LDPC code given by the null space of H has a girth of at least 6 and that the minimum distance of the code, if (γ, ρ)-regular, is at least γ + 1 [13], [14]. This distance bound is tight for regular LDPC codes whose parity-check matrices have large column weights and row redundancies, such as the algebraic LDPC codes constructed using finite geometries, finite fields and combinatorial designs. A parity-check matrix H that satisfies the RC-constraint is called an RC-constrained parity-check matrix and the code given by its null space is called an RC-constrained LDPC code. In this paper, we first give a review of our earlier construction of QC-LDPC codes in the Fourier transform domain [4], [5]. Then, we show that QC-LDPC codes can be constructed from Euclidean geometries in the Fourier transform domain. Two large classes of quasi-cyclic Euclidean geometry (QCEG)-LDPC codes are constructed. Before we conclude the paper, we will show that codes in a special subclass of QCEG-LDPC codes have no harmful trapping sets with sizes smaller than the minimum distances (or minimum weight) of the codes. Consequently, their error-floors are dominated by their minimum distances.

and

II. FOURIER TRANSFORM OF AN ARRAY OF CIRCULANT MATRICES Let GF(2r ) be a finite field with 2r elements which is an extension field of the binary field GF(2). Let α be a primitive element of GF(2r ). Then, the powers of α, α−∞ , r 0, α0 = 1, α, α2 , . . . , α2 −2 , give all the elements of GF(2r ) 2r −1 with α = 1. Define two (2r − 1) × (2r − 1) matrices r over GF(2 ) as follows: V = [α−ij ] and V−1 = [αij ], 0 ≤ i, j < 2r − 1. Both matrices, V and V−1 , are known as Vandermonde matrices [15], [16] and they are non-singular. Furthermore VV−1 = I, where I is a (2r −1)×(2r −1) identity matrix. Hence, V−1 is the inverse of V and vice versa. An n × n matrix over a field is called a circulant if every row is a cyclic-shift (one place to right) of the row above it and the first row is the cyclic-shift of the last row. A circulant is uniquely specified by its top row which is called the generator of the circulant. Let A be a (2r − 1) × (2r − 1) circulant over GF(2) whose generator is (a0 , a1 , . . . , a2r −2 ). We denote this circulant by A = circ(a0 , a1 , . . . , a2r −2 ). Taking the matrix product VAV−1 , we obtain the following (2r − 1) × (2r − 1) diagonal matrix over GF(2r ): AF = VAV−1 = diag(b0 , b1 , . . . , b2r −2 ) where, for 0 ≤ t < 2r − 1, the t-th diagonal element equals bt =

r 2X −2

αtl al .

(1)

l=0

The diagonal vector (b0 , b1 , . . . , b2r −2 ) of AF is the Fourier transform of the generator (a0 , a1 , . . . , a2r −2 ) of the circulant A. The diagonal matrix AF = VAV−1 is referred to as the Fourier transform of the circulant A. The generator (a0 , a1 , . . . , a2r −2 ) of the circulant A can be recovered by taking the inverse Fourier transform of the diagonal vector (b0 , b1 , . . . , b2r −2 ) with al =

r 2X −2

α−tl bt ,

(2)

t=0

for 0 ≤ l < 2r − 1. Hence, the circulant A can be recovered by taking the inverse Fourier transform of the diagonal matrix AF , i.e., A = V−1 AF V. Since (a0 , a1 , . . . , a2r −2 ) is a (2r −1)-tuple over GF(2), the components must satisfy the following constraint [4]: b(2t)2r −1 = b2t

(3)

for 0 ≤ t < 2r − 1, where (2t)2r −1 denotes the non-negative integer less than 2r −1 and congruent to 2t modulo 2r −1. This condition is known as the conjugacy constraint. Conversely, if a (2r − 1)-tuple (b0 , b1 , . . . , b2r −2 ) over GF(2r ) satisfies the conjugacy constraint, its inverse Fourier transform gives a (2r − 1)-tuple (a0 , a1 , . . . , a2r −2 ) over GF(2). Next, we define two diagonal arrays of (2r − 1) × (2r − 1) Vandermonde matrices V and V−1 as follows: Ω(m) = diag(V, V, . . . , V) {z } | m

(4)

Ω−1 (n) = diag(V−1 , V−1 , . . . , V−1 ), | {z }

(5)

n

i.e., Ω(m) is an m × m diagonal array of the Vandermonde matrices V’s and Ω−1 (n) is an n × n diagonal array of Vandermonde matrices V−1 ’s. Let H = [Ai,j ]0≤i

Suggest Documents