Post on 12-Feb-2022
MIMO Fundamentals and Signal Processing Course
Erik G. LarssonLinkoping University (LiU), SwedenDept. of Electrical Engineering (ISY)Division of Communication Systemswww.commsys.isy.liu.se
slides version: September 25, 2009
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Objectives and Intended Audience
➮ This short course will give an introduction to the basic principles andsignal processing for MIMO wireless links.
➮ Intended audience are graduate students and industry researchers
➮ Prerequisites:General mathematical maturity.Solid knowledge of linear algebra and probability theory.Good understanding of digital and wireless communications.Some basic coding/information theory.
1
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Organization
➮ 4 lectures:Le 1: MIMO fundamentalsLe 2: Low-complexity MIMOLe 3: MIMO receiversLe 4: MIMO in 3G-LTE (by P. Frenger, Ericsson Research)
➮ Reading, in addition to course notes:
➠ Le 1: D. Tse & P. Viswanath, Fundamentals of WirelessCommunications, Cambridge Univ. Press 2005, Chs. 7–8
➠ Le 2: E. G. Larsson & P. Stoica, Space-time block coding for wirelesscommunications, Cambridge Univ. Press 2003, Chs. 2, 4–8
➠ Le 3: E. G. Larsson, ”MIMO detection methods: How they work”,IEEE SP Magazine, pp. 91–95, May 2009
➮ Examination (for Ph.D. students): TBD2
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Le 1: MIMO fundamentals
3
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Basic channel model
➮ Flat fading; linear, time-invariant channel
TX RX
11
nrnt
➮ Complex data {x1, . . . , xnt} are transmitted via the nt antennas
➮ Received data: ym =
nt∑
n=1
hm,nxn + em
4
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Basic MIMO Input-Output Relation
➮ Transmission model (single time interval):
y1...
ynr
︸ ︷︷ ︸y (RX data)
=
h1,1 · · · h1,nt... ...
hnr,1 · · · hnr,nt
︸ ︷︷ ︸H (channel)
x1...
xnt
︸ ︷︷ ︸x (TX data)
+
e1...
enr
︸ ︷︷ ︸e (noise)
➮ Transmission model (N time intervals):
[y1,1 · · · y1,N
......
ynr,1 · · · ynr,N
]
︸ ︷︷ ︸Y
=
[h1,1 · · · h1,nt
......
hnr,1 · · · hnr,nt
]
︸ ︷︷ ︸H
[x1,1 · · · x1,N
......
xnt,1· · · xnt,N
]
︸ ︷︷ ︸X∈X
“code matrix”
+
[e1,1 · · · e1,N
......
enr,1 · · · enr,N
]
︸ ︷︷ ︸E
➮ AWGN: ek,l ∼ N(0, N0), i.i.d.
5
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
MIMO Design Space
➮ Fast fading: codeword spans ∞ number of channel realizationsChannel can be time- or frequency-variant (e.g., MIMO-OFDM), or both
➮ Slow fading: codeword spans one channel realization
➮ For point-to-point MIMO, four basic cases (reality inbetween)
Fast fading Slow fadingChannel V-BLAST optimal V-BLAST suboptimalunknown at TX no coding across antennas coding across antennas
D-BLAST optimalChannel waterfilling waterfillingknown at TX over space& time over space
6
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Slow fading, full CSI at TX
➮ Deterministic channel, known at TX and RX
y = Hx + e H ∈ Cnr×nt
➮ Power constraint: E[||x||2] ≤ P
➮ e is white noise, N(0, N0I)
➮ SVD: H = UΛV H, UHU = I, V HV = I
➮ Dimensions: U ∈ Cnr×nr, Λ ∈ R
nr×nt, V ∈ Cnt×nt
7
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ Introduce transform: y = UΛV H︸ ︷︷ ︸
H
x + e
y , UHy = ΛV Hx︸ ︷︷ ︸
,x
+UHe︸ ︷︷ ︸e
➮ e is white noise, N(0, N0I)
➮ x is precoded TX data. Note: E[||x||2] = E[||x||2]
➮ Equivalent model with parallel channels: (n = rank(H))
y1 = λ1x1 + e1
...
yn = λnxn + en
8
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ No gain by coding across streams ➠ xk independent
➮ Operational meaning is multistream beamforming:
x = V x =
n∑
k=1
xkvk
➠ n indep. streams {xk} are transmitted over orthogonal beams {vk}➠ We’ll assume that each stream xk has power Pk
➠ In the special case of n = 1 (rank one channel), then we have MRT:
H = λuvH ⇒ x = xv
9
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Architecture
x1
x2
xnt
x1
x2
xn
e1
enr
y1
y2
ynr
y1
y2
yn
HV :,1:n UH:,1:n
➮ xk are independent streams with powers Pk and rates Rk
10
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Optimal power allocation over n subchannels
➮ Each subchannel can offer the rate
Ck = log2
(
1 +Pk
N0λ2
k
)
(bits/cu)
➮ The power constraint is
E[||x||2] = E[||x||2] =
n∑
k=1
Pk ≤ P
➮ Optimal power allocation P ∗1 , ..., P ∗
n
maxPk,Pn
k=1 Pk≤P
n∑
k=1
Ck ⇔ maxPk,Pn
k=1 Pk≤P
n∑
k=1
log2
(
1 +Pk
N0λ2
k
)
11
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Waterfilling solution
➮ Problem: maxPk,Pn
k=1 Pk≤P
n∑
k=1
log2
(
1 +Pk
N0λ2
k
)
➮ Solution: (need solve for µ)
C =
n∑
k=1
log2
(
1 +P ∗
k λ2k
N0
)
P ∗k =
(
µ − N0
λ2k
)+
,
n∑
k=1
P ∗k = P
➮ Special case: H = λuvH. Transmit one stream
C = log2
(
1 +P
N0λ2
)
= log2
(
1 +P
N0‖H‖2
)
12
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Waterfilling solution
1 2 3... n k
N0
λ2k
µ
P∗ 1
=0
P∗ 2
P∗ 3
=0
P∗ 4
P∗ 5
=0
13
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Waterfilling at high SNR
➮ At high SNR, the water is deep, so P ∗k ≈ P
n and
C =
n∑
k=1
Ck ≈n∑
k=1
log2
(
1 +P
N0
λ2k
n
)
≈ n · log2
(P
N0
)
+
n∑
k=1
log2
(λ2
k
n
)
➮ With SNR , P/N0, we have C ∼ n log2(SNR). We say that
The channel offers n = rank(H) degrees of freedom (DoF)
➮ Best capacity for well conditioned H (all λk’s equal)
➮ Transmit n equipowered data streams spread on orthogonal beams
➮ Channel knowledge ∼unimportant
➮ No coding across streams14
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Waterfilling at high SNR
������������������������������������������������������������������������������������������������������������������������������������������������
������������������������������������������������������������������������������������������������������������������������������������������������
��������������������������������������������������������������������������������������������������������������������������������������������������������
��������������������������������������������������������������������������������������������������������������������������������������������������������
����������������������������������������������������������������
��������������������������������������������������������
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
�����������������������������������������������������������������
�����������������������������������������������������������������
1 2 3... n k
N0
λ2k
P ∗k ≈ P
n
15
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Waterfilling at low SNR
➮ At low SNR, the water is shallow. Then
P ∗k =
{
P, k = argmax λ2k
0, else
C = log2
(
1 +P
N0λ2
max
)
≈(
P
N0λ2
max
)
· log2(e)
➮ MIMO provides an array gain (power gain of λ2max) but no DoF gains.
➮ Channel rank does not matter, only power matters.
➮ Transmit one beam in the direction associated with largest λk
➮ Knowing H is very important! (to select what beam to use)
16
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Waterfilling at low SNR
1 2 3... n k
N0
λ2k
µ
P∗ 4
=P
17
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
In practice
➮ Feedback of channel state information, requires quantization
➮ Potentially, by scheduling only “good” users, one may always operate athigh SNR
➮ Selection of modulation scheme
— e.g., M -QAM per subchannel, different M
— better channel, larger constellation
— should be done with outer code in mind
➮ Imperfect CSI ➠ cross-talk!
18
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
MIMO channel models
➮ MIMO channel modeling is a rich research field, with both empirical(measurement) work and theoretical models.
➮ We will explore the main underlying physical phenomena of MIMOpropagation and how they connect to the DoF concept.
19
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Line-of-sight SIMO channel
➮ Consider m-ULA at TX and RX, wavelength λ = c/fc, ant. spacing ∆
TX
RX array
∆
φ
➮ Let u(φ) ,
1
e−j2πλ ∆ cos φ
...
e−j(m−1)2πλ ∆ cos φ
➮ Signal from point source impinging on RX array (large TX-RX distance):y = αu(φ) · s + e, (α ∈ C, dep. on distance) 20
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Line-of-sight MIMO channel
TX array
RX arrayφr
φt
➮ MIMO channel: y = α · u(φr)︸ ︷︷ ︸nr×1
·H
u(φt)︸ ︷︷ ︸nt×1
︸ ︷︷ ︸H
·x + e, n = rank(H) = 1
➮ The LoS-MIMO channel has rank one, so no DoF gain! 21
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Lobes and resolvability
➮ Consider unit-power point sources at φ1, φ2 with sign. u(φ1), u(φ2).How similar do these signatures look?
1
m‖s1u(φ1) − s2u(φ2)‖2
= 2 − 2Re
s∗1s2 ·1
muH(φ1)u(φ2)
︸ ︷︷ ︸
|·|=f(·)
where the lobe pattern f(cos(φ1) − cos(φ2)) , 1m|uH(φ1)u(φ2)|.
➮ If f(·) < 1, then φ1, φ2 resolvable.
➮ Resolvability criterion: | cos φ1 − cos φ2| ≥ 2πA , A , (m − 1)∆
➮ Grating lobes avoided if ∆ ≤ λ
2⇒ A ≤ (m − 1)
λ
2.
22
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Two separated point sources and an m-receive-array
TX1
TX2
RX array
φ1
φ2
➮ Define H = [h1 h2], hi = αiu(φi)
➮ Condition number κ(H) =λmax(H)
λmin(H)=
√
1 + f(cos(φ1) − cos(φ2))
1 − f(cos(φ1) − cos(φ2))
➮ κ(H) is small if f(· · · ) 6= 1 ⇔ φ1, φ2 resolvable ⇔ | cos φ1−cos φ2| > 2πA23
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
MIMO with two plane scatters
TX array
RX array
A
B
➮ Here, HTX-RX = HAB-RX · HTX-AB
➮ We have rank(HTX-RX) = 2only if rank(HAB-RX) = 2 and rank(HTX-AB) = 2
➮ For H to offer 2 DoF, A and B must be sufficiently separated in angle,as seen both from TX and RX
24
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Angular decomposition of MIMO channel
➮ For φ1, φ2, ..., φm define
U ,1√m
[u(φ1) · · · u(φm)]
➮ Can show: With cos(φk) = k/m, {u(φk)} forms ON-basis.Then UHU = I.
➮ Let U r and U t be the U matrices associated with the TX and RXarrays. Note that UH
r U r = I and UHt U t = I
➮ If ∆ = λ/2, then u(φi) correspond to simple, perfectly resolvable beams,with a single mainlobe.
➮ We assume ∆ = λ/2 from now on.The case of ∆ 6= λ/2 is more involved. 25
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Angular decomposition, cont.
1
2
3
4
5
1
2
3
4
5
TX
RX
26
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Angular decomposition, cont.
➮ Now defineHa , UH
r HU t
⇒ Ha,(k,l) = uH(φrk)Hu(φt
l)
uH(φrk)
[∑
i
αiu(φ′ri )uH(φ′t
i )
]
︸ ︷︷ ︸
physical model
u(φtl)
=∑
i
αi
uH(φr
k)u(φ′ri )
︸ ︷︷ ︸
=0 unless φ′ri falls in lobe φr
k
·
uH(φ′ti )u(φt
l)︸ ︷︷ ︸
=0 unless φ′ti falls in lobe φt
l
➮ Elements of Ha correspond to different propagation paths
➮ Ha,(k,l)=gain of ray going out in TX lobe l and arriving in RX lobe k27
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Angular decomposition, key points
➮ “Rich scattering” if all angular bins filled (Ha has “no zeros”)
➮ “Diversity order”= measure of error resilience= number of propagation paths= number of nonzero elements in Ha
➮ Number of DoF= rank(H)= rank(Ha)
➮ If Ha,(k,l) are i.i.d. then Hk,l are i.i.d.
➮ With i.i.d. Ha and many terms in∑
, then we get i.i.d. Rayleigh fading.
28
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Fast fading, no CSI at TX
➮ Each codeword spans ∞ number of H
➮ The V-BLAST architecture is optimal hereNote: Reminiscent of architecture for slow fading and full CSI@TX
➮ Transmit vectorsx = Qx
where x1, ..., xn are independent streams with powers Pk and rates Rk
29
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
V-BLAST architecture
x1
x2
xnt
x1
x2
xn
e1
enr
y1
y2
ynr
HQ optimalreceiver
30
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ Transmit covariance: Kx , cov(x) = Q
P1 0 · · · 00 P2
. . . ...... . . . . . . 00 · · · 0 Pn
QH
➮ Achievable rate, for fixed H:
R = log2
∣∣∣∣I +
1
N0HKxHH
∣∣∣∣
➮ Intuition: Volume of noise ball is |N0I|N .Volume of signal ball is |HKxHH + NoI|N .
31
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ Fast fading, coding over ∞ number of H matrices gives ergodic capacity
C = E
[
log2
∣∣∣∣I +
1
N0HKxHH
∣∣∣∣
]
➮ Choose Q and Pk to
maxKx,Tr(Kx)≤P
E
[
log2
∣∣∣∣I +
1
N0HKxHH
∣∣∣∣
]
➮ Optimal Kx depends on the statistics of H
32
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ In i.i.d. Rayleigh fading, K∗x = P
ntI (i.i.d. streams) and
C = E
[
log2
∣∣∣∣I +
P
N0
1
ntHHH
∣∣∣∣
]
=n∑
k=1
E
[
log2
(
1 +SNR
ntλ2
k
)]
wheren = rank(H) = min(nr, nt)
SNR ,P
N0
{λk} are the singular values of H
➠ Antennas then transmit separate streams.
➠ Coding across antennas is unimportant.
33
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Some special cases
➮ SISO: nt = nr = 1
C = E[log2(1 + SNR|h|2)
]
At high SNR, the loss is -0.83 bpcu relative to AWGN channel
➮ SIMO: nt = 1 (power gain relative to SISO)
C = E
[
log2
(
1 + SNR
nr∑
k=1
|hk|2)]
➮ MISO: nr = 1 (no power gain relative to SISO)
C = E
[
log2
(
1 +SNR
nt
nt∑
k=1
|hk|2)]
34
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Large arrays (infinite apertures)
➮ Large MISO (nt TX, 1 RX) becomes AWGN channel:
C = E
[
log2
(
1 +SNR
nt
nt∑
k=1
|hk|2)]
→ log2(1 + SNR)
➮ Large SIMO (1 TX, nr RX)
C = E
[
log2
(
1 + SNR
nr∑
k=1
|hk|2)]
≈ log2(nrSNR) = log2(nr)+log2(SNR)
➮ Large square MIMO (nt TX, nr RX, nr = nt = n): Linear incr. with n:
C ≈ n ·(
1
π
∫ 4
0
(
log2(1 + t · SNR)
√
1
t− 1
4
)
dt
)
35
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Fast fading, no CSI at TX, high SNR
➮ Here
C =
n∑
k=1
E
[
log2
(
1 +SNR
ntλ2
k
)]
≈ n log2(SNR) + const
➮ Both nr and nt must be large to provide DoF gain
➮ “Capacity grows as min(nr, nt)”
36
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Fast fading, no CSI at TX, low SNR
➮ Here
C =
n∑
k=1
E
[
log2
(
1 +SNR
ntλ2
k
)]
≈ log2(e) ·SNR
nt·
n∑
k=1
E[λ2k]
= log2(e) ·SNR
nt· E[||H||2︸ ︷︷ ︸
=nrnt
] = log2(e) · nr · SNR
➮ Capacity independent of nt!
➮ No DoF gain. All what matters here is power
➮ Relative to SISO, a power gain of nr (array/beamforming gain)
➮ Multiple TX antennas do not help here
(but with CSI at TX, things are very different)37
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
V-BLAST in practice
➮ Transmitter architecture “simple” but the receiver must separate thestreams ➠ major challenge
➮ Problems are conceptually similar to uplink MUD in CDMA and toequalization for ISI channels
➮ Stream-by-stream receivers: Successive-interference-cancellation
➠ MMSE-SIC is theoretically optimal but suffers from error propagation
➠ Rate allocation necessary
➮ Iterative architectures
➠ Iteration between outer code and demodulator
➠ Demodulator design is major problem
➮ Receivers for MIMO to be discussed more in lecture 338
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Fast fading, full CSI at TX
➮ The transmitter can do waterfilling over both space and time
➮ Parallel channels: yk[m] = λk[m]xk[m] + ek[m]
➠ Waterfilling over space (k) and time (m).
➠ Optimal powers P ∗k [m]
➠ Capacity
C =
n∑
k=1
E
[
log2
(
1 +P ∗(λk)λ
2k
N0
)]
39
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ High SNR: P ∗(λk) ≈ Pn (equal power)
C ≈n∑
k=1
E
[
log2
(
1 +SNR
nλ2
k
)]
, n D.o.F.
An SNR gain (compared to no CSI) of
nt
n=
nt
min(nt, nr)=
nt
nr, if nt ≥ nr
➮ Low SNR: Even larger gain, so here multiple antennas do help!
40
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Slow fading, no CSI at TX
➮ Reliable communication for fixed H if log2
∣∣∣I + 1
N0HKxHH
∣∣∣ > R
➮ Outage probability, for fixed R: Pout = P[
log2
∣∣∣I + 1
N0HKxHH
∣∣∣ < R
]
➮ Optimal Kx as function of H’s statistics:
K∗x = argmin
Kx,Tr Kx≤PP
[
log2
∣∣∣∣I +
1
N0HKxHH
∣∣∣∣< R
]
For H i.i.d. Rayleigh fading:
➠ K∗x = P
ntI optimal at large SNR
➠ K∗x = P
n′ diag{1, ..., 1, 0, ..., 0} at low SNR (n′ < nt)41
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ Notion of diversity: Pout behaves as SNR−d where d=diversity order
➮ Maximal diversity: d = nrnt
➮ To achieve diversity, we need coding across streams
➮ V-BLAST does not work here.Each stream has diversity at most nr, while the channel offers nrnt
➮ Architectures for slow fading:
➠ Theoretically, D-BLAST is optimal
➠ Pragmatic approaches include STBC combined with FEC
42
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Example: Outage probability at rate R = 2 bpcu
−5 0 5 10 15 20 25 30 35 4010
−4
10−3
10−2
10−1
SNR
FE
R
nt=1, n
r=1 (SISO)
nt=2, n
r=1
nt=1, n
r=2
nt=2, n
r=2
43
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
D-BLAST architecturereplacements
xA(1)
xB(1)
xA(2)
xB(2)
xA(3)
➮ Decoding in steps:1. Decode xA(1)2. Decode xB(1), suppressing xA(2) via MMSE3. Strip off xB(1), and decode xA(2)4. Decode xB(2), suppressing xA(3) via MMSE
➮ One codeword: x(i) = [xA(i) xB(i)]
➮ Requires appropriate rate allocation among xA(i),xB(i)
➮ In practice, error propagation and rate loss due to initialization
44
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Le 2: Low-complexity MIMO
45
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Antenna diversity basics
➮ Recall transmission model (single time interval):
y1...
ynr
︸ ︷︷ ︸y (RX data)
=
h1,1 · · · h1,nt... ...
hnr,1 · · · hnr,nt
︸ ︷︷ ︸H (channel)
x1...
xnt
︸ ︷︷ ︸x (TX data)
+
e1...
enr
︸ ︷︷ ︸e (noise)
➮ Transmission model (N time intervals):
[y1,1 · · · y1,N
......
ynr,1 · · · ynr,N
]
︸ ︷︷ ︸Y
=
[h1,1 · · · h1,nt
......
hnr,1 · · · hnr,nt
]
︸ ︷︷ ︸H
[x1,1 · · · x1,N
......
xnt,1· · · xnt,N
]
︸ ︷︷ ︸X∈X
“code matrix”
+
[e1,1 · · · e1,N
......
enr,1 · · · enr,N
]
︸ ︷︷ ︸E
46
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Introduction and preliminaries
➮ Transmitting with low error probability at fixed rate requires N large.
➮ For practical systems, it is often of interest to design short space-timeblocks (small N) with good error probability performance. Outer FECcan then be used over these blocks.
➮ Throughout, we will assume Gaussian noise,
e ∼ N(0, N0I)
Usually, we assume i.i.d. Rayleigh fading,
Hi,j i.i.d. N(0, 1)
Sometimes, for SIMO/MISO, we take
h ∼ N(0, Q) 47
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Receive diversity (nt = 1)
➮ Suppose s transmitted, and h known at RX.
➮ Receive: y = hs + e
➮ Detection of s via maximum-likelihood (in AWGN):
‖y − hs‖2 = ... = ‖h‖2 ·∣∣∣s − s
∣∣∣
2
+ const., where s ,hHy
‖h‖2
➮ MRC+scalar detection problem!
➮ Distribution of s determines performance:
s ,hHy
‖h‖2∼ N
(
s,N0
‖h‖2
)
, SNR|h =‖h‖2
N0· E[|s|2]
︸ ︷︷ ︸=P
= ‖h‖2 · P
N0︸︷︷︸
SNR48
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Diversity order (n × 1 fading vector h)
➮ P (e|h) = Q
(√
SNR · ‖h‖2
)
and h ∼ N(0,Q) (SNR up to a constant)
➮ Then P (e) = E[P (e|h)] ≤∣∣∣∣I +
SNR
2Q
∣∣∣∣
−1
=
n∏
k=1
(
1 +SNR
2λk(Q)
)−1
➮ As SNR → ∞, P (e) ≤(
SNR
2
)− rank(Q)
· 1∏rank(Q)
k=1 λk(Q)
➮ Diversity order d , −log P (e)
log SNR= rank(Q)
➮ Note that
(n∏
k=1
λk
)1/n
≤ 1
n
n∑
k=1
λk =1
nTr{Q} =
1
nE[‖h‖2
]
with eq. if λ1 = · · · = λn so Q ∝ I minimizes the bound on P (e) 49
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Diversity order
10−1
10−2
10−3
10−4
10−5
0 10 20 30 40 50
d = 1
d = 2
d = 3
P (e)
SNR 50
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Transmit diversity, H known at transmitter
➮ Try transmit w · s where w is function of H! (as we did in Le 1)
➮ RX data is y = Hws+e and optimal decision minimizes the ML metric:
‖y − Hws‖2 = ... = ‖Hw‖2 · |s − s|2 + const.
where s ,wHHHy
‖Hw‖2∼ N
(
s,N0
‖Hw‖2
)
➮ The SNR|H in s is max for w=normalized dominant RSV of H
➮ Resulting SNR|H = 1N0
λmax(HHH)
︸ ︷︷ ︸
≥‖H‖2/nt
·E[|s|2]≥ 1
N0
‖H‖2
nt· E[|s|2].
➮ Diversity order: d = nrnt
➮ For nr = 1 take wopt = h∗‖h‖ so SNR|h = ‖h‖2
N0E[|s|2]
(same as for RX-d)51
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Transmit diversity, H unknown at transmitter
➮ From now on, TX does not know H!
➮ Consider Y = HX + E. Optimal receiver in AWGN (H known at RX):
maxX
P (X|Y ,H) ⇔ minX
‖Y − HX‖2
➮ Pairwise error probability P (X0 → X|H) = Q
(√‖H(X0−X)‖2
2N0
)
➮ Consider P (X0 → X) = E[P (X0 → X|H)]. For i.i.d. Rayleigh fading,
P (X0 → X) ≤∣∣∣I +
1
4N0(X0 − X)(X0 − X)H
∣∣∣
−nr
︸ ︷︷ ︸
∼“
1N0
”−d∼SNR−d
d=“diversity order”. Note: d ≤ nrnt and d = nrnt if X0 − X full rank52
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Linear space-time block codes (STBC)
➮ STBC maps ns complex symbols onto nt × N matrix X:
{s1, . . . , sns} → X
➮ Linear STBC:
X =
ns∑
n=1
(snAn + isnBn)
where {An, Bn} are fixed matrices
➮ Typically N small. Need N ≥ nt for max diversity (why?)
➮ Rate: R ,N
nsbits/channel use
53
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
STBC with a single symbol
➮ Transmit one symbol s during N time intervals, weighted by W :
X = W · s, Y = HX + E = HW s + E
➮ Average error probability in Rayleigh fading:
P (s0 → s) ≤ |WW H|−nr|s − s0|−2nrnt
( 1
4N0
)−nrnt
➮ What is the optimum W ? Try to maximize:
maxW
|WW H|
s.t. Tr{WW H
}= ‖W ‖2 ≤ 1 (power constraint)
➮ Solution: WW H = 1nt
I, (antenna cycling). Diversity but rate 1/N ! 54
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Alamouti scheme for nt = 2
➮ X = 1√2
[s1 s∗2s2 −s∗1
]
. That is:
Time 1 Time 2
Ant 1 s1/√
2 s∗2/√
2
Ant 2 s2
√2 −s∗1/
√2
➮ RX data:
[y1
y2
]
= 1√2
[h1s1 + h2s2
h1s∗2 − h2s
∗1
]
+
[e1
e2
]
➮ Consider
[y1
y∗2
]
= 1√2
[h1s1 + h2s2
h∗1s2 − h∗
2s1
]
+
[e1
e∗2
]
= 1√2
[h1 h2
−h∗2 h∗
1
] [s1
s2
]
+
[e1
e∗2
]
➮ ML detector
mins1,s2
∥∥∥∥∥∥∥∥∥
[y1
y∗2
]
︸ ︷︷ ︸y
− 1√2
[h1 h2
−h∗2 h∗
1
]
︸ ︷︷ ︸
,G
[s1
s2
]
︸︷︷︸s
∥∥∥∥∥∥∥∥∥
2
55
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ Observation: GHG = 12
[hH
1 −hT2
hH2 hT
1
] [h1 h2
−h∗2 h∗
1
]
= ‖h1‖2+‖h2‖2
2 I
➮ Hence min ‖y − Gs‖2 ⇔ min ‖s − s‖2, s = 2
GHy
‖h1‖2+ ‖h2‖2
➮ Distribution of s:
s = 2GHy
‖h1‖2+ ‖h2‖2 = 2
GH(Gs + e)
‖h1‖2+ ‖h2‖2 ∼ N
(
s,2N0
‖H‖2I
)
➮ SNR|H =‖H‖2
2N0. For 2 × 1 system, 3 dB less than 1 × 2 with MRC
➮ Diversity order: 2nr
56
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Overview of 2-antenna systems
Method SNR rate TX knows h1, h2
1 TX, 2 RX, MRC|h1|2 + |h2|2
N01 no
2 TX, 1 RX, BF|h1|2 + |h2|2
N01 yes
2 TX, 1 RX, ant. cycl.|h1|2 + |h2|2
2N01/2 no
2 TX, 1 RX, Alamouti|h1|2 + |h2|2
2N01 no
2 TX, 1 RX, Ant. sel. ≥ |h1|2 + |h2|22N0
1 partly
➮ For antenna selection, note that
max |hn|2N0
≥ 1
2
|h1|2 + |h2|2N0
57
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
2-antenna systems, cont
10−1
10−2
10−3
10−4
10−5
0 10 20 30 40 50
1 RX, 1 TX
2 RX, 1 TX, MRC
or 1 TX, 2 RX, BF
1 RX, 2 TX, antenna selection
1 RX, 2 TX, Alamouti
P (e)
SNR58
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Orthogonal STBC (OSTBC)
➮ Important special case of linear STBC:
X =
ns∑
n=1
(snAn+isnBn) for which XXH =
ns∑
n=1
|sn|2 · I = ‖s‖2 · I
Notation: (·)=real part, (·)=imaginary part
➮ This is equivalent to requiring for n = 1, . . . , ns, p = 1, . . . , ns
AnAHn = I,BnBH
n = I
AnAHp = −ApA
Hn , BnBH
p = −BpBHn , n 6= p
AnBHp = BpA
Hn
59
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Proof
➮ To prove ⇒), expand:
XXH =
ns∑
n=1
ns∑
p=1
(snAn + isnBn)(spAp + ispBp)H
=
ns∑
n=1
(s2nAnAH
n + s2nBnBH
n )
+
ns∑
n=1
ns∑
p=1,p>n
(
snsp(AnAHp + ApA
Hn ) + snsp(BnBH
p + BpBHn ))
+ i
ns∑
n=1
ns∑
p=1
snsp(BnAHp − ApB
Hn )
➮ Proof of ⇐), see e.g., EL&PS book.60
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Some properties of OSTBC
➮ Manifests the intuition that unitary matrices are good
➮ Alamouti code is an OSTBC (up to 1/√
2 normalization)
➮ Pros
➠ Diversity of order nrnt
➠ Detection of {sn} is decoupled
➠ Converts space-time channel into ns AWGN channels
➠ Combination with outer coding is straightforward
➮ Cons
➠ Rate loss for nt > 2, i.e., nt > 2 ⇒ R =ns
N< 1
➠ Information loss except for when nt = 2, nr = 161
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Diversity order of OSTBC
➮ Suppose {s0n}ns
n=1 are true symbols and {sn} are any other symbols.Then
X − X0 =
ns∑
n=1
(
(sn − s0n)An + i(sn − s0
n)Bn
)
⇒ (X − X0)(X − X0)H =
ns∑
n=1
|sn − s0n|2 · I
➮ Full rank ➠ full diversity for i.i.d. Gaussian channel
62
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Derivation of decoupled detection
➮ Write the ML metric as
‖Y − HX‖2
=‖Y ‖2 − 2ReTr{Y HHX
}+ ‖HX‖2
=‖Y ‖2 − 2
ns∑
n=1
ReTr{Y HHAn
}sn + 2
ns∑
n=1
Im Tr{Y HHBn
}sn
+ ‖H‖2 · ‖s‖2
=
ns∑
n=1
(
− 2ReTr{Y HHAn
}sn + 2 Im Tr
{Y HHBn
}sn + |sn|2‖H‖2
)
+ const.
=‖H‖2 ·ns∑
n=1
∣∣∣∣∣sn − ReTr
{Y HHAn
}− i Im Tr
{Y HHBn
}
‖H‖2
∣∣∣∣∣
2
+ const.63
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Decoupled detection, again
➮ Linearity: Y = HX + E ⇔ y = Fs′ + e, s′ , [sT sT ]T
➮ Theorem: X is an OSTBC if and only if
Re{F HF
}= ‖H‖2 · I ∀ H
➮ ML metric:
‖y − Fs′‖2 = ‖y‖2 − 2Re{yHFs′}+ Re
{s′TF HFs′}
= ‖y‖2 − 2Re{yHFs′}+ ‖H‖2 · ‖s′‖2
= ‖H‖2 · ‖s′ − s′‖2 + const.
where s′,
[ˆsˆs
]
=Re{F Hy
}
‖H‖2∼ N
([ss
]
,N0/2
‖H‖2I
)
➮ F is a “Spatial/temporal (code) matched filter”64
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Interpretation of decoupled detection
➮ Space-time channel decouples into ns AWGN channels
(a) nt × nr space-time channel
signal 2
signal 1
AWGN
AWGN
AWGN
signal ns
(b) ns independent AWGN channels
➮ SNR per subchannel: SNR|H =N
ns· ‖H‖2
nt· P
N065
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Example: Alamouti’s code is an OSTBC
➮ Consider the Alamouti code (re-normalized):
X =
[s1 s∗2s2 −s∗1
]
, XXH = (|s1|2 + |s2|2)I
➮ Identification of An and Bn gives
A1 =
[1 00 −1
]
A2 =
[0 11 0
]
B1 =
[1 00 1
]
B2 =
[0 −11 0
]
66
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Examples of OSTBC
➮ Best known OSTBC for nt = 3, N = 4, ns = 3:
X =
s1 0 s2 −s3
0 s1 s∗3 s∗2−s∗2 −s3 s∗1 0
Code rate: 3/4 bpcu
➮ For nt = 4, N = 4, ns = 3:
X =
s1 0 s2 −s3
0 s1 s∗3 s∗2−s∗2 −s3 s∗1 0s∗3 −s2 0 s∗1
Rate is 3/4 bpcu.67
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Summary of OSTBC Relations
XXH =
ns∑
n=1
|sn|2 · I = ‖s‖2 · I
m
AnAHn = I , BnBH
n = I
AnAHp = −ApA
Hn , BnBH
p = −BpBHn , n 6= p
AnBHp = BpA
Hn
m
Re{F HF
}= ‖H‖2 · I where F is such that
vec(Y ) = F ·[s
s
]
+ vec(E)68
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Mutual Information Properties of OSTBC
➮ Average transmitted energy per antenna and time interval = 1/nt
➮ Channel mutual information, with i.i.d. streams of power 1/nt:
CMIMO(H) = log
∣∣∣∣∣I +
1
nt
HHH
N0
∣∣∣∣∣
➮ Mutual information of OSTBC coded system:
COSTBC(H) =ns
Nlog
(
1 +N
ns
‖H‖2
ntN0
)
➮ Theorem:
CMIMO ≥ COSTBC, equality only for nt = 2, nr = 169
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Capacity comparison (1% outage)
0 5 10 15 20 25 30 35 4010
−1
100
101
SNR
Cap
acity
[bits
/sec
/Hz]
Average capacity, 1 TX, 1 RX Outage capacity, 1 TX, 1 RX Average capacity, 2 TX, 2 RX Average capacity, 2 TX, 2 RX − OSTBCOutage capacity, 2 TX, 2 RX Outage capacity, 2 TX, 2 RX − OSTBC
70
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Non-orthogonal linear STBC
➮ Also called linear dispersion codes
➮ Different approaches:
➠ Optimization of mutual information between the TX & RX:
max1
2EH
[
log2
∣∣∣I +
2
N0Re{F HF
}∣∣∣
]
(no explicit guarantee for full diversity here)
➠ Quasi-orthogonal codes
➠ Codes based on linear constellation (complex-field) precoding
s′ = Φs
71
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Example: A non-OSTBC
➮ Consider the following diagonal code, where |sn| = 1:
X =
[s1 00 s2
]
➮ Then
A1 =
[1 00 0
]
, A2 =
[0 00 1
]
, B1 =
[1 00 0
]
B2 =
[0 00 1
]
➮ ML metric for symbol detection:
‖Y − HX‖2 =‖Y ‖2 − 2ReTr{XHHHY
}+ ‖H‖2
= − 2Re{[HHY ]1,1 · s1
}− 2Re
{[HHY ]2,2 · s2
}+ const.
➮ Decoupled detection, but not OSTBC, and not full diversity72
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
More examples of linear but not orthogonal STBC
➮ Alamouti code with forgotten conjugates
X =
[s1 s2
s2 −s1
]
➮ “Spatial multiplexing” (R = nt, N = 1, ns = nt, d = nr).For nt = 2:
A1 =
[10
]
,A2 =
[01
]
B1 =
[10
]
,B2 =
[01
]
73
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Linearly precoded STBC
➮ Transmit WX where W ∈ {W 1, . . . ,W K}. Data model:
Y = HWX + E
➮ Fact: If rank{W k} = nt then same diversity order as but without W
➮ Consider correlated fading: R = E[hhH] = RTt ⊗ Rr, h = vec(H)
➮ Error probability:
EH[P (X0 → X)] ≤ const. ·˛
˛
˛I +1
N0
(X0 − X)(X0 − X)H · W
HRtW
˛
˛
˛
−nr
➮ For OSTBC, (X0−X)(X0−X)H ∝ I. Hence, minW
∣∣∣I +
ns
N0W HRtW
∣∣∣
74
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Ex. OSTBC with One-Bit Feedback for nt = 2
➮ One bit used to choose between
W 1 =
[|a| 0
0√
1 − |a|2]
︸ ︷︷ ︸
if ‖h1‖>‖h2‖
, W 2 =
[√
1 − |a|2 00 |a|
]
︸ ︷︷ ︸
if ‖h2‖>‖h1‖
➮ Let Pc be the probability that the feedback bit is correct
➮ For Pc = 1 (reliable feedback), a = 1 is optimal ➠ antenna selection
W may be multiplied with fixed unitary matrix ➠ grid of beams
➮ For Pc < 1 (erroneous feedback),
EH[P (X0 → X)] ≤ 2
SNR2 ·( Pc
|a|2 +1 − Pc
1 − |a|2)
(for nr = 1)
75
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2010
−5
10−4
10−3
10−2
10−1
SNR
BE
RUnweighted OSTBC. Optimal weighting (No feedback error). Optimal weighting with feedback error. Error tolerant weighting (No feedback error),Error tolerant weighting with feedback error
76
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
MIMO with feedback - optimized transmission
ssxH
ny
I I(H)
UW (I)Encoder Decoder
H
➮ Here
➠ U depends on long-term feedback
➠ I depends on short-term (few bits) feedback
➮ State-of-the art designs rely on vector quantization techniques77
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Frequency-selective channels
➮ Maximum diversity order (with ML detection) will be nrntL whereL=length of CIR
➮ Variety of techniques to achieve maximum diversity
➮ Most widely used transmission technique is MIMO-OFDM
➠ coding across multiple OFDM symbols
➠ coding across subcarriers within one OFDM symbol
➮ Basic model per subcarrier is
Y n = HnXn + En
78
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Le 3: MIMO receivers
79
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Summary of MIMO receivers
➮ Optimal architectures (from Le 1):
➠ CSI@TX (any fading): linear processing, y = UHy, separates streams➠ no CSI@TX, fast fading: V-BLAST, optimal receiver is more involved
- linear receiver (channel inversion) is grossly suboptimal- successive interference cancellation (SIC)- using soft MIMO demodulator + decoder, possibly iterative
➠ no CSI@TX, slow fading: D-BLAST
➮ Architectures with STBC+outer FEC (from Le 2)
➠ With OSTBC, decoupled detection and thing are simple:
min ‖Y − HX‖ ∼ min(|s1 − s1|2 + |s2 − s2|2
)
➠ With non-OSTBC, min ‖Y − HX‖ does not decouple- problem similar to for V-BLAST 80
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Theoretically optimal V-BLAST receiver based on SIC
decoder 1
decoder 2
decoder 3
decoder nt
MMSE 1
MMSE 2
MMSE 3
(MMSE nt)
y = Hs + e
decoded stream 1
decoded stream 2
decoded stream 3
decoded stream nt
➮ Optimality only for fast fading. Requires rate allocation on streams.
➮ Major drawback: Requires long codewords. Prone to error propagation.81
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Theoretically optimal D-BLAST receiver based on SIC
xA(1)
xB(1)
xA(2)
xB(2)
xA(3)
➮ One codeword split as x(i) = [xA(i) xB(i)], with rate allocation
➮ Decoding in steps:1. Decode xA(1)2. Decode xB(1), suppressing xA(2) via MMSE3. Strip off xB(1), and decode xA(2)4. Decode xB(2), suppressing xA(3) via MMSE
➮ Drawbacks:
➠ error propagation➠ rate loss due to initialization➠ requires long codewords
82
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Receivers for linear STBC architectures
Training Data 2Data 1
➮ Received block: Y = HX + E.
➮ X linear in {s1, ..., sns} so with appropriate F , the ML metric is
‖Y − HX‖2=
∥∥∥∥
[vec(Y )
vec(Y )
]
− F
[s
s
]∥∥∥∥
2
➮ For OSTBC, F TF = ‖H‖2I so detection decouples
➮ Spatial multiplexing (V-BLAST) can be seen a degenerated special caseof this architecture, with
X =
s1...
snt
83
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Demodulator+decoder architectures
MIMO demodulator channel decoder
a priori information P (bi)
soft output P (bi|y)y = Hs + e
➮ Demodulator computes P (bi|y) given a priori information P (bi)
➮ Decoder adds knowledge of what codewords are valid
➮ Added knowledge in decoder is fed back to demodulator as a priori
➮ Iteration until convergence (a few iterations, normally)84
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
MIMO demodulation (hard)
➮ General transmission model, with Gi,j ∈ R
y︸︷︷︸m×1
= G︸︷︷︸m×n
· s︸︷︷︸n×1
+ e︸︷︷︸m×1
, sk ∈ S
➮ Models V-BLAST architectures, and (non-O)STBC architectures
➮ Other applications: multiuser detection, ISI, crosstalk in cables, ...
➮ Typically, m ≥ n and G is full rank and has no structure.
85
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
The problem
➮ If e ∼ N(0, σI) then the problem is to detect s from y
mins∈Sn
‖y − Gs‖2, y ∈ R
m, G ∈ Rm×n
➮ Let G = QL where
{
Q ∈ Rm×n is orthonormal (QTQ = I)
L ∈ Rn×n is lower triangular
Then ‖y − Gs‖2=∥∥∥QQT (y − Gs)
∥∥∥
2
+∥∥∥(I − QQT )(y − Gs)
∥∥∥
2
=∥∥∥Q
Ty − Ls
∥∥∥
2
+∥∥∥(I − QQT )y
∥∥∥
2
so mins∈Sn
‖y − Gs‖2 ⇔ mins∈Sn
‖y − Ls‖ where y , QTy86
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Some remarks
➮ Integer-constrained least-squares problem, known to be NP hard
➮ Brute force complexity O(|Sn|)
➮ Typical dimension of problem: n ∼ 8−16, so |S| ∼ 2–8, |Sn| ∼ 256–1014
➮ Needs be solved➠ in real time
➠ once per received vector y
➠ in power-efficient hardware (beware of heavy matrix algebra)➠ possibly fixed-point arithmetics
➠ preferably, in a parallel architecture
➮ In communications, we can accept a suboptimal algorithm that finds thecorrect solution quickly, with high probability
87
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Some remarks, cont.
➮ For G ∝ orthogonal (OSTBC), the problem is trivial.
➮ Our focus is on unstructured G
➮ If G has structure (e.g., Toeplitz) then use algorithm that exploits this
➮ Generally, slow fading (no time diversity) is the hard case
88
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Zero-Forcing
➮ Lets , arg min
s∈Rn‖y − Gs‖ = arg min
s∈Rn‖y − Ls‖ = L−1y
E.g., Gaussian elimination: s1 = y1/L1,1
s2 = (y2 − s1L2,1)/L2,2
...
➮ Then project onto S: sk = [sk] , arg minsk∈S
|sk − sk|
➮ This works very poorly. Why? Note that
s = s + L−1QTe = s + e, where cov(e)=σ · (LTL)−1
ZF neglects the correlation between the elements of e 89
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Decision tree view
min{s1,...,sn}
sk∈S
{f1(s1) + f2(s1, s2) + · · · + fn(s1, . . . , sn)}
where fk(s1, ..., sk) ,
(
yk −k∑
l=1
Lk,lsl
)2
{−1,−1,−1} {−1,−1, 1} {−1, 1,−1} {−1, 1, 1} {1,−1,−1} {1,−1, 1} {1, 1,−1} {1, 1, 1}
s1 = −1 s1 = +1
s2 = −1s2 = −1 s2 = +1s2 = +1
s3 = −1s3 = −1s3 = −1s3 = −1 s3 = +1s3 = +1s3 = +1s3 = +1
f1(−1) = 1 f1(1) = 5
f2(−1,−1) = 2 f2(−1, 1) = 1 f2(1,−1) = 2 f2(1, 1) = 3
f3(· · · ) = 4 f3(· · · ) = 1 3 4 3 1 1 9
1 5
3 2 7 8
7 4 5 6 10 8 9 17
root node
leaves
90
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Zero-Forcing with Decision Feedback (ZF-DF)
➮ Consider the following improvement
i) Detect s1 via: s1 =
[y1
L1,1
]
= arg mins1∈S
f1(s1)
ii) Consider s1 known and set s2 =
[y2 − s1L2,1
L2,2
]
= arg mins2∈S
f2(s1, s2)
iii) Continue for k = 3, ..., n:
sk =
[
yk −∑k−1l=1 Lk,lsl
Lk,k
]
= arg minsk∈S
fk(s1, ..., sk−1, sk)
➮ This also works poorly. Why? Error propagation.Incorrect decision on si ➠ most of the following sk wrong as well.
➮ Optimized detection order (start with the best) does not help much.
91
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Zero-Forcing with Decision Feedback (ZF-DF)
r1
1 5
2 1 2 3
4 1 3 4 3 1 1 9
1 5
3 2 7 8
7 4 5 6 10 8 9 17
92
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Sphere decoding (SD)
➮ Select a sphere radius, R. Then traverse the tree, but once encounteringa node with cumulative metric > R, do not follow it down
➮ Enumerates all leaf nodes which lie inside the sphere ‖y − Ls‖2 ≤ R
➮ Improvements:➠ Pruning: At each leaf, update R according to R := min(R, M)➠ Improvements: optimal ordering of sk
➠ Branch enumeration
(e.g., sk = {−5,−3,−1,−1, 3, 5} vs. sk = {−1, 1,−3, 3,−5, 5})
➮ Known facts:➠ The algorithm solves the problem, if allowed to finish➠ Runtime is random and algorithm cannot be parallelized➠ Under relevant circumstances, average runtime is O(2αn) for α > 0
93
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
SD, without pruning, R = 6
r2
r2a 1 5
2 1 2 3
4 1 3 4 3 1 1 9
1 5
3 2 7 8
7 4 5 6 10 8 9 17
94
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
SD, with pruning, R = ∞
r3
r3a 1 5
2 1 2 3
4 1 3 4 3 1 1 9
1 5
3 2 7 8
7 4 5 6 10 8 9 17
95
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
“Fixed complexity” sphere decoding (FCSD)
➮ Select a user parameter r, 0 ≤ r ≤ n
➮ For each node on layer r, consider {s1, ..., sr} fixed and solve
(∗) min{sr+1,...,sn}
sk∈S
{fr+1(s1, ..., sr+1) + · · · + fn(s1, ..., sn)}
➮ Subproblem (*) solved using |S|r times
➮ Low-complexity approximation (e.g. ZF-DF) can be used.Why? (*) is overdetermined (equivalent G is tall)
➮ Order can be optimized: start with the “worst”
➮ Fixed runtime, fully parallel structure96
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
FCSD, r = 1
r4
r4a 1 5
2 1 2 3
4 1 3 4 3 1 1 9
1 5
3 2 7 8
7 4 5 6 10 8 9 17
97
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Semidefinite relaxation (for sk ∈ {±1})
➮ Let s ,
[s
1
]
, S , ssT =
[s
1
][sT 1
], Ψ ,
[LTL −LT y
−yTL 0
]
Then‖y − Ls‖2
= sTΨs + ‖y‖2
= Trace{ΨS} + ‖y‖2
so the problem is to
mindiag{S}={1,...,1}
rank{S}=1sn+1=1
Trace{ΨS}
➮ SDR proceeds by relaxing rank{S} = 1 to S positive semidefinite
➮ Interior point methods used to find S
➮ s recovered, e.g., by taking dominant eigenvector and project onto Sn98
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Lattice reduction
➮ Extend Sn to lattice. For example, if S = {−3,−1, 1, 3},then Sn = {. . . ,−3,−1, 1, 3, . . .} × · · · × {. . . ,−3,−1, 1, 3, . . .}.
➮ Decide on orthogonal integer matrix T ∈ Rn×n that maps Sn onto itself:
Tk,l ∈ Z, |T | = 1, and Ts ∈ Sn ∀s ∈ Sn
➮ Find one such T for which LT ∝ I
➮ Then solve s′, arg min
s′∈Sn‖y − (LT )s′‖2, and set s = T−1s
′
➮ Critical steps:➠ Find suitable T (computationally costly, but amortize over many y)➠ s ∈ Sn, but s /∈ Sn in general, so clipping is necessary
99
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
MIMO demodulation (soft)
➮ Data model
y︸︷︷︸m×1
= G︸︷︷︸m×n
· s︸︷︷︸n×1
+ e︸︷︷︸m×1
, sk = S(b1, ..., bp) ∈ S, |S| = 2p
➮ Bits bi a priori indep. with
L(bi) = log
(P (bi = 1)
P (bi = 0)
)
, i = 1, ..., np
➮ Objective: Determine
L(bi|y) = log
(P (bi = 1|y)
P (bi = 0|y)
)
100
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Posterior bit probabilities
L(bi|y) = log
„
P (bi = 1|y)
P (bi = 0|y)
«
(a)= log
P
s:bi(s)=1 P (s|y)P
s:bi(s)=0 P (s|y)
!
(b)= log
P
s:bi(s)=1 p(y|s)P (s)P
s:bi(s)=0 p(y|s)P (s)
!
(c)= log
0
@
P
s:bi(s)=1 p(y|s)“
Qnp
i′=1P (bi′ = bi′(s))
”
P
s:bi(s)=0 p(y|s)“
Qnp
i′=1P (bi′ = bi′(s))
”
1
A
= log
0
B
@
P
s:bi(s)=1 p(y|s)“
Qnp
i′=1,i′6=iP (bi′ = bi′(s))
”
· P (bi = 1)
P
s:bi(s)=0 p(y|s)“
Qnp
i′=1,i′6=iP (bi′ = bi′(s))
”
· P (bi = 0)
1
C
A
= log
0
B
@
P
s:bi(s)=1 p(y|s)“
Qnp
i′=1,i′6=iP (bi′ = bi′(s))
”
P
s:bi(s)=0 p(y|s)“
Qnp
i′=1,i′6=iP (bi′ = bi′(s))
”
1
C
A+ L(bi)
In Gaussian noise p(y|s) = 1(2πσ)m/2 exp
(− 1
2σ‖y − Gs‖2)
so
L(bi|y) = log
0
B
@
P
s:bi(s)=1 exp“
− 12σ‖y − Gs‖2
”“
Qnp
i′=1,i′6=iP (bi′ = bi′(s))
”
P
s:bi(s)=0 exp“
− 12σ‖y − Gs‖2
”“
Qnp
i′=1,i′6=iP (bi′ = bi′(s))
”
1
C
A+ L(bi)
101
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ With a priori equiprobable bits
L(bi|y) = log
(∑
s:bi(s)=1 exp(− 1
2σ‖y − Gs‖2)
∑
s:bi(s)=0 exp(− 1
2σ‖y − Gs‖2)
)
➮∑
can be relatively well approximated by its largest term
That gives problems of the type
mins∈Sn,bi(s)=β
‖y − Gs‖2
This is called “max-log” approximation
➮ If many candidates s are examined, then use these terms in∑
➠ List-decoding algorithm
102
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Incorporating a priori probabilities (BPSK/dim case)
➮ Consider sk ∈ {±1}, and let
sk = 2bk − 1
γk ,1
2log (P (sk = −1)P (sk = 1)) =
1
2log (P (bk = 0)P (bk = 1))
λk , log
(P (sk = 1)
P (sk = −1)
)
= log
(P (bk = 1)
P (bk = 0)
)
= L(bk)
➮ The prior is linear in sk:
log(P (sk = s)) =1
2[(1 + s) log(P (sk = 1)) + (1 − s) log(P (sk = −1))]
=1
2γk +
1
2λksk
103
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ Write
L(sk|y) = log
∑
s:sk=1 exp(
−1σ‖y − Gs‖2 + 1
2
∑ni=1,i 6=k (γi + λisi)
)
∑
s:sk=0 exp(
−1σ‖y − Gs‖2 + 1
2
∑ni=1,i 6=k (γi + λisi)
)
+λk
➮ Define y , [yT 1 · · · 1]T and G ,
[G
Λk
]
where
Λk , diag{
σ4λ1, · · · , σ
4λk−1,σ4λk+1, . . . ,
σ4λn
}
➮ Then
L(sk|y) = log
∑
s:sk=1 exp(
−1σ‖y − Gs‖2 +
∑ni=1,i 6=k
(σλ2
i16 + γi
2
))
∑
s:sk=0 exp(
−1σ‖y − Gs‖2 +
∑ni=1,i 6=k
(σλ2
i16 + γi
2
))
+λk
➮ A priori information on sk ➠ “virtual antennas”104
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Example w. iter. decod. 4×4, r = 1/2-LDPC, 1000 bits
0.01
0.1
−4 −3.5 −3 −2.5 −2
Fra
me-e
rror-
rate
(FER)
Normalized signal-to-noise-ratio (SNR) [dB]
Practical method, r = 3, no iteration
Practical method, r = 3, 1 iteration
Practical method, r = 3, 2 iterations
Brute-force, no iteration
Brute-force, 1 iteration
Brute-force, 2 iterations
105
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Channel (H) estimation and associated receivers
➮ Very often pilots are used to form a channel estimate.
ConsiderY t = HXt + Et
➮ Estimate H via training:
➠ Maximum likelihood (in Gaussian noise):
H = argminH
‖Y t − HXt‖2 = Y tXHt (XtX
Ht )−1
➠ Can show, estimate is the same also in colored noise (e.g. co-channelinterference in multiuser system)
➠ Can be somewhat improved by using MMSE estimation106
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
➮ Estimate noise (co)variance:
Λ = 1Nt
Y tΠ⊥XH
tY H
t , for colored noise
N0 = 1Ntnr
Tr{
Y tΠ⊥XH
tY H
t
}
, for white noise
➠ This estimate can be used to prewhiten the received signal to suppressco-channel interference. E.g.
Y = Λ−1/2Y
➠ At most nr − 1 rank-1 interferers can be suppressed.
The receive array has nr degrees of freedom.
At high SNR, Λ−1 becomes a projection matrix that projects out
interference.
107
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
More on training
➮ Training-based detector uses H, N0 and Λ in the coherent detector
➮ Can be improved, e.g., cyclic detection
➮ How should training be designed?
Optimum pilots (in many respects) satisfy XtXHt ∝ I
➮ Inserting pilot-based estimate in LF is not optimal
Cf. the use ofp(X|Y , H) (coherent)p(X|Y , H)|
H:=H(training-based)
p(X|Y , H) (best possible given H)p(X|Y , Y t) (best possible given training data)
Later, we will give p(X|Y , H) on explicit form 108
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Example, joint detection and estimation schemes
Re−estimate
No
Yes
Initialize Detect Symbols Convergence?Channel
➮ Re-estimation step may make use of soft decoder output
109
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Optimal training
➮ Recall: ML channel estimate H = Y tXHt (XtX
Ht )−1
➮ Let h = vec(H), h = vec(H). Can show:
E[h] = h
Σ , E[(h − h)(h − h)H] = . . . = N0
“
(XtXHt )
−T ⊗ I”
Tr {Σ} = nrTr˘
(XtXHt )
−1¯N0
➮ Lemma: Suppose Tr{XXH
}≤ nt. Then
Tr{(XXH)−1
}≥ nt with equality if and only if XXH = I
➮ Application of lemma ➠ optimal training block is (semi-)unitary:
XtXHt ∝ I 110
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Channel estimation for frequency-selective channels
➮ MIMO channel as matrix-valued FIR filter:
H(z−1) =
L∑
l=0
H lz−l
➮ L is the length of the channel, L = 0 for ISI-free channel
➮ Transfer function:
H(ω) =
L∑
l=0
H le−iωl
➮ Transmission methods:
➠ Single-carrier (block-based)
➠ Multicarrier (e.g. OFDM)111
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Training for frequency selective channels
➮ Two basic approaches:
➠ Frequency-domain estimation (estimate H(ω))➠ Time-domain estimation (estimate H l, then compute H(ω) via FT)
➮ Frequency-domain estimation of H(ω) is straightforward:
➠ Estimate in the frequency domain (via ML):
H(ω) = Y t(ω)XHt (ω)(Xt(ω)XH
t (ω))−1
➠ Problem: suboptimal because parameterizations is not parsimonious.It does not exploit structure that
H(ω) =
L∑
l=0
H le−iωl
112
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Time-domain estimation of H(ω)
➮ Let x(n) be time-domain training, y(n) received (t-d) training and define
Xt =
xTt (0) · · · · · · · · · xT
t (−L)
xTt (1) . . . xT
t (1 − L)... . . . ...
xTt (N − 1) · · · · · · xT
t (0) · · · xTt (N − 1 − L)
H =
HT0
...
HTL
, Y t =
yTt (0)...
yTt (N − 1)
➮ Then the ML estimate of H(ω) is:
H = (XHt Xt)
−1XHt Y t, H(ω) =
L∑
l=0
H le−iωl
➮ Exploits structure (L unknowns but N equations) 113
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Metrics with imperfect CSI (complex y, s,G, e)
➮ G not known perfectly ➠ replacing G with G in p(y|s,G) not optimal!
➮ Instead, need to work with p(y|s, G). Write
y = Gs + e ⇔ y = (sT ⊗ I)h + e, h = vec(G), e = vec(E)
Suppose ‖s‖2 = n and
{
h ∼ N(0, ρI), e ∼ N(0, σI)
h = h + δ, δ ∼ N(0, ǫI)
➮ Then
[y
h
]
∼ N
(
0,
[(nρ + σ)I ρ(sT ⊗ I)ρ(s∗ ⊗ I) (ρ + ǫ)I
])
so
p(y|h, s) =1
πn
1nǫ
1+ǫ/ρ + σexp
(
− 1nǫ
1+ǫ/ρ + σ
∥∥∥∥y −
(ρ
ρ + ǫ
)
Gs
∥∥∥∥
2)
114
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Example: 4 × 4 slow Rayl. fading MIMO, QPSK, est. G
0.01
0.1
1
−5 −4 −3 −2 −1 0 1 2 3
Fra
me-e
rror-
rate
(FER)
Normalized signal-to-noise-ratio (SNR) [dB]
Practical detector
Perfect CSI
Imperfect CSI
Brute-force
Practical detector, mismatched metric
Practical detector, optimal metric
Brute-force, optimal metric
Brute-force, mism.
115
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Example: 4 × 4 slow Rayl. fad., QPSK, outdat. G
0.01
0.1
1
−5 −4 −3 −2 −1 0 1 2 3
Fra
me-e
rror-
rate
(FER)
Normalized signal-to-noise-ratio (SNR) [dB]
Practical detector
Perfect CSI
Imperfect CSI
Brute-force
Practical detector, mismatched metricPractical detector, optimal metric
Brute-force, optimal metric
Brute-force, mism.
116
Linkoping University, ISY, Communication Systems, E. G. Larsson MIMO Fundamentals and Signal Processing
Last slide
117