#### 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.

#### 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 matrix gives a regular LDPC code if it has constant column-weight and constant row-weight . If 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 [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 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 Section 2, 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 source , relay , and destination 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.

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 channels and , respectively. Suppose that the broadcast channel is Rayleigh fading channel with additive white Gaussian noise, and then the received signal at the relay node is given as follows:where denotes the codeword symbols sent by the source to the relay node over broadcast channel and is a zero-mean complex Gaussian random variable with variance . For the Rayleigh fading channel, is also a zero-mean and unit-variance complex Gaussian random variable. Similarly, the received signal at the destination sent from source over the Rayleigh fading channel is given aswhere and represent the corresponding zero-mean complex Gaussian random variables with variance 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 channel . 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 . 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 over a broadcast channel is described aswhere and are the corresponding additive white Gaussian noise and fading, respectively, denotes the coded symbols sent from relay to the destination over a Rayleigh fading channel , 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 codes and defined by the null space of two parity-check matrices and were used to define the source and relay nodes, respectively. The code in the systematic form is , where denotes the redundant parity data with length . The relay node first decodes the information sent from , then Encod-2 encodes the estimated data by adding new redundant parity bits with length using parity-check matrix . 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 , comprised of and , 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 . A design is called -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 binary codewords is known as an optical orthogonal code or briefly -OOC if the following two correlation properties are satisfied:(1)The autocorrelation property:(2)The cross-correlation property:where the subscripts are treated over . An -OOC is said to be optimal if it has codewords:

*Example 1. *Two optical orthogonal codes, -OOC and -OOC, are given as follows:(1)An -OOC has two binary codewords:(2)An -OOC has three binary codewords:Clearly, the above two optical orthogonal codes are optimal. Besides a binary notation, an -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, -OOC and -OOC, given in Example 1 are as follows:(1)The set notation of -OOC is(2)The set notation of -OOC isNext, the existence of -OOC in terms of the necessary conditions is given as follows:

Lemma 1 (see [42]). * An optimal -OOC exists if and only if , where or .*

Lemma 2. *An optimal -OOC exists for any positive integer μ if and only if*(i)

*[43]*(ii)

*[43]*(iii)

*[20]*(iv)

*, where and denotes a positive integer with prime factors congruent to 7 or [44]*(v)

*, where and denotes a positive integer such that or 25 [43]*(vi)

*, where and denotes a positive integer with prime factors congruent to [43]*

Lemma 3. *An optimal -OOC exists for any positive integer μ if and only if*(i)

*, where*(ii)

*f*denotes a prime number with [45]*, where*(iii)

*f*denotes a prime number with [46]*, where*(iv)

*f*is the product of prime factors congruent to and greater than 5 [47]*, where*(v)

*f*denotes a prime number with [48]*, where*(vi)

*f denotes a prime number with**and*[48]*, where represents any nonnegative integer and*

*f*is the product of prime factors congruent to [16]Lemma 4. *An optimal -OOC exists for any positive integer μ if and only if*(i)

*, where*(ii)

*f*denotes a prime number with [17]*, where*

*f*denotes a prime number with and [49]##### 3.2. Construction of Optical Orthogonal Codes

In the literature [50], it has already been shown that an optimal -OOC is equivalent to - cyclic difference packing or briefly *β*--CDP.

*Definition 3 (see [41]). * Let be the positive integers with . A pair is called a *β*- packing design, where 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 *β*- packing design. Suppose *α* is a permutation on such that for a block *B*, , then *α* is called an automorphism of the *β*- packing design . A *β*- packing design having cyclic automorphism is known as cyclic *β*- packing design, where cyclic automorphism is a bijection *α*: . Suppose be a block of cyclic *β*- packing design , then the block orbit consists of the following distinct blocks:where . 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 *β*- packing design. Then, the pair is called a cyclic *β*- difference packing or briefly a *β*--CDP. A *β*--CDP with base blocks is called maximum *β*--CDP. A fundamental equivalence relation between an optimal -OOC and a maximum *β*--CDP is given by [50]

Theorem 1 (see [50]). * An optimal -OOC is equivalent to a maximum β--CDP if and only if .*

*Therefore, the construction of a maximum*

*β*--CDP gives its corresponding optimal -OOC. Some known results about the existence of a maximum*β*--CDP are given as follows:Lemma 5. *Under any of the following conditions, a maximum β--CDP exists:*(i)

*A 36-regular 2--CDP exists if is a prime and [15]*(ii)

*A 48-regular 2--CDP exists if is a prime and [15]*(iii)

*A 60-regular 2--CDP exists for any positive integer such that or 25 [15]*(iv)

*A*(v)

*f*-regular 2--CDP exists for , and denotes a positive integer such that or 25 [15]*There exists an optimal -CDP for [16]*(vi)

*There exists an optimal -CDP for any nonnegative integer*(vii)

*r*, where*f*denotes the product of prime factors congruent to [16]*There exists an optimal 15-regular -CDP, where and [17]*(viii)

*There exists an optimal 20-regular -CDP, where and [17]*

*Next, we construct QC-LDPC codes by utilizing the maximum CDP-based construction of optimal -OOC’s with .*

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

We provide a construction of QC-LDPC codes based on the optimal -OOC’s with given in Sections 3.1 and 3.2. Consider a matrix given as follows:where each , , represents a circulant matrix. The right-cyclic shift of each row of , , returns the next row. However, the first row of is obtained from one of the *ω k*-element base blocks of the -OOC’s with . The null space of base matrix gives a length-4 cycles free QC-LDPC code with rate and a minimum distance lower bounded by .

*Example 3. *Consider an optimal -OOC with base blocks , , and for . The base blocks for a -OOC areBased on equation (13), consider a base matrix given as follows:To make the idea more clear, consider a submatrix *Q* given aswhere and , . Submatrix *Q* has length-4 cycles if and only if [30]. Clearly, the above base matrix does not satisfy the condition . Therefore, the base matrix has no length-4 cycles.

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

Let be a finite field with *ρ* elements. For each nonzero element in , , form a -tuple over , , with all the components of zero except the *i*th component [25]. The subscript “*b*” stands for the binary. This -tuple is referred as the binary location-vector of . The binary location-vector of 0-element is .

Let *λ* be an element of . If denotes the binary location-vector of *λ*, then the right cyclic shift of gives the binary location vector of element . If *θ* denotes a primitive element of , then the -tuples of give a circular permutation matrix . Matrix is referred as -fold binary dispersion [25] of *λ* over . The -fold binary dispersion of 0-element is a all-zero matrix over .

Next, all entries of base matrix given by are replaced by their -fold matrix dispersions over . We obtain a array given as follows:where is an circular permutation matrix over , for and . Array gives a matrix over . Since, the matrix satisfies the RC constraint. The null space of gives a QC-LDPC code whose Tanner graph has no length-4 cycles.

For a pair of integers and , and . Let be a subarray of . Subarray gives a matrix over . The null space of matrix gives a QC-LDPC code of length with rate at least and minimum distance lower bounded by .

##### 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 -OOC with . A design with and *n* blocks, , satisfying the following properties is called a -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 -BIBD can also be represented by a matrix over :where matrix is known as the incidence matrix [25]. The incidence matrix satisfies the following properties: (A) the incidence matrix has column-weight equal to *k*; (B) the incidence matrix has row-weight equal to *r*; and (C) any two rows or columns of have 1-element common at most *η* points.

*Example 4. *Let be the following -BIBD:This -BIBD has seven blocks, so it will give a incidence matrix over . Each row of corresponds to elements of , and each column of 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 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 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 has nonzero elements at 1st, 5th, and 7th position. The incidence matrix of above -BIBD is given as follows:The cyclic shift of each row returns a next row of , and the first row is obtained by the cyclic shift of last row. Also, the downward cyclic shift of each column of gives a column on its right. So, the matrix is a circulant permutation matrix over . Note that the circulant permutation matrix fulfills all the required properties of parity-check matrix and satisfies the RC constraint. Therefore, the null space of gives an LDPC code with a girth of at least 6.

Based on a -OOC with , consider a incidence matrix obtained from *ω* base blocks. The incidence matrix can be arranged in a cyclic manner consisting of a array of circulant submatrices given as follows:where each , , represents a circulant submatrix over . Note that the matrix satisfies all the required properties of a parity-check matrix. Therefore, the null space of matrix gives a QC-LDPC code with a rate lower bounded by , and a girth of at least 6.

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

In Section 4.2, QC-LDPC codes have been constructed based on incidence matrices obtained from -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):where each is a circulant matrix with both row and column weight 5, for . Let be the first row of circulant obtained from -OOC with . Decompose into five rows of length *μ*, , , , , and , by distributing the five 1-components of among the five new rows. The first 1-component of is placed in , the second 1-component of is placed in , …, and the fifth 1-component of is placed in . Form a circulant matrix for each new row by using and its right cyclic shifts. Both the row and column weights of are equal to 1. The above decomposition and cyclic shifting of each circulant , , give five circulant matrices, , , …, and , which are called descendants of .

Let . A array of circulant matrices is obtained as follows:where is a matrix over . is constructed based on the -OOC with , so it satisfies all the required properties of a parity-check matrix. Therefore, the null space of 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 Sections 4.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 matrices and , respectively. and are designed based on the proposed OOC-based construction of QC-LDPC codes given by , , and , respectively. Above-mentioned QC-LDPC codes defined by the null space of and are regular and denoted as and , where and denote the number of 1’s in each row and column of and , respectively.

Joint iterative decoding, defined by a joint Tanner graph, can be applied for double regular QC-LDPC codes and 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 and is shown in Figure 2. In one relay cooperation, the overall code rate is [13], where and denote the code rates of and , respectively. In particular, the resultant parity-check matrix for one-relay cooperation is given as follows:where and are the parity-check matrices of and , respectively, where , , and . So, the null space of 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.

##### 5.2. SPA-Based Joint Iterative Decoding

In the destination node, the output sequence obtained from the multiplexer, as depicted in Figure 1, can be expressed as . Using binary-phase-shift-keying (BPSK) transmission over a Rayleigh-fading channel, let 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

Let the a posteriori LLR for corresponding sequences be computed aswhere if all the check nodes , except the check node , connected to variable node are satisfied simultaneously.

###### 5.2.2. Check-Node Update

Each check node in either first or third layer estimates the extrinsic information and sends to a variable node aswhere denotes the set of variable nodes connected to check node excluding the variable node .

###### 5.2.3. Variable-Node Update

The extrinsic information from a variable node to a check node in the first layer of the joint Tanner graph, as depicted in Figure 2, can be computed as

Similarly, extrinsic information from a variable node to a check node in the third layer of the joint Tanner graph can be computed as

###### 5.2.4. Final A Posteriori LLR

Perform the processes given in Sections 5.2.2 and 5.2.3 until a maximum number of iterations are reached. Final a posteriori LLR can be computed as

Finally, if , the estimated decoded bit , otherwise .

#### 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 code 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 . Similarly, at , 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 . Secondly, the BER performance of a proposed jointly designed QC-LDPC code 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 and randomly designed LDPC-coded cooperation are given in Table 1, where the overall code rate is 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.

##### 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 code 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 , 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 and QC-LDPC-coded cooperation [38] are given in Table 2. Note that the overall code rate is from the destination.

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

Figure 6 shows the BER performance of the proposed jointly designed QC-LDPC code 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 , 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 and QC-LDPC-coded cooperation [39] are given in Table 3, where the overall code rate is from the destination.

#### 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 -OOC with , 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 -OOC with , 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 -OOC with , 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.

#### Data Availability

No data were used to support this study.

#### Conflicts of Interest

The authors declare that they have no conflicts of interest regarding the publication this work.

#### Acknowledgments

Muhammad Asif acknowledges the support of the Chinese Academy of Sciences and TWAS for his PhD studies at the University of Science and Technology, China, as a 2016 CAS-TWAS President’s Fellowship Awardee (CAS-TWAS no. 2016-48). This research project is sponsored by the National Natural Science Foundation of China (grant nos. 61461136002 and 61631018) and Fundamental Research Funds for the Central Universities.