# A Deterministic Construction for Jointly Designed Quasicyclic LDPC Coded-Relay Cooperation

Authors: Muhammad Asif; Wuyang Zhou; Qingping Yu; Xingwang Li; Nauman Ali Khan
Journal: Wireless Communications and Mobile Computing
 (2019)

---

## Abstract

This correspondence presents a jointly designed quasicyclic (QC) low-density parity-check (LDPC) coded-relay cooperation with joint-iterative decoding in the destination node. Firstly, a design-theoretic construction of QC-LDPC codes based on a combinatoric design approach known as optical orthogonal codes (OOC) is presented. Proposed OOC-based construction gives three classes of binary QC-LDPC codes with no length-4 cycles by utilizing some known ingredients including binary matrix dispersion of elements of finite field, incidence matrices, and circulant decomposition. Secondly, the proposed OOC-based construction gives an effective method to jointly design length-4 cycles free QC-LDPC codes for coded-relay cooperation, where sum-product algorithm- (SPA-) based joint-iterative decoding is used to decode the corrupted sequences coming from the source or relay nodes in different time frames over constituent Rayleigh fading channels. Based on the theoretical analysis and simulation results, proposed QC-LDPC coded-relay cooperations outperform their competitors under same conditions over the Rayleigh fading channel with additive white Gaussian noise.


---

## Body

## 1. Introduction

Multiple-input multiple-output (MIMO) has been recognized as an effective approach to combat the effect of fading by offering diversity [1, 2]. However, for some practical scenarios in wireless communication (e.g., wireless sensor networks), it is not feasible to install multiple antennas due to terminal size, power consumption, and hardware limitation. To solve this crucial problem, cooperative communication is determined as a virtual MIMO, where the devices with single antenna terminals can share their antennas to acquire multiplexing gain and diversity [3–5]. The basic idea of coded cooperation is that each relay node, instead of transmitting the whole codeword block, only transmits the redundant parity data. In the literature [6–8], three basic user cooperation protocols, that is, amplify-and-forward (AF), estimate-and-forward (EF), and decode-and-forward (DF), have been presented. In an AF cooperation, the relay nodes send only the amplified version of the signal received from source to the destination node, where the strength of transmitted signals is controlled by the amplification or scaling coefficients at the relay nodes. In an EF approach, the signals received from the source node are first estimated by the relay nodes based on some hard-decision statistics, and then these estimated signals are transmitted to the destination node. Generally, an AF cooperation protocol seems to be more attractive as compared to an EF approach since it does not need extra computational complexity for hard-decision detection in the relay node. However, a serious flaw of an AF cooperation is that it also amplifies the noise received from source to relay (S-R) broadcast channel and sends to the destination node. On the contrary, both AF and EF cooperation protocols are not feasible for low bit error rate (BER) applications.For high-error performance applications, channel coding coupled with the conventional relay cooperation is called coded cooperation. The conventional AF and EF user cooperation protocols have been replaced by coded cooperation employing forward error correction in the relay and destination node. In coded relay cooperative communication, each relay node instead of transmitting the whole data frame only sends the redundant parity bits to the destination node. The performance of coded cooperation has been investigated based on turbo and LDPC codes [9–14]. However, LDPC-coded cooperation provides more advantages over turbo-coded cooperation in terms of low-cost decoding and delay for hardware implementation of the decoder. To the best our knowledge, most of the previous studies have investigated LDPC-coded cooperation by utilizing random LDPC codes. However, the investigation on QC-LDPC-coded cooperation is rarely discussed [14]. As compared to QC-LDPC coded-relay cooperation, random LDPC-coded cooperation provides a limited spectrum for code length and rate selection and encoding complexity is quadratic in nature. However, QC-LDPC-coded cooperation provides more flexibility for code length and rate selection, and encoding complexity is linear in nature.In this correspondence, we propose a jointly designed QC-LDPC coded-relay cooperation with joint-iterative decoding in the destination node over a Rayleigh fading channel. Firstly, a design theoretic construction based on optical orthogonal codes [15–21] gives three classes of binary QC-LDPC codes with no length-4 cycles. Secondly, the proposed OOC-based construction is used to jointly design length-4 cycles free QC-LDPC codes for coded-relay cooperation, where sum-product algorithm SPA-based joint-iterative decoding is used to decode the corrupted sequences coming from source or relay nodes in their respective time slots. Based on the performance analysis, the proposed QC-LDPC-coded cooperations outperform their competitors under the same conditions over a Rayleigh-fading channel in the presence of additive white Gaussian noise.Low-density parity-check codes [22] have been included in the list of capacity-approaching codes because of their excellent error correcting capability and low-cost iterative decoding over various communication channels. Besides an efficient error correction performance over noisy information channels, LDPC codes provide a flexible spectrum in terms of code length and rate selection. Therefore, many communication systems prefer LDPC codes over traditional error-correcting codes such as Wi-fi, WiMAX, satellite communication, and 10 gigabit ethernet. Furthermore, LDPC codes are gaining attention as one of the contenders for 5G wireless communications. These significant efforts provide the fundamental reasons for many digital communication and storage systems to adopt LDPC codes as a primary choice.The null space of a parity-check matrixH gives a regular LDPC code if it has constant column-weight cw and constant row-weight rw. If H has variable column and/or row weight, then its null space gives an irregular LDPC code. If a parity-check matrix composed of an array of circulant permutation matrices, then its null space gives a QC-LDPC code over a finite field GFρ [23–25]. If a parity-check matrix satisfies a constraint that no two rows or columns can overlap, in terms of a nonzero element, at more than one positions, then this constraint is known as row-column- (RC-) constraint which ensures that the Tanner graph representation of H has a girth of at least 6. The construction spectrum of LDPC codes is divided into two categories: (A) computer-based LDPC codes are constructed based on random construction methods, PEG-LDPC [26] codes are considered as one of the most promising random-LDPC codes, and protograph-based [27] techniques; (B) structured-LDPC (e.g., QC-LDPC) codes are obtained from deterministic or algebraic techniques such as finite fields [23, 24, 28–30], finite geometries [31, 32], and combinatorial designs [33–40]. Quasicyclic or architecture-aware LDPC codes have been adopted by many communication standards because of their efficient architecture which reduces computational cost of an encoder and decoder.Remainder of this manuscript is arranged as follows: In Section2, the fundamental concepts about the general QC-LDPC-coded cooperative communication are given. Basic concepts about the existence and construction of optical orthogonal codes (OOC) are presented in Section 3. Section 4 presents an OOC-based construction of QC-LDPC codes. A construction method for jointly designed QC-LDPC codes for coded cooperative communication is given in Section 5. Section 6 presents the performance analysis based on the numerical results. Finally, the conclusion of this manuscript is given in Section 7.


## 2. Fundamental Model for Coded-Relay Cooperation

For the one-relay coded cooperative communication system, a fundamental model with three nodes such as sourceS, relay R, and destination D is depicted in Figure 1. All these nodes are supposed to have only one antenna, and they communicate with each other over a half duplex Rayleigh fading channel.Figure 1
A fundamental model for one-relay coded cooperative communication system.The source and relay nodes transmit their signals to the destination node in two consecutive time frames, time frame 1 and time frame 2, respectively. In the time frame 1, the information data are encoded by the first encoder in the source node, denoted as Encod-1, and transmitted to the relay and destination nodes simultaneously over the constituent Rayleigh fading channelsS−R and S−D, respectively. Suppose that the broadcast channel S−R is Rayleigh fading channel with additive white Gaussian noise, and then the received signal λSR at the relay node R is given as follows:(1)λSR=βSRzA+wSR,where zA denotes the codeword symbols sent by the source to the relay node over broadcast channel S−R and wSR is a zero-mean complex Gaussian random variable with variance N0. For the Rayleigh fading channel, βSR is also a zero-mean and unit-variance complex Gaussian random variable. Similarly, the received signal λSD at the destination sent from source over the Rayleigh fading channel S−D is given as(2)λSD=βSDzA+wSD,where wSD and βSD represent the corresponding zero-mean complex Gaussian random variables with variance N0 and 1, respectively.In time frame 2, the decoder in the relay node, denoted as Decod-2, first decodes the data received from the source node over a noisy broadcast channelS−R. Then, the decoded data are encoded by the second encoder in the relay node, denoted as Encod-2, and whole or a part of the coded symbols is transmitted to the destination node over a broadcast channel R−D. For ideal coded cooperation, it is assumed that Decod-2 can successfully decode the data received from the source node. In the destination, the received signal λRD over a broadcast channel R−D is described as(3)λRD=qβRDzR+wRD,where wRD and βRD are the corresponding additive white Gaussian noise and fading, respectively, zR denotes the coded symbols sent from relay to the destination over a Rayleigh fading channel R−D, and q represents the power gain for the signals transmitted by the relay node to that transmitted by the source node.In the one-relay coded cooperative communication, two distinct QC-LDPC codesC1N1,M1 and C2N2,M2 defined by the null space of two parity-check matrices H1 and H2 were used to define the source and relay nodes, respectively. The code C1 in the systematic form is I1,P1, where P1 denotes the redundant parity data with length N1−M1. The relay node first decodes the information sent from C1, then Encod-2 encodes the estimated data by adding new redundant parity bits P2 with length N2−M2 using parity-check matrix H2. In the destination node, a matched filter alternately receives the coded symbols transmitted by the source node and relay node in two different time frames which are then multiplexed for further processing. Finally, joint iterative decoder uses the parity-check matrix H, comprised of H1 and H2, to jointly decode the information sent from the source node. Note that the relay node only sends the redundant parity data to the destination node as it has already received the information bits from the source.


## 3. Optical Orthogonal Codes

### 3.1. Fundamental Concepts

Optical orthogonal codes are a special type of balanced incomplete block design (BIBD), so we begin with the definition of BIBD.Definition 1 (see [41]).
A pairℛ,ℬ is called a design, where ℛ denotes a set of elements or varieties and ℬ denotes the nonempty subsets of ℛ called blocks. Suppose μ, k, and η be positive integers such that μ>k≥2. A design ℛ,ℬ is called μ,k,η-BIBD if all of the following properties are satisfied:(1)
ℛ=μ(2)
Each nonempty subset (block) ofℬ have k varieties(3)
Each pair of elements exists in exactlyη subsets of ℬDefinition 2 (see [41]).
A family of binary0,1 codewords is known as an μ,k,η optical orthogonal code C or briefly μ,k,η-OOC if the following two correlation properties are satisfied:(1)
The autocorrelation property:(4)∑0≤r≤μ−1prpr+j≤η,forP=p0,p1,…,pμ−1∈Candj≠0modμ.(2)
The cross-correlation property:(5)∑0≤r≤μ−1prqr+j≤η,forP=p0,p1,…,pμ−1∈C,Q=q0,q1,…,qμ−1∈CwithP≠Q,and for any integerj,where the subscripts are treated over modμ. An μ,k,η-OOC is said to be optimal if it has codewords:(6)1kμ−1k−1μ−2k−2⋯μ−ηk−η.Example 1.
Two optical orthogonal codes,36,4,1-OOC and 48,4,1-OOC, are given as follows:(1)
An36,4,1-OOC has two binary codewords:(7)1001010001000000000000000000000000000,1000100000010010000000000000000000000.(2)
An48,4,1-OOC has three binary codewords:(8)101000000010010000000000000000000000000000000000,100010001000000100000000000000000000000000000000,100001000001001000000000000000000000000000000000.
Clearly, the above two optical orthogonal codes are optimal. Besides a binary notation, anμ,k,η-OOC can be alternatively represented as a collection of k subsets of μ, called blocks, where each k subset denotes a binary codeword and the elements of each block denote the position of nonzero elements.Example 2.
The set notations of two optical orthogonal codes,36,4,1-OOC and 48,4,1-OOC, given in Example 1 are as follows:(1)
The set notation of36,4,1-OOC is(9)C=0,4,6,10,0,5,12,15.(2)
The set notation of48,4,1-OOC is(10)C=0,3,11,14,0,5,9,16,0,6,12,15.
Next, the existence ofμ,k,η-OOC in terms of the necessary conditions is given as follows:Lemma 1 (see [42]).
An optimalμ,3,1-OOC exists if and only if μ≠6l+2, where l=2 or 3mod4.Lemma 2.
An optimalμ,4,1-OOC exists for any positive integer μ if and only if(i)
μ≡24mod48 [43](ii)
μ≡6mod12 [43](iii)
μ≡0mod648 [20](iv)
μ≡fv, where f∈6,30,54,78,174,222 and v denotes a positive integer with prime factors congruent to 7 or 11mod12 [44](v)
μ≡fv, where f∈18,24,72 and v denotes a positive integer such that gcdv,150=1 or 25 [43](vi)
μ≡12v, where f∈18,24,72 and v denotes a positive integer with prime factors congruent to 1mod12 [43]Lemma 3.
An optimalμ,5,1-OOC exists for any positive integer μ if and only if(i)
μ≡5f, where f denotes a prime number with f≡1mod4 [45](ii)
μ≡f, where f denotes a prime number with f≡1mod20 [46](iii)
μ≡15f, where f is the product of prime factors congruent to 1mod and greater than 5 [47](iv)
μ≡4f, where f denotes a prime number with f≡1mod10 [48](v)
μ≡vf, where f denotes a prime number withf≡11mod20andv=8,12 [48](vi)
μ≡3v5f, where v represents any nonnegative integer and f is the product of prime factors congruent to 1mod4 [16]Lemma 4.
An optimalμ,6,1-OOC exists for any positive integer μ if and only if(i)
μ≡f, where f denotes a prime number with f≡1mod30 [17](ii)
μ≡vf, where f denotes a prime number with f≡7mod12 and v=15,20 [49]


### 3.2. Construction of Optical Orthogonal Codes

In the literature [50], it has already been shown that an optimal μ,k,η-OOC is equivalent to η+1-μ,k,η cyclic difference packing CDP or briefly β-μ,k,η-CDP.Definition 3 (see [41]).
Letμ,k,andandandη be the positive integers with μ≥k≥2. A pair ℛ,ℬ is called a β-μ,k,η packing design, where ℛ=Zμ and ℬ denotes the nonempty k subsets of ℛ called blocks such that every β subset of distinct elements from ℛ appears in at most η blocks.
Letℛ,ℬ be a β-μ,k,η packing design. Suppose α is a permutation on ℛ such that for a block B, ℬα=Bα:B∈ℬ=ℬ, then α is called an automorphism of the β-μ,k,η packing design ℛ,ℬ. A β-μ,k,η packing design having cyclic automorphism is known as cyclic β-μ,k,η packing design, where cyclic automorphism is a bijection α: j⟶j+1modμ. Suppose B=b1,b2,…,bk be a block of cyclic β-μ,k,η packing design Zμ,ℬ, then the block orbit consists of the following distinct blocks:(11)Bαj=B+j=b1+j,b2+j,…,bk+jmodμ,where j∈Zμ. A block orbit containing μ distinct blocks is called full orbit; otherwise short orbit. Any fixed block from each block orbit is called a base block.
LetΑ denote the set of all base blocks of a cyclic β-μ,k,η packing design. Then, the pair Zμ,Α is called a cyclic β-μ,k,η difference packing or briefly a β-μ,k,η-CDP. A β-μ,k,η-CDP with base blocks is called maximum β-μ,k,η-CDP. A fundamental equivalence relation between an optimal μ,k,η-OOC and a maximum β-μ,k,η-CDP is given by [50](12)1kμ−1k−1μ−2k−2⋯μ−β+1k−β+1η.Theorem 1 (see [50]).
An optimalμ,k,η-OOC is equivalent to a maximum β-μ,k,η-CDP if and only if η<k.
Therefore, the construction of a maximumβ-μ,k,η-CDP gives its corresponding optimal μ,k,η-OOC. Some known results about the existence of a maximum β-μ,k,η-CDP are given as follows:Lemma 5.
Under any of the following conditions, a maximumβ-μ,k,η-CDP exists:(i)
A 36-regular 2-36q,4,1-CDP exists if q≡1mod4 is a prime and q>5 [15](ii)
A 48-regular 2-48q,4,1-CDP exists if q≡1mod4 is a prime and q>5 [15](iii)
A 60-regular 2-60v,4,1-CDP exists for any positive integer v such that gcdv,150=1 or 25 [15](iv)
Af-regular 2-fv,4,1-CDP exists for f∈6,18,24,60,72,96,108, and v denotes a positive integer such that gcdv,150=1 or 25 [15](v)
There exists an optimalμ,5,1-CDP for μ=25,45,75,375 [16](vi)
There exists an optimal3r5f,5,1-CDP for any nonnegative integer r, where f denotes the product of prime factors congruent to 1mod4 [16](vii)
There exists an optimal 15-regular15q,6,1-CDP, where q≡7mod12 and q≥19 [17](viii)
There exists an optimal 20-regular20q,6,1-CDP, where q≡7mod12 and q≥19 [17]
Next, we construct QC-LDPC codes by utilizing the maximum CDP-based construction of optimalμ,k,η-OOC’s with η=1.


## 3.1. Fundamental Concepts

Optical orthogonal codes are a special type of balanced incomplete block design (BIBD), so we begin with the definition of BIBD.Definition 1 (see [41]).
A pairℛ,ℬ is called a design, where ℛ denotes a set of elements or varieties and ℬ denotes the nonempty subsets of ℛ called blocks. Suppose μ, k, and η be positive integers such that μ>k≥2. A design ℛ,ℬ is called μ,k,η-BIBD if all of the following properties are satisfied:(1)
ℛ=μ(2)
Each nonempty subset (block) ofℬ have k varieties(3)
Each pair of elements exists in exactlyη subsets of ℬDefinition 2 (see [41]).
A family of binary0,1 codewords is known as an μ,k,η optical orthogonal code C or briefly μ,k,η-OOC if the following two correlation properties are satisfied:(1)
The autocorrelation property:(4)∑0≤r≤μ−1prpr+j≤η,forP=p0,p1,…,pμ−1∈Candj≠0modμ.(2)
The cross-correlation property:(5)∑0≤r≤μ−1prqr+j≤η,forP=p0,p1,…,pμ−1∈C,Q=q0,q1,…,qμ−1∈CwithP≠Q,and for any integerj,where the subscripts are treated over modμ. An μ,k,η-OOC is said to be optimal if it has codewords:(6)1kμ−1k−1μ−2k−2⋯μ−ηk−η.Example 1.
Two optical orthogonal codes,36,4,1-OOC and 48,4,1-OOC, are given as follows:(1)
An36,4,1-OOC has two binary codewords:(7)1001010001000000000000000000000000000,1000100000010010000000000000000000000.(2)
An48,4,1-OOC has three binary codewords:(8)101000000010010000000000000000000000000000000000,100010001000000100000000000000000000000000000000,100001000001001000000000000000000000000000000000.
Clearly, the above two optical orthogonal codes are optimal. Besides a binary notation, anμ,k,η-OOC can be alternatively represented as a collection of k subsets of μ, called blocks, where each k subset denotes a binary codeword and the elements of each block denote the position of nonzero elements.Example 2.
The set notations of two optical orthogonal codes,36,4,1-OOC and 48,4,1-OOC, given in Example 1 are as follows:(1)
The set notation of36,4,1-OOC is(9)C=0,4,6,10,0,5,12,15.(2)
The set notation of48,4,1-OOC is(10)C=0,3,11,14,0,5,9,16,0,6,12,15.
Next, the existence ofμ,k,η-OOC in terms of the necessary conditions is given as follows:Lemma 1 (see [42]).
An optimalμ,3,1-OOC exists if and only if μ≠6l+2, where l=2 or 3mod4.Lemma 2.
An optimalμ,4,1-OOC exists for any positive integer μ if and only if(i)
μ≡24mod48 [43](ii)
μ≡6mod12 [43](iii)
μ≡0mod648 [20](iv)
μ≡fv, where f∈6,30,54,78,174,222 and v denotes a positive integer with prime factors congruent to 7 or 11mod12 [44](v)
μ≡fv, where f∈18,24,72 and v denotes a positive integer such that gcdv,150=1 or 25 [43](vi)
μ≡12v, where f∈18,24,72 and v denotes a positive integer with prime factors congruent to 1mod12 [43]Lemma 3.
An optimalμ,5,1-OOC exists for any positive integer μ if and only if(i)
μ≡5f, where f denotes a prime number with f≡1mod4 [45](ii)
μ≡f, where f denotes a prime number with f≡1mod20 [46](iii)
μ≡15f, where f is the product of prime factors congruent to 1mod and greater than 5 [47](iv)
μ≡4f, where f denotes a prime number with f≡1mod10 [48](v)
μ≡vf, where f denotes a prime number withf≡11mod20andv=8,12 [48](vi)
μ≡3v5f, where v represents any nonnegative integer and f is the product of prime factors congruent to 1mod4 [16]Lemma 4.
An optimalμ,6,1-OOC exists for any positive integer μ if and only if(i)
μ≡f, where f denotes a prime number with f≡1mod30 [17](ii)
μ≡vf, where f denotes a prime number with f≡7mod12 and v=15,20 [49]


## 3.2. Construction of Optical Orthogonal Codes

In the literature [50], it has already been shown that an optimal μ,k,η-OOC is equivalent to η+1-μ,k,η cyclic difference packing CDP or briefly β-μ,k,η-CDP.Definition 3 (see [41]).
Letμ,k,andandandη be the positive integers with μ≥k≥2. A pair ℛ,ℬ is called a β-μ,k,η packing design, where ℛ=Zμ and ℬ denotes the nonempty k subsets of ℛ called blocks such that every β subset of distinct elements from ℛ appears in at most η blocks.
Letℛ,ℬ be a β-μ,k,η packing design. Suppose α is a permutation on ℛ such that for a block B, ℬα=Bα:B∈ℬ=ℬ, then α is called an automorphism of the β-μ,k,η packing design ℛ,ℬ. A β-μ,k,η packing design having cyclic automorphism is known as cyclic β-μ,k,η packing design, where cyclic automorphism is a bijection α: j⟶j+1modμ. Suppose B=b1,b2,…,bk be a block of cyclic β-μ,k,η packing design Zμ,ℬ, then the block orbit consists of the following distinct blocks:(11)Bαj=B+j=b1+j,b2+j,…,bk+jmodμ,where j∈Zμ. A block orbit containing μ distinct blocks is called full orbit; otherwise short orbit. Any fixed block from each block orbit is called a base block.
LetΑ denote the set of all base blocks of a cyclic β-μ,k,η packing design. Then, the pair Zμ,Α is called a cyclic β-μ,k,η difference packing or briefly a β-μ,k,η-CDP. A β-μ,k,η-CDP with base blocks is called maximum β-μ,k,η-CDP. A fundamental equivalence relation between an optimal μ,k,η-OOC and a maximum β-μ,k,η-CDP is given by [50](12)1kμ−1k−1μ−2k−2⋯μ−β+1k−β+1η.Theorem 1 (see [50]).
An optimalμ,k,η-OOC is equivalent to a maximum β-μ,k,η-CDP if and only if η<k.
Therefore, the construction of a maximumβ-μ,k,η-CDP gives its corresponding optimal μ,k,η-OOC. Some known results about the existence of a maximum β-μ,k,η-CDP are given as follows:Lemma 5.
Under any of the following conditions, a maximumβ-μ,k,η-CDP exists:(i)
A 36-regular 2-36q,4,1-CDP exists if q≡1mod4 is a prime and q>5 [15](ii)
A 48-regular 2-48q,4,1-CDP exists if q≡1mod4 is a prime and q>5 [15](iii)
A 60-regular 2-60v,4,1-CDP exists for any positive integer v such that gcdv,150=1 or 25 [15](iv)
Af-regular 2-fv,4,1-CDP exists for f∈6,18,24,60,72,96,108, and v denotes a positive integer such that gcdv,150=1 or 25 [15](v)
There exists an optimalμ,5,1-CDP for μ=25,45,75,375 [16](vi)
There exists an optimal3r5f,5,1-CDP for any nonnegative integer r, where f denotes the product of prime factors congruent to 1mod4 [16](vii)
There exists an optimal 15-regular15q,6,1-CDP, where q≡7mod12 and q≥19 [17](viii)
There exists an optimal 20-regular20q,6,1-CDP, where q≡7mod12 and q≥19 [17]
Next, we construct QC-LDPC codes by utilizing the maximum CDP-based construction of optimalμ,k,η-OOC’s with η=1.


## 4. OOC-Based Construction of QC-LDPC Codes

We provide a construction of QC-LDPC codes based on the optimalμ,k,η-OOC’s with η=1 given in Sections 3.1 and 3.2. Consider a 1×ω matrix H1 given as follows:(13)H1=A1A2⋯Aω,where each Ai, 1≤i≤ω, represents a k×k circulant matrix. The right-cyclic shift of each row of Ai, 1≤i≤ω, returns the next row. However, the first row of Ai is obtained from one of the ω k-element base blocks of the μ,k,η-OOC’s with η=1. The null space of base matrix H1 gives a length-4 cycles free QC-LDPC code with rate ω−1/ω and a minimum distance lower bounded by k+1.Example 3.
Consider an optimal105,6,1-OOC with base blocks Bi=bi1,bi2,…,bik, i=1,…,3, and k=6 for Z105. The base blocks for a 105,6,1-OOC are(14)B1=0,13,32,46,62,84,B2=0,1,3,7,12,27,B3=0,8,25,48,66,76.
Based on equation (13), consider a base matrix H given as follows:(15)H=013324662840137122708254866768401332466227013712760825486662840133246122701376676082548466284013327122701348667608253246628401337122701254866760813324662840137122708254866760.
To make the idea more clear, consider a submatrixQ given as(16)Q=α1β1α2β2,where α1,α2∈Ai and β1,β2∈Aj, 1≤i,j≤ω. Submatrix Q has length-4 cycles if and only if α1−α2=β1−β2modμ [30]. Clearly, the above base matrix H does not satisfy the condition α1−α2=β1−β2modμ. Therefore, the base matrix H has no length-4 cycles.


### 4.1. OOC-Based QC-LDPC Codes: Class-I

LetGFρ be a finite field with ρ elements. For each nonzero element θi in GFρ, 0≤i<ρ−1, form a ρ−1-tuple over GF2, ψbθi=ψ0,ψ1,…,ψq−2, with all the components of ψb zero except the ith component ψi=1 [25]. The subscript “b” stands for the binary. This ρ−1-tuple is referred as the binary location-vector of θi. The binary location-vector of 0-element is ψb0=0,0,0,…,0.Letλ be an element of GFρ. If ψbλ denotes the binary location-vector of λ, then the right cyclic shift of ψbλ gives the binary location vector ψbλθ of element λθ. If θ denotes a primitive element of GFρ, then the ρ−1-tuples of λ,θλ,θ2λ,…,θρ−2λ give a ρ−1×ρ−1 circular permutation matrix Mbλ. Matrix Mbλ is referred as ρ−1-fold binary dispersion [25] of λ over GF2. The ρ−1-fold binary dispersion of 0-element Mb0 is a ρ−1×ρ−1 all-zero matrix over GF2.Next, all entries of base matrixH1 given by 4 are replaced by their ρ−1-fold matrix dispersions Mb over GF2. We obtain a k×kω array Hb1 given as follows:(17)Hb1=M0,0M0,1⋯M0,kω−1M1,0M1,1⋯M1,kω−1⋮⋮⋱⋮Mk−1,0Mk−1,1⋯Mk−1,kω−1,where Mi,j is an ρ−1×ρ−1 circular permutation matrix over GF2, for 0≤i<k and 0≤j<kω. Array Hb1 gives a kρ−1×kωρ−1 matrix over GF2. Since, the matrix Hb1 satisfies the RC constraint. The null space of Hb1 gives a QC-LDPC code whose Tanner graph has no length-4 cycles.For a pair of integersγc and δr, 1≤γc≤k and 1≤δr≤kω. Let Hb1γc,δr be a γc×δr subarray of Hb1. Subarray Hb1γc,δr gives a γcρ−1×δrρ−1 matrix over GF2. The null space of matrix Hb1γc,δr gives a QC-LDPC code of length δrρ−1 with rate at least δr−γc/δr and minimum distance lower bounded by γc+1.


### 4.2. OOC-Based QC-LDPC Codes: Class-II

A class of length-4 cycles free QC-LDPC codes is constructed based on the incidence matrices obtained fromμ,k,η-OOC with η=1. A design ℛ,ℬ with ℛ=x1,x2,…,xμ and n blocks, B1,B2,…,Bn, satisfying the following properties is called a μ,n,r,k,η-BIBD: (A) each entry in ℛ participates in exactly r blocks; (B) each pair of the elements in ℛ participates in exactly η blocks of ℬ; and (C) the size of each block k is small compared to the cardinality of ℛ. A μ,n,r,k,η-BIBD can also be represented by a μ×n matrix W=wi,j over GF2:(18)wi,j=1,ifxi∈Bj,0,ifxi∉Bj,where matrix W is known as the incidence matrix [25]. The incidence matrix satisfies the following properties: (A) the incidence matrix W has column-weight equal to k; (B) the incidence matrix W has row-weight equal to r; and (C) any two rows or columns of W have 1-element common at most η points.Example 4.
Letℛ,ℬ be the following 7,7,3,3,1-BIBD:(19)ℛ=0,1,2,3,4,5,6,ℬ=026,130,241,352,463,504,615.
This7,7,3,3,1-BIBD has seven blocks, so it will give a 7×7 incidence matrix W over GF2. Each row of W corresponds to elements of ℛ, and each column of W corresponds to the blocks of ℬ. The first element 0 of ℛ participates in 1st, 2nd, and 6th block of ℬ. Therefore, the first row of incidence matrix W has nonzero elements at 1st, 2nd, and 6th position. The element 1 of ℛ participates in 2nd, 3rd, and 7th block of ℬ. So, the second row of W has nonzero elements at 2nd, 3rd, and 7th position. Similarly, the last element 6 of ℛ participates in 1st, 5th, and 7th block of ℬ. Therefore, the last row of W has nonzero elements at 1st, 5th, and 7th position. The incidence matrix of above 7,7,3,3,1-BIBD is given as follows:(20)W=1100010011000110110000101100001011000010111000101.
The cyclic shift of each row returns a next row ofW, and the first row is obtained by the cyclic shift of last row. Also, the downward cyclic shift of each column of W gives a column on its right. So, the matrix W is a circulant permutation matrix over GF2. Note that the circulant permutation matrix W fulfills all the required properties of parity-check matrix and satisfies the RC constraint. Therefore, the null space of W gives an LDPC code with a girth of at least 6.
Based on aμ,k,η-OOC with η=1, consider a μ×ωμ incidence matrix H2 obtained from ω base blocks. The incidence matrix H2 can be arranged in a cyclic manner consisting of a 1×ω array of μ×μ circulant submatrices given as follows:(21)H2=W1W2⋯Wω,where each Wi, 1≤i≤ω, represents a μ×μ circulant submatrix over GF2. Note that the matrix H2 satisfies all the required properties of a parity-check matrix. Therefore, the null space of matrix H2 gives a QC-LDPC code with a rate lower bounded by ω−1/ω, and a girth of at least 6.


### 4.3. OOC-Based QC-LDPC Codes: Class-III

In Section4.2, QC-LDPC codes have been constructed based on incidence matrices obtained from μ,k,η-OOC. The QC-LDPC codes of this class have a parity-check matrix consisting of an array of circulant matrices. A new class of QC-LDPC codes can be constructed based on the circulant decomposition [25] of each circulant matrix in the array. For illustration, consider the parity-check matrix of QC-LDPC codes given by equation (21):(22)H2=W1W2⋯Wω,where each Wi is a μ×μ circulant matrix with both row and column weight 5, for 1≤i≤ω. Let wi be the first row of circulant Wi obtained from μ,k,1-OOC with k=5. Decompose wi into five rows of length μ, w1,i, w2,i, w3,i, w4,i, and w5,i, by distributing the five 1-components of wi among the five new rows. The first 1-component of wi is placed in w1,i, the second 1-component of wi is placed in w2,i, …, and the fifth 1-component of wi is placed in w5,i. Form a μ×μ circulant matrix Wi,j for each new row wi,j by using wi,j and its μ−1 right cyclic shifts. Both the row and column weights of Wi,j are equal to 1. The above decomposition and cyclic shifting of each circulant Wi, 1≤i≤ω, give five μ×μ circulant matrices, W1,i, W2,i, …, and W5,i, which are called descendants of Wi.Let1≤λ≤5. A λ×ω array of circulant matrices is obtained as follows:(23)H3=W1,1W1,2⋯W1,ωW2,1W2,2⋯W2,ω⋮⋮⋱⋮Wλ,1Wλ,2⋯Wλ,ω,where H3 is a μλ×ωμ matrix over GF2. H3 is constructed based on the μ,k,η-OOC with η=1, so it satisfies all the required properties of a parity-check matrix. Therefore, the null space of H3 gives a QC-LDPC code with rate lower bounded by ω−λ/ω, and a girth of least 6.


## 4.1. OOC-Based QC-LDPC Codes: Class-I

LetGFρ be a finite field with ρ elements. For each nonzero element θi in GFρ, 0≤i<ρ−1, form a ρ−1-tuple over GF2, ψbθi=ψ0,ψ1,…,ψq−2, with all the components of ψb zero except the ith component ψi=1 [25]. The subscript “b” stands for the binary. This ρ−1-tuple is referred as the binary location-vector of θi. The binary location-vector of 0-element is ψb0=0,0,0,…,0.Letλ be an element of GFρ. If ψbλ denotes the binary location-vector of λ, then the right cyclic shift of ψbλ gives the binary location vector ψbλθ of element λθ. If θ denotes a primitive element of GFρ, then the ρ−1-tuples of λ,θλ,θ2λ,…,θρ−2λ give a ρ−1×ρ−1 circular permutation matrix Mbλ. Matrix Mbλ is referred as ρ−1-fold binary dispersion [25] of λ over GF2. The ρ−1-fold binary dispersion of 0-element Mb0 is a ρ−1×ρ−1 all-zero matrix over GF2.Next, all entries of base matrixH1 given by 4 are replaced by their ρ−1-fold matrix dispersions Mb over GF2. We obtain a k×kω array Hb1 given as follows:(17)Hb1=M0,0M0,1⋯M0,kω−1M1,0M1,1⋯M1,kω−1⋮⋮⋱⋮Mk−1,0Mk−1,1⋯Mk−1,kω−1,where Mi,j is an ρ−1×ρ−1 circular permutation matrix over GF2, for 0≤i<k and 0≤j<kω. Array Hb1 gives a kρ−1×kωρ−1 matrix over GF2. Since, the matrix Hb1 satisfies the RC constraint. The null space of Hb1 gives a QC-LDPC code whose Tanner graph has no length-4 cycles.For a pair of integersγc and δr, 1≤γc≤k and 1≤δr≤kω. Let Hb1γc,δr be a γc×δr subarray of Hb1. Subarray Hb1γc,δr gives a γcρ−1×δrρ−1 matrix over GF2. The null space of matrix Hb1γc,δr gives a QC-LDPC code of length δrρ−1 with rate at least δr−γc/δr and minimum distance lower bounded by γc+1.


## 4.2. OOC-Based QC-LDPC Codes: Class-II

A class of length-4 cycles free QC-LDPC codes is constructed based on the incidence matrices obtained fromμ,k,η-OOC with η=1. A design ℛ,ℬ with ℛ=x1,x2,…,xμ and n blocks, B1,B2,…,Bn, satisfying the following properties is called a μ,n,r,k,η-BIBD: (A) each entry in ℛ participates in exactly r blocks; (B) each pair of the elements in ℛ participates in exactly η blocks of ℬ; and (C) the size of each block k is small compared to the cardinality of ℛ. A μ,n,r,k,η-BIBD can also be represented by a μ×n matrix W=wi,j over GF2:(18)wi,j=1,ifxi∈Bj,0,ifxi∉Bj,where matrix W is known as the incidence matrix [25]. The incidence matrix satisfies the following properties: (A) the incidence matrix W has column-weight equal to k; (B) the incidence matrix W has row-weight equal to r; and (C) any two rows or columns of W have 1-element common at most η points.Example 4.
Letℛ,ℬ be the following 7,7,3,3,1-BIBD:(19)ℛ=0,1,2,3,4,5,6,ℬ=026,130,241,352,463,504,615.
This7,7,3,3,1-BIBD has seven blocks, so it will give a 7×7 incidence matrix W over GF2. Each row of W corresponds to elements of ℛ, and each column of W corresponds to the blocks of ℬ. The first element 0 of ℛ participates in 1st, 2nd, and 6th block of ℬ. Therefore, the first row of incidence matrix W has nonzero elements at 1st, 2nd, and 6th position. The element 1 of ℛ participates in 2nd, 3rd, and 7th block of ℬ. So, the second row of W has nonzero elements at 2nd, 3rd, and 7th position. Similarly, the last element 6 of ℛ participates in 1st, 5th, and 7th block of ℬ. Therefore, the last row of W has nonzero elements at 1st, 5th, and 7th position. The incidence matrix of above 7,7,3,3,1-BIBD is given as follows:(20)W=1100010011000110110000101100001011000010111000101.
The cyclic shift of each row returns a next row ofW, and the first row is obtained by the cyclic shift of last row. Also, the downward cyclic shift of each column of W gives a column on its right. So, the matrix W is a circulant permutation matrix over GF2. Note that the circulant permutation matrix W fulfills all the required properties of parity-check matrix and satisfies the RC constraint. Therefore, the null space of W gives an LDPC code with a girth of at least 6.
Based on aμ,k,η-OOC with η=1, consider a μ×ωμ incidence matrix H2 obtained from ω base blocks. The incidence matrix H2 can be arranged in a cyclic manner consisting of a 1×ω array of μ×μ circulant submatrices given as follows:(21)H2=W1W2⋯Wω,where each Wi, 1≤i≤ω, represents a μ×μ circulant submatrix over GF2. Note that the matrix H2 satisfies all the required properties of a parity-check matrix. Therefore, the null space of matrix H2 gives a QC-LDPC code with a rate lower bounded by ω−1/ω, and a girth of at least 6.


## 4.3. OOC-Based QC-LDPC Codes: Class-III

In Section4.2, QC-LDPC codes have been constructed based on incidence matrices obtained from μ,k,η-OOC. The QC-LDPC codes of this class have a parity-check matrix consisting of an array of circulant matrices. A new class of QC-LDPC codes can be constructed based on the circulant decomposition [25] of each circulant matrix in the array. For illustration, consider the parity-check matrix of QC-LDPC codes given by equation (21):(22)H2=W1W2⋯Wω,where each Wi is a μ×μ circulant matrix with both row and column weight 5, for 1≤i≤ω. Let wi be the first row of circulant Wi obtained from μ,k,1-OOC with k=5. Decompose wi into five rows of length μ, w1,i, w2,i, w3,i, w4,i, and w5,i, by distributing the five 1-components of wi among the five new rows. The first 1-component of wi is placed in w1,i, the second 1-component of wi is placed in w2,i, …, and the fifth 1-component of wi is placed in w5,i. Form a μ×μ circulant matrix Wi,j for each new row wi,j by using wi,j and its μ−1 right cyclic shifts. Both the row and column weights of Wi,j are equal to 1. The above decomposition and cyclic shifting of each circulant Wi, 1≤i≤ω, give five μ×μ circulant matrices, W1,i, W2,i, …, and W5,i, which are called descendants of Wi.Let1≤λ≤5. A λ×ω array of circulant matrices is obtained as follows:(23)H3=W1,1W1,2⋯W1,ωW2,1W2,2⋯W2,ω⋮⋮⋱⋮Wλ,1Wλ,2⋯Wλ,ω,where H3 is a μλ×ωμ matrix over GF2. H3 is constructed based on the μ,k,η-OOC with η=1, so it satisfies all the required properties of a parity-check matrix. Therefore, the null space of H3 gives a QC-LDPC code with rate lower bounded by ω−λ/ω, and a girth of least 6.


## 5. QC-LDPC Coded-Relay Cooperation

### 5.1. Jointly Designed QC-LDPC Codes

In this section, a joint design of QC-LDPC codes for one-relay coded cooperative communication system is presented. Jointly designed QC-LDPC codes are constructed based on the proposed three classes of binary QC-LDPC codes in Sections4.1, 4.2, and 4.3, respectively. Jointly designed QC-LDPC codes for coded cooperative communication over the Rayleigh fading channel are jointly decoded by a joint iterative decoder in the destination.Suppose a one-relay coded cooperative communication system where source and relay nodes are realized by two distinct QC-LDPC defined by the null space of parity-check matricesHm1μ×nμ1 and Hm2μ×n+m2μ2, respectively. Hm1μ×nμ1 and Hm2μ×n+m2μ2 are designed based on the proposed OOC-based construction of QC-LDPC codes given by 5, 6, and 8, respectively. Above-mentioned QC-LDPC codes defined by the null space of Hm1μ×nμ1 and Hm2μ×n+m2μ2 are regular and denoted as C1N,M1,rw1,cw1 and C2N+M2,M2,rw2,cw2, where rw1,cw1 and rw2,cw2 denote the number of 1’s in each row and column of Hm1μ×nμ1 and Hm2μ×n+m2μ2, respectively.Joint iterative decoding, defined by a joint Tanner graph, can be applied for double regular QC-LDPC codesC1N,M1,rw1,cw1 and C2N+M2,M2,rw2,cw2 for one-relay coded cooperation. A general joint triple-layer Tanner graph used in one-relay coded cooperative system realizing source and relay nodes by two distinct QC-LDPC codes C1 and C2 is shown in Figure 2. In one relay cooperation, the overall code rate is Rresult=R1R2 [13], where R1 and R2 denote the code rates of C1 and C2, respectively. In particular, the resultant parity-check matrix HM1+M2×N+M2 for one-relay cooperation is given as follows:(24)where HM1×N1 and HM2×N+M22=HM2×N2HM2×M22 are the parity-check matrices of C1N,M1,rw1,cw1 and C2N+M2,M2,rw2,cw2, respectively, where M1=m1μ, M2=m2μ, and N=nμ. So, the null space of HM1+M2×N+M2 gives an irregular QC-LDPC code with no length-4 cycles. Note that the idea can easily be extended for multirelay coded cooperation communication system over the Rayleigh fading channel.Figure 2
Joint triple-layer Tanner graph for one-relay coded cooperative communication.


### 5.2. SPA-Based Joint Iterative Decoding

In the destination node, the output sequence obtained from the multiplexer, as depicted in Figure1, can be expressed as R=r1,…,rnμ,rnμ+1,…,rn+m2μ. Using binary-phase-shift-keying (BPSK) transmission over a Rayleigh-fading channel, let dN˜=RerNN=1,…,n+m2μ that are treated as the inputs of the joint-iterative decoder.


#### 5.2.1. Initialization

The log-likelihood ratio (LLR) with known channel-state information (CSI) can be computed as(25)φN=−4d˜N0,1≤N≤nμ,−4d˜qN0,nμ+1≤N≤n+m2μ.Let the a posteriori LLR for correspondingdN˜=RerNN=1,…,n+m2μ sequences be computed as(26)ζM,Ni=lnPrxN=0∣dl˜∣l=1n+m2μ,SCvN\cMi=1PrxN=1∣dl˜∣l=1n+m2μ,SCvN\cMi=1,where SCvN\cMi=1 if all the check nodes CvN, except the iandth check node cMi, connected to variable node vN are satisfied simultaneously.


#### 5.2.2. Check-Node Update

Each check nodecMi in either first or third layer estimates the extrinsic information ξM,Ni and sends to a variable node vN as(27)ξM,Ni=∏vr∈VcMi\vNsignζM,ri×2tanh−1∏vr∈VcMi\vNtanhζM,ri2,where VcMi\vN denotes the set of variable nodes connected to check node cMi excluding the variable node vN.


#### 5.2.3. Variable-Node Update

The extrinsic informationζM,N1 from a variable node vN to a check node cM1 in the first layer of the joint Tanner graph, as depicted in Figure 2, can be computed as(28)ζM,N1=φN+∑cs1∈CvN\cM1ξs,N1N=1,…,n+m2μ+∑ct2∈CvNξt,N2N=1,…,n+m2μ.Similarly, extrinsic informationζM,N2 from a variable node vN to a check node cM2 in the third layer of the joint Tanner graph can be computed as(29)ζM,N2=φN+∑cs1∈CvNξs,N1N=1,…,n+m2μ+∑ct2∈CvN\cM2ξt,N2N=1,…,n+m2μ.


#### 5.2.4. Final A Posteriori LLR

Perform the processes given in Sections5.2.2 and 5.2.3 until a maximum number of iterations are reached. Final a posteriori LLR can be computed as(30)RN=φN+∑i=12∑cMi∈CvNξM,NiN=1,…,n+m2μ.Finally, ifRN≥0, the estimated decoded bit x^N=0, otherwise x^N=1.


## 5.1. Jointly Designed QC-LDPC Codes

In this section, a joint design of QC-LDPC codes for one-relay coded cooperative communication system is presented. Jointly designed QC-LDPC codes are constructed based on the proposed three classes of binary QC-LDPC codes in Sections4.1, 4.2, and 4.3, respectively. Jointly designed QC-LDPC codes for coded cooperative communication over the Rayleigh fading channel are jointly decoded by a joint iterative decoder in the destination.Suppose a one-relay coded cooperative communication system where source and relay nodes are realized by two distinct QC-LDPC defined by the null space of parity-check matricesHm1μ×nμ1 and Hm2μ×n+m2μ2, respectively. Hm1μ×nμ1 and Hm2μ×n+m2μ2 are designed based on the proposed OOC-based construction of QC-LDPC codes given by 5, 6, and 8, respectively. Above-mentioned QC-LDPC codes defined by the null space of Hm1μ×nμ1 and Hm2μ×n+m2μ2 are regular and denoted as C1N,M1,rw1,cw1 and C2N+M2,M2,rw2,cw2, where rw1,cw1 and rw2,cw2 denote the number of 1’s in each row and column of Hm1μ×nμ1 and Hm2μ×n+m2μ2, respectively.Joint iterative decoding, defined by a joint Tanner graph, can be applied for double regular QC-LDPC codesC1N,M1,rw1,cw1 and C2N+M2,M2,rw2,cw2 for one-relay coded cooperation. A general joint triple-layer Tanner graph used in one-relay coded cooperative system realizing source and relay nodes by two distinct QC-LDPC codes C1 and C2 is shown in Figure 2. In one relay cooperation, the overall code rate is Rresult=R1R2 [13], where R1 and R2 denote the code rates of C1 and C2, respectively. In particular, the resultant parity-check matrix HM1+M2×N+M2 for one-relay cooperation is given as follows:(24)where HM1×N1 and HM2×N+M22=HM2×N2HM2×M22 are the parity-check matrices of C1N,M1,rw1,cw1 and C2N+M2,M2,rw2,cw2, respectively, where M1=m1μ, M2=m2μ, and N=nμ. So, the null space of HM1+M2×N+M2 gives an irregular QC-LDPC code with no length-4 cycles. Note that the idea can easily be extended for multirelay coded cooperation communication system over the Rayleigh fading channel.Figure 2
Joint triple-layer Tanner graph for one-relay coded cooperative communication.


## 5.2. SPA-Based Joint Iterative Decoding

In the destination node, the output sequence obtained from the multiplexer, as depicted in Figure1, can be expressed as R=r1,…,rnμ,rnμ+1,…,rn+m2μ. Using binary-phase-shift-keying (BPSK) transmission over a Rayleigh-fading channel, let dN˜=RerNN=1,…,n+m2μ that are treated as the inputs of the joint-iterative decoder.


### 5.2.1. Initialization

The log-likelihood ratio (LLR) with known channel-state information (CSI) can be computed as(25)φN=−4d˜N0,1≤N≤nμ,−4d˜qN0,nμ+1≤N≤n+m2μ.Let the a posteriori LLR for correspondingdN˜=RerNN=1,…,n+m2μ sequences be computed as(26)ζM,Ni=lnPrxN=0∣dl˜∣l=1n+m2μ,SCvN\cMi=1PrxN=1∣dl˜∣l=1n+m2μ,SCvN\cMi=1,where SCvN\cMi=1 if all the check nodes CvN, except the iandth check node cMi, connected to variable node vN are satisfied simultaneously.


### 5.2.2. Check-Node Update

Each check nodecMi in either first or third layer estimates the extrinsic information ξM,Ni and sends to a variable node vN as(27)ξM,Ni=∏vr∈VcMi\vNsignζM,ri×2tanh−1∏vr∈VcMi\vNtanhζM,ri2,where VcMi\vN denotes the set of variable nodes connected to check node cMi excluding the variable node vN.


### 5.2.3. Variable-Node Update

The extrinsic informationζM,N1 from a variable node vN to a check node cM1 in the first layer of the joint Tanner graph, as depicted in Figure 2, can be computed as(28)ζM,N1=φN+∑cs1∈CvN\cM1ξs,N1N=1,…,n+m2μ+∑ct2∈CvNξt,N2N=1,…,n+m2μ.Similarly, extrinsic informationζM,N2 from a variable node vN to a check node cM2 in the third layer of the joint Tanner graph can be computed as(29)ζM,N2=φN+∑cs1∈CvNξs,N1N=1,…,n+m2μ+∑ct2∈CvN\cM2ξt,N2N=1,…,n+m2μ.


### 5.2.4. Final A Posteriori LLR

Perform the processes given in Sections5.2.2 and 5.2.3 until a maximum number of iterations are reached. Final a posteriori LLR can be computed as(30)RN=φN+∑i=12∑cMi∈CvNξM,NiN=1,…,n+m2μ.Finally, ifRN≥0, the estimated decoded bit x^N=0, otherwise x^N=1.


## 5.2.1. Initialization

The log-likelihood ratio (LLR) with known channel-state information (CSI) can be computed as(25)φN=−4d˜N0,1≤N≤nμ,−4d˜qN0,nμ+1≤N≤n+m2μ.Let the a posteriori LLR for correspondingdN˜=RerNN=1,…,n+m2μ sequences be computed as(26)ζM,Ni=lnPrxN=0∣dl˜∣l=1n+m2μ,SCvN\cMi=1PrxN=1∣dl˜∣l=1n+m2μ,SCvN\cMi=1,where SCvN\cMi=1 if all the check nodes CvN, except the iandth check node cMi, connected to variable node vN are satisfied simultaneously.


## 5.2.2. Check-Node Update

Each check nodecMi in either first or third layer estimates the extrinsic information ξM,Ni and sends to a variable node vN as(27)ξM,Ni=∏vr∈VcMi\vNsignζM,ri×2tanh−1∏vr∈VcMi\vNtanhζM,ri2,where VcMi\vN denotes the set of variable nodes connected to check node cMi excluding the variable node vN.


## 5.2.3. Variable-Node Update

The extrinsic informationζM,N1 from a variable node vN to a check node cM1 in the first layer of the joint Tanner graph, as depicted in Figure 2, can be computed as(28)ζM,N1=φN+∑cs1∈CvN\cM1ξs,N1N=1,…,n+m2μ+∑ct2∈CvNξt,N2N=1,…,n+m2μ.Similarly, extrinsic informationζM,N2 from a variable node vN to a check node cM2 in the third layer of the joint Tanner graph can be computed as(29)ζM,N2=φN+∑cs1∈CvNξs,N1N=1,…,n+m2μ+∑ct2∈CvN\cM2ξt,N2N=1,…,n+m2μ.


## 5.2.4. Final A Posteriori LLR

Perform the processes given in Sections5.2.2 and 5.2.3 until a maximum number of iterations are reached. Final a posteriori LLR can be computed as(30)RN=φN+∑i=12∑cMi∈CvNξM,NiN=1,…,n+m2μ.Finally, ifRN≥0, the estimated decoded bit x^N=0, otherwise x^N=1.


## 6. Numerical Results

In this section, the error correcting performance of proposed jointly designed QC-LDPC coded cooperation is compared with randomly constructed LDPC-coded cooperation and some related works under same conditions. Simulation results are obtained by SPA-based joint iterative decoding with BPSK transmission. Also, the constituent channels are all Rayleigh fading channels with additive white Gaussian noise.


### 6.1. Jointly Designed QC-LDPC Coded Cooperation Based on Class-I QC-LDPC Codes

Firstly, the BER performance of a proposed jointly designed QC-LDPC codeCqc1 under various decoding iterations is shown in Figure 3. It is important to note that the BER reduces significantly by increasing the decoding iterations. For instance, about 1.5 dB gain is achieved for the 3rd iteration over the 2nd iteration at BER10−3. Similarly, at BER10−4, about 1.2 dB gain is achieved for the 4th decoding iteration over the 3rd decoding iteration, and it is about 1 dB for the 5th decoding iteration over the 4th decoding iteration at BER10−5. Secondly, the BER performance of a proposed jointly designed QC-LDPC code Cqc2 compared with a randomly constructed LDPC-coded cooperation [26] under same conditions is shown in Figure 4. The relevant parameters for component QC-LDPC codes adopted for Cqc2 and randomly designed LDPC-coded cooperation are given in Table 1, where the overall code rate is 3/4 from the destination. Simulation results show that the proposed jointly designed QC-LDPC coded cooperation outperforms the randomly coded-cooperation for the same code rate and decoding iterations over a Rayleigh fading channel in the presence of additive white Gaussian noise.Figure 3
BER performance of proposed jointly designed QC-LDPC coded-relay cooperation under various decoding iterations over a Rayleigh-fading channel in the presence of additive white Gaussian noise.Figure 4
Error correcting performance of the proposed jointly designed QC-LDPC coded-relay cooperation and randomly constructed LDPC coded-relay cooperation over a Rayleigh-fading channel in the presence of additive white Gaussian noise.Table 1
Relevant parameters for the proposed component QC-LDPC codes used in Figure4.
Coding type
Code length (S)
Code length (R)
Rate
R
1
Rate
R
2
Rate
R
1
R
2
C
qc
2
2304
2560
15/18
18/20
3/4
Randomly coded cooperation [26]
2304
2560
5/6
9/10
3/4


### 6.2. Jointly Designed QC-LDPC-Coded Cooperation Based on Class-II QC-LDPC Codes

In this subsection, the BER performance of the proposed jointly designed QC-LDPC codeCqc3 compared with a QC-LDPC coded-cooperation [38] under various decoding iterations is shown in Figure 5. Simulation results show that the proposed jointly designed QC-LDPC-coded cooperation outperforms its competitor under the same conditions over a Rayleigh fading channel in the presence of additive white Gaussian noise. For instance, at BER 10−7, the proposed jointly designed QC-LDPC-coded cooperation provides a gain of about 1 dB with 4 decoding iterations. The relevant parameters for component QC-LDPC codes adopted for Cqc3 and QC-LDPC-coded cooperation [38] are given in Table 2. Note that the overall code rate is 7/8 from the destination.Figure 5
Error correcting performance of the proposed jointly designed QC-LDPC coded-relay cooperation and QC-LDPC coded-relay cooperation cooperation [38] over a Rayleigh fading channel in the presence of additive white Gaussian noise.Table 2
Relevant parameters for the component QC-LDPC codes used in Figure5.
Coding type
Code length (S)
Code length (R)
Rate
R
1
Rate
R
2
Rate
R
1
R
2
C
qc
3
1350
1440
14/15
15/16
7/8
QC-LDPC cooperation [38]
1350
1440
14/15
15/16
7/8


### 6.3. Jointly Designed QC-LDPC-Coded Cooperation Based on Class-III QC-LDPC Codes

Figure6 shows the BER performance of the proposed jointly designed QC-LDPC code Cqc4 and the QC-LDPC-coded cooperation [39] under different decoding iterations. Simulation results show that the error correcting performance of the QC-LDPC-coded cooperation [39] is inferior than the proposed jointly designed QC-LDPC-coded cooperation under the same conditions over a Rayleigh fading channel in the presence of additive white Gaussian noise. For instance, at BER10−6, jointly designed coded-relay cooperation provides a gain of about 0.6 dB with 4 decoding iterations. The relevant parameters for component QC-LDPC codes adopted for Cqc4 and QC-LDPC-coded cooperation [39] are given in Table 3, where the overall code rate is 1/2 from the destination.Figure 6
Error correcting performance of the proposed jointly designed QC-LDPC coded-relay cooperation and QC-LDPC coded-relay cooperation cooperation [39] over a Rayleigh fading channel in the presence of additive white Gaussian noise.Table 3
Relevant parameters for the component QC-LDPC codes used in Figure6.
Coding type
Code length (S)
Code length (R)
Rate
R
1
Rate
R
2
Rate
R
1
R
2
C
qc
4
3000
3750
5/8
8/10
1/2
QC-LDPC cooperation [39]
3000
3750
5/8
4/5
1/2


## 6.1. Jointly Designed QC-LDPC Coded Cooperation Based on Class-I QC-LDPC Codes

Firstly, the BER performance of a proposed jointly designed QC-LDPC codeCqc1 under various decoding iterations is shown in Figure 3. It is important to note that the BER reduces significantly by increasing the decoding iterations. For instance, about 1.5 dB gain is achieved for the 3rd iteration over the 2nd iteration at BER10−3. Similarly, at BER10−4, about 1.2 dB gain is achieved for the 4th decoding iteration over the 3rd decoding iteration, and it is about 1 dB for the 5th decoding iteration over the 4th decoding iteration at BER10−5. Secondly, the BER performance of a proposed jointly designed QC-LDPC code Cqc2 compared with a randomly constructed LDPC-coded cooperation [26] under same conditions is shown in Figure 4. The relevant parameters for component QC-LDPC codes adopted for Cqc2 and randomly designed LDPC-coded cooperation are given in Table 1, where the overall code rate is 3/4 from the destination. Simulation results show that the proposed jointly designed QC-LDPC coded cooperation outperforms the randomly coded-cooperation for the same code rate and decoding iterations over a Rayleigh fading channel in the presence of additive white Gaussian noise.Figure 3
BER performance of proposed jointly designed QC-LDPC coded-relay cooperation under various decoding iterations over a Rayleigh-fading channel in the presence of additive white Gaussian noise.Figure 4
Error correcting performance of the proposed jointly designed QC-LDPC coded-relay cooperation and randomly constructed LDPC coded-relay cooperation over a Rayleigh-fading channel in the presence of additive white Gaussian noise.Table 1
Relevant parameters for the proposed component QC-LDPC codes used in Figure4.
Coding type
Code length (S)
Code length (R)
Rate
R
1
Rate
R
2
Rate
R
1
R
2
C
qc
2
2304
2560
15/18
18/20
3/4
Randomly coded cooperation [26]
2304
2560
5/6
9/10
3/4


## 6.2. Jointly Designed QC-LDPC-Coded Cooperation Based on Class-II QC-LDPC Codes

In this subsection, the BER performance of the proposed jointly designed QC-LDPC codeCqc3 compared with a QC-LDPC coded-cooperation [38] under various decoding iterations is shown in Figure 5. Simulation results show that the proposed jointly designed QC-LDPC-coded cooperation outperforms its competitor under the same conditions over a Rayleigh fading channel in the presence of additive white Gaussian noise. For instance, at BER 10−7, the proposed jointly designed QC-LDPC-coded cooperation provides a gain of about 1 dB with 4 decoding iterations. The relevant parameters for component QC-LDPC codes adopted for Cqc3 and QC-LDPC-coded cooperation [38] are given in Table 2. Note that the overall code rate is 7/8 from the destination.Figure 5
Error correcting performance of the proposed jointly designed QC-LDPC coded-relay cooperation and QC-LDPC coded-relay cooperation cooperation [38] over a Rayleigh fading channel in the presence of additive white Gaussian noise.Table 2
Relevant parameters for the component QC-LDPC codes used in Figure5.
Coding type
Code length (S)
Code length (R)
Rate
R
1
Rate
R
2
Rate
R
1
R
2
C
qc
3
1350
1440
14/15
15/16
7/8
QC-LDPC cooperation [38]
1350
1440
14/15
15/16
7/8


## 6.3. Jointly Designed QC-LDPC-Coded Cooperation Based on Class-III QC-LDPC Codes

Figure6 shows the BER performance of the proposed jointly designed QC-LDPC code Cqc4 and the QC-LDPC-coded cooperation [39] under different decoding iterations. Simulation results show that the error correcting performance of the QC-LDPC-coded cooperation [39] is inferior than the proposed jointly designed QC-LDPC-coded cooperation under the same conditions over a Rayleigh fading channel in the presence of additive white Gaussian noise. For instance, at BER10−6, jointly designed coded-relay cooperation provides a gain of about 0.6 dB with 4 decoding iterations. The relevant parameters for component QC-LDPC codes adopted for Cqc4 and QC-LDPC-coded cooperation [39] are given in Table 3, where the overall code rate is 1/2 from the destination.Figure 6
Error correcting performance of the proposed jointly designed QC-LDPC coded-relay cooperation and QC-LDPC coded-relay cooperation cooperation [39] over a Rayleigh fading channel in the presence of additive white Gaussian noise.Table 3
Relevant parameters for the component QC-LDPC codes used in Figure6.
Coding type
Code length (S)
Code length (R)
Rate
R
1
Rate
R
2
Rate
R
1
R
2
C
qc
4
3000
3750
5/8
8/10
1/2
QC-LDPC cooperation [39]
3000
3750
5/8
4/5
1/2


## 7. Conclusion and Remarks

In this correspondence, a jointly designed QC-LDPC coded-relay cooperation with SPA-based joint-iterative decoding in the destination over a Rayleigh-fading channel has been presented. Three classes of binary length-4 cycles free QC-LDPC codes have been constructed based on optical orthogonal codes (OOC) and some known ingredients like binary matrix dispersion of elements of finite field, incidence matrices, and circulant decomposition. Firstly, a class of binary QC-LDPC codes is constructed by binary matrix dispersion of elements of finite field based on theμ,k,η-OOC with η=1, where the resultant parity-check matrices of this class have a minimum distance of at least 8. Secondly, a class of binary regular QC-LDPC codes is constructed based on the incidence matrices obtained from μ,k,η-OOC with η=1, where the resultant parity-check matrices of this class have a minimum distance lower bounded by 8. Thirdly, a class of binary regular QC-LDPC codes is constructed using circulant decomposition of incidence matrices obtained from μ,k,η-OOC with η=1, where the resultant parity-check matrices of this class have a minimum distance of at least 6. Furthermore, the proposed OOC-based construction of QC-LDPC codes is utilized to jointly design length-4 cycles free QC-LDPC codes for coded-relay cooperation, where SPA-based joint iterative decoding is used to decode the corrupted sequences coming from source or relay nodes in their respective time slots over constituent Rayleigh-fading channels. Theoretical analysis and simulation results show that the proposed jointly designed QC-LDPC coded-relay cooperations outperform their counterparts under the same conditions over a Rayleigh-fading channel in the presence of additive white Gaussian noise.



---

*Source: 5249373-2019-09-26.xml*