OFDM Fundamentals and Applications
OFDM Fundamentals and Applications
Yi Xiang
1
3.1.10 RMS delay spread . . . . . . . . . . . . . . . . . . . . 73
3.1.11 Delay spread, coherence bandwidth and ISI . . . . . . 74
3.1.12 Mobility, Doppler effect and coherence time . . . . . . 76
3.2 MIMO wireless communication systems . . . . . . . . . . . . . 80
3.2.1 MIMO systems . . . . . . . . . . . . . . . . . . . . . . 80
3.2.2 MIMO receivers . . . . . . . . . . . . . . . . . . . . . . 83
3.2.3 Transmit beamforming in MISO systems . . . . . . . . 86
3.2.4 Alamouti code and space-time block codes . . . . . . . 89
3.2.5 Singular value decomposition (SVD) in MIMO . . . . . 91
3.2.6 Capacity of MIMO wireless systems . . . . . . . . . . . 94
3.3 Timing recovery and carrier phase estimation . . . . . . . . . 96
3.3.1 Carrier phase estimation . . . . . . . . . . . . . . . . . 96
3.4 Sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
3.4.1 Sampling theorem . . . . . . . . . . . . . . . . . . . . . 97
3.4.2 Continuous time filtering of digital systems, upsam-
pling and downsampling . . . . . . . . . . . . . . . . . 101
3.5 Estimation for wireless communications . . . . . . . . . . . . . 101
3.5.1 Estimation of complex parameters – symmetric zero-
mean complex Gaussian noise . . . . . . . . . . . . . . 101
3.5.2 Pilot symbols, likelihood function and pilot training
based ML estimate . . . . . . . . . . . . . . . . . . . . 104
3.5.3 Mean and variance of pilot/training based ML estimate 106
3.5.4 Bayesian/MMSE (minimum mean squared error) esti-
mation . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
3.5.5 MMSE estimate for Gaussian parameter . . . . . . . . 110
3.5.6 MMSE channel estimation . . . . . . . . . . . . . . . . 113
3.5.7 Linear minimum mean squared error (LMMSE) estimate117
3.5.8 Vector parameter estimation – system model for multi-
antenna downlink channel estimation . . . . . . . . . . 120
3.5.9 LMMSE for multi-antenna downlink channel estimation 121
3.5.10 Error covariance of multi-antenna LMMSE channel es-
timation . . . . . . . . . . . . . . . . . . . . . . . . . . 123
3.5.11 System model for multiple input multiple output (MIMO)
downlink wireless channel estimation . . . . . . . . . . 124
3.5.12 MIMO channel estimation . . . . . . . . . . . . . . . . 126
3.5.13 Introduction and system model for OFDM . . . . . . . 129
3.5.14 System model for OFDM, IFFT/FFT operations . . . 131
3.5.15 LMMSE estimation for OFDM . . . . . . . . . . . . . 132
2
3.5.16 Example of OFDM system and corresponding channel
estimation . . . . . . . . . . . . . . . . . . . . . . . . . 137
3.6 Equalization for Wireless Channels . . . . . . . . . . . . . . . 139
3.6.1 Introduction and system model for equalization . . . . 139
3.6.2 LMMSE equalizer design for wireless channels . . . . . 140
3.6.3 Error for LMMSE channel equalizer and example of
LMMSE channel equalization . . . . . . . . . . . . . . 142
3.6.4 Least square based zero forcing channel equalizer . . . 143
3.6.5 Equalization and approximation error for zero-forcing
equalizer . . . . . . . . . . . . . . . . . . . . . . . . . . 146
3.7 Detection for wireless communications . . . . . . . . . . . . . 146
3
Chapter 1
OFDM
1.1 Multipath
1.1.1 Two Ray Multipath Model
The two ray multipath model forms a basis for understanding many of the
multipath phenomena that we encounter including periodic deep fades and
the depth of the deep fades and also the spacing between the deep fades that
are all related to the multipath delay and also the amount of the attenuation
of the reflected multipath in a two ray model.
4
(α < 1). Note that here we are ignoring the bulk delay from the transmitter
to the receiver to simplify the expression.
The best way of analyzing this model in to analyze it in the frequency
domain:
s(t) = δ(t) + αδ(t − τd )
⇔ S(f ) = 1 + αej2πf τd
(1.1)
= 1 + α cos(2πf τd ) + jα sin(2πf τd )
⇒ |S(f )|2 = 1 + α2 + 2α cos(2πf τd )
5
1.1.2 Multipath Fading Channels
In a small office like shown in Fig. 1.3, the multipath delay spread is quite
small, while in a large office like shown in Fig. 1.4, many factors come into
play, the multipath channel that you encounter depends on where you are in
the office environment. For example, in the case of a lab environment, there
are no obstructions, so you have multiple reflections off the wall and the delays
are larger than the case of a cubicle environment. Large hallways create a
waveguide effect, and you have beams that scatter energy from the wireless
communication link and you have multiple scattering sources and shadowing
effects and penetration (e.g., through the floors to the lower floors).
There are three main sources of multipath: reflection & pass through,
diffraction and scattering, shown in Fig. 1.5
6
Figure 1.5: Three scenarios of multipath.
The free space loss (FSL) is given by
2 2
4πd 4πdf
F SL = =
λ c (1.2)
F SL(dB) ≈ 20 log10 (d) + 20 log10 (f ) + 32.45(d : m, f : GHz),
where we can see that FSL is proportional to the square of distance and
proportional to the square of frequency. However, when taking into consid-
eration antenna gain, high frequency is not a bad thing. f = 5.2 GHz for
802.11a.
However, the distance over which free space applies is quite short for an
indoor environment, and a typical path loss for f = 2.4 GHz is shown in Fig.
1.6.
7
Figure 1.6: 2.4 GHz typical path loss.
A measured channel at 5 GHz is shown in Fig. 1.7 where we can see it
is a frequency selective fading channel in the range of 20 MHz. OFDM can
address this problem.
8
Figure 1.7: 5 GHz channel measurement.
9
Figure 1.8: Multipath in-phase response with rms delay spread 150 ns.
Figure 1.8 is a typical impulse response one might encounter at a rms
delay spread of 150 ns. A couple of definitions:
P 2
α τk
Mean Excess Delay: τ̄ = Pk k 2
k αk
q
RMS Delay Spread (std of delay spread): στ = τ¯2 − (τ̄ )2
P 2 2 (1.3)
¯2 k αk τk
τ = P 2
k αk
1 1
Coherent Bandwidth: Bc = · (β 1, depend on channel)
β στ
10
Figure 1.9: Multipath delay profile with rms delay spread 150 ns.
11
For a rms delay spread of 150 ns, the coherence bandwidth is 6.67 MHz
if β = 1. We see that β 1 is required to actually have flat fading across
each sub-band.
Figure 1.10: Multipath delay profile with rms delay spread 50 ns.
12
What is actually used in IEEE 802.11a is shown in Fig. 1.11, where over
the 20 MHz bandwidth we have 64 subcarriers and thus the bandwidth of a
subcarrier is only 20MHz/64 = 312.5 kHz. Within each subcarrier we have
flat fading whereas over the whole bandwidth we have frequency selective
fading.
13
the time domain. Recall that
Z
X(f ) = x(t)e−j2πf t dt,
Z R (1.4)
x(t) = X(f )ej2πf t df,
R
then the Fourier transform of a rectangular pulse of duration T is given by
sin(πf T ) 2
x(t) = P T (t) ↔ X(f ) = T = T 2 sinc(πf T ), (1.5)
2 πf T
or graphically,
15
If we take 52 carriers and add them up to each other, due to the cen-
tral limit theorem, the addition of the 52 carriers approaches a Gaussian
distribution.
16
1.2.1 OFDM In Terms Of DFT/IDFT
where
k 1
fk = k∆f = , ∆f = . (1.8)
T T
Therefore,
N −1
t
X
x(t) = Xk ej2πk T . (1.9)
k=0
Next, we are going to sample x(t) in the time domain to manipulate the
equations more to get closer to the DFT formulation.
where
T
∆t = , (1.11)
N
thus
N −1
k T
X
xn = Xk ej2π T n N
k=0
N −1
(1.12)
k
X
j2π N n
= Xk e .
k=0
18
Figure 1.23: OFDM modulation and demodulation.
We define
x0 X0
x1 X1
... ,
x, X,
... ,
(1.15)
xN −1 XN −1
19
then we have
w00 w01 w0(N −1)
X0 ... x0
X1 w10
. = . w11 ... w1(N −1) x1
.. ... . ... , (1.16)
.. .. . ..
−1)0
XN −1 w (N
w −1)1
(N
. . . w(N −1)(N −1) xN −1
21
Figure 1.27: Example.
22
Figure 1.28: OFDM steady state model.
23
Figure 1.29: Carrier pilot allocation.
Figure 1.29 shows the allocation of carriers that carry data and pilots.
There are 48 carriers that have data coded bits and 4 pilots in fixed locations
±7 and ±21. The pilots are used to track changes after the initial acquisition,
for example, pilots are used to track the residual carrier frequency offset error
when there is noise causing the rotation of the constellation, and also pilots
are used to track timing drift. When the station is moving or in mobile
situations, we have changes due to Doppler shift and fading due to Doppler
and the pilots are used to track and correct for those changes.
The 6 null carriers in the left and 5 null carriers in the right are guard
intervals in the frequency used to protect adjacent channels against leakage
and also they allow guard interval for filtering and also to meet the spectrum
mask requirements.
24
Figure 1.30: Mask.
If we set the pilot tones at the fixed locations and do not change them
over the length of the packet, there will be spectral lines in the spectrum
which will violate the regulatory requirements. One way to approach this
is to take the pilots and multiply them on a symbol to symbol basis with a
pseudo random sequence of ±1 – modulate them so they are spread out and
there will be no spectral lines. At the receiver the pilots are multiplied by
the same sequence and it is as if we had the pilots with a fixed amplitude.
Fig. 1.31 shows how the carriers are actually input to the FFT.
25
Figure 1.31: Carriers input to the FFT.
26
1.4 Carrier & Frequency Offset Estimation
and Correction
This is essential to maintain orthogonality. At 5 GHz we can have a CFO of
up to 200 kHz between tx and rx. Now we go over the maths for estimation
and correction of CFO.
CFO in the time domain can be represented by ej2π∆f t where ∆f is the
carrier offset. If we sample at sampling interval ∆t or sampling frequency
∆f
fs = 1/∆t, then the nth sample is tn = n∆t = n/fs . Thus we have ej2π fs n as
the carrier offset.
ej2π∆f t
n
tn = n∆f = (1.20)
fs
∆f
⇒ej2π fs n
27
Figure 1.34: Algorithm for the estimation of CFO.
The algorithm to estimate CFO is proposed by Paul Moose in 1994. The
idea exploits the fact that we send two symbols that are exact replicas of each
other, s1 and s2 , both having N samples. For IEEE 802.11a, long symbols of
N = 64 are used.
The tx samples xn are IDFT of the carriers Xk :
K
1 X
xn = Xk ej2πnk/N , N > 2K + 1. (1.21)
N
k=−K
28
Let the carrier spacing be
fs
fc = , (1.25)
N
we have the ratio of offset to carrier spacing defined as
∆f
= . (1.26)
fc
Now if we send s1 followed immediately by s2 , we have
N
X −1
R1k = rn e−j2πnk/N
n=0
2N −1
(1.27)
X
R2k = rn e−j2πnk/N
n=N
If there is no noise:
Y2k Y1k∗ = |R1k |2 ej2π
1 −1 2K sin(2π) (1.31)
⇒ˆ = tan = .
2π 2K sin(2π)
The variance of ˆ is given by
1 η0
σˆ = , (1.32)
4π 2 N Ec
29
where Ec is the carrier energy and N is the number of carriers. In order to
reduce the error of the carrier offset estimation, we would like to use longer
symbols, for IEEE 802.11a we use N = 64 long training symbols.
In IEEE 802.11a we need to go through a two step process – we use short
symbols to do a coarse carrier offset estimation and use long symbols to do
a fine carrier offset estimation on the residual carrier offset and also do the
correction. During a long packet, the pilot tracking algorithm is active in
order to compensate for the still residual carrier offset.
In hardware, CFO can be implemented in both frequency domain and
time domain, as shown below.
30
Figure 1.36: Preambles for IEEE 802.11a.
The preamble is made of two parts, one are the 10 short symbols each
with 16 samples, the other are 2 long symbols (identical to each other) each
with 64 samples following a CP with 32 samples. During packet detection,
the short symbols are processed in order to obtain a coarse carrier frequency
offset and the long symbols are processed to obtain a fine carrier frequency
offset.
Note that Moose’s algorithm can estimate the carrier offset up to half the
carrier spacing due to the fact that tan−1 (·) is valid from 0 to π.
31
Figure 1.38: Coarse and fine carrier frequency offset estimation.
32
Figure 1.40: 1000 Bytes, SNR = 40 dB.
33
Figure 1.42: 1000 Bytes, SNR = 40 dB.
34
Timing synchronization can be obtained through processing of the short
training symbols and also using the long training symbols, while we focus on
using the short training symbols for timing synchronization.
We are interested in first analyzing cross correlation. In cross correlation,
the known complex short training sequence is cross correlated with the in-
coming packet and as the short training symbols overlap the incoming packet
we get a peak in magnitude. However, due to the dispersion of the multipath
fading channel, the peak is not very sharp and the result of the cross corre-
lation is very similar to the impulse response of the channel and the peaks
could degrade considerably and thus just a simple thresholding over the peak
may not be sufficient.
Here is a quick review of convolution and cross correlation.
Z
z(t) = y(t) ∗ x(t) = y(λ)x(t − λ)dλ
R (1.33)
Z(f ) = Y (f ) · X(f )
35
Figure 1.45: Cross correlation.
Z
w(t) = y(t) ∗ x(−t) = y(λ)x(λ − t)dλ
R (1.34)
∗
Z(f ) = Y (f ) · X (f )
where the short training sequence s(t) is designed so that |S(f )|2 = 1, thus
the result of the cross correlation equals the channel impulse response:
Cross correlation of the training symbols t(m) and the received symbols r(n)
in discrete time is
N
X −1
R(n) = t∗ (m)r(n + m), N = 16. (1.37)
m=0
37
Figure 1.48: rms delay spread 2 ns.
38
Figure 1.50: rms delay spread 150 ns.
39
As rms delay spread increases, a peak detection may pick out a peak
which is not the correct peak for time synchronization.
We will turn to auto correlation now.
40
nization.
Below are scatter plots of the preamble rms (we’re measuring the rms
value of the preamble) vs. the peak of the cross correlation with different
delay spreads.
41
Figure 1.55: rms delay spread 150 ns.
M
X −1
S(n) = r∗ (n + m − 16)r(n + m) (1.38)
m=0
Auto correlation can also be used to estimate the coarse CFO:
arg(S(n̂acmax ))
fˆ0 = (1.39)
2π · 16Ts
42
Figure 1.57: Auto correlation rms delay spread 50 ns.
43
Figure 1.59: rms delay spread 150 ns.
1.6 Pilots
44
Figure 1.61: Comb type.
There are two ways to allocate the pilots in an OFDM system shown above.
Compared with the top block type, the bottom comb type has the disadvan-
tage that for every OFDM symbol we only have 4 pilots in fixed locations,
and the advantage is if the channel changes rapidly on even a per OFDM
symbol basis then we can track this fast fading channel using the comb type
pilots. We will be dealing with the comb type through out.
45
channel interpolation in order to get the estimated channel response for every
carrier. One way of doing so is to use the piecewise linear approximation,
as shown below, and of course there are more advanced schemes than this
piecewise linear approximation.
46
not hold true for, say, a fast Rayleigh fading channel and there are better
ways to place the pilots.
47
Figure 1.65: Pilot allocation and channel estimation.
The pilots are used to estimate the channel after the initial acquisition
and channel estimation equalization (say, due to motion), track the residual
CFO estimation error.
Pilots can also be used to correct timing offset. Timing offset occurs when
we sample at different locations at rx and tx. Note the Fourier transform, a
delay in time translates to a phase shift (directly related to the time delay)
in frequency:
x(t − td ) ↔ X(f )ej2πf td (1.41)
48
Figure 1.66: Timing offset.
With a given fixed timing offset, each pilot will have a phase shift that
depends on the frequency of the pilot. Since we know the pilot frequencies
and we observe the amount of phase shifts of each pilot we can estimate the
time delay on a per pilot basis and average over the four pilots to find the
time shift and correct the time shift for all the data carriers.
49
Figure 1.67: Timing offset 12.5 ns.
With a fixed timing error, during the initial channel estimation and cor-
rection, since the the timing offset shows as a phase shift in the frequency
domain, it can be incorporated into the frequency response of the channel so
that during acquisition when we do the initial channel estimation and equal-
ization we can equalize out the effects of the timing offset. However, for long
packets due to temperature and so forth there’s a clock drift and the pilots
are used to track the timing error and correct them.
50
Figure 1.68: Pilot tracking with motion (Doppler shift).
51
where α is called the forgetting factor that is close to 1.
52
Figure 1.71: BER in fast Rayleigh fading channel.
53
Q1
The Taylor expansion of sin(x) at x = 0 is given by
x3 x5 x7 (−1)n−1 x2n−1
sin(x) = x − + − + ··· + + O(x2n ),
3! 5! 7! (2n − 1)!
A1
Note that 9!1 ≈ 2.76 × 10−6 , thus to reach a precision of 10−5 , we only need
to consider the first 4 terms of Tylor expansion, i.e.,
1 1 1
sin(1) ≈ 1 − + − ≈ 0.8415
3! 5! 7!
Q2
Find the interval of convergence and function s(x) of the power series
∞
X (−1)n−1 x2n+1
.
n=1
n(2n − 1)
A2
x2n+1
For all x, let an = n(2n−1) , then by using the ratio test,
so the radius of convergence is 1 and since it is easy to see the series converges
when |x| = 1, the interval of converges is |x2 | 6 1 or −1 6 x 6 1.
54
To find the function representation of the given power series, we make use
of the following:
∞
2
X (−1)n−1
ln(x + 1) = x2n ,
n=1
n
∞
−1
X (−1)n−1 2n−1
tan (x) = x ,
n=1
2n − 1
and thus
∞ ∞
X (−1)n−1 x2n+1 X 2n − (2n − 1) 2n+1
= (−1)n−1 x
n=1
n(2n − 1) n=1
n(2n − 1)
∞ ∞
X (−1)n−1 2n+1 X (−1)n−1 2n+1
=2 x − x
n=1
2n − 1 n=1
n
∞ ∞
2
X (−1)n−1 2n−1 X (−1)n−1 2n
= 2x x −x x
n=1
2n − 1 n=1
n
= 2x tan−1 (x) − x ln(x2 + 1)
2
= s(x)
As a sanity check, both the function s(x) = 2x2 tan−1 (x) − x ln(x2 + 1) and
the power series are plotted in the figure below using Matlab, for the interval
of convergence x ∈ [−1, 1].
55
Chapter 2
Global Navigation
Satellite System (GNSS)
GNSS is used to describe the collection of satellite positioning systems that
are now operating or planned.
The timeline of GNSS is
• GLONASS – Russian
• GALILEO – EU
• Beidou – Chinese
GNSS has increasingly been used for positioning, navigation and track-
ing in many fields such as military, aviation, agriculture, UAVs and robotics.
Also, GNSS offer important contributions in many scientific research do-
mains. GNSS function under all weather conditions, day and night, have
global coverage, provide data in near real time at high temporal rate and
high accuracy. It is a relatively low cost service since we need to take care of
the user segment only. Each GNSS is comprised of three segments.
56
at attitudes of roughly 20000 km above the earth’s surface, and the
satellites orbits the earth every about 12 hours. Counting all GNSS,
there are > 120 satellites in orbits today. The satellites know their
orbit parameters and time very accurately. Information is transmitted
to the receivers to obtain satellites’ position, time and status.
• The control system comprises a network of monitor, control and upload
stations to ensure healthy satellites.
• The user segment refers to the equipment that processes the received
GNSS signals to derive the location and time information. The primary
components of the user segment are antennas and receivers (process-
ing units), which may be integrated into one assembly or physically
separate.
Estimation of the user’s position: the GNSS signal travels from the satel-
lite through space and then through the various layers of the atmosphere to
the ground. To obtain the accurate 3D (x, y, z) position and time, we need to
know the length of the direct path from the satellite to the user equipment,
called the range to the satellite. To obtain the range, we need to know the
signal’s travel (propagation) time = time signal reached receiver - time signal
left satellite, and the propagation time multiplied by the speed of light equals
the (estimated) range or the distance between the receiver and the satellite.
To estimate the user’s 3D position, we need estimates from three satellites
and their exact positions, and this is called Trilateration.
58
Chapter 3
and the multipath impulse response of a L path channel is given by the sum
59
of individual responses as
L−1
X
h(t) = ai δ(t − τi ). (3.2)
i=0
Now let us look at the transmitted signal which is a bandpass signal given by
where s(t) is termed as the complex baseband signal and fc is the carrier
frequency: 2.1 GHz for 3G and 2.5 GHz for 4G.
The received signal is thus the sum of the various multipath components
given by
L−1
X
yp (t) = <{ai s(t − τi )ej2πfc (t−τi ) }
i=0
L−1
X
ai s(t − τi )e−j2πfc τi ej2πfc t
= < (3.4)
i=0
( L−1 )
X
ai s(t − τi )e−j2πfc τi ej2πfc t .
=<
i=0
The complex baseband received signal is found by removing the carrier part
as
L−1
X
y(t) = ai s(t − τi )e−j2πfc τi . (3.5)
i=0
60
depends on the attenuation and delay of different multipath components of
the channel.
For L = 2, a0 = a1 = 1, τ0 = 0, τ1 = 1/(2fc ) we have
1
X
h= ai e−j2πfc τi
i=0
= a0 e−j2πfc τ0 + a1 e−j2πfc τ1 (3.8)
= 1 + (−1)
=0
and thus the received signal y(t) = 0 and this is a case of destructive inter-
ference.
In general, the coefficient h varies depending on the various channel at-
tenuation factors ai and delays τi . h is known as the fading channel coef-
ficient. This fading process, which causes the received power to vary, is an
important and key aspect of a wireless communication system .
61
in nature by the central limit theorem.
1 1 2
x ∼ N (0, ) ⇒ fX (x) = √ e−x
2 π
(3.11)
1 1 2
y ∼ N (0, ) ⇒ fY (y) = √ e−y
2 π
Further assuming x, y are independent random variables, we have
1 −(x2 +y2 )
fX,Y (x, y) = fX (x)fY (y) = e (3.12)
π
Now consider
h = x + jy = aejφ (3.13)
where
p
a= x2 + y 2
−1 y
φ = tan
x (3.14)
x = a cos φ
y = a sin φ
Recall that
" #
∂x ∂y
cos φ sin φ
JXY = ∂a
∂x
∂a
∂y = ⇒ |JXY | = a cos2 φ − (−a sin2 φ) = a
∂φ ∂φ
−a sin φ a cos φ
(3.15)
thus
a −a2
fA,Φ (a, φ) = fX,Y (x, y)|JXY | = e (3.16)
π
and
Z π
2
fA (a) = fA,Φ (a, φ)dφ = 2ae−a (3.17)
−π
Note that fA (a) is known as a Rayleigh distribution and hence the channel
coefficient h is also termed as a Rayleigh fading channel.
62
3.1.3 Rayleigh fading channel
The phase of the channel coefficient h is given by
Z ∞
fΦ (φ) = fA,Φ (a, φ)da
0 Z
∞
1 2
= 2ae−a da
2π 0
∞ (3.18)
1 −a2
= −e
2π 0
1
= −π <φ6π
2π
and this is a uniform distribution.
2
fA (a) = 2ae−a a > 0
1 (3.19)
fΦ (φ) = −π <φ6π
2π
Now note that
a −a2
fA,Φ (a, φ) = e
π
1 2
(3.20)
= · 2ae−a
2π
= fA (a)fΦ (φ)
thus the amplitude A and phase Φ are independent random variables.
y1
h1
x1
Tx Rx
y2
h2
63
Since the are multiple Rx antennas, this kind of diversity is also called
receive diversity. Other forms of diversity include transmit diversity, tem-
poral diversity, frequency diversity and multi-user diversity.
In the receive diversity block diagram shown above, hi is the fading coef-
ficient between transmit antenna T1 and receive antenna Ri and yi denotes
the symbol received on received antenna Ri . This system can be modeled as
y1 = h1 x + n1
(3.21)
y2 = h2 x + n2
n1 , n2 ∼ N (0, σ 2 )
(3.22)
E{n1 n2 } = 0
ỹ = w1 y1 + w2 y2
y1
= w 1 w2
y2
(3.25)
= w̄T ȳ
= w̄T (h̄x + n̄)
= w̄T h̄x + w̄T n̄.
Clearly w̄T h̄x is the signal component and w̄T n̄ is the noise component.
Therefor, if the power of the transmitted signal x is E{x2 } = P , then the
SNR is given by
|w̄T h̄|P
SN R = . (3.26)
E{|w̄T n̄|2 }
64
Consider the noise component, the noise power is given by
E{|w̄T n̄|2 } = E{(w1 n1 + w2 n2 )2 }
= E{w12 n21 + w22 n22 + 2w1 w2 n1 n2 }
= w12 E{n21 } + w22 E{n22 } + 2w1 w2 E{n1 n2 } (3.27)
= σ 2 (w12 + w22 )
= σ 2 kw̄k2
y1
h1
x1
Tx Rx
y2
h2
65
Consider a system with 1 Tx antenna and 2 Rx antennas shown above where
1 1
h1 = √ + √ j
2 2
(3.31)
1 1
h2 = √ − √ j
2 2
and thus
1 1
y1 = √ + √ j x + n1
2 2
(3.32)
1 1
y2 = √ − √ j x + n2
2 2
We assume
1
E{|n1 |2 } = E{|n2 |2 } = σ 2 = = −3dB (3.33)
2
and in vector notations we have
y1 h1 n
+ x+ 1
y2 h2 n2 (3.34)
⇒ȳ = h̄x + n̄.
|w̄H h̄|P
SN R = = 4P. (3.36)
σ 2 kw̄k2
Now we generalize MRC to L antennas where the channel coefficients are
h2 , h2 , . . . , hL .
y1 h1 n1
y2 h2
. + . x + n.2
.. .. .. (3.37)
yL hL nL
⇒ȳ = h̄x + n̄.
66
Again, we assume noise to be i.i.d. Gaussian with variance σ 2 . Now we
perform the combining at the receiver as
ỹ = w1∗ y1 + w2∗ y2 + · · · + wL∗ yL
= w̄H ȳ
(3.38)
= w̄H (h̄x + n̄)
= w̄H h̄x + w̄H n̄.
67
Since g is a random variable, we have to average over its pdf to derive the
average BER of the multiple antenna system.
Z ∞ p
Pb = Q g · SN R fG (g)dg
0
Z ∞ p 1
= Q g · SN R g L−1 e−g dg (3.45)
0 (L − 1)!
L L−1 l
1−λ X L+l−1 1+λ
=
2 l 2
l=0
where r
SN R
λ= . (3.46)
2 + SN R
For L = 2, we have 2
1−λ
Pb = (2 + λ) . (3.47)
2
Now we develop an approximation for BER in a multiple antenna wireless
system. Note that
s !
1−λ 1 1
= 1−
2 2 1 + SN2 R
− 12 !
1 2
= 1− 1+
2 SN R (3.48)
1 2 1
≈ 1− 1+ · −
2 SN R 2
1
= (SN R 1, (1 + x)−1/2 ≈ 1 − x/2, x = 0+ )
2SN R
and similarly,
1+λ
≈ 1. (3.49)
2
68
Therefore, at reasonably high SNR, we have
L−1
L X l
1−λ L+l−1 1+λ
Pb =
2 l 2
l=0
L−1
L X
1 L+l−1 (3.50)
≈
2SN R l
l=0
L
2L − 1 1
=
L 2SN R
P kh̄k2 gP
SN Rm = = (3.55)
σ2 σ2
where gP is the received power and σ 2 is the noise power. A deep fade occurs
if the received power is less than the noise power so that the signal cannot
be extracted from the noise, i.e., the condition for deep fade is given by
σ2 1
g< = . (3.56)
P SN R
69
Thus the probability of deep fade is
1
P r(deep fade) = P r g < , (3.57)
SN R
and recall that g is a χ2 random variable with 2L degrees of freedom with
pdf
g L−1 −g
fG (g) = e , (3.58)
(L − 1)!
and thus at high SNR, e−g ≈ 1, and
1
P r(deep fade) = P r g <
SN R
Z 1
SN R
= fG (g)dg
0
Z 1
SN R g L−1 −g
= e dg
0 (L − 1)! (3.59)
Z 1
SN R g L−1
= dg
0 (L − 1)!
1
=
L! · SN RL
1
∝ .
SN RL
With increasing number of antennas L, the probability of deep fade decreases
and this leads to a significant decrease in BER.
The intuition behind this is also easy to understand. With a single Rx
antenna, we have a deep fade if the channel between the Tx antenna and Rx
antenna is in deep fade, with probability 1/SN R. With L Rx antennas, the
probability that each link is in deep fade is 1/SN R. For the system to be in
deep fade, all links have to be in deep fade, and if the fades in each link is
independent, the probability that the system is in deep fade is 1/SN RL .
Since we have multiple Rx antennas distributed in space, this kind of
diversity is called spatial diversity. One key assumption is all channel co-
efficients h1 , h2 , . . . , hL are independently fading and for this assumption to
hold, the various Rx antennas have to be placed sufficiently far apart, and
the minimum distance between two antennas is given by
λ
d= (3.60)
2
70
where λ is the wavelength of the carrier, i.e.,
c
λ= (3.61)
fc
where c = 3 × 108 m/s is light speed and fc is the carrier frequency. For
fc = 900 MHz, the minimum distance is roughly 16.6 cm and this is not
possible in a regular phone. However, it is possible in a larger device light a
router or base station. For a 3G/4G system with fc = 2.3 GHz, the minimum
spacing is roughly 6.6 cm and this is possible on a phone.
71
given by
log Pe
d = − lim
SN R→∞ log SN R
log 2L−1
1 1
L 2L SN RL
= − lim
SN R→∞ log SN R
−L log SN R + log 2L−1
L − L log 2 (3.64)
= − lim
SN R→∞ log SN R
L log SN R − log 2L−1
L + L log 2
= lim
SN R→∞ log SN R
= L.
72
3.1.9 Maximum delay spread
Recall that the channel response is
L−1
X
h(t) = ai δ(t − τi ) (3.67)
i=0
where L is the number of the multipath components, ai and τi are the atten-
uation and delay of the ith path, respectively.
The power profile Φ(t) is defined as
L−1
X
Φ(t) = |ai |2 δ(t − τi )
i=0
L−1
(3.68)
X
= gi δ(t − τi )
i=0
where
gi , |ai |2 (3.69)
is the gain of the ith path.
Consider an L = 4 multipath channel:
3
X
h(t) = gi δ(t − τi ) (3.70)
i=0
g0
g1
g2
g3
ω
τ0 τ1 τ2 τ3
73
Note that the various delays are spread over an interval of time and hence
the spread of delays is called the delay spread.
Denote the first arriving component is τ0 and the last arriving component
is τL−1 , then the maximum delay spread στmax = τL−1 − τ0 .
The deviation is
στ2 = b0 (τ0 − τ̄ )2 + · · · + bL−1 (τL−1 − τ̄ )2 (3.73)
and the RMS delay spread is
L−1
! 12
X
στ = bi (τi − τ̄ )2
i=0
PL−1 !1
2 2
g (τ
i=0 i i − τ̄ ) (3.74)
= PL−1
i=0 gi
PL−1 !1
2 2 2
i=0 |ai | (τi − τ̄ )
= PL−1 2
i=0 |ai |
74
3.1.11 Delay spread, coherence bandwidth and ISI
We have looked at two metrics for delay spread, namely the maximum de-
lay spread and the RMS delay spread. Consider the following transmitted
symbols with L = 2 multipath channels.
t
s0 T s1 s2 s3 s4 s5 s6 s7
-1
Note that when the relative delay τ1 − τ0 > T , then different symbols
interfere with each other and this is termed as inter-symbol interference
(ISI). Note also that τ1 − τ0 = στ the delay spread.
If στ > T (delay spread > symbol duration), we have ISI which leads to
distortion of the original tx signal. To avoid ISI, we need T > στ .
A typical delay spread of an outdoor wireless channel is on the order of
2µs. A typical hexagonal cell with a base station at the center has a cell
radius of several kilometers, and thus LOS and NLOS path are both on the
order of 1km, so is their difference ∆d. Therefore,
∆d
στ ∼ = 3.3µs. (3.75)
c
Typically, στ ∈ [1µs, 3µs] and a typical outdoor delay spread or a wireless
channel is 2 µs.
For a channel impulse response h(t) ↔ H(f ), we have
75
Bc
Bc
f
Bs
When the flat portion of the channel frequency response is larger than
the signal bandwidth Bs , the output signal is undistorted and otherwise the
output signal is distorted. The quantity Bc when the channel frequency
response is flat is called the coherence bandwidth. When Bc > Bs we have
a flat fading channel and when Bc < Bs , we have a frequency selective
fading channel.
Recall that
L−1
X
h(t) = ai δ(t − τi ) (3.77)
i=0
and
δ(t − τi ) ↔ e−j2πf τi
L−1 L−1
X X (3.78)
⇒ ai δ(t − τi ) ↔ ai e−j2πf τi = H(f )
i=0 i=0
Note that
e−j2πf τi =0
f =0
−j2πf τi
(3.79)
e = −1
f = 2τ1
i
76
In general, approximately the bandwidth of channel is
1
B= = Bc (3.80)
στ
and since στ ∼ 2µs, we have Bc ∼ 500kHz.
Now, to have frequency selective fading, we need
Bs > Bc
1 1
⇒ >
T στ (3.81)
⇒στ > T
⇒condition for ISI
and indeed, frequency selective distortion (in the frequency domain) and ISI
(in the time domain) are the same thing!
To summarize:
Bs > Bc ⇒ στ > T ⇒ frequency selective fading, ISI
(3.82)
Bs < Bc ⇒ στ < T ⇒ frequency flat fading, no ISI
Base station
θ v
Mobile
Figure 3.7: Mobile moving at an angle of θ with respect to the base station.
Consider the ith path. If θ < π/2, the distance between the base station and
the mobile is decreasing. Therefore the delay τi is also changing. For a given
time t,
v cos θt
τi (t) = τi − (3.87)
c
and
L−1
ai e−j2πfc (τi − )
X v cos θt
h(t) = c
i=0
L−1
(3.88)
X
= ai e−j2πfc τi ej2πfd t
i=0
and if the correlation between X and Y is high, then X and Y are similar
and vice versa. Let ai (t) denote the channel coefficient at time t for the ith
path and
ai (t) = ai e−j2πfc τi ej2πfd t , (3.93)
where ej2πfd t is the time-varying phase factor that results in time-varying
channel. We compute the correlation
It correlation between ai (t) and ai (t + ∆t) is high, then the channel has not
changed significantly from t to t + ∆t.
79
assuming normalized |ai |2 = 1, then
Ψ(∆t) = E{e−j2πfd ∆t }
v
= E{e−j2πfc c cos θ∆t } (3.96)
−j2πfdmax cos θ∆t
= E{e }
Thus
Z π
1 −j2πfdmax cos θ∆t
Ψ(∆t) = e dθ
0 π
= J0 (2πfdmax ∆t)
1 (3.98)
= J0 2π ∆t
4Tc
π ∆t
= J0 ·
2 Tc
80
Fourier transform of the correlation function:
Z ∞
SH (f ) = Ψ(∆t)e−j2πf ∆t d∆t
Z−∞
∞
= J0 (2πfdmax ∆t) e−j2πf ∆t d∆t
−∞ (3.99)
1 rect 2ff d
= ·r 2 ,
πfd
1 − ffd
where (
1, |x| 6 21
rect(x) = (3.100)
0, otherwise.
This is U-shaped spectrum and shoots up to infinity at ±fd and is known as
the Jakes model. Note that the Doppler spread is the spread of the Doppler
spectrum. To grab a feel of how fast the channel is changing, we can compute
the correlation function and take the Fourier transform to find the Doppler
spectrum and measure the spread of the Doppler spectrum.
Hence, to get knowledge of the channel, it needs to be measured at least
once every coherence time. Measuring or estimating the channel coefficient
h is known as channel estimation.
Let us go to one final aspect of channel characterization called under
spread channels. Recall that στ ≈ µs and Tc ≈ ms. In a typical channel,
the delay spread is much smaller than the coherence time and a channel
satisfying this condition this is called an under spread channel.
81
x1 y1
x2 y2
Tx Rx
xt yr
The multiple antennas at the receiver results in diversity and thus in-
creased reliability, while MIMO can also be used to increase the data rate
possible by transmitting several information streams in parallel. The prop-
erty of transmitting multiple information streams in parallel is termed as
spatial multiplexing.
Now we want to develop a model for MIMO systems. At the transmitter,
we have t transmit antennas and thus t symbols can be transmitted simulta-
neously and we denote the (t-dimensional) transmit vector as
x1
x2
x̄ =
... ,
(3.101)
xt
and similarly at the receiver, we have r receive antennas and we denote the
(r-dimensional) receive vector as
y1
y2
... .
ȳ = (3.102)
yr
The t-dimensional transmit vector is passed through the channel and the
output is a r-dimensional receive vector, and thus the MIMO channel H is a
r × t matrix.
ȳr×1 = Hr×t x̄t×1 + w̄r×1 (3.103)
where
h11 h12 . . . h1t
h21 h22 . . . h2t
H=
... .. . . . ... (3.104)
.
hr1 hr2 . . . hrt
82
and the coefficient hij (ith row and j th column of H) is the channel coefficient
between the ith receive antenna and the j th transmit antenna and the total
number of channel coefficients in the MIMO system rt.
Let us now look at a simple example of a MIMO system. Consider we
have r = 3 receive antennas and t = 2 transmit antennas, i.e., we have a 3 × 2
MIMO system. The transmit and receive vectors are
y1
x1
x̄ = , ȳ = y2 , (3.105)
x2
y3
and thus
y1 h11 h12 w1
y2 = h21 h22 x1 + w2 (3.106)
x2
y3 h31 h32 w3
or
y1 = h11 x1 + h12 x2 + w1
y2 = h21 x1 + h22 x2 + w2 (3.107)
y3 = h31 x1 + h32 x2 + w3
In general for a r × t MIMO system, the symbol received on the lth receive
antenna is given by
yl = hl1 x1 + hl2 x2 + · · · + hlt xt + wl , 1 6 l 6 r. (3.108)
There are some special cases for a MIMO system. If t = 1, we have a
SIMO system:
y1 h1 w1
y2 h2
= x + w2
. . . . . . . . . (3.109)
yr hr wr
and if r = 1, we have a MISO system:
x1
x2
y1 = h1 h2 . . . ht . . . + w1
(3.110)
xt
or
y1 = h̄H x̄ + w1 (3.111)
83
where
h∗1
h∗2
, (3.112)
. . .
h∗t
and when r = t = 1, we have
y = hx + w (3.113)
where h is the fading channel coefficient, this is termed as SISO.
Now we look at the noise vector w̄r×1 , each wi is Gaussian with mean 0
and variance σ 2 and they are i.i.d., i.e.,
E{wi } = 0
E{|wi |2 } = E{wi wi∗ } = σ 2 (3.114)
E{wi wj∗ } = 0 if i 6= j
and thus the covariance matrix of the noise vector w̄ is
H
¯ = E{w̄ w̄ }
Rww
w
1
w2 ∗ ∗
=E w w . . . wr∗
. . . 1 2
wr
(3.115)
w1 w1∗ w1 ww∗ w1 wr∗
...
w w∗ w w∗
... w2 wr∗
2 1 2 2
=E .. . .. ... ..
. .
wr w1 wr w2∗
∗
... w r wr∗
= σ 2 Ir
84
If r > t, i.e., more Rx antennas than Tx antennas, then H is not a square
matrix and H −1 does not exist. There are r equations and t unknown quan-
tities, and r > t implies that number of equations > number of unknowns.
We denote the error as
ē = ȳ − H x̄ (3.118)
and we want to minimized the error
min kēk2 = min kȳ − H x̄k2 (3.119)
we find x̄ such that the squared norm of the error is minimized, and this
is called a least square (LS) problem. To find the minimum, we have to
differentiate and set equal to 0. However, x̄ is a t × 1 transmit vector, and
thus we have to differentiate w.r.t. vector x̄.
Consider a function of x̄, F (x̄), then
∂F
∂x1
∂F
∂F
= ∂x.. 2 (3.120)
∂ x̄ .
∂F
∂xt
For example,
x2
x2
c̄T x̄ = c1 c2 . . . ct
...
(3.121)
xt
= c1 x1 + c2 x2 + · · · + ct xt ,
then
c1
T c2
∂c̄ x̄
=
... = c̄
(3.122)
∂ x̄
ct
Since c̄T x̄ = x̄T c̄, we have
∂ x̄T c̄ ∂c̄T x̄
= = c̄. (3.123)
∂ x̄ ∂ x̄
Now consider the quadratic form
x̄T P x̄ (3.124)
85
where P is a symmetric matrix P = P T , using the product rule, we have
∂ x̄T P x̄
= P x̄ + (x̄T P )T = 2P x̄. (3.125)
x̄
The LS error (cost) function is
x̂ = (H H H)−1 H H ȳ (3.129)
x̂ = (H T H)−1 H T ȳ
−1
2 3 y1
2 1 4 2 1 4
= 1 3 y2
3 3 2 3 3 2
4 2 y3 (3.131)
y
−0.0405 −0.16776 0.3121 1
= y2 .
0.16767 0.2659 −0.1503
y3
86
We now turn to the BER of a MIMO system with zero forcing receiver.
Consider matrix H with all element i.i.e. complex Gaussian with average
power 1 and transmit symbol power P , i.e., E{|xi |2 = P }. Then the BER for
BPSK with zero forcing (ZF) receiver = Receive antenna MRC system with
L = r − t + 1 antennas.
L
2L − 1 1
Pb = (3.132)
L 2SN R
at high SN R for L = r − t + 1.
x1
h1
yr
Tx Rx
x2
h2
where
w ∼ N (0, σ 2 ). (3.134)
A natural question to ask is, what is the optimal transmission scheme for
this MISO system?
Let x be the transmit symbol, then the transmit vector is given by
1 h∗1
x̄ = ∗ x, (3.135)
kh̄k h2
87
where p
kh̄k = |h1 |2 + |h2 |2 , (3.136)
and the blue part, which is a unit vector, is called transmit beamformer.
Therefore, " h∗ #
1
kh̄k
x
x̄ = h∗2 (3.137)
kh̄k
x
and at the receiver, we have
h∗1 1
y = h1 h2 x+w
h∗2 kh̄k (3.138)
= kh̄kx + w
kh̄k2 E{|x|2 }
SN R =
σ2 (3.139)
2
kh̄k P
=
σ2
and this is the same SNR as MRC. Therefore, transmit beamforming is able
to achieve the same SNR as MRC. However, the channel coefficients (CSI -
channel state information) need to be known at the transmitter, and this is
usually difficult.
To summarize, transmit beamforming is optimal in the sense that it yields
the same SNR as MRC, but it is also challenging to implement because CSI
is required at the transmitter.
Let us look at a simple example. Consider a 1 × 2 MISO system
x1
y = 2 + j 1 − 2j +w (3.140)
x2
88
and
y = kh̄kx + w
√ (3.142)
= 10x + w
and
10P
SN R = (3.143)
σ2
The results on transmit beamforming can be extended to a general sce-
nario with L antennas:
x1
x2
y = h1 h2 . . . hL ... + w
(3.144)
xL
= h̄T x̄ + w
w ∼ N (0, σ 2 ). (3.145)
The transmit beamforming is given by
1
x̄ = · h̄∗ · x (3.146)
kh̄k
and thus
1
y = hT · h̄∗ · x + w
kh̄k (3.147)
= kh̄kx + w
and
kh̄k2 P
SN R = (3.148)
σ2
and thus the BER of transmit beamforming is identical to that of MRC and
thus L
2L − 1 1
Pb = (3.149)
L 2SN R
at high SN R where L is the number of transmit antennas.
89
3.2.4 Alamouti code and space-time block codes
In this section we focus on Alamouti code which is a type of space-time block
code and which does not need CSI or knowledge of channel coefficients at Tx
and hence is very useful from a practical viewpoint.
Consider a 1 × 2 MISO system (r = 1, t = 2) and
x1
y = h1 h2 + w. (3.150)
x2
We consider 2 symbols x1 , x2 . In the first time instant, we transmit as follows
x1 ←− Tx antenna 1
(3.151)
x2 ←− Tx antenna 2
and thus
x1
y1 = h1 h2 + w1 . (3.152)
x2
In the second time instant, we transmit as follows
− x∗2 ←− Tx antenna 1
(3.153)
x∗1 ←− Tx antenna 2
and thus
−x∗2
y2 = h1 h2 + w2
x∗1
= −h1 x∗2 + h2 x∗1 + w2
⇒ y2∗ = −h∗1 x2 + h∗2 x1 + w2∗ (3.154)
= h∗2 x1 − h∗1 x2 + w2∗
x1
= h2 −h∗1
∗
+ w2
x2
Combining y1 and y2 results in
y1 h1 h2 x1 w
∗ = ∗ ∗ + 1∗ (3.155)
y2 h2 −h1 x2 w2
and we can denote this by
ȳ = c̄1 c̄2 x̄ + w̄
(3.156)
= c̄1 x1 + c̄2 x2 + w̄
90
where
h h2
c̄1 = 1∗ , c̄2 = . (3.157)
h2 −h∗1
and w̄ is the Gaussian noise vector with i.i.d. elements with mean 0 and
variance σ 2 . Observe that
∗ h 2
c̄H
1 c̄2 = h1 h2 −h∗1
(3.158)
= h∗1 h2 − h2 h∗1
=0
i.e., c̄1 and c̄2 are orthogonal. Therefore, Alamouti code is also known as
orthogonal space-time block code (OSTBC).
Now note that
c̄H
1 c̄H
ȳ = 1 (c̄1 x1 + c̄2 x2 + w̄)
kc̄1 k kc̄1 k
c̄H
1 c̄1 c̄H
1 c̄2 c̄H w̄
= x1 + x2 + 1
kc̄1 k kc̄1 k kc̄1 k (3.159)
c̄H w̄
= kc̄1 kx1 + 1
kc̄1 k
, kc̄1 kx1 + w̃
where
c̄H w̄
w̃ = 1 , (3.160)
kc̄1 k
and
E{w̄w̄H } = σ 2 I, (3.161)
and thus
c̄H H
∗ 1 w̄ w̄ c̄1
E{w̃w̃ } = E ·
kc̄1 k kc̄1 k
c̄H c̄1 (3.162)
= 1 · E{w̄w̄H } ·
kc̄1 k kc̄1 k
= σ 2 I,
i.e.,
E{|w̃|2 } = E{w̃w̃∗ } = σ 2 . (3.163)
91
Therefore, the SNR is given by
kc̄1 k2 E{|x1 |2 }
SN R = , (3.164)
σ2
where
kc̄1 k2 = |h1 |2 + |h∗2 |2 = kh̄k2 . (3.165)
Note that we have 2 symbols per transmit vector, thus if the transmit power
is P , then E{|x1 |2 } = E{|x2 |2 } = P/2, i.e., each symbol has half the transmit
power. Therefore, the SNR is given by
kh̄k2 P
SN R = , (3.166)
2σ 2
which is half the SNR of MRC. We pay the price of 3 dB in performance for
not requiring CSI.
92
i.e., the columns ūi are orthonormal, and thus
H
ū1
H
ūH2
U U = ū
... 1 2 ū . . . ūt
ūH
t
kūk2 ūH H
1 ū2 . . . ū1 ūt (3.169)
ūH2 ū1 kū2 k
2
. . . ūH 2 ūt
= ..
.. ... ..
. . .
ūt ū1 ūt ū2 . . . kūt k2
H H
= It×t .
Similarly,
V H V = V V H = It×t , (3.170)
and thus V is also called a unitary matrix. The matrix Σ satisfies that all the
singular values σ1 , σ2 , . . . , σt are non-negative and are arranged in decreasing
order of magnitude:
σ1 > σ2 > · · · > σt > 0. (3.171)
The number of non-zero singular values is equal to the rank of the matrix.
SVD can be employed as a tool for MIMO wireless communication. Let
H be the MIMO channel matrix such that
H = U ΣV H (3.172)
and
UHU = I
V HV = V V H = I (3.173)
Σ is a diagonal matrix of decreasing non-negative singular values.
U H ȳ = U H (U ΣV H x̄ + w̄) (3.175)
93
or
ỹ = U H U ΣV H x̄ + w̃ (3.176)
and since U H U = I, this reduces to
ỹ = ΣV H x̄ + w̃. (3.177)
x̄ = V x̃ (3.178)
94
Note that the precoding matrix V at the transmitter requires CSI which
is generally not known to the transmitter. Conceptually the simplest solu-
tion would be that the receiver notify the transmitter the precoding matrix.
However, it is not easy to implement since it would required pretty large
bandwidth to send the whole matrix. One way to word around this is to
predefine a few channel matrices (e.g., 4 in LTE TM4 for 2 × 2 MIMO and
16 for 4 × 4 MIMO) based on extensive investigation of the radio channel
during the standardization process. These predefined matrices form a code-
book and are known to both Tx and Rx. The Rx select a specific precoder
based on its channel estimation and notify the Tx the index of the precoder.
The algorithm by with the Tx select from the codebook which best fit for the
channel at a specific moment is by calculating
Ω = W (H H H)W H (3.183)
where
ỹi : received symbol on the ith channel
σi : gain of the ith channel
(3.185)
x̃i : transmit symbol for the ith channel
w̃i : Gaussian noise on the ith channel with variance σ 2
E{|x̃i |2 } = Pi , (3.186)
and differentiating the Lagrangian with respect to the power of the ith channel
results in
i σ2
∂L σ2
= σ2 P
+ λ(0 − 1) = 0
∂Pi 1 + σi 2 i
σi2
σ2
⇒λ = σ2 P
1 + σi 2 i (3.193)
2
1 σ
⇒ = Pi + 2
λ σi
+
1 σ2
⇒Pi = − since Pi > 0
λ σi2
96
now the Lagrange multiplier λ can be found by
t
X
Pi = P
i=1
t
(3.194)
1 σ2
X
⇒ − = P.
i=1
λ σi2
This optimal algorithm to achieve the capacity or maximum sum rate of the
MIMO system is termed as water filling algorithm.
M L : θ̂ = argmaxθ p(r|θ)
p(r|θ)p(θ) (3.195)
M AP : θ̂ = argmaxθ p(θ|r) =
p(r)
Without prior knowledge of θ, we may assume θ is uniform, which makes the
two estimates identical. A ML estimator treats the signal parameter θ as
unknown but deterministic, while a MAP estimator treats it as random with
an a priori pdf p(θ).
97
3.4 Sampling
3.4.1 Sampling theorem
Consider periodic sampling: we sample a continuous time signal xc (t) every
T seconds, and thus the discrete time signal is given by
where
T : sampling period/interval
2π
ωs = : sampling frequency (rads) (3.197)
T
1
fs = : sampling frequency (Hz)
T
The block diagram is
T
Figure 3.11: Sampling.
In the real world, there are some non-ideal effects:
(1) may not ideally sample xc (t); may instead sample y(t) = xc (t) ∗ h(t),
where h(t) is the impulse response of the sampler.
98
|Xc (ω)|
ω
−ωB ωB
99
|Xc (ω)|
1
T
ω
−ωs − ωB −ωs −ωs + ωB −ωB ωB ωs − ωB ωs ωs + ωB
|Xc (ω)|
1
T
ω
−ωs − ωB −ωs −ωB−ωs + ωB ωs − ωB ωB ωs ωs + ωB
100
ω
T 2T 3T 4T 5T 6T 7T 8T 9T
The black curve is the original signal. The red curve is called zero-order
hold and the blue curve is called first-order hold / linear interpolation. They
can be viewed as the samples convolved with some functions.
h(t)
t
−T T
101
|H(f )|
t
−fs −fs /2 fs /2 fs
xd [n] yd [n]
xc (t) A/D Discrete-time system H(ω) D/A yr (t)
T T
Figure 3.18: System model.
Recall that
∞
1 X
Xd (ω) = Xc (ω − ωs )
T
k=−∞
∞ (3.202)
X t − nT
yr (t) = yd [n] sinc
n=−∞
T
102
noisy observation model
y(k) = h + v(k) (3.203)
where h is the parameter, v(k) is the noise and y(k) is the observation. If h
is complex, then
where h = hR + jhI is the complex parameter, yR (k) + jyI (k) is the complex
observation and vR (k) + jvI (k) is the complex noise. The estimation problem
can be split into two parts (real and imaginary).
yR (1) 1 vR (1)
yR (2)
. = hR 1. + vR.(2)
.. .. .. (3.205)
yR (N ) 1 vR (N )
where vR (1), . . . , vR (N ) are i.i.d. Gaussian and yR (1), . . . , yR (N ) are the real
part of the observations and hR is the real part of the parameter. Then the
estimate of the real part of the parameter is
N
1 X
ĥR = yR (k). (3.206)
N
k=1
Similarly,
yI (1) 1 vI (1)
yI (2)
. = hI 1. + vI (2)
.. .
.. ..
(3.207)
yI (N ) 1 vI (N )
and if vI (1), . . . , vI (N ) are i.i.d. Gaussian, then
N
1 X
ĥI = yI (k), (3.208)
N
k=1
and
ĥ = ĥR + j ĥI . (3.209)
Recall that the complex noise is
103
2
We assume vR (k) and vI (k) are i.i.d. Gaussian: vR (k), vI (k) ∼ N (0, σ2 ).
Then
E[vR (k) · vI (k)] = E[vR (k)]E[vI (k)] = 0. (3.211)
and v(k) is known as the zero-mean symmetric complex Gaussian noise (ZM-
SCGN). Then
Note that
N
1 X
ĥR = yR (k)
N
k=1
N
(3.213)
1 X
= hR + vR (k)
N
k=1
and thus
E[ĥR ] = hR (unbiased)
1 σ2 σ2 (3.214)
E[|ĥR − hR |2 ] = · =
N 2 2N
Similarly for the imaginary part, we have
N
1 X
ĥI = yI (k)
N
k=1
N
(3.215)
1 X
= hI + vI (k)
N
k=1
and thus
E[ĥI ] = hI (unbiased)
1 σ2 σ2 (3.216)
2
E[|ĥI − hI | ] = · =
N 2 2N
104
Let
N
X
wR = ĥR − hR = vR (k)
k=1
N
X (3.217)
wI = ĥI − hI = vI (k)
k=1
⇒E[wR · wI ] = 0
thus the estimation errors of the real and imaginary parts of h, wR and wI
are uncorrelated and independent. The estimate of the complex parameter h
is unbiased:
E[ĥ] = E[ĥR + j ĥI ]
= E[ĥR ] + jE[ĥI ]
(3.218)
= hR + jhI
=h
and
E[|ĥ − h|2 ] = E[|ĥR − hR |2 ] + E[|ĥI − hI |2 ]
σ2 σ2
= + (3.219)
2N N
2
σ
= .
N
106
To find the maximum likelihood (ML) estimate, we need to find h that max-
imizes L(ȳ, h):
N
dL(ȳ, h) 1 X
=− 2 −2x(k)(y(k) − hx(k)) = 0
dh 2σ
k=1
N
X
⇒ −2x(k)(y(k) − hx(k)) = 0 (3.227)
k=1
PN
k=1 x(k)y(k)
⇒h = P N 2 (k)
k=1 x
Here PN
k=1 x(k)y(k)
ĥ = P N
(3.228)
2
k=1 x (k)
is the maximum likelihood (ML) estimate of h. If we denote the pilot
vector as
x(1)
x(2)
x̄ =
... ,
(3.229)
x(N )
then the ML estimate can be simplified as
x̄T ȳ x̄T ȳ
ĥ = T = . (3.230)
x̄ x̄ kx̄k2
To extend to a complex parameter h, we simply replace transpose by Hermi-
tian: PN ∗
k=1 x (k)y(k) x̄H ȳ x̄H ȳ
ĥ = PN = H = 2
. (3.231)
k=1 |x(k)|2 x̄ x̄ kx̄k
x̄T ȳ x̄T ȳ
ĥ = T = , (3.232)
x̄ x̄ kx̄k2
107
where
y(1) x(1)
y(2) x(2)
ȳ =
... ,
x̄ =
...
(3.233)
y(N ) x(N )
are the observation vector and pilot vector, respectively. Recall also the
input-output model
y(1) x(1) v(1)
y(2)
. = h x(2)
v(2)
... + ... , (3.234)
..
y(N ) x(N ) v(N )
or
ȳ = hx̄ + v̄, (3.235)
where v̄ = [v(1), . . . , v(N )]T is the noise vector. Since each v(k) ∼ N (0, σ 2 )
is i.i.d. Gaussian, we have
E[v(k)] = 0
E[v 2 (k)] = σ 2 (3.236)
E[v(k)v(k̃)] = 0 if k 6= k̃
108
we have
x̄T ȳ
ĥ =
kx̄k2
x̄T
= (hx̄ + v̄)
kx̄k2
(3.239)
x̄T x̄ x̄T v̄
= h+
kx̄k2 kx̄k2
x̄T v̄
=h+
kx̄k2
109
If h is complex, then the estimate of the complex baseband channel coef-
ficient is
x̄H ȳ
ĥ = , (3.243)
kx̄k2
then the variance of ĥ is given by
σ2
E[|ĥ − h|2 ] = , (3.244)
kx̄k2
Now, let p(ȳ, h) denote the joint distribution of the observation ȳ and the
parameter h, then the MSE is
h i Z ∞Z ∞
E (ĥ(ȳ) − h)2 = (ĥ(ȳ) − h)2 p(ȳ, h)dhdȳ
Z−∞ −∞
∞ Z ∞
= (ĥ(ȳ) − h)2 p(h|ȳ)p(ȳ)dhdȳ
Z−∞ −∞
∞ Z ∞ (3.246)
2
= (ĥ(ȳ) − h) p(h|ȳ)dh p(ȳ)dȳ
Z−∞
∞
−∞
110
Now we need to derive an estimate that minimizes the MSE for a given ȳ.
Z ∞
∂
(ĥ(ȳ) − h)2 p(h|ȳ)dh
∂Zĥ −∞
∞
∂
= (ĥ(ȳ) − h)2 p(h|ȳ)dh
Z−∞ ∂ ĥ
∞
= 2(ĥ(ȳ) − h)p(h|ȳ)dh = 0 (3.247)
−∞
Z ∞ Z ∞
⇒ ĥ(ȳ)p(h|ȳ)dh = hp(h|ȳ)dh
−∞ −∞
Z ∞
⇒ĥ(ȳ) = hp(h|ȳ)dh = E [h|ȳ]
−∞
E[h] = E[y] = 0
E[h2 ] = σh2
(3.249)
E[y 2 ] = σy2
E[hy] = ρσh σy
111
and the inverse of the covariance matrix R is
σy2
−1 1 −ρσh σy
R =
|R| −ρσh σy σh2
(3.252)
σy2
1 −ρσh σy
=
(1 − ρ2 )σh2 σy2 −ρσh σy σh2
112
Then,
f (h, y)
f (h|y) =
f (y)
h2 σy
2 +y 2 σ 2 −2ρσ σ hy
h y
− 21 · h
1 σ 2 σy
2 (1−ρ2 )
√ e h
(2π)2 σh2 σy2 (1−ρ2 )
= − 12 y 2
1
√ 2 e 2σy
2πσy
2 2 2 2
1 h σy +y σh −2ρσh σy hy y2
1 −2 2 2 2 − 2
σ σy (1−ρ ) σy
=p e h
2π(1 − ρ2 )σh2
h2 σy
2 +y 2 σ 2 −2ρσ σ hy−y 2 (1−ρ2 )σ 2
h y
1 − 21 h
2 (1−ρ2 )
σ 2 σy
h (3.256)
=p e h
2π(1 − ρ2 )σh2
h2 σy
2 +y 2 ρ2 σ 2 −2ρσ σ hy
h y
1 − 21 h
σ 2 σy2 (1−ρ2 )
=p e h
2π(1 − ρ2 )σh2
(hσy −ρσh y)2
1 − 21
σ 2 σy
2 (1−ρ2 )
=p e h
2π(1 − ρ2 )σh2
σ 2
(h−ρ σh
y y)
1 − 21
σ 2 (1−ρ2 )
=p e h
2π(1 − ρ2 )σh2
That is,
σh
f (h|y) ∼ N ρ y, σh2 (1 − ρ2 ) , N (µ̃, σ̃ 2 ). (3.257)
σy
So to summarize:
σh
E[h|y] = µ̃ = ρ y = ĥ(y), (3.258)
σy
and
M SE = σ̃ 2 = (1 − ρ2 )σ 2 . (3.259)
If ρ = 1 or -1: 1 − ρ2 = 1, and h = y or −y can be perfectly estimated from
y. If ρ = 0 : 1 − ρ2 = 1, and MSE = σh2 which is the initial variance of the
parameter to be estimated, h.
If we now denote
E[h2 ] = σh2 = rhh
E[y 2 ] = σy2 = ryy (3.260)
E[hy] = ρσh σy = rhy
113
then
−1
ŷ = rhy ryy y
−1 (3.261)
M SE = rhh − rhy ryy ryh
If h and y are non zero-mean and has mean µh and µy , respectively, then
−1
ŷ = rhy ryy (y − µy ) + µh
−1 (3.262)
M SE = rhh − rhy ryy ryh
where
rhh = E[(h − µh )2 ]
ryy = E[(y − µy )2 ] (3.263)
rhy = E[(h − µh )(y − µy )]
114
Since the noise samples are i.i.d., the covariance matrix of the noise vector
v̄ is
E[v̄v̄ T ] = σ 2 I (3.267)
For the Gaussian MMSE estimate, we assume the channel coefficient is
h ∼ N (µh , σh2 ) (3.268)
while we assume h is real for simplicity, one can easily extend to complex h.
Note that since h, v̄ are Gaussian, the received vector ȳ is a linear combi-
nation of h, v̄ and thus also Gaussian. Since both ȳ and h are Gaussian, we
can use Gaussian MMSE estimate
−1
ĥ = Rhy Ryy (ȳ − µ̄y ) + µh . (3.269)
where Rhy is the cross-covariance of h and ȳ and Ryy is the covariance matrix
of y.
E[ȳ] = x̄E[h] + E[v̄] = x̄µh , µ̄y (3.270)
Ryy = E[(ȳ − µ̄y )(ȳ − µ̄y )T ]
= E[(hx̄ + v̄ − x̄µh )(hx̄ + v̄ − x̄µh )T ] (3.271)
= E[(x̄(h − µh ) + v̄)(x̄(h − µh ) + v̄)T ]
We assume that
E[(h − µh )v̄ T ] = E[v̄(h − µh )] = 0 (3.272)
i.e., noise and parameter are uncorrelated (independent). Then, since x̄ is a
constant pilot vector,
Ryy = E[(x̄(h − µh ) + v̄)(x̄(h − µh ) + v̄)T ]
= E[x̄x̄T (h − µh )2 ] + E[v̄(h − µh )x̄T ] + E[x̄v̄ T (h − µh )] + E[v̄v̄ T ]
= x̄x̄T E[(h − µh )2 ] + x̄T E[v̄(h − µh )] + x̄T E[(h − µh )v̄ T ] + E[v̄v̄ T ]
= x̄x̄T σh2 + 0 + 0 + σ 2 I
= σh2 x̄x̄T + σ 2 I
(3.273)
Similarly, the cross-covariance between h and ȳ is given by
Rhy = E[(h − µh )(ȳ − µ̄y )T ]
= E[(h − µh )(x̄(h − µh ) + v̄)T ]
(3.274)
= x̄E[(h − µh )2 ] + E[(h − µ̄h )v̄ T ]
= σh2 x̄T
115
Thus by plugging back to the Gaussian MMSE expression we get
−1
ĥ = Rhy Ryy (ȳ − µ̄y ) + µh
(3.275)
= σh2 x̄T (σh2 x̄x̄T + σ 2 I)−1 (ȳ − x̄µh ) + µh
Note that
σh2 x̄T x̄x̄T + σ 2 x̄T = x̄T (σh2 x̄x̄T + σ 2 I)
= (σh2 x̄T x̄ + σ 2 )x̄T
(3.276)
⇒ σh2 x̄T (σh2 x̄x̄T + σ 2 I) = (σh2 x̄T x̄ + σ 2 )x̄T σh2
⇒ (σh2 x̄T x̄ + σ 2 )−1 σh2 x̄T = σh2 x̄T (σh2 x̄x̄T + σ 2 I)−1
thus
ĥ = σh2 x̄T (σh2 x̄x̄T + σ 2 I)−1 (ȳ − x̄µh ) + µh
= (σh2 x̄T x̄ + σ 2 )−1 σh2 x̄T (ȳ − x̄µh ) + µh
= (σh2 kx̄k2 + σ 2 )−1 σh2 x̄T (ȳ − x̄µh ) + µh
σh2 x̄T
= 2 (ȳ − x̄µh ) + µh
σh kx̄k2 + σ 2
σh2 x̄T ȳ σh2 kx̄k2 µh
= 2 − + µh
σh kx̄k2 + σ 2 σh2 kx̄k2 + σ 2
σh2 x̄T ȳ µh σh2 kx̄k2 + µh σ 2 − µh σh2 kx̄k2
= 2 + (3.277)
σh kx̄k2 + σ 2 σh2 kx̄k2 + σ 2
σ 2 x̄T ȳ + µh σ 2
= h2
σh kx̄k2 + σ 2
x̄T ȳ µh
σ2 + σh2
= kx̄k2 1
σ2 + σh2
x̄T ȳ/kx̄k2 µh
σ 2 /kx̄k2 + σh2
= 1 1
σ 2 /kx̄k2 + σh2
If the quantities x̄, ȳ are complex, then the complex MMSE estimate is
given by
x̄H ȳ/kx̄k2 µh
σ 2 /kx̄k2 + σh2
ĥM M SE = 1 1 (3.281)
2
σ /kx̄k 2 + σ 2
h
where
Rhh = σh2
Ryy = E[(ȳ − µ̄y )(ȳ − µ̄y )T ] = σh2 x̄x̄T + σ 2 I (3.283)
T
Rhy = Rhy = σh2 x̄T
117
Therefore, the (minimum) MSE is
which is half the harmonic mean (HM) of the variance of the ML estimate
2 2
σM L and prior variance σh and is also valid for complex channel coefficient h.
Intuition still holds here as
2
lim M SE = lim
2 →0 2
M SE = σM L
σM L σh →∞
(3.285)
2
lim M SE = lim
2
M SE = σh2
σM L →∞ σh →0
ĥ = E[h|ȳ] (3.286)
118
estimate:
ĥ = c̄T ȳ
y(1)
y(2)
= c(1) c(2) . . . c(N ) ...
(3.287)
y(N )
= c(1)y(1) + c(2)y(2) + · · · + c(N )y(N )
M SE = E[(ĥ − h)2 ]
= E[(c̄T ȳ − h)2 ]
= E[(c̄T ȳ − h)(c̄T ȳ − h)]
= E[(c̄T ȳ − h)(c̄T ȳ − h)T ]
= E[c̄T ȳ ȳ T c̄ − hȳ T c̄ − c̄T ȳh + h2 ] (3.288)
= E[c̄T ȳ ȳ T c̄ − 2c̄T ȳh + h2 ]
= c̄T E[ȳ ȳ T ] − 2c̄T E[ȳh] + E[h2 ]
= c̄T Ryy c̄ − 2c̄T ryh + rhh
, F (c̄).
To find the MMSE, we need to differentiate the MSE with respect to c̄ and
set it to 0.
dF
dc
dF dF1
= dc.. 2 (3.289)
dc .
dF
dcN
119
Now let us consider the quadratic form of c̄, c̄T P c̄, we further assume P = P T
(P is symmetric). It can be shown that
dc̄T P c̄
= 2P c̄. (3.291)
dc̄
Therefore, the derivative MSE as a function of c̄ is given by
dF (c̄) d T
c̄ Ryy c̄ − 2c̄T ryh + rhh
=
c̄ dc̄
= 2Ryy c̄ − 2r̄yh + 0
= 2Ryy c̄ − 2r̄yh ≡ 0 (3.292)
⇒ Ryy c̄ = r̄yh
−1
⇒ c̄ = Ryy r̄yh .
where Ryy is the covariance matrix of y and ryh is the cross-covariance between
y and h
Ryy = E[ȳ ȳ T ]
(3.293)
r̄yh = E[ȳh]
and thus the LMMSE estimate is given by
ĥ = c̄T ȳ
−1
= (Ryy r̄yh )T ȳ
T −1 T
(3.294)
= r̄yh (Ryy ) ȳ
−1
= r̄hy Ryy ȳ.
For h, ȳ jointly Gaussian, LMMSE estimate is identical to MMSE estimate.
However, for arbitrary h, ȳ, the above equation is only the LMMSE estimate
not the MMSE estimate. The resulting MMSE of the LMMSE estimate is
given by
M M SE = c̄T Ryy c̄ − 2c̄T r̄yh + rhh
−1 −1 −1
= (Ryy r̄yh )T Ryy Ryy r̄yh − 2(Ryy r̄yh )T r̄yh + σh2
−1 −1
(3.295)
= r̄hy Ryy r̄yh − 2r̄hy Ryy r̄yh + σh2
−1
= σh2 − r̄hy Ryy r̄yh
Note that here we are assuming all the quantities h, ȳ are zero-mean, but it
can be generalized to non zero-mean scenarios fairly easily.
120
3.5.8 Vector parameter estimation – system model for
multi-antenna downlink channel estimation
We want to estimate a vector parameter
h1
h2
h̄ =
...
(3.296)
hM
121
3.5.9 LMMSE for multi-antenna downlink channel es-
timation
Consider a Bayesian estimation scenario.
h1
h2
h̄ =
...
(3.300)
hM
is the channel vector such that
E[hi ] = 0
E[|hi |2 ] = σh2 (3.301)
E[h∗i hj ] = 0(i 6= j)
i.e., hi and hj are uncorrelated random variables. For simplicity, we consider
all quantities to be real for now. Then we have
E[h̄] = 0
(3.302)
E[h̄h̄T ] = σh2 IM ×M = Rhh
Since the channel coefficients are related to the radio propagation of the
wireless environment and noise arises due to the thermal noise at the receiver,
we can assume the channel coefficient and noise samples are independent and
thus uncorrelated, i.e.,
E[hi vj ] = 0 ∀i ∈ [1, M ], j ∈ [1, N ]
(3.303)
⇒E[h̄v̄ T ] = 0M ×N , E[v̄ h̄T ] = 0N ×M .
Further similar to previous scenarios, assume the covariance of the noise
vector is
E[v̄v̄ T ] = σ 2 IN ×N . (3.304)
To derive the LMMSE estimate of h̄,, first note that
E[v̄] = E[h̄] = 0,
(3.305)
⇒E[ȳ] = E[X h̄ + v̄] = 0.
Then the LMMSE estimate is given by
−1
ĥ = Rhy Ryy ȳ. (3.306)
122
First let us find Ryy :
Ryy = E[ȳ ȳ T ]
= E[(X h̄ + v̄)(X h̄ + v̄)T ]
= E[X h̄h̄T X T + v̄ h̄T X + X h̄v̄ T + v̄v̄ T ] (3.307)
= XE[h̄h̄T ]X T + E[v̄ h̄T ]X + XE[h̄v̄ T ] + E[v̄v̄ T ]
= σh2 XX T + σ 2 I
Now the cross-covariance between h̄ and ȳ is given by
Rhy = E[h̄ȳ T ]
= E[h̄(X h̄ + v̄)T ]
(3.308)
= E[h̄h̄T X T + h̄v̄ T ]
= σh2 X T
Thus the LMMSE estimate is
ȳ = X h̄ + v̄. (3.315)
where
yj (k) , received symbol on Rx antenna j at time k, xi (k)
xi (k) , transmitted symbol on Tx antenna i at time k
(3.322)
vj (k) , noise at Rx antenna j at time k
hij , coefficient between Tx antenna i and Rx antenna j
125
To put in vector form, we have
y1 (k) y2 (k) . . . yR (k)
h11 h12 . . . h1R
h21 h22
. . . h2R
= x1 (k) x2 (k) . . . xM (k) ... .. ... .. + v1 (k) v2 (k) . . . vR (k)
. .
hM 1 hM 2 . . . hM R
(3.323)
or equivalently, the input-output model for time instant k is given by
ȳ T (k)1×R = x̄T (k)1×M HM ×R + v̄ T (k)1×R . (3.324)
Now let us consider the transmission of N pilot vectors. Let the N pilot
vector be x̄(1), x̄(2), . . . , x̄(N ) where k = 1, 2, . . . , N are the transmission
instants. Let N corresponding received vectors be ȳ(1), ȳ(2), . . . , ȳ(N ). Then
the input-output system can be modeled as
y1 (1) y2 (1) . . . yR (1)
y1 (2) y2 (2) . . . yR (2)
. .. . ..
.. . . . .
y1 (N ) y2 (N ) . . . yR (N )
x1 (1) x2 (1) . . . xM (1) h11 h12 . . . h1R v1 (1) v2 (1) . . . vR (1)
x1 (2) x2 (2) . . . xM (2) h21 h22 . . . h2R v1 (2) v2 (2) . . . vR (2)
= ... .. ... .. . .. . . . .. + . .. ... ..
. . .. . . .. . .
x1 (N ) x2 (N ) . . . xM (N ) hM 1 hM 2 . . . hM R v1 (N ) v2 (N ) . . . vR (N )
(3.325)
or equivalently,
ȳ T (1) = x̄T (1)H + v̄ T (1)
ȳ T (2) = x̄T (2)H + v̄ T (2)
(3.326)
...
ȳ T (N ) = x̄T (N )H + v̄ T (N )
or equivalently,
YN ×R = XN ×M HM ×R + VN ×R , (3.327)
where Y is the N × R output/received/observation matrix, X is the N × M
pilot matrix, H is the M × R MIMO channel matrix and V is the N × R
noise matrix. This is the input-output model for MIMO wireless channel.
126
3.5.12 MIMO channel estimation
We would like to examine the statistical properties of the MIMO channel and
noise. The input-output model is given by
YN ×R = XN ×M HM ×R + VN ×R (3.328)
where hij is the channel coefficient between the ith transmit antenna and the
j th receive antenna. We now write H as
T
h̄1
h̄T2
H= ... ,
(3.331)
h̄TM
where
hi1
hi2
h̄i =
... .
(3.332)
hiR
Let the channel coefficients hij be zero-mean i.i.d., i.e.,
E[hij ] = 0
E[|hij |2 ] = σh2 (3.333)
E[hij hkl ] = 0 if i 6= k or j 6= l
127
Now we compute the covariance matrix of the channel as
RHH = E[HH T ]
T
h̄1
h̄T2 h .
i
.
= E .. h̄1 h̄2 . h̄M
.
h̄TM
kh̄1 k2 h̄T1 h̄2 . . . h̄T1 h̄M
h̄T2 h̄1 kh̄2 k2 . . . h̄T2 h̄M
=E ...
.. ... ..
. .
h̄TM h̄1 h̄TM h̄2 . . . kh̄M k2
(3.334)
E[ R
PR
. . . E[ R
P 2
P
h
j=1 1j ] E[ j=1 h1j h2j ] h h
j=1 1j M j ]
E[PR h h ] E[ R
P 2
PR
j=1 2j 1j j=1 h2j ] . . . E[ j=1 h2j hM j ]
=
.. .. ... ..
. . .
PR PR PR 2
E[ j=1 hM j h1j ] E[ j=1 hM j h2j ] . . . E[ j=1 hM j ]
2
Rσh 0 . . . 0
0 Rσh2 . . . 0
= ... .. . . . ..
. .
0 0 . . . Rσh2
= Rσh2 IM
E[vij ] = 0
E[|vij |2 ] = σ 2 (3.335)
E[vij hkl ] = 0 if i 6= k or j 6= l
RV V = E[V V T ] = Rσ 2 IN . (3.336)
Now let us compute the LMMSE estimate of the MIMO channel matrix.
We know that the LMMSE estimate for any general parameter is given by
128
where RHY is the cross covariance between H and Y and RY Y is the covari-
ance of Y . Since H is the channel coefficients matrix and V is the noise
matrix, they are naturally independent, i.e., E[HV T ] = E[V H T ] = 0, thus
RY Y = E[Y Y T ]
= E[(XH + V )(XH + V )T ]
= E[(XH + V )(H T X T + V T )]
= E[XHH T X T + V H T X T + XHV T + V V T ]
(3.338)
= E[XHH T X T ] + E[V H T X T ] + E[XHV T ] + E[V V T ]
= XE[HH T ]X T + E[V H T ]X T + XE[HV T ] + E[V V T ]
= XRHH X T + 0 + 0 + RV V
= Rσh2 XX T + Rσ 2 IN .
RHY = E[HY T ]
= E[H(XH + V )T ]
= E[H(H T X T + HV T )]
(3.339)
= E[HH T ]X T + E[HV T ]
= RHH X T
= Rσh2 X T .
Ĥ = RHY RY−1Y Y
= Rσh2 X T (Rσh2 XX T + Rσ 2 IN )−1 Y (3.340)
= σh2 X T (σh2 XX T + σ 2 I)−1 Y
Note that this is similar to the multi-antenna channel estimation except the
observation vector ȳ has been replaced by the observation matrix Y . Again
using the property that
129
we can simplify the LMMSE estimate as
where
y(k) = received symbol at time k
h = fading channel coefficient
(3.345)
x(k) = transmitted symbol at time k
v(k) = noise sample at time k
130
Previously, we have seen equalization overcomes ISI. OFDM overcomes ISI
with very low complexity.
OFDM can be explained as follows. Consider the following symbols to be
transmitted.
N = 4 symbols/subcarriers : X(0) X(1) X(2) X(3) (3.346)
th
where X(l) is loaded onto
the l subcarrier. We perform the IFFT on
X(0) X(1) X(2) X(3) to get N IDFT samples x(0) x(1) x(2) x(3) :
IF F T
X(0) X(1) X(2) X(3) −→ x(0) x(1) x(2) x(3) , (3.347)
and for N = 4:
3
1X π
x(k) = X(l)ej 2 kl . (3.349)
4
l=0
Now we take the last sample x(3) and prefix it to the beginning. This is
termed as the cyclic prefix (CP). The block after the addition of CP is
x(3) x(0) x(1) x(2) x(3) , (3.350)
and this is transmitted over the channel. The ISI channel gives
y =h~x+v (3.352)
131
where ~ denote circular convolution. The addition of CP converts a linear
convolution to a circular convolution. Since FFT is a linear operation, we
have
F F T (y) = RRT (h ~ x + v)
= F F T (h ~ x) + F F T (v) (3.353)
= F F T (h) × F F T (x) + F F T (v)
To take the FFT of the channel filter which only has 2 (N − L) channel taps,
we need to first zero-pad it:
FFT
h(0) h(1) 0 0 −→ H(0) H(1) H(2) H(3) (3.356)
132
There is no need to take the FFT of the samples x(0) x(1)
x(2) x(3) since
we started with the symbols loaded onto the subcarriers X(0) X(1) X(2) X(3) .
For the noise part,
FFT
v(0) v(1) v(2) v(3) −→ V (0) V (1) V (2) V (3) , (3.358)
and we need to estimate the channel coefficient H(l) for the lth subcarrier.
133
We first examine the properties of the noise V (l). Let the time domain
noise samples be v(0), v(1), . . . , v(N − 1) which are i.i.d. Gaussian with mean
0 and variance σ 2 .
E {v(k)} = 0
E |v(k)|2 = σ 2
(3.363)
E {v(k)ṽ ∗ (k)} = 0 if k 6= k̃
Recall that N is the number of subcarriers and
N −1
kl
X
V (l) = v(k)e−j2π N (3.364)
k=0
is a linear combination of the time domain samples v(k) and thus is also
Gaussian. The mean of V (l) is
(N −1 )
kl
X
E {V (l)} = E v(k)e−j2π N
k=0
N −1 (3.365)
kl
X
= E {v(k)} e−j2π N
k=0
=0
and the variance of V (l) is
E |V (l)|2 = E {V (l)V ∗ (l)}
! N −1
N −1
kl k̃l
X X
−j2π N j2π
=E v(k)e v(k̃)e N
k=0 k̃=0
N −1 N −1
−j2π(k−k̃) Nl
XX
=E v(k)v(k̃)e
k=0 k̃=0 (3.366)
N −1 N −1 n o l
X X
= E v(k)v(k̃) e−j2π(k−k̃) N
k=0 k̃=0
N −1
2 −j2π0 Nl
X
= σ e
k=0
= N σ2
134
and thus
V (l) ∼ N (0, N σ 2 ). (3.367)
Now we find the properties of the channel coefficient H(l). Recall that
the lth FFT coefficient of the channel taps h(0), h(1), . . . , h(L − 1) is given by
N −1
kl
X
H(l) = h(k)e−j2π N (3.368)
k=0
Let the channel taps h(0), h(1), . . . , h(L − 1) be zero-mean and variance σh2
but not necessarily Gaussian.
E {h(k)} = 0
E |h(k)|2 = σ 2
n o (3.369)
∗
E h(k)h̃ (k) = 0 if k 6= k̃
135
and similar to the noise part, the variance of H(l) is
which is half the harmonic mean of the variance of the ML estimate N σ 2 /|X(l)|2
and the prior variance Lσh2 .
137
3.5.16 Example of OFDM system and corresponding
channel estimation
Consider N = 4 subcarrier system. We have 4 pilot symbols loaded onto the
subcarriers
X(0) 1+j
X(1) 1 − j
X(2) = 1 + 2j . (3.380)
X(3) 2−j
The time domain samples x(0), x(1), x(2), x(3) are generated by N = 4 point
IFFT, i.e., the k th sample x(k) is given by
N −1 3
1 X kl
j2π N 1X π
x(k) = X(l)e = X(l)ej 2 kl , (3.381)
N 4
l=0 l=0
and after adding the CP, we have the block with CP to be transmitted as
x(3) 0
x(0) 5 + 1 j
4 4
x(1) = − 1 j . (3.383)
2
x(2) − 1 + 5 j
4 4
x(3) 0
y(3) 1
138
Therefore, the frequency domain symbols Y (l) on subcarrier l are given as
the FFT of the time domain symbols y(0), y(1), . . . , y(N − 1) as
N −1 3
kl π
X X
−j2π N
Y (l) = y(k)e = y(k)e−j 2 kl , (3.386)
k=0 k=0
and thus the frequency domain outputs across the 4 subcarriers are given by
Y (0) 3
Y (1) 1 + 1 j
2 2
Y (2) = 0 . (3.387)
1 1
2 − 2j
Y (3)
139
3.6 Equalization for Wireless Channels
3.6.1 Introduction and system model for equalization
Typically, in a wireless channel, we have
y(k) = hx(k) + v(k) (3.392)
where
y(k) = received symbol at time k
h = fading channel coefficient
(3.393)
x(k) = transmitted symbol at time k
v(k) = noise sample at time k
Observe that in this model, the current output symbol y(k) depends only on
the current input symbol x(k). However, we might frequently run into the
scenario that
y(k) = h(0)x(k) + h(1)x(k − 1) + v(k), (3.394)
i.e., y(k) is also a function of the transmitted symbol at time instant k − 1,
x(k − 1). Essentially, x(k − 1) is interfering with x(k), and this is termed
as inter symbol interference (ISI). ISI typically leads to performance
degradation and is thus undesirable. Removing ISI is termed as channel
equalization.
For a general scenario,
y(k) = h(0)x(k) + h(1)x(k − 1) + · · · + h(L − 1)x(k − L + 1) + v(k), (3.395)
where h(0), h(1), . . . , h(L − 1) are called the L channel taps. As L increases,
the severity of ISI increases.
For equalization of x(k), with L = 2, let us employ y(k + 2), y(k + 1), y(k),
called r = 3-tap equalizer.
y(k) = h(0)x(k) + h(1)x(k − 1) + v(k)
y(k + 1) = h(0)x(k + 1) + h(1)x(k) + v(k + 1) (3.396)
y(k + 2) = h(0)x(k + 2) + h(1)x(k + 1) + v(k + 2)
To put in vector/matrix notations
x(k + 2)
y(k + 2) h(0) h(1) 0 0 v(k + 2)
y(k + 1) = 0 h(0) h(1) 0 x(k + 1) + v(k + 1) (3.397)
x(k)
y(k) 0 0 h(0) h(1) v(k)
x(k − 1)
140
or equivalently,
ȳ(k) = H x̄(k) + v̄(k) (3.398)
where
y(k) = r × 1 observation vector
H = r × (r + L − 1) effective matrix for the ISI channel
(3.399)
x(k) = (r + L − 1) × 1 transmitted vector
v(k) = r × 1 noise vector
E[x(k)] = 0
E[x2 (k)] = Pd (3.404)
E[x(k)x(l)] = 0 if k 6= l
141
The covariance of the input vector x̄(k) = [x(k + 2) x(k + 1) x(k) x(k −
1)]T is
Assuming symbols and noise are independent, the covariance of the output
vector ȳ(k) is
, Pd 1̄2 H T
142
and finally the LMMSE equalizer for the wireless channel is
−1
x̂(k) = Rx(k)ȳ(k) Rȳ(k)ȳ(k) ȳ(k)
(3.408)
= Pd 1̄2 H T (Pd HH T + σ 2 I3 )−1 ȳ(k)
144
where
y(k) = received symbol at time k
h = fading channel coefficient
(3.422)
x(k) = transmitted symbol at time k
v(k) = noise sample at time k
For equalization of x(k), with L = 2, let us employ y(k + 2), y(k + 1), y(k),
called r = 3-tap equalizer.
y(k + 2) = h(0)x(k + 2) + h(1)x(k + 1) + v(k + 2)
y(k + 1) = h(0)x(k + 1) + h(1)x(k) + v(k + 1) (3.423)
y(k) = h(0)x(k) + h(1)x(k − 1) + v(k)
To put in vector/matrix notations
x(k + 2)
y(k + 2) h(0) h(1) 0 0 v(k + 2)
y(k + 1) = 0 h(0) h(1) 0 x(k + 1) + v(k + 1) (3.424)
x(k)
y(k) 0 0 h(0) h(1) v(k)
x(k − 1)
or equivalently,
ȳ(k) = H x̄(k) + v̄(k) (3.425)
where
ȳ(k) = r × 1 observation vector
H = r × (r + L − 1) effective matrix for the ISI channel
(3.426)
x̄(k) = (r + L − 1) × 1 transmitted vector
v̄(k) = r × 1 noise vector
Let the taps of the equalizer be [c0 , c2 , c2 ], or
c0
c̄ = c1 , (3.427)
c2
i.e., we take a weighted linear combination of y(k +2), y(k +1), y(k) to remove
ISI on x(k):
x̂(k) = c̄T ȳ(k)
= c0 y(k + 2) + c1 y(k + 1) + c2 y(k)
(3.428)
= c̄T (H x̄(k) + v̄(k))
= c̄T H x̄(k) + c̄T v̄(k)
145
Ideally, the row vector c̄T H should be 1̄T2 = 0 0 1 0 so that c̄T H x̄(k) =
x(k). While it is not always possible to reach, at least an approximation is
required, i.e.,
0 0 1 0 ≈ c̄T H
0
0 (3.429)
⇒1̄2 = ≈ H T c̄
1
0
which means we need to minimize the error k1̄2 − H T c̄k2 to find the best
equalizer c̄, i.e.,
c̄opt = argminc̄ k1̄2 − H T c̄k2 (3.430)
Note that this is a least square problem similar to the problem min kȳ −X h̄k2
where X is a tall matrix and the LS solution is given by h̄ ˆ = (X T X)−1 X T ȳ.
Here we have ȳ = 1̄2 , X = H T and thus
and
x̄(k) = c̄T ȳ(k) (3.432)
Consider an ISI channel with L = 2 channel taps, h(0) = 1, h(1) = 0.5.
146
The estimate for x(k) is
and
4 10 64
x̂(k) = c̄T ȳ(k) = − y(k + 2) + y(k + 1) + y(k) (3.439)
85 85 85
where Ax,y denotes the entry on the xth row and y th column on the matrix
A, and where
PH = H T (HH T )−1 H (3.441)
is the projection matrix of H T satisfying
PHT = PH
(3.442)
(PH )2 = PH
147