Turbo Multiuser Detection in Space-Time Block-Coded Systems
The recently developed space-time coding (STC) techniques [350] integrate the
methods of transmitter diversity and channel coding and provide significant
capacity gains over traditional communication systems in fading wireless
channels. STC has been developed along two major directions: space-time block coding (STBC) and space-time trellis coding (STTC). The common features
of STBC and STTC lie in their realizations of spatial diversity (i.e., both
methods transmit a vector of complex code symbols simultaneously from multiple
transmitter antennas). Their differences, on the other hand, lie in their
realizations of temporal diversity: In STBC, the temporal constraint is
represented in matrix form; whereas in STTC, the temporal constraint is
represented in the form of a trellis tree, which is akin to the trellis-coded
modulation (TCM) code.
From the coding perspective, the single-user performance of
STBC and STTC has been studied in [476, 477], and some code design criteria
have been developed. However, in wireless communication systems, sharing the
limited radio resources among multiple users is inevitable. Indeed, the emerging
wireless systems with multiple transmitter and receiver antennas enable a new
dimension for multiple accessing: space-division multiple access (SDMA) [492], which when
employed with the more conventional TDMA or CDMA techniques, can substantially
increase system capacity. However, if not properly ameliorated, the presence of
multiuser interference can significantly degrade receiver performance as well as
system capacity. Therefore, the development of efficient detection and decoding
techniques for multiuser STC systems (illustrated in Fig. 6.21) is the key to bringing STC techniques into the
practical arena of wireless communications. Research results along this
direction first appeared in [349, 476], where some techniques for
combined array processing, interference cancellation, and space-time decoding
for multiuser STC systems were proposed.
In this and the following sections we discuss turbo receiver
structures for joint detection and decoding in multiuser STC systems, based on
the techniques developed in previous sections. Such iterative receivers and
their variants, which were first developed in [288], are described for both STBC and
STTC systems. During iterations, extrinsic information is computed and exchanged
between a soft multiuser demodulator and a bank of MAP decoders to achieve
successively refined estimates of the users' signals. Further developments of
low-complexity turbo structures for multiuser STTC systems are given in [217].
6.7.1 Multiuser STBC System
The transmitter end of a multiuser STBC system is shown in Fig. 6.22. The information bit stream for
the kth user, {dk[n]}n, is
encoded by a convolutional encoder; the resulting convolutional code-bit stream
{bk[i]}i is then interleaved by a code-bit interleaver.
After interleaving, the interleaved code-bit stream is then fed to an M-PSK modulator, which maps the binary bits into
complex symbols {ck[l]}l, where
, and WC is the M-PSK symbol constellation set (M = |WC|). The symbol stream {ck[l]}l, is
partitioned into blocks, with each block consisting of N symbols. Due to the existence of the interleaver, we
can ignore the temporal constraint induced by the outer convolutional encoder
and assume that the set {ck[l]}l contains independent symbols. Hence, from the
STBC decoder's perspective, we need only consider one block of symbols in the
code symbol stream: the code vector
.
STBC was first proposed in [12] and was later generalized
systematically in [476]. Following [476], the kth user's STBC is defined by a P x N code matrix
, where
N denotes the number of transmitter antennas or
the spatial transmitter diversity order, and
P denotes the number of time slots for
transmitting an STBC code word or the temporal
transmitter diversity order. Each row of
is a
permuted and transformed (i.e., negated and/or conjugated) form of the code
vector ck. An STBC encoder takes as input the code vector
ck and transmits each row of symbols in
at P consecutive time slots. At each time slot,
the symbols contained in an N-dimensional row
vector of
are transmitted through N
transmitter antennas simultaneously.
As a simple example, we consider a particular user employing a
2 x 2 STBC (i.e., P = 2, N = 2). Its code matrix
is defined
by
Equation 6.184
The input to this STBC is the code vector c = [c[1] c[2]]t. During the first time slot, the two symbols in the
first row of
(i.e., c[1] and c[2]) are transmitted simultaneously at the two
transmitter antennas; during the second time slot, the symbols in the second row
of
(i.e., –c[2]* and c[1]*) are transmitted.
We assume a flat-fading channel between each
transmitter–receiver pair. Specifically, denote am,n as the
complex fading gain from the nth transmitter
antenna to the mth receiver antenna, where am,n ~ Nc(0, 1) is assumed to be a zero-mean circularly
symmetric complex Gaussian random variable with unit variance. It is also
assumed that the fading gains remain constant over an entire signal frame, but
they may vary from one frame to another.
In general, we consider an STBC system with K users, each employing N transmitter antennas. At the receiver side, there are
M receiver antennas. In this case, the received
signal can be written as
Equation 6.185
In (6.185),
m = 1,2, ..., M,
consists of the received signal from time slots 1 to P, at the mth receiver
antenna; Hk, k = 1, 2, ...,
K, is the channel response matrix for the kth
user, as explained below;
is the code vector for the kth user; and 
contains the additive Gaussian noise samples from time slots 1 to P at the mth receiver
antenna.
As a simple example, consider a single-user (K = 1) STBC system with two (N = 2) transmitter antennas and M receiver antennas, employing the code matrix g1 in (6.184), the received signal at the mth receiver antenna for this single user can be
written as
Equation 6.186
For notational convenience, we write (6.186) in an alternative form by conjugating rm [1]:
Equation 6.187
We can see that
contains information not only of the
channel response related to the mth receiver
antenna, but also the code constraint of the STBC
. Finally,
by stacking all the rm in (6.187), we obtain
Equation 6.188
The signal model in (6.188) can easily be extended to the general model (6.185) of a K-user P x N STBC
system, in which each user employs the
code defined in [476]. The analogy between this
multiuser STBC signal model and the synchronous CDMA signal model (6.74) is
evident. Note that to effectively suppress the interfering signals in model (6.185), the size of the receiver signal
r should be larger than the number of
symbol to be decoded (i.e., MP
NK).