Next Article in Journal
A PCA-Based Approach for Very Early-Age Hydration Monitoring of Self-Compacting Concrete Using Embedded PZT Sensors
Previous Article in Journal
Multi-Agent Deep Reinforcement Learning for Multi-Robot Applications: A Survey
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Optimized Design of Distributed Quasi-Cyclic LDPC Coded Spatial Modulation

1
College of Electronic and Information Engineering, Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China
2
School of Engineering, University of KwaZulu-Natal, King George V Avenue, Durban 4041, South Africa
*
Author to whom correspondence should be addressed.
Sensors 2023, 23(7), 3626; https://doi.org/10.3390/s23073626
Submission received: 5 March 2023 / Revised: 28 March 2023 / Accepted: 28 March 2023 / Published: 30 March 2023
(This article belongs to the Section Intelligent Sensors)

Abstract

:
We propose a distributed quasi-cyclic low-density parity-check (QC-LDPC) coded spatial modulation (D-QC-LDPCC-SM) scheme with source, relay and destination nodes. At the source and relay, two distinct QC-LDPC codes are used. The relay chooses partial source information bits for further encoding, and a distributed code corresponding to each selection is generated at the destination. To construct the best code, the optimal information bit selection algorithm by exhaustive search in the relay is proposed. However, the exhaustive-based search algorithm has large complexity for QC-LDPC codes with long block length. Then, we develop another low-complexity information bit selection algorithm by partial search. Moreover, the iterative decoding algorithm based on the three-layer Tanner graph is proposed at the destination to carry out joint decoding for the received signal. The recently developed polar-coded cooperative SM (PCC-SM) scheme does not adopt a better encoding method at the relay, which motivates us to compare it with the proposed D-QC-LDPCC-SM scheme. Simulations exhibit that the proposed exhaustive-based and partial-based search algorithms outperform the random selection approach by 1 and 1.2 dB, respectively. Because the proposed D-QC-LDPCC-SM system uses the optimized algorithm to select the information bits for further encoding, it outperforms the PCC-SM scheme by 3.1 dB.

1. Introduction

Multiple-input multiple-output (MIMO) is a technique that effectively improves system reliability because the signals are transmitted and received through multiple antennas [1]. A well-known MIMO technique is called vertical Bell Labs layered space–time (V-BLAST) [2]. Multiple antennas in V-BLAST are required to simultaneously transmit data at the same frequency, which makes the receiver suffer from high inter-channel interference. Further, performing the signal transmission needs inter-channel synchronization (IAS). Luckily, an emerging developed spatial modulation (SM) [3] can solve the above problems, which is due to the reason that SM only activates one antenna to transmit the data signals in each transmission slot. Additionally, in SM, the activated antenna index carries information to make the spectral efficiency enhanced. The transmission and detection process of SM has been discussed in many studies, such as [4,5].
Another technology that can effectively enhance the system reliability is cooperative diversity having source, relay and destination [6]. In cooperative communications, the relay overhears the source messages and utilizes cooperative techniques such as decode-and-forward [7] to relay the information. Compared with direct transmission, cooperative communications are able to obtain lower error probabilities, as presented in [8]. In [9,10], it was reported that the cooperative communication system based on two users can enhance the achievable rate of two users. Due to the theoretical achievements of cooperative communications, they have attracted substantial attention. A very important discovery is coded cooperation [11] (i.e., distributed channel coding) as the combination of cooperative diversity and channel codes, where channel codes are key error control technologies used to ensure reliable communication transmission. The famous LDPC code [12] can approach the Shannon limit, which raises new enthusiasm about the research of LDPC coded cooperation. In [13], the authors presented the LDPC coded cooperative system for half-duplex communications. In [14], the protograph LDPC coded cooperation for multi-relay networks was studied. In [15], the authors applied the LDPC code in the network coded cooperation and designed the network LDPC coded cooperative system with multiple users and one relay. In addition, the studies [16,17] carried out the error performance analysis for the LDPC coded cooperative scheme with orthogonal frequency-division multiplexing.
For LDPC codes, the encoding method and decoding performance are related to the parity-check matrix, so constructing the parity-check matrix is the key to the design of LDPC codes. Usually, the parity-check matrix can be constructed according to the random-like and structured methods, so LDPC codes are generally partitioned into random-like and structured LDPC codes. A special structured LDPC code is quasi-cyclic LDPC (QC-LDPC) code, where the parity-check matrix is composed of multiple square matrices (circularly-shifted identity matrix or zero matrix) with an identical size, thus reducing the computational complexity of the encoder and decoder [18]. In addition, QC-LDPC codes possess the advantages of simple encoder implementation, rapid decoding convergence and low bit error rate (BER) and have been widely used in various communication and storage schemes. Therefore, the Third-Generation Partnership Project (3GPP) has recommended QC-LDPC codes as a coding scheme for the 5G enhanced mobile broadband (eMBB) data channel [19]. In addition to the quasi-cyclic structure, the LDPC code adopted by 5G communications also adopts the so-called Raptor-like structure [20], and its parity-check matrix can be gradually expanded to one with a low code rate through a core matrix of a high code rate. In this way, 5G LDPC codes can flexibly support diverse code rates, which well adapts various rate matching and information lengths.
Due to the diverse benefits of 5G LDPC codes, studying the distributed QC-LDPC coding (D-QC-LDPCC) scheme is very significant, where the source and relay share each other’s antennas to provide a virtual MIMO in the destination, and we can reap the benefits of MIMO technology. If each node uses multiple antennas in the D-QC-LDPCC scheme, higher link reliability is achieved. Thus, studying the D-QC-LDPCC scheme using MIMO has significant research value. Moreover, the rapid development of wireless communications increases the demand for reliable and effective communication services. Thus, effectively using the spectrum to ensure high-reliability transmission is an urgent problem to be solved. Based on this, we integrate SM into the D-QC-LDPCC system to construct the distributed QC-LDPC coded SM (D-QC-LDPCC-SM) scheme. In addition, the proper encoding approach in the relay and excellent decoding strategy at the destination are very important for improving the performance of the distributed coding scheme. Thus, in the proposed system, we effectively select partial source messages for further encoding in the relay and adopt the joint decoding method to decode the received signal at the destination. The following points show the key contributions:
  • The D-QC-LDPCC-SM scheme is proposed, in which two different QC-LDPC codes are separately used at the source and relay. At the relay, the information bits are selected from the decoded source information bits, and the selected bits are further encoded. By combining the two LDPC codewords generated at the source and relay, the destination constructs a channel code corresponding to each information selection.
  • For making the destination construct the best code, an optimal information bit selection algorithm by exhaustive search is proposed at the relay to appropriately select partial source information bits. In the exhaustive-based search algorithm, the best pattern is chosen from all selection patterns, during which we consider all source information bit sequences.
  • Since all the source information bit sequences and all the selection patterns are considered, the complexity of the optimal algorithm is relatively high when the QC-LDPC codes have large block length. Based on this, another partial-based search information bit selection algorithm is proposed with partial source information bit sequences and partial selection patterns being taken into account.
  • At the destination, the joint iterative decoding algorithm based on the three-layer Tanner graph is proposed to effectively recover the source information by the use of the equivalent parity-check matrix.
The proposed optimized selection algorithm chooses an optimized one from the selection patterns considered in the relay, and the proposed joint decoding algorithm based on the three-layer Tanner graph performs single-step decoding by using the equivalent parity-check matrix to fully exchange extrinsic information during each iteration, which helps to significantly enhance the entire system’s performance. However, for larger block-length QC-LDPC codes, the complexity of the proposed algorithms will be increased by considering more selection patterns and a larger size-equivalent parity-check matrix.
The organization of this article is shown below. Section 2 performs the description of the proposed D-QC-LDPCC-SM scheme by selection in the relay. Section 3 proposes two optimized information bit selection algorithms. In Section 4, we describe the joint iterative decoding algorithm on the basis of the three-layer Tanner graph. Section 5 analyzes the simulation results in detail. Finally, we conclude this paper.
Notation: Bold italic lowercase and capital letters denote the vector and matrix, respectively. 0 Z   ×   Z is the zero matrix of size Z   ×   Z . [ x ] is the minimum integer no less than x, and “mod” represents the modulo operation. [ ] T is used for transpose. denotes the complex domain. C N ( μ ,   σ 2 ) denotes the complex Gaussian distribution with mean μ and variance σ 2 . C K 1 K 2 is a binomial coefficient. |a|b| denotes the series concatenation of a and b. | . | denotes the number of elements in a set.

2. Distributed QC-LDPC Coded SM Scheme by Selection in the Relay

This section presents the D-QC-LDPCC-SM scheme by selection in the relay. We first introduce the knowledge of 5G LDPC codes. Additionally, we describe the system model of the proposed scheme.

2.1. 5G LDPC Codes

2.1.1. Preliminaries of QC-LDPC Codes

For QC-LDPC codes, the parity-check matrix is represented as:
M = [ A e 1 , 1 A e 1 , 2 A e 1 , 3 A e 1 , n b A e 2 , 1 A e 2 , 2 A e 2 , 3 A e 2 , n b A e m b , 1 A e m b , 2 A e m b , 3 A e m b , n b ] .
For 1   i   ¯     m b and 1   j ¯   n b , e i ¯ , j ¯ { 1 ,   0 ,   Z     1 } , in which Z denotes the lifting size. In Equation (1), matrix A is the Z   ×   Z circularly-shifted identity matrix and has the following expression:
A = [ 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 ] .
Matrix A e i ¯ , j ¯ associated with A and e i ¯ , j ¯ in Equation (1) is given by:
A e i ¯ , j ¯ = { 0 Z × Z i f   e i ¯ , j ¯ = 1 ( A ) e i ¯ , j ¯ i f   e i ¯ , j ¯ 1 .
The non-negative exponent e i ¯ , j ¯ of ( A ) e i ¯ , j ¯ is called the shift value. All exponents e i ¯ , j ¯ construct the following exponent matrices:
E = [ e 1 , 1 e 1 , 2 e 1 , 3 e 1 , n b e 2 , 1 e 2 , 2 e 2 , 3 e 2 , n b e m b , 1 e m b , 2 e m b , 3 e m b , n b ] .
By the above exponent matrix, the base matrix is directly written by:
B = [ b 1 , 1 b 1 , 2 b 1 , 3 b 1 , n b b 2 , 1 b 2 , 2 b 2 , 3 b 2 , n b b m b , 1 b m b , 2 b m b , 3 b m b , n b ] ,   for   b i ¯ , j ¯ = { 0 i f   e i ¯ , j ¯ = 1 1 i f   e i ¯ , j ¯ 1 .

2.1.2. Characteristics and Encoding of 5G LDPC Codes

The 5G LDPC codes adopt the so-called Raptor-like structure, and the base matrix has the sketch depicted in Figure 1. C and G construct the core, where G is a square matrix with the number of elements 1s in the first column being three and the other columns together forming the bidiagonal structure. O (zero matrix), D and I (identity matrix) construct the extension. Moreover, C corresponds to the information bits, G corresponds to the parity bits of the core and I corresponds to the extended parity bits.
Two base matrices, B 1 and B 2 , with similar structures are supported in 5G LDPC codes. In 5G LDPC codes, 16 exponent matrices are supported, of which 8 exponent matrices correspond to 1 base matrix. The exponent matrices support all lifting sizes, and their relationship is listed in Table 1. For B 1 , the supported information length K and the code rate R are 308   <   K     8448 and 1 / 3     R     8 / 9 , respectively. For B 2 , 40     K     3840 and 1 / 5     R     2 / 3 are supported, respectively. To adapt variable K and R (R = K/N) in 5G (N, K) QC-LDPC codes, i.e., to adapt diverse codeword length N, the shortening and puncturing approaches are required. The steps that get N transmitted codeword bits are as follows:
Step 1: Obtain the base matrix and k z (information circulant columns of the base matrix) for the given K and R.
(1)
For B 1 : k z = 22 .
(2)
For B 2 : k z = 10 if K > 640; k z   =   9 if 560   <   K     640 ; k z = 8 if 192   <   K     560 . k z   =   6 if 40     K     192 ;
Step 2: Select the minimal Z from Table 1 to make k z Z     K . By Z, we determine matrix E = [ e i ¯ , j ¯ ] 1 i ¯ m b , 1 j ¯ n b from the eight exponent matrices from Table 1. For B 1 and B 2 , ( m b , n b ) = ( 46 ,   68 ) and ( 42 ,   52 ) , respectively.
Step 3: Compute matrix P   =   [ p i ¯ , j ¯ ] 1 i ¯ m z , 1 j ¯ n z ( n z = [ k z / R ] + 2     m b , m z = n z k z n b ), where p i ¯ , j ¯ = 1 for e i ¯ , j ¯ = 1 , and p i ¯ , j ¯ = e i ¯ , j ¯ (mod Z) for e i ¯ , j ¯ 1 .
Step 4: By dispersing each element of P into a zero matrix or circularly-shifted identity matrix of size Z   ×   Z , the m z Z   ×   n z Z parity-check matrix H utilized for the encoding and decoding of (N, K) LDPC codes will be obtained.
Step 5: Receive the sequence of length k z Z by adding k z Z     K zero bits at the end of the information sequence of length K. Then, we use H to perform encoding for the obtained sequence of length k z Z to find the codeword sequence c of length n z Z . Finally, the transmitted codeword bits with length N are obtained by removing the supplemented zero bits and puncturing partial codeword bits, as exhibited in Figure 2.
Table 1. Relationship between the exponent matrices and lifting size sets.
Table 1. Relationship between the exponent matrices and lifting size sets.
Exponent MatricesLifting Size Sets
E 1 { Z = a × 2 b | a = 2 ,   b = 0 ,   1 , ,   7 }
E 2 { Z = a × 2 b | a = 3 ,   b = 0 ,   1 , ,   7 }
E 3 { Z = a × 2 b | a = 5 ,   b = 0 ,   1 , ,   6 }
E 4 { Z = a × 2 b | a = 7 ,   b = 0 ,   1 , ,   5 }
E 5 { Z = a × 2 b | a = 9 ,   b = 0 ,   1 , ,   5 }
E 6 { Z = a × 2 b | a = 11 ,   b = 0 ,   1 , ,   5 }
E 7 { Z = a × 2 b | a = 13 ,   b = 0 ,   1 , ,   4 }
E 8 { Z = a × 2 b | a = 15 ,   b = 0 ,   1 , ,   4 }

2.2. System Model in Cooperative Communications

Figure 3 exhibits the D-QC-LDPCC-SM system model, in which the source (S) and relay (R) adopt different 5G LDPC codes. The R uses the decode-and-forward protocol. Additionally, the S, R and destination (D) deploy NT, NT and NR antennas, respectively. Completing a whole system transmission requires two time slots.
In time slot-1, the information bit sequence m with length K1 at the S is given by the 5G (N1, K1) QC-LDPC1 encoder with m z ( 1 ) Z ( 1 )   ×   n z ( 1 ) Z ( 1 ) parity-check matrix H1, where m z ( 1 ) , n z ( 1 ) and Z ( 1 ) are defined as m z , n z and Z , respectively. First, m is encoded into QC-LDPC codeword sequence v ( 1 ) of length n z ( 1 ) Z ( 1 ) . Then, by removing the added zero bits and puncturing the codeword bits, the length of the N1 transmitted codeword bit sequence v is generated, as introduced in Section 2.1. Next, v is sent to the SM mapper to generate a SM vector, and the process is illustrated in Figure 4a. Specifically, the buffer obtains v and generates multiple length l ( l = log 2 ( N T M ) ) sequences v ( k 1 ) , where M is the constellation size, k 1 = 1 , 2 , , ( N 1   +   d ¯ 1 ) / l with d ¯ 1 denoting the number of zero bits added at the end of v to make k 1 an integer. The bit splitter divides v ( k 1 ) into two parts, v 1 ( k 1 ) and v 2 ( k 1 ) , where v 1 ( k 1 ) is composed of the first log 2 ( N T ) bits, but v 2 ( k 1 ) is composed of the remaining log 2 ( M ) bits. The antenna mapper finds v 1 ( k 1 ) and maps it to the transmit antenna index a 1 ( k 1 ) { 1 , 2 , , N T } . The symbol mapper takes v 2 ( k 1 ) and maps it to the M-ary modulated symbol v m 1 S ( k 1 ) , where m 1 { 1 , 2 , ,   M } . Then, the SM modulator gives the modulated symbol v m 1 S ( k 1 ) to the transmit antenna index a 1 ( k 1 ) , and outputs the transmission vector v m 1 , a 1 S ( k 1 ) N T × 1 :
v m 1 , a 1 S ( k 1 ) = [ , 0 , v m 1 S ( k 1 ) , 0 , ] T .
The transmission vector v m 1 , a 1 S ( k 1 ) is separately sent to the R and D through slow Rayleigh fading channels, H S , R N T × N T and H S , D N R × N T , to generate the signal vectors y S , R ( k 1 ) N T × 1 and y S , D ( k 1 ) N R × 1 :
y S , R ( k 1 ) = H S , R v m 1 , a 1 S ( k 1 ) + n S , R ( k 1 ) = h S , R a 1 ( k 1 ) v m 1 S ( k 1 ) + n S , R ( k 1 )
y S , D ( k 1 ) = H S , D v m 1 , a 1 S ( k 1 ) + n S , D ( k 1 ) = h S , D a 1 ( k 1 ) v m 1 S ( k 1 ) + n S , D ( k 1 ) ,
where h S , R a 1 ( k 1 ) N T × 1 and h S , D a 1 ( k 1 ) N R × 1 denote the a 1 ( k 1 ) - th column of H S , R and H S , D , respectively. n S , R ( k 1 ) N T × 1 and n S , D ( k 1 ) N R × 1 denote the noise vectors. The elements of H S , R and n S , R ( k 1 ) obey the distribution C N ( 0 , 1 ) and C N ( 0 , σ 2 ) , respectively. Additionally, H S , D and n S , D ( k 1 ) are defined as H S , R and n S , R ( k 1 ) , respectively.
In time slot-2, the SM demapper in R is adopted to obtain the log-likelihood ratio (LLR) sequence of v, and the process is illustrated in Figure 4b. Specifically, the SM demodulator using the maximum-likelihood detection approach [21] demodulates the signal y S , R ( k 1 ) to generate the LLR sequences φ S , R ( a 1 ( k 1 ) ) and φ S , R ( v m 1 S ( k 1 ) ) of a 1 ( k 1 ) and v m 1 S ( k 1 ) , respectively. By the bit combiner, we receive the LLR sequence φ S , R ( v ( k 1 ) ) . After the buffer, the length N1 LLR sequence φ S , R ( v ) of v is generated. The QC-LDPC decoder is used to yield the estimated source information m ¯ . In the R, K 2 ( K 2 < K 1 ) information bits m j ( j { 1 ,   2 , , J = C K 1 K 2 } ) are selected from m ¯ . Note that the proper selection helps the D construct an optimized distributed code, and thus designing the optimized information selection algorithms is very important. The details of the optimized algorithms will be introduced in Section 3. Through the 5G (N2, K2) QC-LDPC2 encoder with m z ( 2 ) Z ( 2 )   ×   n z ( 2 ) Z ( 2 ) parity-check matrix H2, m j is encoded into QC-LDPC codeword v j ( 2 ) = [ m j , v j , p ( 2 ) ] with length n z ( 2 ) Z ( 2 ) , where v j , p ( 2 ) has the length n z ( 2 ) Z ( 2 ) K 2 . We send the length M 2 ( M 2 = N 2 K 2 + 2 Z ( 2 ) ) transmitted codeword bit sequence v j , p of v j , p ( 2 ) to the SM mapper that generates v m 2 , a 2 R ( k 2 ) N T × 1 :
v m 2 , a 2 R ( k 2 ) = [ , 0 , v m 2 R ( k 2 ) , 0 , ] T ,
where k 2 = 1 , 2 , , ( M 2   +   d ¯ 2 ) / l and v m 2 R ( k 2 ) are transmitted from the a 2 ( k 2 ) - th antenna with m 2 { 1 , 2 , ,   M } and a 2 ( k 2 ) { 1 ,   2 , , N T } . Through slow Rayleigh fading channel H R , D N R × N T (whose definition is similar to H S , R in Equation (7)), vector v m 2 , a 2 R ( k 2 ) is sent to the D, which obtains the signal vector y R , D ( k 2 ) N R × 1 :
y R , D ( k 2 ) = H R , D v m 2 , a 2 R ( k 2 ) + n R , D ( k 2 ) = h R , D a 2 ( k 2 ) v m 2 R ( k 2 ) + n R , D ( k 2 ) ,
where h R , D a 2 ( k 2 ) N R × 1 denotes the a 2 ( k 2 ) - th column of H R , D , and the noise vector n R , D ( k 2 ) N R × 1 has a similar definition to n S , R ( k 1 ) in Equation (7).
During the respective time slot, the SM demapper in D is used for demodulating the signal vectors y S , D ( k 1 ) and y R , D ( k 2 ) to receive the LLR sequences φ S , D ( v )  and φ R , D ( v j , p )  corresponding to v and v j , p , respectively. Through the multiplexer, φ S , D ( v ) and φ R , D ( v j , p ) are merged into the length N ¯ ( N ¯ = N 1   +   M 2 ) LLR sequence φ ¯ 0 = [ φ S , D ( v ) , φ R , D ( v j , p ) ] = [ φ ¯ 0 , 1 , φ ¯ 0 , 2 , , φ ¯ 0 , N ¯ ] corresponding to the transmitted codeword sequence | v | v j , p | . Since | v | v j , p | are the transmitted bits of distributed LDPC codeword | v ( 1 ) | v j , p ( 2 ) | with length N = = n z ( 1 ) Z ( 1 ) + n z ( 2 ) Z ( 2 ) K 2 , we need to complete the initial LLRs of punctured and shortened bits for φ ¯ 0 to make the joint LDPC decoder find the LLR sequence of length N = . The specific contents of joint LDPC decoding are described in Section 4.

3. Optimized Information Bit Selection Algorithms at the Relay

In R, we select K2 bits m j from m with length K1 as the input of the (N2, K2) QC-LDPC2 encoder, where j is the selection order denoted as follows:
j     ε   =   { 1 ,   2 ,     ,   J   =   C K 1 K 2 } .
Note that each j corresponds to a K2-dimensional vector, i.e.,
j ψ j = [ w 1 ( j ) , w 2 ( j ) , , w K 2 ( j ) ] , 1 w 1 ( j ) < w 2 ( j ) < < w K 2 ( j ) K 1 ,
where vector ψ j is called the selection pattern, and element w i ( j ) represents the position of the selected bit in m. All selection patterns form the following set, mathematically expressed as:
ϕ = { ψ j | j ε } = { [ w 1 ( j ) , w 2 ( j ) , , w K 2 ( j ) ] , 1 w 1 ( j ) < w 2 ( j ) < < w K 2 ( j ) K 1 , j ε } .
For the j-th selection, the distributed code at D is C D ( j ) ( N ¯ ,   K 1 )   =   { | v | v j , p | } . Assume that the input sequence of the (N2, K2) QC-LDPC2 encoder is independent of m, the D generates the distributed code C D ( N ¯ ,   K 1 )     C D ( j ) ( N ¯ ,   K 1 ) .
To obtain an optimized code C D ( j ) ( N ¯ ,   K 1 ) at D, two optimized information selection algorithms called the optimal algorithm and the low-complexity algorithm are proposed to appropriately select the partial information from m ¯ . The following optimized selection algorithm description is based on the assumption of correct decoding (i.e., m ¯ = m ) at R.

3.1. Exhaustive-Based Search Optimal Information Bit Selection Algorithm

In the optimal algorithm based on the exhaustive search, we determine the best pattern resulting in the optimal code with the best codeword weight distribution from all J selection patterns, during which all 2 K 1 source information bit sequences are considered. The specific steps of the optimal algorithm are listed in Algorithm 1.
Algorithm 1: Optimal Algorithm.
(1)
Determine the set ε and ϕ .
(2)
Take into account all possible codeword weights wt ( | v | v j , p | ) N ¯ resulted by 2 K 1 source information sequences, where j ε .
(3)
Set the parameters t = 0 ,   w = 1 ,   ϕ t = ϕ ,   ε t = ε .
(4)
Determine the number M w ( j ) of codewords with weight wt ( | v | v j , p | ) = w for each j ε t   and   ψ j ϕ t . Find the selection orders j causing min j     ε t M w ( j ) to form a set ε t + 1 ε t , and then determine the set ϕ t + 1 ϕ t corresponding to ε t + 1 .
(5)
If w   <   N ¯ and | ϕ t + 1 |     1 , increase the parameters t and w by 1, respectively. Then, go to step 4. Otherwise, we terminate the overall search algorithm and obtain the best selection pattern ψ ( 1 ) = ψ j .

3.2. Partial-Based Search Low-Complexity Information Bit Selection Algorithm

For the case of larger block length code, Algorithm 1 possesses high computational complexity. Based on this, we propose the low-complexity selection algorithm by partial search, different from Algorithm 1, i.e., partial patterns of J selection patterns are considered, during which we only consider partial sequences of 2 K 1 source information sequences. Algorithm 2 lists the specific design steps.
Algorithm 2: Low-complexity Algorithm.
(1)
Determine the set ϕ ¯ of Q (Q < J) selection patterns, and then get the selection order set ε ¯ corresponding to ϕ ¯ :
(a)
Divide the length K1 source information bit sequence m into almost equal two parts, i.e., one part has L   = [ ( K 1 + 1 ) / 2 ] bits and the remaining part has K 1 L bits. Therefore, there are two cases. For the first case, the number of bits in the first and second parts is L and K 1 L , respectively. For the second case, the first and second parts have K 1 L and L bits, respectively.
(b)
We select K 2 bits from the two parts in each case. For the first case, we randomly choose more bits (i.e., T bits) from the first part and fixedly select K 2 T bits from the second part, where ( [ k 2 + 1 ) / 2 ] T min ( K 2 , L ) . For the second case, we randomly select T bits from the second part, and fixedly select K 2 T bits from the first part. Through the selection method, get Q selection patterns to construct the set ϕ ¯   =   { ψ ¯ 2 , ψ ¯ 1 , , ψ ¯ Q } .
(c)
Get ε ¯   =   { 1 , 2 , , Q } corresponding to ϕ ¯ .
(2)
Consider the possible codeword weights wt ( | v | v j , p | ) N ¯   ( j ε ¯ ) yielded by K b ( K b < 2 K 1 ) source information sequences m. The K b information sequences m are obtained by the following method:
(a)
Split the length K 1 source information sequence m into two parts, as shown in substep (a) of step 1.
(b)
Select   ( 0 < 1 = N 1 K 1 + 1 ) positions from the two parts to put non-zero bits, and the remaining K 1 positions are put zero bits, where 1 is the singleton boundary and is related to the minimal codeword weight d min   at   the   S , i.e., d min N 1 K 1 + 1 . The specific selection ways of positions are similar to substep (b) in step 1. Through the selection method, we get K b sequences m with weight 0   <   wt ( m ) N 1 K 1 + 1 (i.e., 0   <   wt ( m ) d min and d min <   wt ( m ) N 1 K 1 + 1 ). Since the obtained sequences m easily generate the codewords of low weight at the S such that the destination gets low-weight codewords, it is extremely important to consider these sequences m.
(3)
Determine the pattern ψ ( 2 ) = ψ ¯ j from Q selection patterns by referring to steps 3–5 in Algorithm 1.

3.3. Complexity Analysis of the Two Optimized Selection Algorithms

This section calculates the encoding complexity of the two optimized algorithms about addition and multiplication.
In Algorithm 1, the complexity of the 5G (N1, K1) QC-LDPC1 encoder with m z ( 1 ) Z ( 1 )   ×   n z ( 1 ) Z ( 1 ) parity-check matrix H1 is m z ( 1 ) Z ( 1 ) [ 2 n z ( 1 ) Z ( 1 ) 1 ] for encoding one information sequence. Then, for 2 K 1 information sequences, the overall encoding complexity J 1 = 2 K 1 m z ( 1 ) Z ( 1 ) [ 2 n z ( 1 ) Z ( 1 ) 1 ] is required at S. In R, for one selection pattern, the computational complexity required by the 5G (N2, K2) QC-LDPC2 encoder to complete the encoding of 2 K 1 information sequences is J 2 = 2 K 1 m z ( 2 ) Z ( 2 ) [ 2 n z ( 2 ) Z ( 2 ) 1 ] . During determining ψ ( 1 ) , assume that the number of the considered selection patterns is separately B 1 ( j ) ,   B 2 ( j ) ,   , B w opt ( j ) for finding M 1 ( j ) ,   M 2 ( j ) ,   , M w opt ( j ) . Then, the overall encoding complexity at R is J 3 = J 2 ( B 1 ( j ) + B 2 ( j ) + + B w opt ( j ) ) . Thus, Algorithm 1 has the total complexity denoted as:
Θ ( 1 ) = J 1 + J 3 = 2 K 1 m z ( 1 ) Z ( 1 ) [ 2 n z ( 1 ) Z ( 1 ) 1 ] + 2 K 1 m z ( 2 ) Z ( 2 ) [ 2 n z ( 2 ) Z ( 2 ) 1 ] ( B 1 ( j ) + B 2 ( j ) + + B w opt ( j ) ) .
In Algorithm 2, the total computational complexity is:
Θ ( 2 ) = K b m z ( 1 ) Z ( 1 ) [ 2 n z ( 1 ) Z ( 1 ) 1 ] + K b m z ( 2 ) Z ( 2 ) [ 2 n z ( 2 ) Z ( 2 ) 1 ] ( B ¯ 1 ( j ) + B ¯ 2 ( j ) + + B ¯ w low ( j ) ) ,
where B ¯ 1 ( j ) , B ¯ 2 ( j ) , , B ¯ w low ( j ) , separately, are the number of considered selection patterns for finding M ¯ 1 ( j ) ,   M ¯ 2 ( j ) ,   , M ¯ w low ( j ) (defined as M 1 ( j ) ,   M 2 ( j ) ,   , M w opt ( j ) ) during determining ψ ( 2 ) . From Equations (14) and (15), the complexity of the two algorithms is obtained.

4. Joint Iterative Decoding Algorithm Based on the Three-Layer Tanner Graph

4.1. Steps of Joint Iterative Decoding Algorithm

Joint iterative decoding is another appealing feature of the proposed D-QC-LDPCC-SM scheme. If the first K2 bits are selected from the K1 information bits, the equivalent parity-check matrix used for decoding at D is expressed as:
H 0 = [ ( H 1 ) m z ( 1 ) Z ( 1 ) × n z ( 1 ) Z ( 1 ) 0 m z ( 1 ) Z ( 1 ) × ( n z ( 2 ) Z ( 2 ) K 2 ) Q m z ( 2 ) Z ( 2 ) × K 2 0 m z ( 2 ) Z ( 2 ) × ( n z ( 1 ) Z ( 1 ) K 2 ) F m z ( 2 ) Z ( 2 ) × ( n z ( 2 ) Z ( 2 ) K 2 ) ] ,
where H1 is the parity-check matrix of the 5G (N1, K1) QC-LDPC1 code, and H2 = [Q, F] is the parity-check matrix of the 5G (N2, K2) QC-LDPC2 code at R with Q and F separately having the sizes m z ( 2 ) Z ( 2 ) × K 2 , m z ( 2 ) Z ( 2 ) × ( n z ( 2 ) Z ( 2 ) K 2 ) . If the selected K 2 bits are not in the first K 2 positions, then matrix Q is not necessarily in the first K 2 columns. For the convenience of discussion, we directly use the parity-check matrix H 0 in Equation (16) to analyze the decoding process, and the corresponding three-layer Tanner graph corresponding to H 0 is shown in Figure 5. In the three-layer Tanner graph, the check node set { c m 1 ( 1 ) ,   m 1 = 1 ,   2 , , m z ( 1 ) Z ( 1 ) } related to H 1 forms the first layer. The variable node set { v n 1 ,   n 1 = 1 , 2 , , n z ( 1 ) Z ( 1 ) } related to H 1 , and the variable node set { v n 2 ,   n 2 = 1 ,   2 , ,   K 2 ,   n z ( 1 ) Z ( 1 ) + 1 ,   n z ( 1 ) Z ( 1 ) + 2 , ,   N = = n z ( 1 ) Z ( 1 ) + n z ( 2 ) Z ( 2 ) K 2 } related to H 2 constitute the second layer of the Tanner graph, where { v n ¯ ,   n ¯ = 1 ,   2 , , K 2 } is the common variable node set. The check node set { c m 2 ( 2 ) ,   m 2 = 1 ,   2 , , m z ( 2 ) Z ( 2 ) } related to H 2 constitutes the third layer of the Tanner graph. All check nodes connected with v n ( n = 1 ,   2 , , N = ) constitute the set C ( v n ) . All variable nodes associated with c m i ( i )   ( i = 1 ,   2 ) form the set V ( c m i ( i ) ) . With the help of the three-layer Tanner graph, the decoding steps are as follows:
Step 1: Initialize the LLRs of the punctured and shortened bits for φ ¯ 0 to make the decoder find the LLR sequence of length N = , i.e.,
φ 0 = [ φ 0 , 1 , φ 0 , 2 , , φ 0 , N = ] = [ 0 , , 0 , part - 1 φ ¯ 0 , 1 , , φ ¯ 0 , K 1 2 Z ( 1 ) , , , part - 2 , φ ¯ 0 , K 1 2 Z ( 1 ) + 1 , , φ ¯ 0 , N 1 , 0 , , 0 , part - 3 , , part - 4 , φ ¯ 0 , N 1 + 1 , , φ ¯ 0 , N ¯ , 0 , , 0 part - 5 ] ,
where parts 1, 2 and 3 (related to 5G (N1, K1) QC-LDPC1 codes) denote the initial LLRs of 2 Z ( 1 ) punctured information bits, k z ( 1 ) Z ( 1 ) K 1 ( k z ( 1 ) = n z ( 1 ) m z ( 1 ) ) shortened zero bits and ( m z ( 1 ) 2 ) Z ( 1 ) N 1 + K 1 punctured parity-check bits, respectively. However, parts 4 and 5 separately denote the initial LLRs of k z ( 2 ) Z ( 2 ) K 2 ( k z ( 2 ) = n z ( 2 ) m z ( 2 ) ) shortened zero bits and ( m z ( 2 ) 2 ) Z ( 2 ) N 2 + K 2 punctured parity-check bits related to 5G (N2, K2) QC-LDPC2 codes. The extrinsic information L ( Q m i , n ( i ) ) passed by variable node v n to check node c m i ( i ) is initialized as φ 0 , n .
Step 2: The extrinsic information passed by check node c m i ( i ) to variable node v n is updated as L ( r m i , n ( i ) ) by using the iterative decoding algorithm such as belief-propagation (BP) and min-sum (MS) algorithms [22], where L ( r m i , n ( i ) ) is related to L ( Q m i , n ( i ) ) .
Step 3: The extrinsic information L ( Q m 1 , n ( 1 ) ) passed by the variable node v n to the check node c m 1 ( 1 ) (in the first layer) is updated as follows:
L ( Q m 1 , n ( 1 ) ) = φ 0 , n + c k ( 1 ) C ( v n ) \ c m 1 ( 1 ) L ( r k , n ( 1 ) ) + c l ( 2 ) C ( v n ) L ( r l , n ( 2 ) ) .
Similar to L ( Q m 1 , n ( 1 ) ) , the extrinsic information L ( Q m 2 , n ( 2 ) ) passed by the variable node v n to the check node c m 2 ( 2 ) (in the third layer) is updated as follows:
L ( Q m 2 , n ( 2 ) ) = φ 0 , n + c k ( 1 ) C ( v n ) L ( r k , n ( 1 ) ) + c l ( 2 ) C ( v n ) \ c m 2 ( 2 ) L ( r l , n ( 2 ) ) .
In (18) and (19), C ( v n ) \ c m i ( i ) is the set composed of elements other than c m i ( i ) in C ( v n ) .
Step 4: Repeat steps 2 and 3. When the maximum number I max of iterations is reached, the LLR L ( c n ) of the n-th codeword bit c n and the estimate of c n are exhibited as follows:
L ( c n ) = φ 0 , n + c k ( 1 ) C ( v n ) L ( r k , n ( 1 ) ) + c l ( 2 ) C ( v n ) L ( r l , n ( 2 ) )
c ^ n = { 0 L ( c n ) 0 1 L ( c n ) < 0 .
Finally, obtain the estimated information sequence m ^   =   [ c ^ 1 , c ^ 2 , , c ^ K 1 ] .

4.2. Computational Complexity of Joint Iterative Decoding Algorithm

This subsection considers the computational complexity of the proposed joint iterative decoding algorithm for addition and multiplication. In the parity-check matrix H 0 , let the number of 1′s in the m -th row be d m , and the number of 1′s in the n -th column be ρ n , where m β   =   { 1 ,   2 ,   ,   m z ( 1 ) Z ( 1 )   +   m z ( 2 ) Z ( 2 ) } and n Λ     = { 1 ,   2 ,   ,   N = } .
First, we consider the complexity of the joint decoding based on the BP algorithm. In step 2, finding the extrinsic information L ( r m 1 , n ( 1 ) ) and L ( r m 2 , n ( 2 ) ) separately needs 2 d k ( k Λ n 1 ) and 2 d m z ( 1 ) Z ( 1 ) + l ( l Λ n 2 ) elementary operations [22], where Λ n 1 and Λ n 2 represent the index sets of the check nodes in the first and third layers connected to the variable node v n , respectively. Note that | Λ n 1 | + | Λ n 2 | = ρ n . In step 3, the number of elementary operations required to find the extrinsic information L ( Q m i , n ( i ) ) is ρ n 1 . By combining steps 2 and 3, the complexity required to complete one iteration is computed as:
C 1 BP = n Λ [ ρ n ( ρ n 1 ) + k Λ n 1 2 d k + l Λ n 2 2 d m z ( 1 ) Z ( 1 ) + l ] .
Since the joint decoding algorithm terminates in the predetermined maximum iteration number I max , the overall computational complexity of the joint BP decoding algorithm is:
C BP = ( I max 1 ) C 1 BP + n Λ [ ρ n + k Λ n 1 2 d k + l Λ n 2 2 d m z ( 1 ) Z ( 1 ) + l ] .
Now, the computational complexity of the joint decoding by the MS algorithm is considered. In step 2, d k + [ log ( d k ) ] 2 ( k Λ n 1 ) and d m z ( 1 ) Z ( 1 ) + l + [ log ( d m z ( 1 ) Z ( 1 ) + l ) ] 2 ( l Λ n 2 ) elementary operations [22] are required to obtain L ( r m 1 , n ( 1 ) ) and L ( r m 2 , n ( 2 ) ) , respectively. Because the MS algorithm is only different from the BP algorithm in step 2, the corresponding complexity required for one iteration can be directly written as:
C 1 MS = n Λ { ρ n ( ρ n 1 ) + k Λ n 1 [ d k + log ( d k ) 2 ] + l Λ n 2 [ d m z ( 1 ) Z ( 1 ) + l + log ( d m z ( 1 ) Z ( 1 ) + l ) 2 ] } .
Since the algorithm terminates in the I max -th iteration, the overall computational complexity of the joint MS decoding algorithm is represented as:
C MS = ( I max 1 ) C 1 MS + n Λ { ρ n + k Λ n 1 [ d k + log ( d k ) 2 ] + l Λ n 2 [ d m z ( 1 ) Z ( 1 ) + l + log ( d m z ( 1 ) Z ( 1 ) + l ) 2 ] } .
Based on Equations (23) and (25), we can notice that the joint MS decoding algorithm has a reduced complexity over the joint BP decoding algorithm.

5. Simulation Results

The BER performance of the proposed and reference systems over a slow Rayleigh fading channel is discussed. In coded cooperative communications, the signal-to-noise ratio (SNR) of the S-D, S-R and R-D links is represented by λ S , D , λ S , R and λ R , D , respectively. If λ S , R = , the S-R link is ideal, otherwise it is non-ideal. Compared with S, R is closer to D, so let R have 1 dB SNR gain, i.e., λ R , D = λ S , D + 1 . The parameters NT = 8 and 16-QAM are used in each simulation. All simulations are reported based on the relationship between λ S , D and BER. Table 2 lists the simulation parameters.

5.1. Comparisons under Different Information Selection Algorithms

To explain the advantages of the proposed optimal and low-complexity information selection algorithms (i.e., Algorithms 1 and 2) over the random selection method, Figure 6 depicts the BER performance of the proposed scheme ( λ S , R   =   ) with different selection approaches. The corresponding selection patterns are shown in Table 3. The joint BP iterative decoding algorithm is utilized to recover the message. From simulated results, it is noticed that compared with the system utilizing the random selection method, the scheme utilizing the two optimized algorithms provides better performance, which reflects the superiority of our proposed optimized algorithms. For example, at BER = 3   ×   10 5 , Algorithms 1 and 2 outperform the random method by 1 and 1.2 dB, respectively. The reason why the random selection approach provides less performance than the proposed Algorithms 1 and 2 is that it generates the code with a smaller minimum distance of 3 at D over the others generating the same minimum distance of 6.
Moreover, the two optimized algorithms can obtain the approximate performance because they can achieve the code with nearly the same number of codewords with the minimum weight of 6 at D. Further, the complexity of Algorithm 2 is greatly reduced over Algorithm 1 by Equations (14) and (15). This reveals the design rationality of low-complexity Algorithm 2. Thus, for the case of the long block length codes, we only concentrate on the impact of Algorithm 2 on the system performance, as exhibited in Figure 7 and Figure 8. Table 3 lists the optimized and random patterns. In the simulations, λ S , R = and the joint BP iterative decoding algorithm are assumed. Due to the fact that the random selection method generates a smaller average minimum distance, it again shows the performance degradation of the random approach over Algorithm 2. For example, in Figure 7, the proposed scheme under the random method is about 1.2 dB worse than that under Algorithm 2 at BER 10 5 . In Figure 8, the proposed scheme using the random approach has a 1 dB loss compared to the proposed scheme using Algorithm 2 at BER = 10 5 .

5.2. Performance of the Proposed Scheme and Non-Cooperative System

To observe the influence of the practical non-ideal S-R channel condition ( λ S , R ) on the system performance, we carry out the performance comparison for the proposed system in the ideal and non-ideal S-R channels, as shown in Figure 9 and Figure 10. The joint BP decoding algorithm is utilized. It is noticed that the performance under the non-ideal S-R channel is very close to that under the ideal S-R channel. For example, the non-ideal cases in Figure 9 and Figure 10 only have about 0.1 and 0.15 dB losses over the corresponding ideal cases. The results reflect the effectiveness of the proposed system in the realistic wireless channel link. Therefore, studying the proposed D-QC-LDPCC-SM scheme has important theoretical and practical significance.
Moreover, we perform the performance comparison between the proposed scheme ( λ S , R = ) and its corresponding non-cooperative system in Figure 11. At D, the joint BP decoding algorithm is used to obtain the estimated source information. We observe that, under the same conditions, the proposed system is significantly better than the non-cooperative system. For example, for the case of NR = 6, the cooperative system achieves 0.9 dB over the non-cooperative system at BER = 10 5 . This is because the larger SNR of the R-D link over the S-D link helps to enhance the overall system reliability and further makes the correct estimated probability of the source message be improved.

5.3. Comparisons between the Proposed Scheme and the Existing System

In order to better illustrate the effectiveness of the proposed coded cooperative scheme, we compare the proposed scheme with the existing polar-coded cooperative SM (PCC-SM) system [21]. The same conditions, such as λ S , R = , NT = 8 and 16-QAM, are adopted. From Figure 12, we find that the proposed system is superior to the existing PCC-SM system under the same NR. For example, compared with the PCC-SM system with NR = 6, the proposed scheme with NR = 6 obtains about 3.1 dB SNR gain at BER 2   ×   10 4 . The reasons behind this attractive gain can be attributed to two reasons: (1) The D-QC-LDPCC-SM scheme uses the joint BP decoding algorithm, while the existing PCC-SM system uses successive cancellation decoding without iterations. (2) The proposed scheme utilizes an optimized information selection algorithm, but the existing system selects the subchannel capacities on the basis of the heuristic rather than the optimized method.

5.4. Performance of the Proposed Scheme under Various Receive Antenna Numbers and Different Decoding Algorithms

Figure 13 and Figure 14 describe the error performance of the proposed system ( λ S , R = ) using the joint BP decoding algorithm with different receiving antenna numbers NR. As depicted in the simulated results, the increase in NR greatly improves the BER performance. For example, in Figure 13, the BER performance is 1 . 3 × 10 2 with N R = 3 at SNR = 11 dB. For N R = 4 ,   5 and 6, the BER performance under the same SNR is 7 . 7 × 10 4 , 1 . 0 × 10 4 and 9 . 8 × 10 6 , respectively. In Figure 14, the BER performance of the proposed system under N R = 3 ,   4 ,   5 and 6 is 5 . 7 × 10 3 , 4 . 2 × 10 4 , 3 . 3 × 10 5 and 4 . 3 × 10 6 at SNR = 11 dB. This phenomenon shows that the configuration of more receiving antennas provides more diversity gain for the whole cooperative system, thus enhancing the error performance.
In addition, Figure 15 and Figure 16 compare the system performance ( λ S , R = ) under the joint BP and MS decoding algorithms, where the MS decoding algorithm is the simplified BP-based decoding algorithm. It can be found that the performance of the joint MS decoding algorithm is worse than that of the joint BP decoding algorithm. For example, in Figure 15, for the case of NR = 6, the MS decoding algorithm lags behind the BP decoding algorithm by about 0.5 dB at BER = 2 . 5 × 10 5 . From Figure 16, it is seen that at BER = 10 5 , the MS decoding algorithm lags behind the BP decoding algorithm by about 0.9 dB for NR = 5. The performance loss of the joint MS decoding algorithm is mainly caused by the significant reduction in complexity.

6. Conclusions

A novel D-QC-LDPCC-SM scheme is proposed. By adopting the optimized information selection in the relay, the destination generates the optimized code. Compared to the random selection method, the exhaustive-based and partial-based search information bit selection algorithms separately obtain gains of 1 and 1.2 dB due to the obtained larger minimum distance in the destination. In our proposed coded cooperative scheme, the relay-to-destination link has a larger SNR gain than the source-to-destination link, which makes the proposed system exhibit a 0.9 dB gain over the non-cooperative counterpart. Additionally, by using the proper selection and joint iterative decoding algorithm, our proposed scheme outperforms the existing PCC-SM scheme by 3.1 dB.

Author Contributions

C.Z. conceived the idea. She developed the mathematical models and performed the Monte Carlo simulations. F.Y. checked the mathematical model and the simulated results. D.K.W., C.C. and H.X. revised the manuscript. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the National Natural Science Foundation of China under contract No. 61771241.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

There is no conflict of interest related to the content of this manuscript.

References

  1. Hai, H.; Li, C.; Peng, Y.; Hou, J.; Jiang, X. Space-Time Block Coded Cooperative MIMO Systems. Sensors 2021, 21, 109. [Google Scholar] [CrossRef]
  2. Huang, K.; Xiao, Y.; Liu, L.; Li, Y.; Song, Z.; Wang, B.; Li, X. Integrated Spatial Modulation and STBC-VBLAST Design Toward Efficient MIMO Transmission. Sensors 2022, 22, 4719. [Google Scholar] [CrossRef] [PubMed]
  3. Mesleh, R.Y.; Haas, H.; Sinanovic, S.; Ahn, C.W.; Yun, S. Spatial Modulation. IEEE Trans. Veh. Technol. 2008, 57, 2228–2241. [Google Scholar] [CrossRef]
  4. Govender, R.; Pillay, N.; Xu, H. Soft-Output Space-Time Block Coded Spatial Modulation. IET Commun. 2014, 8, 2786–2796. [Google Scholar] [CrossRef]
  5. Feng, D.; Xu, H.; Zheng, J.; Bai, B. Nonbinary LDPC-Coded Spatial Modulation. IEEE Trans. Wirel. Commun. 2018, 17, 2786–2799. [Google Scholar] [CrossRef]
  6. Van Der Meulen, E.C. Three-Terminal Communication Channels. Adv. Appl. Probab. 1971, 3, 120–154. [Google Scholar] [CrossRef]
  7. Zhao, C.; Yang, F.; Umar, R.; Mughal, S. Two-Source Asymmetric Turbo-Coded Cooperative Spatial Modulation Scheme with Code Matched Interleaver. Electronics 2020, 9, 169. [Google Scholar] [CrossRef] [Green Version]
  8. Zhao, C.; Yang, F.; Waweru, D.K. Reed-Solomon Coded Cooperative Spatial Modulation Based on Nested Construction for Wireless Communication. Radioengineering 2021, 30, 172–183. [Google Scholar] [CrossRef]
  9. Sendonaris, A.; Erkip, E.; Aazhang, B. User cooperation diversity. Part I. System description. IEEE Trans. Commun. 2003, 51, 1927–1938. [Google Scholar] [CrossRef] [Green Version]
  10. Sendonaris, A.; Erkip, E.; Aazhang, B. User cooperation diversity. Part II. Implementation Aspects and Performance Analysis. IEEE Trans. Commun. 2003, 51, 1939–1948. [Google Scholar] [CrossRef] [Green Version]
  11. Liang, H.; Liu, A.; Liu, X.; Cheng, F. Construction and Optimization for Adaptive Polar Coded Cooperation. IEEE Wirel. Commun. Lett. 2021, 9, 1187–1190. [Google Scholar] [CrossRef]
  12. Amirzade, F.; Sadeghi, M.R.; Panario, D. QC-LDPC Codes with Large Column Weight and Free of Small Size ETSs. IEEE Commun. Lett. 2022, 26, 500–504. [Google Scholar] [CrossRef]
  13. Hu, J.; Duman, T.M. Low Density Parity Check Codes over Half-duplex Relay Channels. In Proceedings of the 2006 IEEE International Symposium on Information Theory, Seattle, DC, USA, 9–14 July 2006; pp. 972–976. [Google Scholar]
  14. Fang, Y.; Liew, S.C.; Wang, T. Design of Distributed Protograph LDPC Codes for Multi-Relay Coded-Cooperative Networks. IEEE Trans. Wirel. Commun. 2017, 16, 7235–7251. [Google Scholar] [CrossRef]
  15. Wang, H.; Chen, Q. LDPC based Network Coded Cooperation Design for Multi-way Relay Networks. IEEE Access 2019, 7, 62300–62311. [Google Scholar] [CrossRef]
  16. Berceanu, M.G.; Voicu, C.; Halunga, S. Uplink Massive MU-MIMO OFDM-Based System with LDPC Coding-Simulation and Performances. In Proceedings of the Advanced Topics in Optoelectronics, Microelectronics and Nanotechnologies IX, Constanta, Romania, 23–26 August 2018; Volume 10977. [Google Scholar]
  17. Berceanu, M.G.; Voicu, C.; Halunga, S. The performance of an Uplink Massive MIMO OFDM-Based Multiuser System with LDPC Coding when Using Relays. In Proceedings of the 2019 IEEE 25th International Symposium for Design and Technology in Electronic Packaging (SIITME), Cluj-Napoca, Romania, 23–26 October 2019; pp. 339–342. [Google Scholar]
  18. Tao, X.; Chen, X.; Wang, B. On the Construction of QC-LDPC Codes Based on Integer Sequence with Low Error Floor. IEEE Commun. Lett. 2022, 26, 2267–2271. [Google Scholar] [CrossRef]
  19. Li, H.; Bai, B.; Xu, H.; Chen, C. Construction of Algebraic-Based Variable-Rate QC-LDPC Codes. In Proceedings of the 2021 IEEE International Symposium on Information Theory (ISIT), Melbourne, VIC, Australia, 12–20 July 2021; pp. 374–379. [Google Scholar]
  20. Amirzade, F.; Sadeghi, M.R.; Panario, D. Quasi-Cyclic Protograph-Based Raptor-Like LDPC Codes with Girth 6 and Shortest Length. In Proceedings of the 2021 IEEE International Symposium on Information Theory (ISIT), Melbourne, VIC, Australia, 12–20 July 2021; pp. 368–373. [Google Scholar]
  21. Mughal, S.; Yang, F.; Xu, H.; Umar, R. Coded Cooperative Spatial Modulation Based on Multi-Level Construction of Polar Code. Telecommun. Syst. 2018, 70, 435–446. [Google Scholar] [CrossRef]
  22. Chen, J.; Dholakia, A.; Eleftheriou, E.; Fossorier, M.P.C.; Hu, X.Y. Reduced-Complexity Decoding of LDPC Codes. IEEE Trans. Commun. 2005, 53, 1288–1299. [Google Scholar] [CrossRef]
Figure 1. Basic graph of the base matrix.
Figure 1. Basic graph of the base matrix.
Sensors 23 03626 g001
Figure 2. Generation process of N transmitted codeword bits.
Figure 2. Generation process of N transmitted codeword bits.
Sensors 23 03626 g002
Figure 3. Block diagram of the D-QC-LDPCC-SM scheme.
Figure 3. Block diagram of the D-QC-LDPCC-SM scheme.
Sensors 23 03626 g003
Figure 4. (a) SM mapper (b) SM demapper.
Figure 4. (a) SM mapper (b) SM demapper.
Sensors 23 03626 g004
Figure 5. Three-layer Tanner graph of the distributed LDPC code in the D.
Figure 5. Three-layer Tanner graph of the distributed LDPC code in the D.
Sensors 23 03626 g005
Figure 6. Comparisons of the proposed scheme using the (64, 42) QC-LDPC1 and (64, 40) QC-LDPC2 codes under different selection algorithms.
Figure 6. Comparisons of the proposed scheme using the (64, 42) QC-LDPC1 and (64, 40) QC-LDPC2 codes under different selection algorithms.
Sensors 23 03626 g006
Figure 7. Comparisons of the proposed scheme using the (84, 53) QC-LDPC1 and (84, 48) QC-LDPC2 codes under different selection approaches.
Figure 7. Comparisons of the proposed scheme using the (84, 53) QC-LDPC1 and (84, 48) QC-LDPC2 codes under different selection approaches.
Sensors 23 03626 g007
Figure 8. Comparisons of the proposed scheme using the (120, 80) QC-LDPC1 and (120, 75) QC-LDPC2 codes under different selection approaches.
Figure 8. Comparisons of the proposed scheme using the (120, 80) QC-LDPC1 and (120, 75) QC-LDPC2 codes under different selection approaches.
Sensors 23 03626 g008
Figure 9. Comparisons of the proposed scheme with Algorithm 1 using (64, 42) QC-LDPC1 and (64, 40) QC-LDPC2 codes under the ideal and non-ideal S-R channels.
Figure 9. Comparisons of the proposed scheme with Algorithm 1 using (64, 42) QC-LDPC1 and (64, 40) QC-LDPC2 codes under the ideal and non-ideal S-R channels.
Sensors 23 03626 g009
Figure 10. Comparisons of the proposed scheme with Algorithm 2 using (84, 53) QC-LDPC1 and (84, 48) QC-LDPC2 codes under the ideal and non-ideal channels.
Figure 10. Comparisons of the proposed scheme with Algorithm 2 using (84, 53) QC-LDPC1 and (84, 48) QC-LDPC2 codes under the ideal and non-ideal channels.
Sensors 23 03626 g010
Figure 11. Comparisons of the proposed scheme and non-cooperative system with Algorithm 2 using the (84, 53) QC-LDPC1 and (84, 48) QC-LDPC2 codes.
Figure 11. Comparisons of the proposed scheme and non-cooperative system with Algorithm 2 using the (84, 53) QC-LDPC1 and (84, 48) QC-LDPC2 codes.
Sensors 23 03626 g011
Figure 12. Comparisons between the proposed scheme with Algorithm 1 using the (64, 42) QC-LDPC1 and (64, 40) QC-LDPC2 codes and the existing system.
Figure 12. Comparisons between the proposed scheme with Algorithm 1 using the (64, 42) QC-LDPC1 and (64, 40) QC-LDPC2 codes and the existing system.
Sensors 23 03626 g012
Figure 13. Comparisons between the proposed scheme with Algorithm 1 using the (64, 42) QC-LDPC1 and (64, 40) QC-LDPC2 codes under various NR.
Figure 13. Comparisons between the proposed scheme with Algorithm 1 using the (64, 42) QC-LDPC1 and (64, 40) QC-LDPC2 codes under various NR.
Sensors 23 03626 g013
Figure 14. Comparisons between the proposed scheme with Algorithm 2 using the (84, 53) QC-LDPC1 and (84, 48) QC-LDPC2 codes under various NR.
Figure 14. Comparisons between the proposed scheme with Algorithm 2 using the (84, 53) QC-LDPC1 and (84, 48) QC-LDPC2 codes under various NR.
Sensors 23 03626 g014
Figure 15. Comparisons of the proposed scheme with Algorithm 1 using the (64, 42) QC-LDPC1 and (64, 40) QC-LDPC2 codes under different decoding algorithms.
Figure 15. Comparisons of the proposed scheme with Algorithm 1 using the (64, 42) QC-LDPC1 and (64, 40) QC-LDPC2 codes under different decoding algorithms.
Sensors 23 03626 g015
Figure 16. Comparisons of the proposed scheme with Algorithm 2 using the (84, 53) QC-LDPC1 and (84, 48) QC-LDPC2 codes under different decoding algorithms.
Figure 16. Comparisons of the proposed scheme with Algorithm 2 using the (84, 53) QC-LDPC1 and (84, 48) QC-LDPC2 codes under different decoding algorithms.
Sensors 23 03626 g016
Table 2. Simulation parameters.
Table 2. Simulation parameters.
ParametersSpecification
Source coding(64, 42) QC-LDPC1 code, (84, 53) QC-LDPC1 code, (120, 80) QC-LDPC1 code
Relay coding(64, 40) QC-LDPC2 code, (84, 48) QC-LDPC2 code, (120, 75) QC-LDPC2 code
Channel modelSlow Rayleigh fading channel
SM configuration N T = 8 ,   16 - QAM ,   N R = 3 ,   4 , 5, 6
SM Detection methodMaximum-likelihood detection
Joint iterative decoding algorithmBP decoding algorithm, MS decoding algorithm
Iteration Number50
Table 3. Selection patterns generated in different approaches.
Table 3. Selection patterns generated in different approaches.
No.Selection
Approaches
Selection Patterns
1Algorithm 1[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40]
Algorithm 2[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41]
Random[2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42]
2Algorithm 2[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51]
Random[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48]
3Algorithm 2[1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 77, 78, 79, 80]
Random[1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Zhao, C.; Yang, F.; Waweru, D.K.; Chen, C.; Xu, H. Optimized Design of Distributed Quasi-Cyclic LDPC Coded Spatial Modulation. Sensors 2023, 23, 3626. https://doi.org/10.3390/s23073626

AMA Style

Zhao C, Yang F, Waweru DK, Chen C, Xu H. Optimized Design of Distributed Quasi-Cyclic LDPC Coded Spatial Modulation. Sensors. 2023; 23(7):3626. https://doi.org/10.3390/s23073626

Chicago/Turabian Style

Zhao, Chunli, Fengfan Yang, Daniel Kariuki Waweru, Chen Chen, and Hongjun Xu. 2023. "Optimized Design of Distributed Quasi-Cyclic LDPC Coded Spatial Modulation" Sensors 23, no. 7: 3626. https://doi.org/10.3390/s23073626

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop