Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Introduction

Recent research on wireless communication systems has shown that using mul-
tiple antennas at both transmitter and receiver offers the possibility of wireless
communication at higher data rates compared to single antenna systems. The
information-theoretic capacity of these multiple-input multiple-output (MIMO)
channels was shown to grow linearly with the smaller of the numbers of transmit
and receiver antennas in rich scattering environments, and at sufficiently high
signal-to-noise (SNR) ratios [1].
Some special detection algorithms have been proposed in order to exploit the high
spectral capacity offered by MIMO channels. One of them is the V-BLAST
(Vertical Bell-Labs Layered Space-Time) algorithm which uses a layered structure
[2]. This algorithm offers highly better error performance than conventional linear
receivers and still has low complexity. In this thesis, we offer a new symbol
detection algorithm called V-BLAST/MAP that has a layered structure as V-
BLAST, but uses a modified detecting algorithm that yields a better error
performance than V-BLAST at slightly higher complexity.
In this chapter, we state the MIMO channel model that will b e used through- out
this thesis, state the MIMO symbol detection problem, present some brief
description of previous detection algorithms and brie y compare their error
performance with that of V-BLAST/MAP. These topics are considered in detail in

The MIMO Channel Model


Throughout this thesis, we use the MIMO channel model depicted in Fig. 1.1 with
M transmitter and N receiver antennas.
Figure 1: Multiple Input Multiple Output (MIMO) channel mo del. TX and RX
stand for transmitter and receiver antennas, respectively.

In each use of the MIMO channel, a vector 𝑎 = (𝑎1 , 𝑎2 , … … … 𝑎𝑀 , ) 𝑇 of complex


numbers is sent and a vector 𝑟 = (𝑟1 , 𝑟2 , … … … 𝑟𝑁 , ) 𝑇 of complex numbers is
received. We assume an input-output relationship of the form

𝒓 = 𝑯𝒂 + 𝒗

Where H is a NxM matrix representing the scattering effects of the channel and
𝑣 = (𝑣1 , 𝑣2 , … … … 𝑣𝑁 ) 𝑇 is the noise vector. Throughout we assume that is a
random matrix with independent complex Gaussian elements 𝑕𝑖𝑗 with mean 0
and unit variance, denoted 𝑕𝑖𝑗 ≈ 𝐶𝑁(0,1). We also assume throughout that v is a
complex Gaussian random vector with i.i.d elements 𝑣𝑖 ≈ 𝐶𝑁(0, 𝑁𝑜 ). It is
assumed that H and v ar independent of each other and of the data vector a.
We will assume that the receiver has perfect knowledge of the channel
realization H, while the transmitter has no such channel state information (CSI).
Receiver’s possession of CSI is justified in cases where the channel is a relatively
slowly time-varying random process; see [3] for a discussion of this point.

The Symbol Detection Problem

The symbol detection problem considered in this thesis is the problem of estimat-
ing the MIMO channel input vector a given the received vector r assuming that
the receiver has perfect knowledge of H. This decision is made on a symbol by
symbol basis without taking into account any statistical dependencies that may
be present in the sequence of vectors a. In other words, we exclude coding across
the time dimension and consider only the modulation-demodulation problem as
depicted in Fig. 2. The goal is to minimize the probability of decision error

𝑃𝑒 = 𝑃𝑟 { 𝑎 ≠ 𝑎}

Where 𝑎 = (𝑎1 , 𝑎2 , … … … 𝑎𝑀 , ) 𝑇 is the demodulator’s estimate of a

Figure 2: Modulation, transmission and decision in MIMO wireless systems.


We study the above detection problem under the additional assumptions on
the input vector that:

(i) Each element of a belongs to a common modulation alphabet. 𝐴, 𝑎𝑖 ∈


𝐴, 𝑖 = 1, … … … , 𝑀, 𝑎 ∈ 𝐴𝑀 . Typically, 𝐴 will be a QAM alphabet such
as 𝐴 = ∓𝐴 ± 𝐴 AS IN THE CASE OF 4-QAM
(ii) We will assume that symbols in 𝐴 have equal priori probabilities.
(iii) The vector a is a random vector over 𝐴𝑀 such that
𝜌
𝜖 𝑎𝑎↑ = 𝐼
𝑀 𝑀

Where 𝜌 is a constant, 𝐼𝑀 is the identity matrix of size M, 𝜖 ∙ is the expectation


operator and 𝑎↑ denotes Hermitian transpose of a. Assumption implies that the
elements of a are uncorrelated and each has energy.

2
𝜌
𝜖 𝑎𝑖 =
𝑀

Yield a total average transmitted energy of 𝜌 per symbol, combined over all
antennas.

The parameter 𝜌 also has the significance of being the average received energy per
symbol 𝐸𝑠 at each receiver antenna, as can be seen by computing the energy at
receiver antenna i:

Using above equation, the average received energy per bit at each receiver antenna
may be computed as

𝐸𝑠
𝐸b =
𝑙𝑜𝑔2 𝐴

and receiver signal to noise ratio (SNR) is defined as


𝜌
𝐸b 𝑙𝑜𝑔2 𝐴
=
𝑁0 𝑁0

While designing a receiver structure for this MIMO system, two main
considerations that should b e taken into account are the error performance and the
implementation complexity. The aim of this thesis is to design a receiver structure
that is powerful in terms of error performance and is practical to implement.

Some Symbol Detection Techniques

The detection strategy is one of the prime criteria to determine the effectiveness of
a communication system. The best performance is obtained by using ML estimate.
But it has a flaw .The computational complexity is very high. It increases with the
increase in number of transmitting and receiving antennas and the constellation
size. Other alternative were then thought of which reduces complexity and gives
performance close to ML estimation scheme. Assumptions made in these
algorithms are

1. Frequency flat AWGN channel condition

2. Input signal and noise are uncorrelated

3. Number of receiving antenna is greater than number of transmitting antennas

(a) Maximum Likelihood Detector

The maximum likelihood detector (MLD) outperforms all the existing detection
methods but its computational complexity increases exponentially with the
increase in number of transmitting antennas. In ML detection method minimization
is performed over all possible codeword vectors

X = arg min ║y ─ Hx ║2

One of the method to reduce computational complexity of ML detector is sphere


decoding.

(b) Sphere Decoder

Sphere decoder restricts the range of search in ML estimation. The principle of the
sphere decoding algorithm is to search the closest lattice point to the received
signal within a sphere radius, where each codeword is represented by a lattice point
in a lattice field. The computational coding is reduced in sphere decoder by
searching over only those points that lie within a hemisphere of radius √C around
the received signal y, rather than searching over the entire lattice. The steps
followed in sphere decoding are:

1. The ZF solution for the received signal is calculated is assigned as the centre of
the hemisphere.

2. According to the radius i.e. √C ,the limits of the hemisphere are found in all the
dimensions.

3. The points within the previous limits are checked, starting from the lowest
values in each dimension.

4. When any point is found to be closer to the center than the surface of the
hemisphere, the radius is set to that distance. The algorithm jumps back to step2.
5. The search stops when no points are found inside the hemisphere, and the point
that set the last radius is chosen as the ML solution. The low complexity detection
methods are discussed below:

(c) Zero forcing (ZF) detector

ZF forcing detector Zero forcing(ZF)[14] receiver is a low complexity linear


detection algorithm that outputs

ˆx = Q(ˆxZF)

Where

ˆxZF = H+y

where H+ denotes the Moore-Penrose pseudo inverse of H. ZF is beneficial at high


SNR values but MMSE effective at low as well as high SNR values.

(d) Minimum mean square Estimation

The estimated output of MMSE receiver is

ˆx = Q(ˆxMMSE)

where ˆxMMSE is a linear estimator given by

ˆxMMSE = Gy

where G is chosen to minimize

E {║Gy ─ x ║2}

The MMSE estimator matrix is given by

𝜌 𝜌
G= H† ( HH† + N0INr ) ─1
𝑀 𝑀
Where ρ is average received energy for each symbol and ρ/M is the average energy
of the constellation point.N0 is noise power.

(e) V-BLAST/ZF detection

The V-BLAST detection is recursive algorithm that estimate the output values
according to certain ordering mechanism so as to minimize the noise power that is
added in non recursive ZF algorithm. The steps followed in V-BLAST ZF
detection process are:

5.5.1 Suppression and cancellation

The first step in ZF receiver is to create a suppression vector from the known
channel matrix such that applying this suppression vector to the received vector
will completely remove interference signals of all other sub streams except the sub
stream of interest. However, the additive noise vector will be enhanced by the
suppression vector as well.

G = (HHH)−1HH = [g1, g2, . . . , gNt ]T

be the pseudo-inverse of H and gi = [gi1, gi2, . . . , gNt ]T is the ith row of G. gi will
be the suppression vector for data symbol xi since it satisfies

gihi = δij

where δij is the Kronecker delta function,

1 𝑖𝑓 𝑖 = 𝑗
δij =
0 𝑖𝑓 𝑖 ≠ 𝑗

On applying gi on the received vector y yields decision statistic ai for symbol xi:

ai = g i y = x i + g i w
The enhanced noise component giw is a complex Gaussian random variable with
zero mean and variance║gi║2 N0/2 per dimension. To obtain the estimation of xi, ˆ
xi, we need to apply the quantization or slicing function f(.) on a i, based on the the
maximum a posteriori (MAP) probability decision. For example, if xi’s are binary
phase shift keying (BPSK) modulated and ± √Es are transmitted with equal
probability, the quantization function will give

+ 𝐸𝑠 𝑖𝑓 𝑎𝑖 ≥ 0
ˆ xi = f(ai) =
− 𝐸𝑠 𝑖𝑓 𝑎𝑖 ≥ 0

After detecting xi, the signal of this substream is cancelled from the received vector
y, producing a modified received vector y1

y1 = y − ˆ xi hi

and the channel matrix will be correspondingly modified, by removing the i th


column, as

H1 = [h1, . . . , hi−1, hi+1, . . . , hm]

H1 will be used to calculate the suppression vector for the next sub stream.
Detection and cancellation based on y1 will be similar, and we perform this SIC
procedure for every sub stream until all the sub streams have been detected.

It is clear that for the kth sub stream, applying suppression vector to the received
vector will suppress the remaining Nt − k sub streams and combine Nr − Nt + k
diversity paths to generate the decision statistic. Indeed, by reducing the number of
columns of the channel matrix by one every time we cancel a sub stream and
assuming all sub streams are perfectly detected and cancelled, the k th sub stream
will have a diversity order of Nr − Nt + k.
When processing the kth sub stream, we need to lower the noise enhanced in ZF
detection

ˆxZF = H+(Hx + w) = x + H+ w

So, this method increases the effect of noise. The SNR at k th stream ZF detector
output is

SNRk = |xk|2 / ║Hk║2N0

The modified received vector will be affected and the detection of the remaining
Nt−k substreams will be influenced, resulting an effect called error propagation.
Hence, a proper ordering in detecting substreams is desired for SIC, to ensure that
the error propagation is minimized.

(f) Ordering

The ordering determined based on SNR . Since the error probability decreases with
increasing SNR and the sub stream with the highest SNR introduces the largest
interference on the remaining substreams, the substreams are detected and
cancelled in order or largest SNR, i.e. at stage k of SIC, the substream with the
highest SNR among all remaining Nt − k + 1 substreams is detected and cancelled
first.

V-BLAST ZF detection algorithm

Initialization:

G1 = H†

i=1
Recursion:

ki = arg max j ∉ {k1,...,ki−1} ║ (Gi)j ║2

aki = (Gi)kiyi

ˆyki = Q(aki)

yi+1 = yi − ˆyki(H)ki

Gi+1 = H†¯ ki

Repeat above equations until all transmitted symbols are detected.

G = H† is the Moore penrose pseudo inverse of the channel matrix and is the
nulling matrix in this algorithm. The lower script k i refers to zeroing columns k1, . .
. , ki because the corresponding components are already canceled. Q is for
quantization of the symbol to the nearest constellation point.

(g) V-BLAST/MMSE detection

The steps followed for detection in V-BLAST/MMSE are same as V-BLAST/ZF


algorithm. Only difference lies in the calculation of inverse channel matrix.

V-BLAST MMSE detection algorithm

Initialization:

𝜌 𝜌
G1 = H† ( HH† + N0INr )
𝑀 𝑀

i=1

Recursion:
ki = arg max j ∉ {k1,...,ki−1} ║ (Gi)j ║2

aki = (Gi)kiyi

ˆxki = Q(aki)

yi+1 = yi − ˆxki(H)ki

𝜌 𝜌
Gi+1 = H† ki ( H ki H† ki + N0INr )
𝑀 𝑀

Repeat above equations until all transmitted symbols are detected.

(h) V-BLAST/ZF/MAP algorithm

Initialization:

G1 = H†

i=1

Recursion:

ai = Giyi

si = Q(ai)

pij = fij(aij |sij) / Σ s’є A fij(aij |s’) , j є k1, ..., ki−1

ki = arg max j ∉ {k1,...,ki−1} pij

ˆ xki = siki

yi+1 = yi ─ ˆxki(H)ki
Gi+1 = H†¯ ki

Repeat above equations until all transmitted symbols are detected.

fij is a density function given by

fij(aij /sij) = (1/π σj2) exp { - (1/ σj2) ║ aij - sij ║2 }

where σj2 = N0 ║(Gi)j ║2.

V-BLAST/ZF/MAP is identical to V-BLAST /ZF except for the ordering in which


symbols are detected. In this method the set of all potential symbol decisions are
ranked with respect to their a-posteriori probabilities of being correct, as estimated
by pij . Thus, pij’s are not true MAP probabilities but approximations to how
probable it is that sij = aj .

(i) V-BLAST/MMSE/MAP algorithm

V-BLAST MMSE algorithm is same as V-BLAST ZF algorithm only the method


for channel matrix computation varies.

Initialization:

i=1

𝜌 𝜌
Gi = H† ( HH† + N0INr )
𝑀 𝑀

Recursion:

ai = Giyi

si = Q(ai)
pij = fij(aij |sij)/s’ϵ2A fij(aij |s’) , j ϵ k1, ..., ki−1

ki = arg maxj ϵ{k1,...,ki−1} pij

ˆxki = siki

yi+1 = yi − ˆxki(H)ki

𝜌 𝜌
Gi+1 = H† ki ( H ki H† ki + N0INr )
𝑀 𝑀

Repeat above equations until all transmitted symbols are detected.

In methods above ZF and MMSE uses MAP detector to perform demodulation.


MAP demodulation uses log likelihood ratio to decide whether a ‘0’ or ‘1’ is sent.

You might also like