Turbo receiver for MIMO-CDMA systems employing parity bit selected and permutation spreading

In this paper, a turbo receiver for MIMO-CDMA systems employing parity bit selected and permutation spreading is proposed. In such systems, spreading codes used by transmit antennas are dependent on the transmitted data. In the proposed system, convolutional coding is used as an outer code, while the parity bit selected scheme is used as the inner code. Detection and decoding are performed iteratively for each detected bit. When parity bit selected spreading is used, the parity bits generated by a linear block encoder are used to select a spreading code from a set of orthogonal spreading sequences. The selected spreading code is then used to spread the signals in all transmit antennas. In contrast, in permutation spreading, a permutation of orthogonal spreading sequences is used in each transmit antenna. In the proposed receiver, soft information passes between the detector and the decoder on multiple iterations. Detection is performed using the received signal from all receive antennas in combination with the extrinsic likelihood provided by a SISO decoder. The turbo receiver is further extended to a multiple user system, where the MAI is estimated in each iteration and subtracted out from the received signal. Simulations show a significant improvement in BER when a turbo receiver is used in these systems.


Introduction
In multiple input multiple output (MIMO) systems, where multiple antennas are used at both ends of the wireless channels, significant power gains are achieved by taking advantage of fading diversity of the channel. Using spacetime codes in MIMO systems, a trade-off between spatial multiplexing and diversity order can be achieved [1]. When code division multiple access (CDMA) is combined with MIMO systems (MIMO-CDMA), orthogonal spreading sequences can be used in each transmit antenna in order to allow the receiver to accurately estimate the channel gains which are very crucial in the performance of MIMO systems.
Application of parity bits in selecting the spreading codes in direct-sequence spread spectrum (DS-SS) systems is first introduced in [2]. In spread spectrum systems employing parity bits selected spreading codes (SS-PB), instead of appending the parity bits generated from a linear block encoder, they are used to select a spreading code *Correspondence: alireza.mirzaee@uottawa.ca School of Electrical Engineering and Computer Science, University of Ottawa, 800 King Edward Avenue, Ottawa K1N 6N5, Canada from a set of mutually orthogonal spreading sequences [2]. The extension of this work in MIMO-CDMA systems is discussed in [3], where two main techniques to select spreading waveforms are explained. In a MIMO-CDMA system employing parity bit selected spreading code, the calculated parity bits are used to choose a spreading waveform from a set of mutually orthogonal spreading codes to be used in all transmit antenna during that signaling interval. In contrast, in a system employing permutation spreading, each block of information bits assigns a different permutation of spreading waveforms to transmit antennas.
The impressive performance of turbo (iterative) processing techniques that soon followed the discovery of turbo codes [4] has inspired many researchers to utilize the turbo principle in a variety of ways in the architecture of the receiver. The application of turbo processing in MIMO systems has been discussed in the literature, and turbo processing techniques have been shown to attain a channel capacity close to the Shannon limit [5,6].
More recent works such as [7] have investigated the iterative joint channel estimation and data detection for http://jwcn.eurasipjournals.com/content/2013/1/266 MIMO-CDMA systems. In this paper, we introduce a new turbo receiver for MIMO-CDMA systems that employ parity bit selected and permutation spreading. To be able to use turbo processing in the receiver, a serially concatenated convolutional encoder is used in the transmitter. In this system, the parity bit selected or permutation spreading techniques act as an inner code without allocating any transmit energy to the additional redundancy provided by these techniques. The receiver implements a turbo processing by iteratively exchange soft information on coded bits between a soft-input soft-output (SISO) detector and a SISO decoder. In this system, detection is performed by incorporating the extrinsic information provided by the decoder in the last iteration into the received signal to calculate the likelihood of each detected bits in terms of log likelihood ratios (LLR) which are used as the input for a SISO decoder. In the case of multiple user systems, a turbo multiuser receiver is presented in which multiple access interference (MAI) affecting each user is estimated based on the extrinsic information of all other user in the system. Simulation results presented in this paper show a significant improvement in the performance of MIMO-CDMA systems of both parity bit selected and permutation spreading when a turbo receiver is implemented. Similar iterative detection strategies have been studied for a single carrier as well as multicarrier SS-PB systems in [8] and [9], respectively.
The rest of the paper is organized as follows. Section 2 contains the system model of MIMO-CDMA systems that employ parity bit selected and permutation spreading. The turbo receiver for these systems is described in Section 3, where the SISO detection is explained, and the details are provided for the calculation of LLRs for each detected bit. Turbo multiuser receiver for MIMO-CDMA systems employing parity bit selected and permutation spreading is explained in Section 4. In Section 5, the simulation results for the proposed turbo receiver are presented, and finally, we present our conclusion in Section 6.

System model
Consider a coded MIMO system with N t transmit antennas and N r receive antennas. The block diagram of the transmitter is shown in Figure 1. The binary information stream {d[i]} is convolutionally encoded with code rate R, and after passing through an interleaver, the stream of interleaved coded bits {m[ j]} is converted into N t parallel streams. On the lth signaling interval, the vector of bits to be transmitted by N t transmit antennas is m l = (m l 1 , m l 2 , · · · , m l N t ). Each message vector of m l is used to select a set of spreading waveforms for all N t transmit antennas, W l = {w l 1 (t), w l 2 (t), · · · , w l N t (t)}, from a set of Q mutually orthogonal spreading sequences: {c q (t)}, q = 1, 2, · · · , Q, where w l i (t) is the spreading waveform used to spread the data transmitted by the ith antenna on time interval l. The data bits of all N t transmit antennas are modulated using binary phase shift keying (BPSK) to obtain b l = (b l 1 , b l 2 , · · · , b l N t ). Using the selected set of spreading waveforms, W l , each modulated bit is spread before being transmitted by one of N t transmit antennas.

MIMO-CDMA systems employing parity bit selected spreading
Parity bit selected spreading for CDMA systems is first introduced in [1]. In such systems, unlike the conventional systems, the parity bits of a systematic block code (n, k) are used to select one of a set of 2 (n−k) spreading sequences, where n is the length of message vector, and (n − k) is the number of parity bits. In this way, depending on the coding scheme, all possible message vectors are divided into groups that are spread by the same spreading waveform.
Let M be a set of all M = 2 N t possible message vectors of length N t . We can partition M into Q cosets of M 1 , M 2 , · · · , M Q , where each one has M/Q message vectors. Depending on which coset the message vector m l comes from, a spreading waveform is assigned to all transmit antennas. In other words, if m l ∈ M q , then In this paper, we consider the same system explained in [3], where Q = 8 mutually orthogonal spreading waveforms are used in a system with N t = 4 transmit antennas. In this case, cosets are For example, if m l = (0, 0, 1, 0), all four transmit antennas use c 3 (t) as the spreading waveform.
To be able to determine which spreading code is used in the transmitter, each receive antenna is equipped with Q matched filters, each matched to one of the spreading codes of set {c q (t)}. The output of the qth matched filter of the jth receive antenna on the lth signaling interval is where α l ij is the complex channel gain on the link between transmit antenna i and receive antenna j on lth signaling interval, E b is the averaged received energy per bit, and n l j,q is the sampled noise from the qth matched filter of the jth http://jwcn.eurasipjournals.com/content/2013/  receive antenna which is a zero mean Gaussian random variable with variance N 0 /2.

MIMO-CDMA systems employing permutation spreading
Contrary to the MIMO-CDMA system that employs parity bit selected spreading, in MIMO-CDMA system employing permutation spreading, depending on the coset the message comes from, different permutation of spreading waveforms are assigned to transmit antennas. In this paper, we consider the system discussed in [3] with spreading permutations listed in Table 1. In this system, Q = 8 orthogonal codes are available for a system with N t = 4 transmit antennas. The qth matched filter output of the j receive antenna is In order to optimally determine the spreading waveforms used in the transmitter, the matched filter outputs of all N r receive antennas are observed: z l = (z l 1,1 , · · · , z l j,q , · · · , z l N r ,Q ). Let us define y l (b) as a noise-free matched filter outputs of all N r receive antennas when b l is sent. Then, we can write where n l = (n l 1,1 , · · · , n l j,q , · · · , n l N r ,Q ). For example, for a MIMO-CDMA system with N t = N r = 4 that employs parity bit selected spreading using the cosets of Equation (2), if we consider m l = (0, 0, 1, 0) from coset M 3 , then b l = (−1, −1, +1, −1) and − α l 44 , 0, 0, 0, 0, 0). Likewise, for the system employing permutation spreading shown in Table 1, if the message vector is m l = (0, 0, 0, 0) from coset M 1 , then b l = (−1, −1, −1, −1) and

Table 1 Spreading permutations for MIMO-CDMA systems with four transit antennas
In what follows, for notational simplicity, we drop the signaling interval index l whenever possible.
In both MIMO-CDMA systems that employ parity bit selected or permutation spreading, an additional diversity is achieved by using more spreading waveforms based on the transmitting data. In other words, a sort of space code is created without repeating data on different antennas. More theoretical explanations and performance analysis of such systems are presented in [3].

Turbo receiver
The proposed turbo receiver is shown in Figure 2. It consists of two stages: a SISO detector specifically designed for MIMO-CDMA systems that employ parity bit selected and permutation spreading followed by a SISO channel decoder. These two stages are connected via an interleaver and a deinterleaver. The SISO detector observes the matched filter outputs of all N r antennas and by considering the extrinsic information provided by the SISO channel decoder in the previous iteration, delivers the a posteriori LLR of a transmitted '+1' and a transmitted '−1' for the coded bit in each transmit antenna, Using Bayes' rule, we can rewrite (6) as The second term in (7), denoted by λ p c (b k ), represents the a priori LLR of the coded bit b k calculated by the SISO channel decoder in the previous iteration (as indicated by a superscript p to show the previous iteration). For the first round of detection (i.e., first iteration) when there is no prior information available about the likelihood of coded bits, we assume that all the coded bits can be '+1' or '−1' equiprobably. In other words, λ The first term in (7), denoted by λ d (b k ), represents the extrinsic information provided by the SISO detector about the coded bit of the kth transmit antenna, b k . This extrinsic information is calculated by the SISO detector based on the matched filter outputs, z, the spreading code selection strategy of the MIMO-CDMA system, Figure 2 Proposed turbo receiver. http://jwcn.eurasipjournals.com/content/2013/1/266 and the prior information provided by the SISO channel decoder in the previous iteration about the coded bits other than the transmitted bit of the kth transmit antenna, {λ p c b j , j = k}. This extrinsic information is then passed through a deinterleaver and fed into the SISO channel decoder as a priori information in the next iteration.
By making use of the prior information provided by the SISO detector, λ d (b k ), and also considering the trellis structure of the convolutional code used in the transmitter, the SISO channel decoder calculates the a posteriori LLR of each coded bit, where the a posteriori probabilities are conditioned on the extrinsic information from the SISO detector in the last iteration, {λ , and the coding structure shown by 'code structure' in (8) that represents the trellis structure of the outer convolutional encoder [10].
It can be seen in (8) that the a posteriori LLR c (b k ) is the summation of the prior information λ p d (b k ) and the extrinsic information λ c (b k ), that is, the information gleaned about b k from prior information of other coded bits based on the trellis structure of the channel encoder. The SISO channel decoder also computes the a posteriori LLR of the data bits c (d k ) that is used in the last iteration to make decision about the decoded bits. The extrinsic information delivered in this stage λ c (b k ) is then passed an interleaver and fed back to the SISO detector as the a priori information in the next iteration (i.e., λ p c (b k )). The SISO channel decoder discussed in this paper which provides the a posteriori information for both coded and data bits is based on the algorithm introduced in [10] which is a slight modification of the well-known BCJR algorithm [11]. In what follows, we explain how the SISO detector of a MIMO-CDMA system that employs parity bit selected and permutation spreading uses the matched filter outputs combined with the prior information from the channel decoder in the last iteration to calculate the extrinsic information for each detected bit.
Let us define that includes all the N t coded bit vectors whose kth bit is '+1' . Similarly, B k − is defined as The extrinsic information delivered by the SISO detector λ d (b k ) can be rewritten as where P(b j ) is the probability that the bit transmitted by the jth antenna equals to b j for b j ∈ {+1, −1}. Equation (11) holds true because the received signal is fully represented by the outputs of the filters matched to Q orthogonal spreading sequences. It is also necessary and sufficient to observe the matched filter outputs of all N t transmit antennas to be able to completely extract the extrinsic information of each coded bit.
From (3) and (4), since the noise has a normal distribution and assuming that the receiver has a perfect knowledge about all channel gains, (11) can be rewritten as where is the squared Euclidean distance between the vector of received and noise-free matched filter outputs when b is sent.
The a priori probabilities in (11) can be calculated based on their LLRs λ p c (b k ) as follows [10]: Substituting (14) in (12), we obtain (15) http://jwcn.eurasipjournals.com/content/2013/1/266 By having (15), we can summarize the algorithm of the SISO detector in finding the extrinsic information of each coded bit as follows: • First, B k + and B k − are formed by dividing all the vectors of N t coded bits, b, transmitted by all antennas into the vectors in which the k th antenna transmits '+1' and '−1', respectively.
• Based on whether parity bit selected or permutation spreading technique is used in the transmitter, the expected noise-free matched filter outputs of y (b) are determined for each vector b. • The squared Euclidean distance, d(b) 2 , is calculated for each vector b using (13). The computed extrinsic LLRs λ d (b k ) are then passed through a deinterleaver and fed into the SISO channel decoder as the a priori information. The SISO channel decoder provides the a posteriori LLRs for both coded and decoded (data) bits. The extrinsic LLRs λ c (b k ) at the output of the channel decoder are formed by subtracting the the a priori LLRs λ p d (b k ) from the a posteriori LLRs of the coded bits c (b k ). In the last iteration, a posteriori LLRs of the data bits are used to make decision on data bits, in other words, the estimated data bit,d, is the sign of λ c (d k ) in the last iteration.

Turbo multiuser receiver for MIMO-CDMA systems employing parity bit selected and permutation spreading
All the discussion in this paper so far has been focused on a system with just a single user, where no interference from other users exist. However, one of the major aspects of any CDMA system is the way the interference form other users of the system is handled. In this section, the multiuser scenario of the MIMO-CDMA systems that employ parity bit selected and permutation spreading is discussed, and a turbo multiuser receiver is proposed for such systems. Let us assume an uplink channel of a synchronous MIMO-CDMA system with K users, where each user has N t transmit antennas, and the base station has N r receive antennas. To be able to employ the parity bit selected or permutation spreading techniques, every user is assigned with a set of Q mutually orthogonal spreading sequences.
All the N r receive antennas of the base station are equipped with Q matched filters. Let us define Z (k) as the Q × N r matrix of matched filter outputs of the kth user whose (i, j)th element z (k) i,j is the ith matched filter output of the jth receive antenna. Then, we can rewrite (3) and (4) in a matrix format as where H (k) is the N t × N r channel gain matrix between the kth user's N t transmit antennas and N r base station's receive antennas, N (k) are the matrix of Gaussian noise samples, and the elements of Y (k) is defined as where b (k) j is the kth user's transmitted bit by the jth transmit antenna, w (k) j (t) is the spreading sequence used by the kth user on its jth transmit antennas, and c i (t) is the ith spreading sequence of the set of Q mutually spreading sequences assigned to the kth user. Depending on whether parity bit selected or permutation spreading technique is used, the spreading waveforms used by each transmit antenna is selected.
We can extend (16) to multiuser scenario as where and R is the KQ × KQ matrix of cross-correlation whose (i • j, m • n)th element is the cross-correlation between the ith spreading code of the jth user and the mth spreading code of the nth user. The proposed turbo multiuser receiver is based on iterative soft interference cancellation. Using the extrinsic information provided by the channel decoder for every bit of every user in the previous iteration, MAI caused by all users is estimated and subtracted out from the matched filter outputs.
To be able to estimate MAI in each iteration, we first calculate the estimation of matrix Y (k) using the extrinsic information of the previous iteration. The jth element of the ith row in Y (k) can be estimated as  (k) , that are associated to the qth spreading codes. Since y (k) i,j has a non-zero value only when b (k) ∈ S i , (23) can be rewritten as The probability of vector b (k) , P(b (k) ), is calculated based on the a priori probabilities as where the second equality follows from (14). By substituting (25) into (24), we havẽ where the choice of S i depends on the spreading code selection technique in use. By having the estimated matrix ofỸ (k) , the estimated matrices ofW (k) andW can be consequently calculated as Using the estimated matrix ofW , MAI caused by all users can be estimated and subtracted out from the outputs of the bank of matched filters: whereZ is the matched filter outputs after MAI estimation and subtraction, and I is the KQ ×KQ identity matrix. MatrixZ is considered as the matrix of matched filter outputs to be used in the following iteration.

Simulation results
The simulations are performed for coded MIMO-CDMA systems that employ parity bit selected and permutation spreading. In the transmitter, at first, the data bits are encoded by a 1/2 rate convolutional encoder with the constraint length of 5 and the generators of 23 and 35 in octal notation. The coded bits are randomly interleaved and serial-to-parallel converted such that 4 parallel coded bits are transmitted simultaneously on 4 transmit antennas. Depending on the spreading code selection technique, a message vector of length 4 is used to choose spreading waveforms for transmit antennas. If parity bit selected technique is used, using (2), depending on the coset the message vector comes from, a spreading waveform is selected to be used by all transmit antennas. In the case of MIMO-CDMA system with permutation spreading, the message vector follows Table 1 to select permutation of spreading waveforms for each transmit antenna. The channel is modeled as a slowly-varying, frequencynonselective, Rayleigh fading channel, where the channel gains of different transmit-receive links are uncorrelated. We assume that perfect channel estimation is available at the receiver without a power penalty. We consider MIMO-CDMA systems with four transmit antennas and four or one receive antennas. The bit error rate (BER) performance of the proposed turbo receiver versus average E b /N 0 for MIMO-CDMA systems employing parity bit selected spreading with four transmit antennas and one and four receive antennas along with the conventional coded MIMO-CDMA systems are shown in Figures 3 and 4, respectively. These results show that when parity bit selected spreading is used, the first iteration of the proposed turbo receiver outperforms the conventional coded MIMO-CDMA systems at E b /N 0 of 11 and 5 dB for the systems with four and one receive antennas, respectively. It can be seen that a significant performance improvement is achieved when more iterations are implemented at the receiver. At a BER of 10 −3 , the fourth iteration of the proposed turbo receiver in MIMO-CDMA systems that employ parity bit selected spreading has roughly 3-dB gain over the conventional MIMO-CDMA with both one and four receive antennas.   Figures 5 and 6 present, respectively, the BER performance of the proposed turbo receiver in MIMO-CDMA systems with four transmit antennas and one and four receive antennas when permutation spreading is used. Comparison of the simulation results of systems with parity bit selected and permutation spreading shows that when permutation spreading is used, greater BER performance gain is achieved compared to parity bit selected spreading. This is due to the nature of each spreading code selection technique. In parity bit selected spreading, since all transmit antennas use the same spreading waveform, one decision variable (i.e., matched filter output) per receive antenna contains a signal component which is a sum of all the transmitted signal. This may lead to some interference between the signals transmitted by different antennas, which deteriorates the overall BER performance. In the case of permutation spreading, since in each signaling interval, different spreading waveforms are used by each antenna, there is no interference between the receive signals form each transmit antenna when the channel gains are independent.   In the case of multiple user system, every user is assigned a different set of mutually orthogonal waveforms. The cross-correlation between two waveforms taken from different user sets is not zero. For simplicity, we assume that this cross-correlation between pairs of waveforms from different sets are equal. We use ρ = 0.3 in our simulations. The simulations are performed for the MIMO-CDMA system with K = 4 users, where each user has N t = 4 transmit antennas and the base station is equipped with N r = 1 or 4 receive antennas.
The BER performance of the proposed multiuser receiver for the MIMO-CDMA systems that employ parity bit selected spreading sequences with K = 4 users and N r = 1 and 4 receive antennas are shown in Figures 7  and 8, respectively. Figures 9 and 10 present, respectively, the BER performance of the proposed turbo multiuser receiver for MIMO-CDMA systems with N r = 1 and 4 receive antennas that employ permutation spreading technique. The selection of spreading waveform for each transmit antenna in such systems follows Table 1. The improved BER performance in MIMO-CDMA systems that employ either of two discussed spreading code selection techniques is achieved by creating dependency between the bits carried by different antennas. In other words, the information bits transmitted by a transmit antennas encountering deep fades can still be recovered with high probability because of the relationship between the spreading codes used and the information it carries.
Although we considered frequency-nonselective fading in this paper, the analysis can be extended to the frequency-selective fading case. In [12], the performance of uncoded MIMO-CDMA employing permutation spreading is investigated in frequency-selective fading. It is shown that by using RAKE receivers, there is no significant BER degradation despite loss of orthogonality due to the dispersive nature of the channel. The vector used in the LLR calculations would have length N r × Q × N p , where N p is the number of resolvable paths. This would increase the computational complexity of the  LLR calculation with respect to the nonselective fading case.
Another way to combat frequency-selective fading is to employ multicarrier techniques, where the signal is divided into many narrowband CDMA signals so that the fading experienced by each carrier can be considered flat. For example, in [9], the authors present a Turbo MC-CDMA system employing the parity bit selected spreading technique. The work in [9] can be extended to multicarrier MIMO-CDMA systems employing permutation spreading. Assuming that each carrier is modulated by independent data, then the BER performance of such a system would be identical to the BER performance of the system described in this paper.

Conclusion
In this paper, we have introduced a novel turbo receiver for MIMO-CDMA systems that employ parity bit selected and permutation spreading. An algorithm for the SISO detector in such systems is developed in which the LLRs of each bit are calculated based on the received signal, the a priori information from the previous iteration, and the code structure of the MIMO-CDMA system. The proposed turbo receiver consists of a SISO detector for MIMO-CDMA systems followed by a SISO channel decoder. The Iteration of LLRs between these two components provides a significant performance improvement compared to the conventional coded MIMO-CDMA systems. The BER improvement that resulted from the proposed turbo multiuser receiver can be traded off against additional users in MIMO-CDMA systems that employ parity bit selected and permutation spreading.