Space-time code diversity by phase rotation in multi-carrier multi-user systems

Code diversity using space-time block codes was developed for single-carrier and single-receiver systems. In this paper, the extension of code diversity by phase rotation to multi-user and multi-carrier systems is proposed and analyzed. We show that code diversity with reduced feedback is possible in this new scenario and the coding gain has a mild logarithmic decrease with the number of users and the number of sub-carriers. In addition, we develop an analytical upper bound for the average error probability whose accuracy is verified by simulation.


Introduction
There are many ways of exploiting diversity such as spatial diversity [1], multi-user diversity [2], or multipath diversity [3]. A common technique for exploiting spatial diversity is the use of space-time coding which obtains improvements in the reliability of wireless communications over fading channels by correlating signals across different transmit antennas [4]. Moreover, if some channel knowledge is available at the transmitter, much better performance can be attained [5,6]. Besides, it has been shown that maximum likelihood (ML) decoding obtains the best performance, although its complexity becomes prohibitive when the constellation size increases. Sphere decoding [7] can reduce the search space to a lattice in a sphere around the initial estimation. However, the use of simpler decoders is still desirable.
In [8,9], it is shown that some of the quasi-orthogonal space-time block codes (QOSTBC) [8][9][10][11] are actually a family of codes, where each individual code in the family obtains the same characteristics in terms of average performance. Since all of the individual codes in the same family obtain equivalent average performance, it is not important which one is used if we look at this average. However, each of the individual codes within the same family induces a different channel matrix and thus, their instantaneous performance can be very different. For this reason, the authors in [8] introduced the concept of code *Correspondence: vgil@tsc.uc3m.es 1 Department of Signal Theory and Communications, Universidad Carlos III de Madrid, Av. de la Universidad, 30. Leganés, Madrid, Spain Full list of author information is available at the end of the article diversity. Basically, a significant gain can be obtained if we use the adequate code member (within the same family) at each time instant. Moreover, they proved that the gap between the performance obtained with code diversity by using a simple zero-forcing (ZF) decoder and the optimal ML decoder can be reduced, even for meaningful signalto-noise ratio (SNR). There are several mechanisms to obtain code diversity, e.g., space-time coding [8] or phase rotation [9]. However, code diversity was only proposed for single-receiver (authors in [8] proposed code diversity for the multiple access channel (MAC), i.e., with a single-receiver) and single-carrier systems.
In this paper, the code diversity mechanism by phase rotation is extended to broadcast (BC) multi-user scenarios with multiple receivers and multi-carrier systems, keeping the feedback requirements of the same order as for the single-receiver and single-carrier case, i.e., a few bits. We first show that it is possible to obtain coding gain for multi-user and multi-carrier systems in such a scenario with limited feedback. Once this has been proven, we develop the theory extension and an algorithm which avoids the complexity and unfeasibility of exhaustive search while getting close to its performance, constrained to limited feedback requirements. The main contributions of this paper in comparison to [9] are as follows: 1. Our analysis is the extension of the code diversity for the case of multi-user and multi-carrier systems 2. The design of an algorithm that provides very close to the optimum performance (obtained by exhaustive search) avoiding the complexity and unfeasibility of http://jwcn.eurasipjournals.com/content/2013/1/148 exhaustive search. And moreover, with the same feedback data rate as in single-carrier scenario. 3. The application to several space-time block codes (STBC) codes.
The remainder of this paper is organized as follows. In Section 2, the concept of single-receiver, single-carrier code diversity is reviewed. Next, in Section 3, its extension for multi-user and multi-carrier systems is developed, including an algorithm for selecting the best single value for phase rotation that gets close performance to exhaustive search. In addition, also in this section the algorithm is analyzed and an upper bound for the global performance is obtained. After that, Section 4 presents some results for QOSTBC and circulant codes and finally, in Section 5, the main conclusions are drawn.

Notations
Throughout this paper, the following notations will be used: Capital bold-face symbols will be used for matrices, bold-face symbols for vectors and normal-face for scalars. R{H} is the rank of matrix H whereas E i {x} denotes expectation of x with respect to i and || · || F represents the matrix Frobenius norm.

Code diversity
Code diversity by space-time coding with limited-rate feedback and low complexity detection was first introduced in [8]. The constellation rotation was introduced in [11,12] and it has been extensively analyzed for MAC in [13,14]. The use of channel rotation was firstly proposed in [8]. A phase rotation mechanism to introduce code diversity was later proposed in [9]. Basically, the underlaying idea is that some of the well-known quasiorthogonal space-time block codes are actually a family of codes where each individual code within the family exhibits the same characteristics with respect to average capacity and performance.
Let X ∈ C N t ×T be a space-time block codeword, where the rows are indexed by transmit antennas (N t ) and the columns are indexed by time slots (T). If L distinct symbols are transmitted during one frame of T symbol periods, then the transmission rate for the space-time block code is L/T. In a system with N t transmit antennas and N r receive antennas, the received signalR ∈ C N r ×T is [ where H ∈ C N r ×N t is the channel matrix with entry h j,i representing the channel gain between the ith transmit antenna, and the jth receive antenna;W ∈ C N r ×T is the normalized additive white Gaussian noise (AWGN) matrix with zero mean and unit variance entries; N 0 is the current noise variance; and E s is the average transmitted signal power. In many of the algebraic constructions of space-time codes, such as golden code [15], silver codes [16], or many others [17][18][19], an important feature is the exchangeability of the structure (correlation) of the transmitter with the structure of the receiver. By using this correlation, Equation 1 can be rewritten as where r ∈ C N r T×1 is the received signal vector, H ∈ C N r T×L is the induced channel matrix, c ∈ C L×1 is the transmitted signal vector, and w ∈ C N r T×1 is the AWGN vector. In the absence of noise, the ML estimate for the transmitted symbols c is unique since the induced channel matrix H is full rank, i.e., R(H) = L. However, when this matrix is close to the rank deficient, decoding becomes unstable. Moreover, as shown in [20,21], the instantaneous performance with simple ZF receivers converges to the optimum ML receivers only in the high SNR regime, while it is quite distant for low SNR due mainly to the noise enhancement in ZF receivers caused by rank deficient channels (especially for deep fades). Since this code diversity a is able to avoid a rank deficient matrix, similar performance of ZF receivers compared to ML can be expected even for SNR that is not so high.
In order to avoid a rank deficient-induced channel matrix, in [9], it is proposed that the phase of the channel gains be modified as i.e., the phase of the ith antenna is rotated by i -an arbitrary value from the interval [ 0, 2π), although for limiting the feedback rate and simplicity, it is usually drawn from a small discrete set of phases. It has been shown in [9] that for a specific QOSTBC code, modifications in these phases do not affect the average capacity achieved by the code and obtain the same average performance. Indeed, these phase modifications form the family of codes for such a QOSTBC. Also in [9], it has been shown that the modification of only one phase at one of the antennas is more than enough to get a good performance. Moreover, the number of phases (K) required to obtain significant improvements in performance is small (just K = 4 phases are enough). Since each phase will induce a different channel matrix, at every time instant, it will be possible to find a phase (code) performing better than the others; thus, there exists code diversity. In [9], the following algorithm is proposed. At the receiver and after channel estimation, the K-induced matrices are calculated and the code giving the best performance is sought. The best phase (code) is chosen according to the following criteria: http://jwcn.eurasipjournals.com/content/2013/1/148 The phases to be used are taken from 2πk K , and thus, the receiver feeds back the indexk that This way, only log 2 (K) bits are enough to improve the performance. It should be remarked that this phase rotation mechanism is only one way of obtaining code diversity. For example, in [8], code diversity relays on the quaternionic design and its goal is the minimization of the co-channel interference in the multiple access channel.

Multi-user and multi-carrier code diversity
The trivial extension of this theory to multi-carrier systems is to perform the computation ofk for each subcarrier and thus, the transmitter would use a different phase (code) for each sub-carrier n, i.e.,k n . However, the required feedback would be N × log 2 (K), where N is the number of sub-carriers. This is not practical. Moreover, there would be several sub-carriers with the same phase. This issue leads to the possibility of compressing the feedback information. However, this way, the complexity would increase and in any case, the amount of feedback data would still be high. Instead of trying to compress the feedback information, it can be useful to find a phase (code) that is good enough for all the sub-carriers. It might not be the best one for a particular sub-carrier, but the best one for average performance of the whole set of sub-carriers. Furthermore, in case of BC where multiple users are receiving information, there is no trivial extension because the good code for one receiver may be very bad for the others; so it would be interesting to know if there is a code that is reasonably good at the same time for all the subcarriers and all the users in this scenario, and, if any, how to calculate or select it. An example of that scenario could be a multi-hop relay-based network, where all the relays need to receive the transmitted signal in order to forward to destination.
In order to check this possibility, an exhaustive search has been carried out as explained in the following. A system with N sub-carriers, N u users and N t transmit antennas has been set up. We have used the QOSTBC code proposed by Jafarkani et al. [10] -applied to a multicarrier system though -and we have modified the phase of the first antenna as indicated in [9]. The transmitter uses all the K different codes to send the information to the N u receivers, using the same phase (code) in all the subcarriers at one time. At each of the N u receivers, the bit error rate (BER) performance is calculated for each code (phase) at each sub-carrier. Next, the average BER across the sub-carriers and the N u users are computed. Then, for each time interval, the best average BER performance is stored for final results, i.e., like at each time interval, the optimum code has been used. In Figure 1, obtained with http://jwcn.eurasipjournals.com/content/2013/1/148 N = 256 and a SUI-3 channel profile [22], these results are shown. The first curve is the average performance of the original QOSTBC code across the sub-carriers and users. The other curves represent the average performance over time and across users and sub-carriers when transmitting each time by using the best code (obtained by exhaustive search) for different numbers of users. It should be noted that the same code (phase) is applied for all the subcarriers and that all the users demodulate the signal. Since in the figure the average performance of over all users and sub-carriers is shown when the transmitter uses the best instantaneous performance-achieving code, it can be seen that there is a particular code at each time that gives the best average performance for the set of sub-carriers and users; thus, the code diversity can be extended to multi-carrier and multi-user systems with reduced feedback (one unique code is enough for all sub-carriers and all users). Otherwise, if a particular instantaneous best code would not exist, the average global performance would be equal or worse than the STBC curve. Besides, it can also be observed that the code diversity decreases with the number of users. The reason is that as the number of users increases, so does the number of different channel coefficients. Therefore, it becomes very difficult to find a code that shows gain for all the users at the same time. Moreover, also in this figure, the coding gain for a single user can be evaluated. In this case, a high coding gain can be observed in the multi-carrier system which makes it interesting for use in realistic scenarios.
As it has just been shown on previous figure, at each instant time, there is a code which provides good performance averaged over all users and sub-carriers. For this reason, since an exhaustive search is not possible for a practical implementation, alternatives have to be found.

Signal model for broadcast channel
In the broadcast channel, the received signal by the uth user at the nth sub-carrier can be written as where H u,n ∈ C N r ×N t are the induced channel matrix by uth user at sub-carrier n, c n ∈ C N t ×N r is the desired data to be transmitted and w n u ∈ C N t ×N r is the noise.
For clarity reasons and without loss of generalization, in the following, we are assuming only one antenna at the receiver, i.e., N r = 1.
Two important remarks should be highlighted in this model in Equation 5. First, as in BC channel, the desired data c n are common to all users from the transmitter (base station). Second, although channel coefficients in H u,n are different from user to user and (likely) sub-carrier to subcarrier, the phase rotation introduced is the same for all users and sub-carriers b .
As an example, for the 4 × 1 QOSTBC codes introduced by Jafarkani [10], the originally induced channel matrix for user u and nth sub-carrier will be As mentioned before and in [9], by only modifying the phase of one antenna is enough. Besides, as indicated above, the idea is to apply the same phase rotation to all the sub-carriers and for all the users, thus, the induced channel matrix becomes the following: where K is the total number of rotations (that implies a feedback of log 2 K bits per user), and φ is the specific code number (φ ∈ {1 · · · K}).

Proposed algorithm
In order to obtain coding gain close to the one obtained in Figure 1 with reduced feedback per user and without resorting to exhaustive search, we propose the following algorithm to obtain φ: 1. Each user (u) estimates the channel for coherent demodulation. With these estimates, it also calculates the product p φ,n i,u is the i th eigenvalue of matrix H H u,n,φ H u,n,φ for uth user, for all sub-carriers (n = 1 · · · N,) and all codes (φ = 1 · · · K). 2. Each user finds m u = min n min φ p φ,n u and φ u = arg min n min φ p φ,n u . 3. Each user feeds back the scalar m u and φ u to the transmitter. 4. The transmitter selects the code to be used as φ * = arg max u m u 5. The transmitter broadcasts that the code φ * will be used, so that all the receivers can adequate reception for the signal. 6. The code will be used until another user obtains larger m u than selected.
The idea of maximizing the minimum eigenvalues' product p φ,n u is due to the fact that the coding gain of a STBC or QOSTBC is determined by this product [4]. Since the performance measurement is the BER and it follows an erfc function which is dominated by the worst http://jwcn.eurasipjournals.com/content/2013/1/148 case, the code that maximizes the minimum coding gain obtains the best global performance because the maximum error is bounded and minimized. With the proposed algorithm, code diversity can be obtained with only a few bits of feedback per user. Besides here, the SNR is not needed to be estimated, as opposed to [8].
Also, other alternatives have been evaluated, such as The reason why these other alternatives offer worse global performance is the following. The first case, maxmax guarantees the best performance for one user and sub-carrier but does not impose anything to the worst case, and exactly the one which dominates the global performance. Similar situation occurs in the max-mean and max-sum, where the maximization is carried out over all the sub-carriers (mean and sum, respectively), and thus, the worst case is eliminated for the decision. The min-max rule obtains the worst global performance (see Figure 2) because first, the worst user is ignored and second, in addition, there is a minimization on the best possible candidate. In Figure 2, all these results can be observed using these different criteria or rules for choosing the best code. It can be seen in this figure that the best choice is our proposed criterion, and furthermore, it is close to the exhaustive search approach.

Analysis of the error probability
For single-user and single-carrier systems and restricting ourselves for simplicity to systems with multiple transmit antennas but a single receive antenna, i.e., N r = 1, assuming perfect channel state information at the receiver -with Equation 2 -the conditional probability is bounded by This upper bound can be approximated by [9]  Extending this analysis to the multi-user and multicarrier system using the algorithm above, we find that the  average performance over the users and across the subcarriers involves averaging over N u and N uncorrelated i.i.d random variables, i.e., the product of the eigenvalues of the code induced by the channel, which is different for every of the N u receivers and each of the N sub-carriers. Since our algorithm selects the maximum, according to [23], it is given by log 2 (N + 1) × log 2 (N u + 1) times the expectation of the i.i.d process. Besides, our algorithm maximizes the minimum single-user code performance and, therefore, it comes to the compensation of transmitter diversity by the multiple-receiver diversity. Thus, it gives where F P e|H H involves the maximization of the eigenvalues' product for different users and the minimization of eigenvalues' product for all the sub-carriers within the same user. From this equation, several observations can be extracted. Code diversity performance shifts to the right on SNR with the increase in the number of sub-carriers and/or number of users following a logarithmic decay. Besides, the diversity due to the different transmit antennas vanishes because the number of transmit antennas is much smaller than N × N u .

Application to quasi-orthogonal space-time codes
As an application of the above analysis, we propose the use of the QOSTBC introduced by Jafarkani [10] in a system with N t = 4 and N r = 1 so that which induces a channel matrix As mentioned before and in [9], only by the rotation of one antenna is enough for obtaining code diversity. Thus, we can introduce the phase rotation in transmit antenna 1 which yields the following general induced matrix for each code where K is the total number of rotations (in our examples K = 4 that implies a feedback of 2 bits per user), and φ is the specific code number (φ ∈ {1, 2, 3, 4} in our example). Applying our algorithm, all the sub-carriers will use the same code for the transmission to all the users. Therefore, for each user and for each sub-carrier, we will have , and hence the eigenvalues of this matrix become { 1 , 2 , 1 , 2 }, with 1 = a − b and 2 = a + b.
Thus, the product is is well known that a distributes as a non-central χ 2 with four degrees of freedom [24]. Regarding b, it is composed by the substraction of two double Gaussian distributions (due to the product of two Gaussian random variables) [25], with the same parameter (channel coefficients are assumed to have the same distributions). Thus, this new random variable distributes as Gaussian. Thus, it yields to 1 and 2 which are distributed as non-central χ 2 , also with four degrees of freedom with non-centrality parameter where μ i are the averages of the channel frequency response h i for each of the transmit antennas (N t = 4 with Gaussian distribution), and σ i are the standard deviations for these h i . The product of two χ 2 distributions involves the gamma function [26] whose square approximately exhibits an exponential probability density function. In our case where

Application to circulant codes
Another application is the circulant codes [19] based on circulant matrices that exhibit similar performance to other more complex codes but with less complexity. For the case of a 3 × 3 code, with matrix with β 1 = exp 2πi 5 and β 2 = exp 2πi 7 . Thus, after applying the proposed algorithm, each sub-carrier and each user will have the product After some mathematical manipulation, the eigenvalues are 1 Due to the scale parameters β 1 and β 2 , c distributes as a gamma distribution with scale (θ) and shape (s) parameters being θ = max h i /3 and s = 3.5. On the other hand, the real part of d distributes as a standard Gumbel distribution, i.e., location μ ≈ 0 and scale ξ ≈ 1; whereas the imaginary part distributes as a Cauchy distribution with location l = E{h i } ≈ 0 and scale γ = 0.5. Thus, the distribution for the eigenvalues are the following. For 1 , a non-central χ 2 distribution with 2 degrees of freedom and non-centrality parameter of max h i [24]; 2 and 3 distribute as gamma function with parameters scale θ 2 = 3 i=1 σ i and θ 3 = 1; and shape s 1 = 3 i=1 σ i and s 2 = 1, respectively.
Finally, the product approximately exhibits, as in the QOSTC case, an exponential distribution, this time

Numerical results
The following numerical results illustrate the performance that can be achieved with the proposed approach in an orthogonal frequency division multiplexing (OFDM) 16 18 system. The number of sub-carriers has been fixed to N = 64 and N = 256. One hundred thousand OFDM symbols with QPSK modulation for QOSTBC and circulant codes have been simulated to average results. The channel was the SUI-3 model [22].
In Figure 3, the obtained average BER over N u users and across the N sub-carriers by using our proposed algorithm for QOSTBC is plotted jointly with the average BER with exhaustive search from Figure 1 for comparison purposes. It can be observed that our proposed algorithm gets close in performance to the one obtained with exhaustive search, with very reduced feedback and without a lengthy and unfeasible exhaustive search. The most important conclusion from Figure 3 is that the average performance gain due to the code diversity decreases with the logarithm of the number of users (as anticipated in the previous section), which, first, corroborates the analysis and second, allows the usefulness of the scheme in practical scenarios, because with a linear decrease, the advantages of code diversity would disappear with a few users, which is not the case and would not be useful. However, the logarithmic dependence ensures that, even with a large number of users (N u = 32), the code diversity gain significantly offsets the multiuser penalty factor. The dependence with the number of sub-carriers is also logarithmic, which is again positive. In addition, as was already mentioned, the ZF decoder obtains almost the same performance as more complex decoders such as ML (the BER of ML decoding for the case of 32 users is also plotted as an illustrative example).
In Figure 4, the obtained average BER over N u users and across the N sub-carriers by using our proposed algorithm with QOSTC and circulant code is compared to the analytical upper bound expression developed here. It can be observed that this upper bound is accurate enough to describe the performance.

Conclusions
In this paper, the extension of the code diversity theory by phase rotation from single-user and single-carrier to multi-user and multi-carrier systems is presented and analyzed.
We have shown that code diversity can be achieved in a multi-carrier and multi-user scenario, resorting to the use of a single code on each transmission interval. We further developed a max-min algorithm that achieves close diversity performance as optimum search while requiring reduced feedback. The proposed algorithm obtains a trade-off among complexity, reduced feedback requirements, and performance, which makes it suitable for practical implementation. Also, the performance gain decreases logarithmically with the number of users and sub-carriers, which is a desirable property since it allows some code diversity even for a moderate to high number of users or/and sub-carriers (it has been shown that for 32 users and 256 sub-carriers, the performance gain due