Sunteți pe pagina 1din 48

1.

1 Introduction
Code Division Multiple Access (CDMA) and multiple input multiple output- (MIMO)
CDMA systems suffer from multiple access interference (MAI) which limits the spectral
efficiency of these systems. By making these systems more power efficient, we can increase the
overall spectral efficiency. This can be achieved through the use of improved modulation and
coding techniques. Conventional MIMO-CDMA systems use fixed spreading code assignments.
By strategically selecting the spreading codes as a function of the data to be transmitted, we can
achieve coding gain and introduce additional degrees of freedom in the decision variables at the
output of the matched filters. In this paper, we examine the bit error rate performance of parity
bit-selected spreading and permutation spreading under different wireless channel conditions. A
suboptimal detection technique based on maximum likelihood detection is proposed for these
systems operating in frequency selective channels. Simulation results demonstrate that these
code assignment techniques provide an improvement in performance in terms of bit error rate
(BER) while providing increased spectral efficiency compared to the conventional system.
Moreover, the proposed strategies are more robust to channel estimation errors as well as spatial
correlation.
In wireless communication system, Multiple Input Multiple Output (MIMO) refers to links
for which the transmitting as well as the receiving end is equipped with multiple antenna
elements. The transmit antennas on one end and the receive antenna on the other end are jointly
combined in such a way that can the quality (bit error rate) or the rate (Bit/sec) of the
communication is improved. This project is important because a new technique can be produced
which is MIMO-CDMA system that can improve the performance of wireless links.
This project analyzes the performance of MIMO-CDMA with comparison to conventional
Code Division Multiple Access (CDMA) system.MIMO refers to wireless link with multiple
antennas at the transmitter and receiver side. Given multiple antennas, the spatial dimension can
be exploited to improve the performance of the wireless link. The performance is often measured
as the average bit rate (bit/s) the wireless link can provide or the average bit error rate (BER).
1
1.2 Problem Statement
Today, communication system requires high capacity and faster data transmission with
minimum error and losses. The capacity will become congested in future. Therefore, the system
needs new technique so that can accommodate this insufficiency.MIMO is one of the techniques
that can provide promising approaches.
1.3Objective of Project
The objective of the project is to develop the simulation model for conventional CDMA and
MIMO-CDMA by using MATLAB 7.1 software with Simulink and Communications Block set.
Besides that, the project also analyzes the performance of conventional Code Division Multiple
Access (CDMA) system and MIMO-CDMA system. Finally, this project compares the
performance of MIMO-CDMA system with conventional CDMA system.
1.4 Scope of Work
The scope of this project are to analyze the performance of conventional CDMA and
MIMO-CDMA system measured in average bit error rate (BER) and capacity. The simulation
models are simulated with different number of antennas which are two transmit-two
receive(2Tx2Rx) and four transmit-four receive(4Tx4Rx).The simulation model will be done by
using MATLAB software. The comparision between conventional CDMA system and MIMO-
CDMA are done.
2
2.1 Introduction
Code division Multiple Access, a digital cellular technology that uses spread-spectrum
techniques. Unlike competing systems, such as GSM, that use TDMA, CDMA does not assign a
specific frequency to each user. Instead, every channel uses the full available spectrum.
Individual conversations are encoded with a pseudo-random digital sequence. CDMA
consistently provides better capacity for voice and data communications than other commercial
mobile technologies, allowing more subscribers to connect at any given time, and it is the
common platform on which 3G technologies are built.
CDMA is a military technology first used during World War II by English allies to foil
German attempts at jamming transmissions. The allies decided to transmit over several
frequencies, instead of one, making it difficult for the Germans to pick up the complete signal.
Because Qualcomm created communications chips for CDMA technology, it was privy to the
classified information. Once the information became public, Qualcomm claimed patents on the
technology and became the first to commercialize it.
For radio systems there are two resources, frequency and time. Division by frequency, so
that each pair of communicators is allocated part of the spectrum for all of the time, results in
Frequency Division Multiple Access (FDMA). Division by time, so that each pair of
communicators is allocated all (or at least a large part) of the spectrum for part of the time results
in Time Division Multiple Access (TDMA). In Code Division Multiple Access (CDMA), every
communicator will be allocated the entire spectrum all of the time. CDMA uses codes to identify
connections.
2.1.1 Coding
CDMA uses unique spreading codes to spread the baseband data before transmission.
The signal is transmitted in a channel, which is below noise level. The receiver then uses a
correlator to dispread the wanted signal, which is passed through a narrow bandpass filter.
Unwanted signals will not be dispread and will not pass through the filter. Codes take the form of
a carefully designed one/zero sequence produced at a much higher rate than that of the baseband
3
data. The rate of a spreading code is referred to as chip rate rather than bit rate.
See coding process page for more details.
Figure 2.1 Multiple Access Schemes
Multiple access schemes are used to allow many mobile users to share simultaneously a common
bandwidth. There are three main types of multiple access system, each of which has its own way
of sharing the bandwidth such as Frequency Division Multiple Access(FDMA),Time Division
Multiple Access (TDMA) and Code Division Multiple Access(CDMA).FDMA and TDMA are
narrowband technologies while CDMA is wideband.
4
2.1.2 Codes
CDMA codes are not required to provide call security, but create a uniqueness to enable
call identification. Codes should not correlate to other codes or time shifted version of itself.
Spreading codes are noise like pseudo-random codes, channel codes are designed for maximum
separation from each other and cell identification codes are balanced not to correlate to other
codes of itself.
Figure 2.2 CDMA spreading
With CDMA, unique digital codes, rather than separate RF frequencies or channels, are
used to differentiate subscribers. The codes are shared by both the mobile station (cellular phone)
and the base station, and are called pseudo Random Code Sequences. All users share the same
range of radio spectrum. For cellular telephony, CDMA is a digital multiple access technique
specified by the Telecommunications Industry Association (TIA) as IS-95.
5
Figure 2.3 Example OVSF codes, used in channel coding
2.2 The Spreading Process
WCDMA uses Direct Sequence spreading, where spreading process is done by directly
combining the baseband information to high chip rate binary code. The Spreading Factor is the
ratio of the chips (UMTS = 3.84Mchips/s) to baseband information rate. Spreading factors vary
from 4 to 512 in FDD UMTS. Spreading process gain can in expressed in dBs (Spreading factor
128 = 21dB gain).
Figure 2.4 CDMA spreading
6
2.2.1 Power Control
CDMA is interference limited multiple access system. Because all users transmit on the
same frequency, internal interference generated by the system is the most significant factor in
determining system capacity and call quality. The transmit power for each user must be reduced
to limit interference, however, the power should be enough to maintain the required Eb/No
(signal to noise ratio) for a satisfactory call quality. Maximum capacity is achieved when Eb/No
of every user is at the minimum level needed for the acceptable channel performance. As the MS
moves around, the RF environment continuously changes due to fast and slow fading, external
interference, shadowing, and other factors. The aim of the dynamic power control is to limit
transmitted power on both the links while maintaining link quality under all conditions.
Additional advantages are longer mobile battery life and longer life span of BTS power
amplifiers.
2.2.2 Handover
Handover occurs when a call has to be passed from one cell to another as the user moves
between cells. In a traditional "hard" handover, the connection to the current cell is broken, and
then the connection to the new cell is made. This is known as a "break-before-make" handover.
Since all cells in CDMA use the same frequency, it is possible to make the connection to the new
cell before leaving the current cell. This is known as a "make-before-break" or "soft" handover.
Soft handovers require less power, which reduces interference and increases capacity. Mobile
can be connected to more that two BTS the handover. "Softer" handover is a special case of soft
handover where the radio links that are added and removed belong to the same Node B.
7
Figure 2.5 CDMA soft handover
2.3 Multipath and Rake Receivers
One of the main advantages of CDMA systems is the capability of using signals that
arrive in the receivers with different time delays. This phenomenon is called multipath. FDMA
and TDMA, which are narrow band systems, cannot discriminate between the multipath arrivals,
and resort to equalization to mitigate the negative effects of multipath. Due to its wide bandwidth
and rake receivers, CDMA uses the multipath signals and combines them to make an even
stronger signal at the receivers. CDMA subscriber units use rake receivers. This is essentially a
set of several receivers. One of the receivers (fingers) constantly searches for different multipaths
and feeds the information to the other three fingers. Each finger then demodulates the signal
corresponding to a strong multipath. The results are then combined together to make the signal
stronger.
The receiver performs the following steps to extract the Information:

Demodulation
Code acquisition and lock
Correlation of code with signal
Decoding of Information data
8
2.3.1 Multiple-Input/Multiple-Output (MIMO)
Multiple Input, Multiple Output (MIMO) technology is a wireless technology that uses
multiple transmitters and receivers to transfer more data at the same time (Figure 2.3.1). MIMO
technology takes advantage of a radio-wave phenomenon called multipath where transmitted
information bounces off walls, ceilings, and other objects, reaching the receiving antenna
multiple times via different angles and at slightly different times.
Figure 2.6 MIMO Technology Uses Multiple Radios to Transfer More Data at the Same Time
MIMO technology leverages multipath behavior by using multiple, smart transmitters
and receivers with an added spatial dimension to dramatically increase performance and range.
MIMO allows multiple antennas to send and receive multiple spatial streams at the same time.
This allows antennas to transmit and receive simultaneously.
MIMO makes antennas work smarter by enabling them to combine data streams arriving
from different paths and at different times to effectively increase receiver signal-capturing
power. Smart antennas use spatial diversity technology, which puts surplus antennas to good use.
If there are more antennas than spatial streams, as in a 2x3 (two transmitting, three
receiving) antenna configuration, then the third antenna can add receiver diversity and increase
range.
In order to implement MIMO, either the station (mobile device) or the access point (AP)
need to support MIMO. Optimal performance and range can only be obtained when both the
station and the AP support MIMO.
9
Legacy wireless devices cant take advantage of multipath because they use a Single
Input, Single Output (SISO) technology. Systems that use SISO can only send or receive a single
spatial stream at one time.
MIMO (multiple input, multiple output) is an antenna technology for wireless
communications in which multiple antennas are used at both the source (transmitter) and the
destination (receiver). The antennas at each end of the communications circuit are combined to
minimize errors and optimize data speed. MIMO is one of several forms of smart antenna
technology, the others being MISO (multiple input, single output) and SIMO.
In conventional wireless communications, a single antenna is used at the source, and
another single antenna is used at the destination. In some cases, this gives rise to problems with
multipath effects. When an electromagnetic field (EM field) is met with obstructions such as
hills, canyons, buildings, and utility wires, the wavefronts are scattered, and thus they take many
paths to reach the destination. The late arrival of scattered portions of the signal causes problems
such as fading, cut-out (cliff effect), and intermittent reception (picket fencing). In digital
communications systems such as wireless Internet, it can cause a reduction in data speed and an
increase in the number of errors. The use of two or more antennas, along with the transmission of
multiple signals (one for each antenna) at the source and the destination, eliminates the trouble
caused by multipath wave propagation, and can even take advantage of this effect.
MIMO technology has aroused interest because of its possible applications in digital
television (DTV), wireless local area networks (WLANs), metropolitan area networks (MANs),
and mobile communications.
2.3.2 Forms of MIMO
Multi-antenna MIMO (or Single user MIMO) technology has been mainly developed and is
implemented in some standards, e.g. 802.11n products.
SISO/SIMO/MISO are degenerate cases of MIMO
o Multiple-input and single-output (MISO) is a degenerate case when the receiver
has a single antenna.
10
o Single-input and multiple-output (SIMO) is a degenerate case when the
transmitter has a single antenna.
o Single input single output(SISO) is a radio system where neither the transmitter
nor receiver have multiple antenna.
Principal single-user MIMO techniques
o Bell laboratories layered space time(BLLST) Gerard. J. Foschini (1996)
o Per Antenna Rate Control (PARC), Varanasi, Guess (1998), Chung, Huang,
Lozano (2001)
o Selective Per Antenna Rate Control (SPARC), Ericsson (2004)
Some limitations
o The physical antenna spacing are selected to be large; multiple wavelengths at the
base station. The antenna separation at the receiver is heavily space constrained in
hand sets, though advanced antenna design and algorithm techniques are under
discussion.
2.4 Functions of MIMO
Precoding is multi-stream beam forming, in the narrowest definition. In more general
terms, it is considered to be all spatial processing that occurs at the transmitter. In (single-layer)
beam forming, the same signal is emitted from each of the transmit antennas with appropriate
phase (and sometimes gain) weighting such that the signal power is maximized at the receiver
input. The benefits of beam forming are to increase the received signal gain, by making signals
emitted from different antennas add up constructively, and to reduce the multipath fading effect.
In the absence of scattering, beam forming results in a well defined directional pattern, but in
typical cellular conventional beams are not a good analogy. When the receiver has multiple
antennas, the transmit beam forming cannot simultaneously maximize the signal level at all of
the receive antennas, and precoding with multiple streams is used. Note that precoding requires
knowledge of channel state information (CSI) at the transmitter.
11
Spatial multiplexing requires MIMO antenna configuration. In spatial multiplexing, a
high rate signal is split into multiple lower rate streams and each stream is transmitted from a
different transmit antenna in the same frequency channel. If these signals arrive at the receiver
antenna array with sufficiently different spatial signatures, the receiver can separate these
streams into (almost) parallel channels. Spatial multiplexing is a very powerful technique for
increasing channel capacity at higher signal-to-noise ratios (SNR). The maximum number of
spatial streams is limited by the lesser in the number of antennas at the transmitter or receiver.
Spatial multiplexing can be used with or without transmit channel knowledge. Spatial
multiplexing can also be used for simultaneous transmission to multiple receivers, known as
space-division multiple access. By scheduling receivers with different spatial signatures, good
separability can be assured.
Diversity Coding techniques are used when there is no channel knowledge at the
transmitter. In diversity methods, a single stream (unlike multiple streams in spatial
multiplexing) is transmitted, but the signal is coded using techniques called space-time coding.
The signal is emitted from each of the transmit antennas with full or near orthogonal coding.
Diversity coding exploits the independent fading in the multiple antenna links to enhance signal
diversity. Because there is no channel knowledge, there is no beam forming or array gain from
diversity coding.
Spatial multiplexing can also be combined with precoding when the channel is known at
the transmitter or combined with diversity coding when decoding reliability is in trade-off.
2.5 MIMO-CDMA
Consider the K user MIMO-CDMA uplink system model, employing Binary Phase Shift
Keying (BPSK) modulation. The data of each user is spatially multiplexed into N
t
transmitting
antennas. The substream to be transmitted on antenna i of user k on time interval n is spread by a
spreading code vector w
ki
(n)
. The spreading code vector is of dimension N
c
x 1:
( )
[ ]
T
N
n
i k
n
i k
n
i k
n
i k
w )
0
(
) (
,
),...... 2 (
) (
,
), 1 (
) (
, ,

(2.1)
12
where N
c
is the spreading factor and the subscript T represents the transpose operator.N
c
= T
s
/ T
c
is an integer number where T
s
is the symbol period and T
c
is the chip period. The spreading code
vector is selected from a set of N spreading vectors
{ }
k
C
N k
c
k
c
k
c
,
,.........
2 ,
,
, , 1 ,
(2.2)
The wireless media is considered to be a slowly-varying discrete-time baseband channel
model with chip-spaced channel taps. Thus, assuming the same channel order L for all single
input single output (SISO) channels, the sampled channel response from the transmit antenna i to
the receive antenna j of user k is given by the L1 vector:
( ) ( ) ( )
[ ]
T
L
k i j
h
k i j
h
k i j
h
k i j
h
1
, ,
,.......
1
, ,
,
0
, , , ,

(2.3)
To keep the model simple, we assume that the maximum channel delay is smaller than
the signaling interval. In case of frequency selective channels, MIMO-CDMA systems suffer
from intersymbol interference (ISI) and multiple access interference (MAI). Since, we are
interested in single user detection; the received signal at antenna j can be written as:
( ) ( ) ( ) ( )

+
t
N
i
n
j
n
n
i k
b
k i j
h
n
i k
S
n
j
r
1
, , , ,
(2.4)
b
k,i
(n)
is the transmitted data by antenna i of user k at instant n
j
(n)
encompasses the complex
Gaussian noise with variance
2
, the ISI and MAI,for the conventional, the parity bit selected
spreading and permutation spreading MIMO-CDMA systems will rely on correlators matched to
the different N spreading codes used by the transmitter.
In conventional MIMO-CDMA, each user can use the same spreading code for all
transmitting antennas or a different spreading code for each transmitting antenna. In our case, we
use the latter. Hence, w
k,i
(n)
=c
k,i.
For each transmit antenna, we apply a correlator matched to the
signature used by the transmitting antenna. The output of the correlator matched to the transmit
antenna i of user k using the received signal at receiving antenna j is an L1 vector:
13
( ) ( )
( )
( ) n
j
r
H
n
i k
S
n
k i j
y
, , ,

(2.5)
The subscript H represents the conjugate transpose of a matrix. The receiver than estimates b
i,k
(n)
from the decision variable of the previous equation as follows:
( )
( )
( )

,
_

n
k i j
y
H
r
N
j
k i j
h
n
k i
b
, ,
1
, ,
sgn
,

(2.6)
2.5.1 Parity Bit-Selected Spreading System
In parity bit selected spreading, the data on different antennas is spread by a single
spreading waveform that is selected based on the parity bits that are generated when a message is
encoded using a systematic linear block code . For each user with Nt transmit antennas, the set M
of all possible message vectors has 2Nt different elements. The different messages that produce
the all zero parity vector form subset of M that is closed under modulo-2 addition. We denote
this subset as M1. If we select an element e M such that e M1 and add modulo-2 to all
elements in M1, the resulting set is called a coset of M1. Messages from distinct cosets of M1
produce unique parity bit vectors when being input to the parity bit calculator. In parity bit-
selected spreading, each of the cosets is assigned one of the N spreading codes. For example, if
user k has 4 transmitting antennas, the set M has 16 elements. If each user is assigned N = 8
spreading codes, then we can partition M into 8 cosets as follows: M1 = {0000, 1111}, M2 =
{0001, 1110}, . . ., and M8 = {0111, 1000}. Each of these cosets is assigned one of the N
spreading waveforms; therefore if the word to be transmitted is m
(m)
M
m
, then all transmitting
antennas will use the spreading code assigned to coset M
m
. The same spreading code is used on
each transmit antenna. Hence
m k
c
n
t
N k
w
n
k
w
,
) (
,
.......
) (
1 ,

.
In this paper, we consider a MIMO-CDMA system employing Nt = 4 transmit antennas.
In each case, we choose N = 2Nt1; therefore all cosets are made up of 2 message vectors. This
is not necessarily the optimum choice for N.
14
For each
m k
c
n
t
N k
w
n
k
w
,
) (
,
.......
) (
1 ,

we construct
) , (
,
m n
i k
S . Since all transmit antennas from
the same user use the same code at instant n, all
) , (
,
m n
i k
S are the same. In this case, we can use

) , ( ) , (
,
..... ..........
) , (
1 ,
m n
k
S
m n
t
N k
S
m n
k
S
(2.7)
We will then be able to compute the corresponding correlator outputs:

) ( ) , ( ) , (
,
n
j
r
H
m n
k
S
m n
k j
y
,
_

(2.8)
The detection strategy in case of parity bit-selected spreading is different from the
conventional MIMO system. Indeed, for each user k, we must detect the Nt 1
[ ]
T
n
t
N k
b
n
k
b
n
k
b
n
k
b
) (
,
,......
) (
2 ,
,
) (
1 ,
) (

(2.9)
vector of bits transmitted by all its antennas at instant n since the choice of spreading code
depends upon the value of this vector.
Using the same development in previous section, we can rewrite (2.8) as
( )

+
t
N
i
n
j
n
n
i k
b
k i j
h
n
k
S
H
m n
k
S
m n
k j
y
1
) ( " ) (
, , ,
) (
) , (
) , (
,
(2.10)
where
) ( " n
j
n
represents the despread noise, the MAI, and part of SI. Indeed,
) , (
,
m n
k j
y
gathers part
of the SI since we need the information from all transmitting antennas of the user of interest.
Equation (10) can be rewritten as

+
t
N
i
n
j
n
n
i k
b
i j
h
m n
k
R
m n
k j
y
1
) ( " ) (
, ,
) , ( ) , (
,
(2.11)
Where
) ( ) , ( ) , ( n
k
S
H
m n
k
S
m n
k
R
,
_

(2.12)
is the correlation matrix between the codes used by user k. It is worth noting here that when
) ( ) , ( n
k
S
m n
k
s the correlation matrix has important diagonal elements. However, it will not
15
be diagonal because of cross-correlation due to the multipath effect. This is true even with
perfectly orthogonal codes. When
) ( ) , ( n
k
S
m n
k
s , the diagonal elements are zeros (case of
orthogonal codes) while off-diagonal elements are nonzero.
2.5.2 Permutation Spreading System
In contrast to the parity bit-selected spreading technique, the permutation spreading
technique allocates different spreading codes to each transmit antenna. When permutation
spreading is used, depending on which coset the message comes from, a unique permutation of
the spreading codes assigned to the user is employed. Each permutation employs Nt of the N
spreading waveforms and we attempt to minimize the number of spreading codes that each
permutation has in common. Furthermore, if a spreading waveform is used by antenna i of user k
in one permutation, it cannot be used by antenna i in any other permutation for this same user.
The design of the different spreading permutations is based on t-designs which are used in
permutation modulation schemes. From the detectors perspective, as for the case of parity bit-
selected spreading, we do not have prior knowledge of which codes have been used by each user.
However, we know that we have to pick Nt different codes from the set C
k
of N different codes
for user k. Hence, we need to apply a bank of correlators for each possible code assignment:
( )

+
t
N
i
n
j
n
n
i k
b
i j
h
n
i k
S
H
m n
i k
S
m n
k j
y
1
) ( " ) (
, ,
) (
,
) , (
,
) , (
,
(2.13)
( )
) (
,
) , (
,
) , (
,
n
i k
S
H
m n
i k
S
m n
i k
R
(2.14)
is the correlation matrix of the code employed to spread the message sent by antenna i of user k
and one of the N possible codes available for user k. In case of orthogonal normalized spreading
codes, the correlation matrix is an identity matrix when
) (
,
) , (
,
n
i k
S
m n
i k
S .Otherwise, the correlation
matrix is a nonzero matrix with zeros in its diagonal.
16
For the same reasons as the parity bit-selected spreading system, a suboptimal detector is
proposed. The estimated data is determined using the following decision rule:

,
_

r
N
j
n
k
y
n
i k
b
k i j
h
t
N
i
m n
i k
R
m n
j k
y
B
m
b
n
k
b
1
2
) (
2
) (
, , ,
1
) , (
,
) , (
,
) (
min
) (

(2.15)
Where
) (n
k
y is a vector containing a concatenation of all
)
'
, (
,
m n
j k
y
with
'
m
=1N,
'
m
m and
j = 1N
r
. B is the set of 2
N
t
possible values of b
(m)
,where
T m
t
N
b
m
i
b
m
b
m
b ]
) (
.......
) (
.....
) (
1
[
) (

.
2.5.3 MIMO testing
MIMO signal testing focuses first on the transmitter/receiver system. The random phases
of the sub-carrier signals can produce instantaneous power levels that cause the amplifier to
compress, momentarily causing distortion and ultimately symbol errors. Signals with a high PAR
(peak to average ratio) ratio can cause amplifiers to compress unpredictably during transmission.
OFDM signals are very dynamic and compression problems can be hard to detect because of
their noise-like nature.
Knowing the quality of the signal channel is also critical. A channel emulator can
simulate how a device performs at the cell edge, can add noise or can simulate what the channel
looks like at speed. To fully qualify the performance of a receiver, a calibrated transmitter, such
as a vector signal generator (VSG), and channel emulator can be used to test the receiver under a
variety of different conditions. Conversely, the transmitter's performance under a number of
different conditions can be verified using a channel emulator and a calibrated receiver, such as a
vector signal analyzer (VSA).
Understanding the channel allows for manipulation of the phase and amplitude of each
transmitter in order to form a beam. To correctly form a beam, the transmitter needs to
understand the characteristics of the channel. This process is called channel sounding or channel
estimation. A known signal is sent to the mobile device that enables it to build a picture of the
channel environment. The phone then sends back the channel characteristics to the transmitter.
The transmitter then can apply the correct phase and amplitude adjustments to form a beam
17
directed at the mobile device. This is called a closed-loop MIMO system. For beam forming, it is
required to adjust the phases and amplitude of each transmitter.
2.6 Applications of MIMO
Spatial multiplexing techniques makes the receivers very complex, and therefore it is
typically combined with Orthogonal frequency-division multiplexing (OFDM) or with
Orthogonal Frequency Division Multiple Access (OFDMA) modulation, where the problems
created by multi-path channel are handled efficiently. The IEEE 802.16e standard incorporates
MIMO-OFDMA. The IEEE 802.11n standard, released in October 2009, recommends MIMO-
OFDM.
MIMO is also planned to be used in Mobile radio telephone standards such as recent
3GPP and 3GPP2 standards. In 3GPP, High-Speed Packet Access plus (HSPA+) and Long Term
Evolution (LTE) standards take MIMO into account. Moreover, to fully support cellular
environments MIMO research consortia including IST-MASCOT propose to develop advanced
MIMO techniques, i.e., multi-user MIMO (MU-MIMO).
2.6.1 Other applications
Given the nature of MIMO, it is not limited to wireless communication. It can be used for
wire line communication as well. For example, a new type of DSL technology (Gigabit DSL) has
been proposed based on Binder MIMO Channels.
2.7 Wireless standards
In the commercial arena, Iospan Wireless Inc. developed the first commercial system in
2001 that used MIMO with Orthogonal frequency-division multiple access technology (MIMO-
OFDMA). Iospan technology supported both diversity coding and spatial multiplexing. In 2005,
Airgo Networks had developed an IEEE 802.11n precursor implementation based on their
patents on MIMO. Following that in 2006, several companies (including at least Broadco, Intel,
18
and Marvell) have fielded a MIMO-OFDM solution based on a pre-standard for 802.11n WiFi
standard. Also in 2006, several companies (Beceem Communications, Samsung, Runcom
Technologies, etc.) have developed MIMO-OFDMA based solutions for IEEE 802.16e WiMAX
broadband mobile standard. All upcoming 4G systems will also employ MIMO technology.
Several research groups have demonstrated over 1 Gbit/s prototypes.
3.1 Space-Time Block Codes
Spacetime block coding is a technique used in wireless communications to transmit
multiple copies of a data stream across a number of antennas and to exploit the various received
versions of the data to improve the reliability of data-transfer. The fact that the transmitted signal
must traverse a potentially difficult environment with scattering, reflection, refraction and so on
and may then be further corrupted by thermal noise in the receiver means that some of the
received copies of the data will be 'better' than others. This redundancy results in a higher chance
of being able to use one or more of the received copies to correctly decode the received signal. In
fact, spacetime coding combines all the copies of the received signal in an optimal way to
extract as much information from each of them as possible.
The input to the encoder is a stream of modulated symbols from a real or complex
constellation. The encoder operates on a block of K symbols producing an Mt x T codeword XQ
whose rows correspond to transmit antennas and columns correspond to symbol times. At the
receiver, maximum likelihood decoding is simplified by the orthogonal structure imposed on the
codeword. The system used here is shown in Figure 3.1.1, where an outer TCM encoded decoder
is concatenated with the STBC encoder decoder. The coding gain of the end to end system
19
Figure 3.1Concatenated space-time block coding system
is only due to the outer TCM encoder since we consider full rate STBCs. The STBC decoder
outputs scalar symbols which are then processed by the TCM decoder using the conventional
scalar Viterbi algorithm. The effective channel induced by space-time block coding of complex
symbols (before ML detection) is where y e is the 2K x 1 vector after STBC decoding of the
received matrix Y
nt
, x
nt
is a vector with two K x 1 blocks corresponding to the real and
imaginary parts of the input (each entry of x
nt
has power = E
s
/2M
t
), and w
nt
is the noise vector
after STBC decoding. With some computation it can be shown that the SNR (signal to noise
ratio) at the receiver is equal to

2
2
0
2
2
4
F
H P
N
F
H
t
M
s
E
F
H

(3.1)
The key observation here is that (1) is effectively a scaled AWGN channel with
SNR=PI [H: 1 I
2
f
and code rate equal to KIT. The fact that STBC converts the matrix channel
into a scalar AWGN channel motivates the concatenation of traditional single-antenna TCM with
STBC.
Space-time block codes operate on a block of input symbols producing a matrix output
whose columns represent time and rows represent antennas. Unlike traditional single antenna
block codes for the AWGN channel, most space time block codes do not provide coding gain.
20
Their key feature is the provision of full diversity with extremely low encoded decoder
complexity. In addition, they are optimal over all unitary codes with respect to the union bound
on error probability. The best known codes for real constellations have been designed for a
practical range of transmit antennas (2 to 8).
Space-time trellis codes operate on one input symbol at a time producing a sequence of
vector symbols whose length represents antennas. Like traditional TCM (trellis coded
modulation) for the single-antenna channel, space time trellis codes provide coding gain. Since
they also provide full diversity gain, their key advantage over space-time block codes is the
provision of coding gain. Their disadvantage is that they are extremely difficult to design and
require a computationally intensive encoder and decoder.
The input to the encoder is a stream of modulated symbols from a real or complex
constellation. The encoder operates on a block of K symbols producing an Mt x T codeword XQ
whose rows correspond to transmit antennas and columns correspond to symbol times. At the
receiver, maximum likelihood decoding is simplified by the orthogonal structure imposed on the
codeword. The system used here is shown in below Figure, where an outer TCM encoded coder
is concatenated with the STBC encoder/decoder. The coding gain of the end to end system is
only due to the outer TCM encoder since we consider full rate STBCs. The STBC decoder
outputs scalar symbols which are then processed by the TCM decoder using the conventional
scalar Viterbi algorithm.
3.2 Orthogonality
STBCs as originally introduced, and as usually studied, are orthogonal. This means that
the STBC is designed such that the vectors representing any pair of columns taken from the
coding matrix are orthogonal. The result of this is simple, linear, optimal decoding at the
receiver. Its most serious disadvantage is that all but one of the codes that satisfy this criterion
must sacrifice some proportion of their data rate (see Alamouti's code).
21
Moreover, there exist quasi-orthogonal STBCs that achieve higher data rates at the cost
of inter-symbol interference (ISI). Thus, their error-rate performance is lower bounded by the
one of orthogonal rate 1 STBCs that provides ISI free transmissions due to orthogonality.
3.3 Design of STBCs
The design of STBCs is based on the so-called diversity criterion derived by Tarokh et al.
in their earlier paper on spacetime trellis codes. Orthogonal STBCs can be shown to achieve the
maximum diversity allowed by this criterion.
Figure 3.2 Block diagram of the transmitter and the receiver.
3.4 Generalized Complex Orthogonal Designs as SpaceTime Block Codes
The simple transmit diversity schemes described above assume a real signal constellation.
It is natural to ask for extensions of these schemes to complex signal constellations. We recover
the Altamonte scheme as a 2X2 complex orthogonal design. Motivated by the possibility of
linear processing at the transmitter, but we shall prove that complex linear processing orthogonal
22
designs only exist in two dimensions. This means that the Alamouti Scheme is in some sense
unique. However, we would like to have coding schemes for more than two transmit antennas
that employ complex constellation. We then prove by explicit construction that rate(1/2)
generalized complex orthogonal designs exist in any dimension. it is shown that this is not the
best rate that can be achieved. Specifically, examples of rate (3/4) generalized complex linear
processing orthogonal designs in dimensions three and four are provided.
3.4.1 Complex Orthogonal Designs

We define a complex orthogonal design of size as an orthogonal matrix with
entries the indeterminate
n
x x x x t t t t ,....... , ,
3 2 1
. Their conjugates

t
n
x x x x ,.......
3
,
2
,
1
, or
multiples of these indeterminate by
i t
where
1 i
. Without loss of generality, we may
assume that the first row of
c
o
is
n
x x x x ,....... , ,
3 2 1
.
The method of encoding presented in Section (BPSK Signaling) can be applied to obtain a
transmit diversity scheme that achieves the full diversity
nm
. The decoding metric again
separates into decoding metrics for the individual symbols
n
x x x x ,....... , ,
3 2 1
.
An example of 2x2 a complex orthogonal design is given by
.
*
1
*
2
2 1

,
_

x x
x x
3.4.2 The Alamouti Scheme
The spacetime block code proposed by Alamouti uses the complex orthogonal design

,
_

*
1
*
2
2 1
x x
x x
Suppose that there are 2
b
signals in the constellation. At the first time slot 2b, bits arrive
at the encoder and select two complex symbols s
1
and s
2
. These symbols are transmitted
simultaneously from antennas one and two, respectively. At the second time slot, signals and
23
are transmitted simultaneously from antennas one and two, respectively. Maximum-likelihood
detection amounts to minimizing the decision statistic

+ +

,
_

m
j
s
j
s
j
j
r s
j
s
j
j
r
1
2
*
1 , 2
*
2 , 1 2
2
2 , 2 1 , 1 1

(3.2)
Over all possible values of and S
2
. The minimizing values are the receiver estimates of S
1
and S
2
, respectively. As in the previous section, this is equivalent to minimizing the decision
statistic.

2
1
1
2
1
2
,
1
2
1
)
1
)
, 2
*
)
2
(
,
*
1
1
( s
m
j i
j i
s
m
j
j
j
r
j
j
r
,
_

1
]
1

+ +

+
(3.3)
for detecting S
1
and the decision statistic

2
2
1
2
1
2
,
1
2
2
)
1
)
, 1
*
)
2
(
,
*
2
1
( s
m
j i
j i
s
m
j
j
j
r
j
j
r
,
_

1
]
1

+ +


(3.4)
for decoding S
2
. This is the simple decoding scheme described and it should be clear that a result
analogous to Theorem 3.2.1 can be established here. Thus Alamoutis scheme provides full
diversity using receive antennas. This is also established by Alamouti, who proved that this
scheme provides the same performance as level maximum ratio combining.
3.5 T-Designs
Definition: A t-(v, k, lambda) design, or (for short) a t-design, is an incidence structure of
points and blocks with the following properties:
a) There are v points;
b) Each block is incident with k points;
c) Any t points are incident with lambda common blocks.
d) Here t, v, k, lambda are non-negative integers.
24
Some non-degeneracy conditions are usually assumed, though there is no agreement
about exactly what these should be. It is reasonable to assume that t<=k<=v. With this condition,
if lambda=0, there are no blocks at all, so we usually assume that lambda>0. Now if t=k, then
each set of k points occurs the same number of times as a block; while if k=v, then every block is
incident with every point. These designs are not very interesting, so it is often assumed that
t<k<v.
A t-design with lambda=1 is called a Steiner system. In particular, a 2-(v,3,1) design is a
Steiner triple system or STS, and a 3-(v,4,1) design is a Steiner quadruple system or SQS. On the
Steiner triple system page, you can see an example of a 2-(7,3,1) design.
A 2-design with k<v is also referred to as a balanced incomplete-block design or BIBD.
A t-design is said to have repeated blocks if there are two blocks incident with the same set of k
points. A design with no repeated blocks is said to be simple. Thus, in a simple design, we can
identify each block with the set of points incident with it.
Coset Message vector
w1 (t) w2(t)
w3(t) w4(t)
M1 0000
1111
C1(t) C5(t) C8(t) C6(t)
M2 0001
1110
C2(t) C6(t) C7(t) C5(t)
M3 0010
1101
C3(t) C7(t) C6(t) C8(t)
M4 0011
1100
C4(t) C8(t) C5(t) C7(t)
M5 0100
1011
C5(t) C1(t) C4(t) C2(t)
M6 0101
1010
C6(t) C2(t) C3(t) C1(t)
M7 0110
1001
C7(t) C3(t) C2(t) C4(t)
25
M8 0111
1000
C8(t) C4(t) C1(t) C3(t)
TABLE 3.1 T-DESIGN PERMUTATION SPREADING TABLE FOR = 4.
3.6 Space-Time Block Code Based Permutation
The design of the spreading code permutations is based on a Space-Time Block Code
matrix. The advantage of using STBC-based spreading code permutations is to give transmit
diversity by providing orthogonality between the transmit messages.
Figure 3.3 Receiver for the proposed system
3.6.1 BPSK Signaling
A BPSK modulated MIMO-CDMA system that employs permutation spreading requires 8
spreading sequences per user. An 88 space-time block code matrix can be used for designing
the permutation table which is given by:
26

,
_








1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 7 8 5 6
4 3 2 1 8 7 6 5
5 6 7 8 1 2 3 4
6 5 8 7 2 1 4 3
7 8 5 6 3 4 1 2
8 7 6 5 4 3 2 1
s s s s s s s s
s s s s s s s s
s s s s s s s s
s s s s s s s s
s s s s s s s s
s s s s s s s s
s s s s s s s s
s s s s s s s s
The STBC-based spreading code permutation is given in Table 3.1. Rows 1, 5, 8, and 6 are
respectively assigned to column 1, 2, 3 and 4 of Table 3.1. This is done to create orthogonality
between the different message cosets. The low pass equivalent of the received signal at the jth
receive antenna in Figure 2 is the sum of all the message bits multiplied by the channel gain,
which is given by:


) ( ) ( . . ... ) (
1
.
1 1
) ( t n t
t
N
w
t
N
b
t
jN
t w b
j
t Rx + + +
(3.5)
where ji is the complex channel gain for the ith transmit-jth receive antenna link; and n(t) is the
total complex noise at the receiver The output from the kth matched filter in the jth receive
antenna would be given as
(t), c = (t) w if
k i
,
.

'

otherwise
jk
z
jk
z
jk
i
b
jk
r

(3.6)
where z
jk
is the sampled noise from the k
th
matched filter on the j
th
antenna. Maximum likelihood
detection (MLD) is used to determine which message has been transmitted by finding the
minimum Euclidean distance between the received signal and all the possible received message
vectors in the absence of noise.
Coset Message vector
w1 (t) w2(t)
w3(t) w4(t)
M1 0000
1111
C1(t) C5(t) C8(t) C6(t)
M2 0001
1110
C2(t) C6(t) C7(t) C5(t)
M3 0010
1101
C3(t) C7(t) C6(t) C8(t)
27
M4 0011
1100
C4(t) C8(t) C5(t) C7(t)
M5 0100
1011
C5(t) C1(t) C4(t) C2(t)
M6 0101
1010
C6(t) C2(t) C3(t) C1(t)
M7 0110
1001
C7(t) C3(t) C2(t) C4(t)
M8 0111
1000
C8(t) C4(t) C1(t) C3(t)

Table 3.2: BPSK Signaling STBC-Based Code Permutations for Nt=4
3.6.2 QPSK Signaling
Space time block code can be used for M-PSK signal constellations; the STBC-based
spreading code permutations can also be used for MIMO-CDMA systems employing QPSK
modulation. Gray coding, in which adjacent code words differ in one bit position, is used for
QPSK signal mapping. The Gray Coding constellation is given in figure 3.6.2.
Figure 3.4 QPSK Modulation with Gray Code Mapping
28
In a 2 transmit antenna MIMO-CDMA system employing QPSK modulation, the total
number of message bits transmitted on a given time interval is 4, and the total number of
spreading sequences used is 8. The QPSK signaling STBC-based spreading code permutation is
given in Table 3.2. We redesign columns 1 and 2 in Table 3.2 to ensure that all the message
cosets are orthogonal to each other.

Coset Message
symbol
vector m
Corresponding
binary vector
w1 (t) w2(t)
M1 Q
1
Q
1
Q
3
Q
3
0000
1111
C1(t) C5(t)
M2 Q
1
Q
2
Q
3
Q
4
0001
1110
C2(t) C6(t)
M3 Q
1
Q
4
Q
3
Q
2
0010
1101
C3(t) C7(t)
M4 Q
1
Q
3
Q
3
Q
1
0011
1100
C4(t) C8(t)
M5 Q
2
Q
1
Q
4
Q
3
0100
1011
C5(t) C1(t)
M6 Q
2
Q
2
Q
4
Q
4
0101
1010
C6(t) C2(t)
M7 Q
2
Q
4
Q
4
Q
2
0110
1001
C7(t) C3(t)
M8 Q
2
Q
3
Q
4
Q
1
0111
1000
C8(t) C4(t)
Table 3.3 QPSK Signaling STBC-Based Code Permutations for Nt=2
Similar to the BPSK modulated MIMO-CDMA system, the output from the k
th
matched
filter in the j
th
receive antenna would be given as
29

(t), c = (t) w if
k i
,
.

'

otherwise
jk
z
jk
z
jk
i
s
jk
r

(3.7)
Where s
i
is the QPSK modulated signal message transmitted from transmits antenna i.Once
again, ML detection is used to determine the most likely transmitted message.
3.6.3 Error Correcting Codes
This section is a brief introduction to the theory and practice of error correcting codes
(ECCs). We limit our attention to binary forward error correcting (FEC) block codes. This means
that the symbol alphabet consists of just two symbols (which we denote 0 and 1), that the
receiver can correct a transmission error without asking the sender for more information or for a
retransmission, and that the transmissions consist of a sequence of fixed length blocks, called
code words This code is single error correcting (SEC), and a simple extension of it, also
discovered by Hamming, is single error correcting and, simultaneously, double error detecting
(SEC-DED). Still sticking to binary FEC block codes, the basic question addressed is: for a
given block length (or code length) and level of error detection and correction capability, how
many different code words can be encoded. The reader is cautioned that over the past 50 years
ECC has become a very big subject. Many books have been published on it and closely related
subjects [Hill, LC, MS, and Roman, to mention only a few]. Here we just scratch the surface and
introduce the reader to two important topics and to some of the terminology used in this field.
Although much of the subject of error correcting codes relies very heavily on the notations and
results of linear algebra, and in fact is a very nice application of that abstract theory, we avoid it
here for the benefit of those who are not familiar with that theory. The following notation is used
throughout this chapter. It is close to that used in [LC]. The terms are defined in subsequent
sections.
k Number of information or message bits.
m Number of parity-check bits (check bits, for short).
N Code length,
n = m + k.
u Information bit vector, u
0
, u
1
, u
k-1
.
30
p Parity check bit vector, p
0
, p
1
, , p
m-1
.
s Syndrome vector, s
0
, s
1
, , s
m-1
.
3.6.4 The Hamming Code
Hammings development [Ham] is a very direct construction of a code that permits
correcting single-bit errors. He assumes that the data to be transmitted consists of a certain
number of information bits u, and he adds to these a number of check bits p such that if a block is
received that has at most one bit in error, then p identifies the bit that is in error (which may be
one of the check bits). Specifically, in Hammings code p is interpreted as an integer which is 0
if no error occurred, and otherwise is the 1-origined index of the bit that is in error. Let k be the
number of information bits, and m the number of check bits used. Because the m check bits must
check themselves as well as the information bits, the value of p, interpreted as an integer, must
range from 0 to which is a distinct value. Because m bits can distinguish cases, we must have
1 k m
m
2 + + (23)
This is known as the Hamming rule. It applies to any single error correcting (SEC) binary
FEC block code in which all of the transmitted bits must be checked. The check bits will be
interspersed among the information bits in a manner described below.
Because p indexes the bit (if any) that is in error, the least significant bit of p must be 1 if
the erroneous bit is in an odd position, and 0 if it is in an even position or if there is no error. A
simple way to achieve this is to let the least significant bit of p, p0, be an even parity check on
the odd positions of the block, and to put p0 in an odd position. The receiver then checks the
parity of the odd positions (including that of p0). If the result is 1, an error has occurred in an odd
position, and if the result is 0, either no error occurred or an error occurred in an even position.
This satisfies the condition that p should be the index of the erroneous bit, or be 0 if no error
occurred.
Similarly, let the next from least significant bit of p, p1, be an even parity check of
positions 2, 3, 6, 7, 10, 11, (in binary, 10, 11, 110, 111, 1010, 1011, ), and put p1 in one of
these positions. Those positions have a 1 in their second from least significant binary position
31
number. The receiver checks the parity of these positions (including the position of p1). If the
result is 1, an error occurred in one of those positions, and if the result is 0, either no error
occurred or an error occurred in some other position.
Continuing, the third from least significant check bit, p2, is made an even parity check on
those positions that have a 1 in their third from least significant position number, namely
positions 4, 5, 6, 7, 12, 13, 14, 15, 20, , and p2 is put in one of those positions.
4.1 Proposed Methodology
The parity bit selected spreading code technique, based on systematic linear block codes,
and was first proposed. In code division multiple access (CDMA) systems employing this
technique, the calculated parity bits are used to select a spreading sequence from a set of
mutually orthogonal spreading sequences. This technique was extended to CDMA systems using
multiple input multiple output (MIMO) techniques. In a MIMO-CDMA system with
transmit antennas, instead of selecting one spreading sequence, the parity bits select
different spreading sequences from a set of mutually orthogonal spreading sequences; and
each transmit antenna uses one of the selected spreading sequences. A different permutation of
spreading sequences is assigned to different sequences of parity bits, hence the technique is
referred to as permutation spreading. T-designs are used to design the different spreading
permutations. In this paper, we design the spreading code permutations based on Space-Time
Block Codes (STBC).Compared to the results presented, the STBC-based design can improve
the bit error rate (BER) performance over the flat fading channel without increasing the system
complexity. We compare the performance of the two techniques for MIMO-CDMA systems
operating on frequency-flat slowly Rayleigh fading channels.

4.2 MIMO-CDMA System Employing Permutation Spreading
32
The block diagram of a MIMO-CDMA transmitter receiver pair
employing permutation spreading.
The input bit stream is converted into
t
parallel data streams. On one signaling
interval, the bits to be transmitted are used to select
t
spreading sequences from a set of
mutually orthogonal spreading sequences, where >
t
.
Figure 4.1 Block diagram of MIMO-CDMA system employing permutation spreading.
The message bits are then modulated using binary phase shift keying (BPSK) and each
bit is spread using the spreading sequence selected in the previous step. The spreading sequences
employed on a given signaling interval {1(), ..., ()} are chosen from a set of
orthogonal spreading sequences {1(), 2(), , ()}. At the receiver, the output of
each antenna is connected to a bank of matched filters. There is one matched filter for each of the
spreading codes in the users set {1(), 2(), , ()}. We can estimate the transmitted
data sequence based on the received vector, which is given by:

T
N
r
N
r
r
N
r r
N
r r r r ] ,....,
1
,...
21
,
1
,...
12
,
11
[
(4.1)
33
4.3 Space-Time Block Code Based Permutation
The design of the spreading code permutations is based on a STBC matrix. The 4
transmit antenna MIMO-CDMA system that employs permutation spreading requires 8
spreading sequences per user. An 8 8 space-time block code matrix can be used for designing
the permutation table. This matrix is:

,
_








1 2 3 4 5 6 7 8
2 1 4 3 6 5 8 7
3 4 1 2 7 8 5 6
4 3 2 1 8 7 6 5
5 6 7 8 1 2 3 4
6 5 8 7 2 1 4 3
7 8 5 6 3 4 1 2
8 7 6 5 4 3 2 1
s s s s s s s s
s s s s s s s s
s s s s s s s s
s s s s s s s s
s s s s s s s s
s s s s s s s s
s s s s s s s s
s s s s s s s s
34
Coset Message vector
w1 (t) w2(t)
w3(t) w4(t)
M1 0000
1111
C1(t) C5(t) C8(t) C6(t)
M2 0001
1110
C2(t) C6(t) C7(t) C5(t)
M3 0010
1101
C3(t) C7(t) C6(t) C8(t)
M4 0011
1100
C4(t) C8(t) C5(t) C7(t)
M5 0100
1011
C5(t) C1(t) C4(t) C2(t)
M6 0101
1010
C6(t) C2(t) C3(t) C1(t)
M7 0110
1001
C7(t) C3(t) C2(t) C4(t)
M8 0111
1000
C8(t) C4(t) C1(t) C3(t)
TABLE 4.1 STBC-Based Code Permutations for = 4.
The STBC-based spreading code permutation is given in Table 4.3. Columns 1, 5, 8, and
6 are respectively assigned to columns 1, 2, 3 and 4 of Table 4.3. The output (normalized to the
signaling interval) from the k
th
matched filter of the j
th
receive antenna would be given as
(t), c = (t) w if
k i
,

'

otherwise
jk
n
jk
n
r
N
b
E
i
b
jk
r (4.2)
Where
ji

is the complex channel gain for the th transmit-th receive antenna link;
b
is the
average received energy per bit; and
kj
is the sampled noise from the th matched filter of the
th receive antenna. The received vector, r = u
b
+ n where u is the received data vector that
is dependent on the transmitted data vector, b = [
1
,
2
, ...,
Nt
]
T
and n = [
11
, ...,
1N
,

21
, ...,
2N
, ...,
Nr1
, ...,
NrN
]
T
is a vector made up of noise samples. For example, if the
transmitted message m = [0, 0, 0, 0], then b = [1,1,1,1] and u
b
= [
11
, 0, 0,
0,
12
,
14
, 0,
13
,
21
, 0, 0, 0,
22
,
24
, 0,
23
, ...,
Nr1
, 0, 0, 0,
Nr2
,
Nr4
,
0,
Nr3
]
T
.
Maximum likelihood detection (MLD) is used to detect which message has been
transmitted by finding the minimum squared Euclidean distance between the received vector and
all the possible received vectors in the absence of noise. The expression is given as

2
min

b
u r
b
b

(4.2)
4.4 BIT Error Probability Analysis
Let us consider the case when the transmitted message m = [0, 0, 0, 0]. Let us assume
that we are transmitting a narrowband MIMO-CDMA signal so that the channel can be assumed
to be frequency-nonselective. We further assume that the channel gains are independent. We can
determine a union bound on the BER by finding the squared Euclidean distance between the
different us and the u corresponding to b = [1,1,1,1]. Let us start by considering the
35
distance between the received vectors associated with messages [1,1,1,1] and [0,0,0,0]. This
scenario corresponds to messages in the same coset. We will refer to this distance as
. It is given by:

2
1 1
4
2

r
N
j
t
N
l
jl
r
N
b
E
same
d
(4.3)
We can show that 2 has a chi-square distribution with 2 degrees of
freedom. Therefore the probability that we transmit 0000 but detect 1111

,
_

,
_

,
_

k
t
N
r
N
k
k
k
t
N
r
N
same
P
1
1
0
1
2
1
(4.4)
where
b
r
N
b

4
4
+

and is the average received energy per bit to single sided noise
spectral density ratio. Next let us consider the probability of detecting a message vector in a
different coset that does not have any spreading codes in common as the desired message 0000.
In Table I, we see that coset 7 does not share any spreading codes with coset 1. We refer to
this distance as 0. We can show that 20 is:

r
N
j
t
N
l
jl
r
N
b
E
o
d
1 1
2
2
2
(4.5)
Therefore the probability of incorrectly detecting a message from a coset that does not
have any spreading codes in common where
.
2
2
b
r
N
b

+
(4.6)
Next we consider the incorrect detection of a message from a coset that shares 2
spreading waveforms with the desired message. If we observe Table I, we see that six cosets
share two spreading codes with coset 1. However it is important to note that the common
codes of coset simply swap transmit antennas compared to those of coset1. For
example1 uses1() from antenna 1 and 5() from antenna 2 while 5 uses 1()
from antenna 2 and 5() from antenna 1. We refer to this as code symmetry. The distance
between a message in 5 and the desired message is then given by
36

,
_

+ t +

2
2 1
2
2 1
1 3
2
2
2
1 , 5
4
j j j j
r
N
b
E
r
N
j l
jl
r
N
b
E
d (4.7)
We can show that
2 2
2
2 2
B A B A B A + + +
(4.8)
therefore the last term in (8) becomes

+
,
_

r
N
j j j
r
N
b
E
1
2
2
2
1
2

(4.9)
Therefore 2 5,1 has the same distribution as 20 . Since the STBC-based design maintains
the
code symmetry between all cosets that share two spreading codes then they all have the same
distance properties, therefore the probability of incorrectly detecting a message from a coset that
shares two spreading codes with the desired message is also given by (4.6) with
.
2
2
b
r
N
b

Therefore the union bound for the BER for a single user MIMO-CDMA system
employing STBC-based permutation spreading is given by:
diff
p
M
M
same
p
b
p
2
+ <
(4.10)
provided that the code symmetry discussed above is maintained. In (4.9) is given in (4.6)
with
.
4
4
b
r
N
b

+
(4.11)
While is also given by (6) but with
.
2
2
b
r
N
b

and is the total number of message which is 16 in our case.


37
5.1 Simulation Parameters
Table 5.1 Simulation parameters
5.2 Simulation Results
The simulation results for bit error rate (BER) performances are presented in this section.
MIMO-CDMA system with 4 transmit antennas and 1 or 4 receive antennas are considered. The
following assumptions are used in the simulation model: 1) The channel is a frequency
nonselective (flat), slowly Rayleigh fading channel, and there is no channel induced intersymbol
interference (ISI). 2) The channel gains of different transmit and receive links are uncorrelated.
3) It is assumed that perfect channel state information (CSI) is available at the receiver. Figure 2
shows the BER performances of MIMO-CDMA system employing STBC permutation vs. the
system employing T-design permutation with 4 transmit antennas and 1 or 4 receive antenna.
The T-design permutation table is given in Table 3.1. The BER performances of MIMO-CDMA
38
No. of Message Cosests 8
Length of Message Coset 8 bits
Noise Random Noise
Modulation BPSK
No. of Transmitting
Antennas
4
No. of Receiving Antennas 1,4
systems employing conventional spreading are also given as references. In the conventional
system, each transmit antenna is assigned a unique spreading sequence that is orthogonal to the
others. The spreading code assignment is fixed and does not depend on the data being
transmitted.
From Figure 5.1.1, we see that permutation spreading provides significant gains over
conventional MIMO-CDMA. Also the MIMO-CDMA system using STBC-based code
permutations has a better BER performance compared to the system employing T-design
permutations. From Table 3.1, we see that the T-design method does not respect the code
symmetry discussed in the previous section for cosets that have two spreading codes in common
and therefore some degrees of freedom are lost in the squared Euclidean distance between
different messages. The lack of code symmetry accounts for the slightly increased BER. Figures
5.1.1 shows, at the BER of 103, the STBC permutation systems have 0.7 dB and 0.2 dB gain
over T-design permutation system in the case of 1 and 4 receive antennas, respectively.
Figure 5.1 BER for STBC Permutation vs. T-Design Permutation with = 4, = 1 and = 4.
39
5.3 Introduction to MATLAB
What Is MATLAB?
MATLAB is a high-performance language for technical computing. It integrates
computation, visualization, and programming in an easy-to-use environment where problems and
solutions are expressed in familiar mathematical notation. Typical uses include
Typical uses of MATLAB
1. Math and computation
2. Algorithm development
3. Data acquisition
4. Data analysis, exploration and visualization
5. Scientific and engineering graphics
The main features of MATLAB
1. Advance algorithm for high performance numerical computation, especially in the Field
matrix algebra
2. A large collection of predefined mathematical functions and the ability to define ones own
functions.
3. Two-and three dimensional graphics for plotting and displaying data
4. A complete online help system
5. Powerful, matrix or vector oriented high level programming language for individual
applications.
6. Toolboxes available for solving advanced problems in several application areas
Features and capabilities of MATLAB
MATLAB is an interactive system whose basic data element is an array that does not
require dimensioning. This allows you to solve many technical computing problems, especially
40
those with matrix and vector formulations, in a fraction of the time it would take to write a
program in a scalar non interactive language such as C or FORTRAN.
The name MATLAB stands for matrix laboratory. MATLAB was originally written to
provide easy access to matrix software developed by the LINPACK and EISPACK projects.
Today, MATLAB engines incorporate the LAPACK and BLAS libraries, embedding the state of
the art in software for matrix computation.
MATLAB has evolved over a period of years with input from many users. In university
environments, it is the standard instructional tool for introductory and advanced courses in
mathematics, engineering, and science. In industry, MATLAB is the tool of choice for high-
productivity research, development, and analysis.
MATLAB features a family of add-on application-specific solutions called toolboxes.
Very important to most users of MATLAB, toolboxes allow you to learn and apply specialized
technology. Toolboxes are comprehensive collections of MATLAB functions (M-files) that
extend the MATLAB environment to solve particular classes of problems. Areas in which
toolboxes are available include signal processing, control systems, neural networks, fuzzy logic,
wavelets, simulation, and many others.
The MATLAB Mathematical Function
This is a vast collection of computational algorithms ranging from elementary functions
like sum, sine, cosine, and complex arithmetic, to more sophisticated functions like matrix
inverse, matrix eigen values, Bessel functions, and fast Fourier transforms.
The MATLAB Language
This is a high-level matrix/array language with control flow statements, functions, data
structures, input/output, and object-oriented programming features. It allows both "programming
in the small" to rapidly create quick and dirty throw-away programs, and "programming in the
large" to create complete large and complex application programs.
Graphics
41
MATLAB has extensive facilities for displaying vectors and matrices as graphs, as well as
annotating and printing these graphs. It includes high-level functions for two-dimensional and
three-dimensional data visualization, image processing, animation, and presentation graphics. It
also includes low-level functions that allow you to fully customize the appearance of graphics as
well as to build complete graphical user interfaces on your MATLAB applications.
5.4 Functions used in MAT Lab code
Functions used in
MAT Lab Code

DESCRIPTION
Clear Erases variables and functions from memory
Clear x Erases the matrix 'x' from your workspace
Close By itself, closes the current figure window
Figure Creates an empty figure window
For Repeat statements a specific number of times
hold on Holds the current plot and all axis properties so that subsequent
graphing commands add to the existing graph.
hold off Sets the next plot property of the current axes to "replace"
Break Terminate execution of m-file or WHILE or FOR loop
Diff Difference and approximate derivative
Save Saves all the matrices defined in the current session into the file,
matlab.mat, located in the current working directory
Load Loads contents of matlab.mat into current workspace
xlabel('text' ) Writes 'text' beneath the x-axis of a plot
ylabel('text' ) Writes 'text' beneath the y-axis of a plot
Randint Generate matrix of uniformly distributed random integers.
42
subplot() Allows you to create multiple plots in the same window
plot(x,y) Creates a Cartesian plot of the vectors x & y
plot(y) Creates a plot of y vs. the numerical values of the elements in the
y-vector
semilog x(x,y) Plots log(x) vs y
smiologies(x,y) Plots x vs log(y)
Grid Creates a grid on the graphics plot
title('text') Places a title at top of graphics plot
Table.5.2 Functions used in MAT Lab
5.5 Applications
1) Communication Network: Broadcasting network, cellular network, satellite
communication, and etc.
2) Narrowband Application: Limited bandwidth and lower data rate
3) Higher Performance Required
43
4) Space-Time Coding is attractive
Future scope
Orthogonal Space-Time Block Codes (O-STBC) has been proposed as a transmit
diversity scheme that can provide full transmit diversity with linear decoding complexity.
Despite of these advantageous, O-STBC has a code rate that is less than one when more than two
transmit antennas and complex constellation are used. Quasi-Orthogonal STBC (QO-STBC)
44
with constellation rotation (CR) or group-constrained linear transformation have been proposed
to provide transmit diversity at a higher code rate than O-STBC. The maximum-likelihood (ML)
decoding of QO-STBC can be achieved by jointly detecting a sub-group of the transmitted
symbols, rather than all the symbols, hence QO-STBC leads to a lower decoding complexity than
general non-orthogonal STBC.
Hence it is of interest to design QO-STBC with low decoding complexity, as a result
Minimum-Decoding- Complexity QO-STBC (MDC-QOSTBC) has been designed. MDC-
QOSTBC has a simple ML decoding and is only next to O-STBC, i.e. the ML decoding of
MDCQOSTBC only need a joint detection of two real symbols, this is the simplest among all
possible non-orthogonal STBCs. But the maximum achievable code rate of MDCQOSTBC is
less than one for more than four transmit antennas.
Conclusion
A new design method to find the permutation spreading table for MIMO-CDMA systems
is proposed in this paper and we have analyzed the performance of MIMO-CDMA with
comparision to conventional Code Division Multiple Access (CDMA) system. The performance
is often measured as the average bit rate (bits/s) the wireless link can provide or as the average
45
bit error rate (BER). These simulations are done to design the simulation model which is
conventional CDMA, MIMO-CDMA with four-transmit-one receive (4Tx1Rx) and MIMO-
CDMA with four-transmit-four receive (4Tx4Rx). Then the comparision between conventional
CDMA systems is made to investigate the system performance. The result shows that MIMO-
CDMA technique gives better performance than conventional CDMA system in term of bit error
rate (BER) and also the number of antennas increase.
References
[1] C.DAmours, Parity Bit Selected Spreading Sequences: A Block Coding Approach to
Spread Spectrum, IEEE Commun. Letters, vol.9, pp. 16-18, Jan. 2005.
46
[2] C. DAmours, J-Y Chouinard, Parity Bit Selected and Permutation Spreading for
CDMA/MIMO Systems, Proc. IEEE Vehicular Technologies Conf., pp. 1475-1479, Apr. 2007.
[3] V. Tarokh, H. Jafarkhani, A. R. Calderbank, Space-time Block Codes from Orthogonal
Designs, IEEE Trans. Info. Theory, Vol. 45, pp.1456-1467, July 1999.
[4] L.C. Tran, T.A. Wysocki, M.Alfred, S.Jennifer, Complex Orthogonal Space-time Processing
in Wireless Communications, Springers Science Business Media, Inc, 2006
[5] S. Sandhu, R. Heath and A. Paul raj Space-time Block Codes versus Space-time Trellis
Codes, IEEE Commun.Letters, July.2001.
[6] K.J. Sankar, V.M. Pandharipande, P.S. Moharir, Generalized Gray Codes, IEEE Proc. Int.
Symp. on Intelligent signal processing and communication systems, pp. 654-659, Nov 2004
[7] J. G. Proakis, Digital Communications, 4th. Ed., New York: McGraw-hill, 2001.
[8] Y. Song, Parity Bit Selected Spreading Sequences for Spread Spectrum and Code Division
Multiple Access Systems, M. A. Sc thesis, University of Ottawa, 2005.
[9] K. Yao, Error Probability of Asynchronous Spread Spectrum Multiple Access
Communication Systems, IEEE Trans. on Commun., Vol.25, pp.803-809, Aug.1977
[10] H.V. Poor, V. Sergio, Single User Detectors for Multiuser Channels, IEEE Trans. on
Commun. Vol. 36, pp. 50-60, Jan. 1988
[11] M.B.Pursley, Performance Evaluation for Phase-Coded Spread-Spectrum Multiple-Access
CommunicationPart I: System Analysis, IEEE Trans. Commun., vol. 25, pp. 795-799, Aug.
1977
[12] M.Shi, Spreading Code Assignment Techniques for MIMO-CDMA Systems, M. A. Sc
thesis, University of Ottawa, 2009
47
[13] Erik G. Larsson, Petre Stoica Space-time block coding for wireless communications
,Cambridge University press,2003.
[14] M. Ahmed, J. Pautler, and K. Rohani, CDMA receiver performance for multiple-input
multiple-output antenna systems, in Proc. Of IEEE Veh. Tech. Conf., vol. 3, Oct. 2001.
[15] Kaveh Pahlavan, Prashant Krishnamurthi Principle of Wireless Network Prentice Hall
PTRUpperSaddleRiver,2001.
[16] H. Huang, H. Viswanathan, and G. J. Foschini, Multiple antennas in cellular CDMA
systems: transmission, detection, and spectral efficiency, IEEE Trans. Wireless Commun, vol.
1, no. 3, July 2002.
48

S-ar putea să vă placă și