You are on page 1of 21

EC832 MIMO Communication

Systems
Chapter: Spatial Multiplexing (SM)
Prepared by : Prof. U. Shripathi Acharya, ECE Department,
NITK, Surathkal

Primary Reference: Introduction to MIMO Communications


by Jerry R Hampton, Cambridge University Press, 2014

1
Spatial Multiplexing
• Spatial MUX constitutes the second major class of MIMO processing
techniques.
• Spatial MUX refers to transmitting multiple independent data
streams over multipath channels without increase in bandwidth.
• ST codes are used to achieve Spatial Diversity and transmit at most
one symbol per modulation symbol period (𝑅𝑎𝑡𝑒 ≤ 1).
• Spatial MUX techniques are capable of achieving spatial rates equal
to min⁡*𝑁𝑡 ,𝑁𝑟 }.
• This means that spatial MUX techniques are capable of transmitting
up to min⁡*𝑁𝑡 ,𝑁𝑟 } modulation symbols per symbol period.
• This results in an improvement in throughput at the expense of
diversity gain.

2
Spatial Multiplexing
• In a multi-path environment energy from the transmitter
arrives at the receiver after being scattered by various
objects.
• If spacing between the transmitter and receiver is sufficiently
large, the characteristics of scattering between each pair of
transmit and receive antennas are sufficiently different.
• In this case, each path can be regarded as undergoing fading
independently of the others.
• Independent fading occurs as long as the antenna spacing at
the transmitter/ receiver ≥ λ 2.

3
Spatial Multiplexing (Block Diagram)

Transmitter blocks 𝑠1

𝑠2
Rich Scattering
Conventional Environment
Serial to Coding and
Encoder Modulation
Parallel
𝑠𝑁𝑡
(STC)

Data stream output


1 𝑠1 𝑟1

𝑠2
Conventional 𝑟2
Parallel to 2 decoding and SM decoder
Serial ⋮
demodulation

k 𝑠𝑁𝑡 𝑟𝑁𝑡
4
Spatial Multiplexing
• Information bits are first encoded with a conventional error control
code .
• After encoding the bit stream is passed through a serial to parallel
converter which splits the serial stream into 𝑘 parallel streams.
• These 𝑘 parallel streams are fed to the STC block which maps 𝑘 parallel
input streams into 𝑁𝑡 streams that are fed to the transmit antenna
array.
• At the receiver the signal at each antenna is the sum of transmitted
signals from all transmit antennas.
• The receiver should be capable of de-multiplexing the individual bit
streams from one another.
• The SM decoder processes the signals from the receive antennas and
generates estimates of the individual transmitted streams (𝑠1 ,𝑠2 ,
…⁡⁡𝑠𝑁𝑡 )
5
Spatial Multiplexing-Eigen Channels and
Channel Rank
• Multipath channels are capable of supporting the transmission of multiple
independent data streams .
• These data streams are referred to as data pipes, Eigen modes or Eigen channels.
• We know that any Hermitian matrix can be described as the product of three
matrices in an Eigen decomposition.
• Since the product 𝑯. 𝑯∗ is Hermitian, we can decompose it using Eigen
decomposition in the following manner:
⁡⁡⁡⁡⁡⁡⁡⁡𝑯. 𝑯∗ =𝑼𝑵𝒓 𝑫.𝑼∗𝑵𝒓

λ1 0 ⋯ 0
⋮⁡⁡ ⋱ ⋮
where 𝑼𝑵𝒓 is a unitary matrix and 𝐷𝑁𝑟 = 0 λ𝑟 =𝑑𝑖𝑎𝑔[λ1, λ2 …λ𝑟 , 0…0]
⁡0 ⋯ 0
0 0
(In this decomposition, 𝑟𝑎𝑛𝑘 𝑯 = 𝑟)
• We assume that the Eigen values are ordered λ𝑖 ≥ λ𝑖+1
• We define 𝑅𝑎𝑛𝑘⁡ 𝑯 ≜ 𝑅𝑎𝑛𝑘(𝑯. 𝑯𝑯 )≜ Channel⁡rank
6
Spatial Multiplexing-Eigen Channels and
Channel Rank
𝜌
• The capacity of a MIMO channel is given by 𝐶 = 𝑙𝑜𝑔2 det[𝑰𝑁𝑟 + 𝑯. 𝑯∗ ]
𝑁𝑡
𝜌
• 𝐶 = 𝑙𝑜𝑔2 det[𝑰𝑁𝑟 + 𝑼. 𝑫. 𝑼𝑯 ]
𝑁𝑡
• For a normalized unitary matrix, 𝑑𝑒𝑡(𝑼)=1
𝜌
• This implies 𝐶 = 𝑙𝑜𝑔2 det⁡[𝑼. 𝑰𝑵𝒓 𝑼𝑯 + 𝑼. 𝑫. 𝑼𝑯 ]
𝑁𝑡
• After some mathematical manipulation, this can be rewritten as (Refer handout)
𝑟 𝜌
𝐶= 𝑖=1 𝑙𝑜𝑔2 (1+𝑁 λ𝑖 )
𝑡
• This implies that the capacity of a MIMO channel with only CSIR can be interpreted as the
sum of 𝑟 SISO channels, each having power gain λ𝑖 ,⁡(𝑖 = 1,2, … 𝑟). (More details are
provided in the hand out)
• This result implies that it is possible to send up to 𝑟 data streams over a MIMO channel.
• This result shows the importance of the channel matrix possessing large channel rank.
• Channel Rank is a quantitative way of characterizing the scattering richness of the
channel.
• Further, it can be shown that when the channel is full rank and the Eigen values are equal
to each other, we obtain optimum capacity with only CSIR.

7
Spatial Multiplexing-Eigen Channels and
Channel Rank
• We have seen that the capacity of a MIMO channel is equal to the
sum of 𝑟⁡(𝑟 ≜ 𝑟𝑎𝑛𝑘⁡(𝑯) SISO channels.
• The 𝑯 matrix has dimensions equal to 𝑁𝑟 × 𝑁𝑡 . Hence the
number of independent data streams is equal to
𝑁𝑠𝑡𝑟𝑒𝑎𝑚 =min{𝑁𝑡 ,𝑁𝑟 }
• In all the cases studied by us 𝑁𝑟 ≥ 𝑁𝑡 . Hence 𝑁𝑠𝑡𝑟𝑒𝑎𝑚 =𝑁𝑡
• Since 𝑁𝑠𝑡𝑟𝑒𝑎𝑚 =𝑁𝑡 , the maximum number of modulation symbols
that can be transmitted per symbol period (denoted by
max⁡*𝑟𝑠 })is equal to 𝑁𝑡 .
• This means max⁡*𝑟𝑠 })=𝑁𝑡
• Hence, the maximum efficiency of an SM system is equal to
η𝑚𝑎𝑥 =𝑁𝑡 . 𝑟𝑡 .𝑙𝑜𝑔2 M where 𝑟𝑡 is the rate of the convolutional code
used in the SM system and M is the modulation order.

8
Spatial Multiplexing-Eigen Channels and
Channel Rank
• SM is achieved using a concept known as Layered Space Time Coding
(LST).
• The types of LST are
 Vertical BLAST
 Horizontal BLAST
 Diagonal BLAST
 Multi group Space Time Coding (MGSTC)
 Threaded Space Time Coding (TSTC)
• The four decoding approaches that have been widely studied are
 Zero forcing (ZF)
 Zero forcing with interference cancellation (ZF-IC)
 Linear Minimum mean Square Estimation (LMMSE)
• We will study the first three LST schemes along with a few decoding
approaches.
9
Spatial Multiplexing-V-BLAST

• Vertical-BLAST (V-BLAST): The bits are processed by an Convolutional encoder


(optional) and then split into 𝑁𝑡 data streams , wach of which is specifically modulated
(M-PSK/ QAM) before being radiated by an antenna.

1 Antenna 1

Modulator
Convolutio
nal Serial to

Information bits Encoder Parallel
(Optional)
Modulator
𝑁𝑡
Antenna 𝑁𝑡
V-BLAST encoding architecture
• Each layer in V-BLAST employs its own modulator. Hence, different layers can possess
data at different rates.
• In this case, layers with higher rates can employ higher order modulation so that each
layer can consume the same bandwidth.

10
Spatial Multiplexing-V-BLAST/ H-BLAST
• Distinct data streams are applied to the 𝑁𝑡 layers during each use of the
channel.
• The ST rate associated with the V-BLAST encoder is 𝑟𝑠 =𝑁𝑡
• The spectral efficiency is 𝑁𝑡 𝑟𝑡 𝑙𝑜𝑔2 M bits/ second/ Hz.
Horizontal BLAST (H-BLAST):
• Architecture is similar to V-BLAST except that separate convolutional encoders
are included on each of the transmitted data streams.

1
Convolutional encoder-1 Modulator-1

Serial to
⋮ ⋮
Parallel
Modulator-
Convolutional encoder-𝑁𝑡
𝑁𝑡
𝑁𝑡
V-BLAST encoding architecture
11
Spatial Multiplexing-H-BLAST/ D-BLAST
• This scheme is termed as Horizontal because in each layer of the encoder,
coding is performed in the time domain.
• H-BLAST architecture has the same spatial rate and spatial diversity properties
as V-BLAST.
Diagonal BLAST (D-BLAST)

1
Convolutional Modulator-1
encoder-1 ⋮
Serial to Stream

Parallel rotator
Informat
Convolutional
ion bits Modulator-
encoder-𝑁𝑡
𝑁𝑡 𝑁𝑡

D-BLAST encoding architecture

12
Spatial Multiplexing-D-BLAST Decoding Architecture 1

𝑎1, 𝑎2 , 𝑎3, 𝑎4

Convolutional
Modulator-1
encoder-1
𝑏1, 𝑏2 , 𝑏3, 𝑏4
2
Convolutional
Modulator-2
Serial to encoder-2
Parallel 𝑐1, 𝑐2 , 𝑐3, 𝑐4 Stream
Convolutional Rotator 3
encoder-3 Modulator-3
Informat
ion bits 𝑑1, 𝑑2 , 𝑑3, 𝑑4
Convolutional 4
encoder-4 Modulator-4

D-BLAST encoding architecture


(Expanded Diagram)

13
Spatial Multiplexing-Eigen Channels and
Channel Rank
Stream rotating Strategy:

𝑎1 𝑑1 𝑐1 𝑏1 𝑎5 𝑑5 … 𝑎𝑘−3 𝑑𝑘−3 𝑐𝑘−3 𝑏𝑘−3

𝑎2 𝑑2 𝑐2 𝑏2 𝑎6 𝑑6 … 𝑎𝑘−2 𝑑𝑘−2 𝑐𝑘−2 𝑏𝑘−2

𝑎3 𝑑3 𝑐3 𝑏3 𝑎7 𝑑7 … 𝑎𝑘−1 𝑑𝑘−1 𝑐𝑘−1 𝑏𝑘−1

𝑎4 𝑑4 𝑐4 𝑏4 𝑎8 𝑑8 … 𝑎𝑘 𝑑𝑘 𝑐𝑘 𝑏𝑘

• The D-BLAST scheme is similar to H-BLAST except that it includes a stream rotation block.
• The four vectors 𝒂 = (𝑎1 ,𝑎2 , … 𝑎𝑘 ), 𝒃 = (𝑏1 ,𝑏2 , … 𝑏𝑘 ), 𝒄 = (𝑐1 ,𝑐2 , … 𝑐𝑘 ), 𝒅 = (𝑑1 ,𝑑2 , … 𝑑𝑘 )⁡define the
sequences produced by the four convolutional encoders.
• Hence, outputs are divided into blocks of 𝑁𝑡 (in this case four) consecutive segments.
• The outputs of the convolutional encoders are interleaved (distributed over space). This results in
improved spatial diversity.
• Hence D-BLAST can achieve spatial diversity gain greater than 𝑁𝑡 and with proper convolutional
coding can achieve diversity gain equal to 𝑁𝑡 𝑁𝑟 .
14
De-multiplexing methods for H-BLAST and V-BLAST
• Consider an 𝑁𝑡 × 𝑁𝑟 system that employs either Horizontal or Vertical BLAST encoding. The
transmitted code word 𝑺 and the received word 𝑹 and the channel matrix 𝑯 are respectively
represented by,

𝑠1 (1) 𝑠1 (2) 𝑠1 (𝑝) 𝑟1 (1) 𝑟1 (2) 𝑟1 (𝑝) ℎ11 ℎ12 ℎ1,𝑁𝑡


𝑠 (1) 𝑠2 (2) 𝑠 (𝑝) 𝑟 (1) 𝑟2 (2) 𝑟 (𝑝) ℎ ℎ22 ℎ2,𝑁𝑡
𝑺= 2 ⋯ 2 ;𝑹= 2 ⋯ 2 ; 𝑯 = 21⋮ ⋮ ⋯
⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮
𝑠𝑁𝑡 (1) 𝑠𝑁𝑡 (2) 𝑠𝑁𝑡 (𝑝) 𝑟𝑁𝑟 (1) 𝑟𝑁𝑟 (2) 𝑟𝑁𝑟 (𝑝) ℎ𝑁𝑟 ,1 ℎ𝑁𝑟 ,2 ℎ𝑁 ,𝑁
𝑟 𝑡

• Let us denote the symbol being transmitted from antenna `𝑗′ during symbol period `𝑘′ be
denoted by 𝑠𝑗 (k). The response at the receive antenna `𝑖 ′ can be described by 𝑟𝑖 (k), where
𝑁𝑡
𝑟𝑖 (k)= 𝜌 𝑗=1 ℎ𝑖,𝑗 𝑠𝑗 (k)+𝑧𝑖 (k)
• If we consider a group of `𝑝′ symbol periods, (𝑘 = 1,2, … 𝑝) then there are 𝑝. 𝑁𝑟 equations like
the above equation corresponding to `𝑝′ values of `𝑘′ and 𝑁𝑟 values of ⁡`𝑗′. The input-output
matrix equation can be written as 𝑹 = ⁡⁡⁡⁡⁡⁡⁡⁡𝑯.
𝜌 𝑺 + 𝒁,

𝑧1 (1) 𝑧1 (2) 𝑧1 (𝑝)


𝑧 (1) 𝑧2 (2) 𝑧 (𝑝)
𝒁= 2 ⋯ 2
⋮ ⋮ ⋮
𝑧𝑁𝑟 (1) 𝑧𝑁𝑟 (2) 𝑧𝑁𝑟 (𝑝)

15
De-multiplexing methods for H-BLAST and V-BLAST
• Each received signal consists of a linear superposition from all the transmit antennas.
• Thus, when receive antenna attempts to detect the signal from a specific transmit antenna
𝑠𝑎𝑦⁡𝑙 ,⁡then the signals from the other transmitters constitute interference. This interference can
𝑁𝑡
be modeled as 𝐼𝑙 = 𝜌 𝑗=1 ℎ𝑖,𝑗 𝑠𝑗 (k), 𝑘 = 1,2, … 𝑝.
𝑗≠𝑙
• When transmitting multiple data streams to a receiver, each stream is disturbed by the interference
from (𝑁𝑡 -1) streams.
• The role of the de-multiplexing scheme in SM is to mitigate the effects of this interference.
• In the case of Zero-Forcing (ZF), the effect of interference is reduced by pre-multiplying the
Received signal by the Moore-Penrose pseudo inverse of the channel matrix. This matrix 𝑯+ is
defined as follows: 𝑯+ =⁡(𝑯𝑯 𝑯)−𝟏 .𝑯𝑯 .
• To see the mechanism which is used to reduced interference, let us evaluate 𝑯+ .𝑹 This results in,
𝑹 = 𝑯+ .𝑹 =⁡(𝑯𝑯 𝑯)−𝟏.𝑯𝑯 .𝑹=⁡(𝑯𝑯 𝑯)−𝟏 .𝑯𝑯. 𝜌𝑯. 𝑺 + 𝒁
• After a few steps of simplification (refer notes given in hand out), 𝑹 = 𝜌.𝑺+⁡𝑯−𝟏 𝒁 = = 𝜌.𝑺+ 𝒁
where 𝒁⁡ = 𝑯−𝟏 𝒁.
• From this matrix equation, we can specify the equations,
𝑟𝑗 = 𝜌𝑠𝑗 +𝑧𝑗 ; 𝑗⁡represents⁡the⁡transmit⁡antenna⁡index

16
De-multiplexing methods for H-BLAST and V-BLAST
• This leads to the system of equations
𝑟1 (k)= 𝜌𝑠1 (k)+𝑧1 (k)
𝑟2 (k)= 𝜌𝑠2 (k)+𝑧2 (k)

𝑟𝑁𝑡 (k)= 𝜌𝑠𝑁𝑡 (k)+𝑧𝑁𝑡 (k) for 𝑘 = 1,2, … 𝑝
• In this equation, 𝑠𝑗 and 𝑧𝑗 denote the 𝑗𝑡ℎ⁡ row of 𝑺 and 𝒁 respectively.
• This equation shows that the 𝑗𝑡ℎ⁡ row of 𝑹 consists of a vector of transmitted symbols from the
𝑗𝑡ℎ⁡ transmit antenna plus a noise vector. The effect of interference has been eliminated.
• This system of equations can be represented by 𝑟𝑗 (k)= 𝜌𝑠𝑗 (k)+𝑧𝑗 (k); 𝑘 = 1,2, … 𝑝
• If we compare this equation with 𝑹= 𝝆𝑯. 𝑺 + 𝒁, we realize that interference reduction has
occurred due to pre-multiplication with the pseudo inverse.
• The estimates of symbols from layer 𝑗 can be obtained by performing ML detection on the signals
𝑟𝑗 𝑘 , 𝑘 = 1,2, … 𝑝 as follows:
𝑠𝑗 𝑘 = arg 𝑚𝑖𝑛|𝑟𝑗 𝑘 − 𝜌𝑠𝑗 (k) |2
{𝑠𝑗 (k)}
• The process of pre-multiplying the received matrix by the pseudo inverse of the channel matrix and
performing ML detection on each of the rows of the resulting matrix constitutes zero forcing
detection.

17
Summary of Zero forcing decoding algorithm for H-BLAST and V-
BLAST/ Linear Minimum Mean Square Detection (LMMSE)
• ZF decoding algorithm for H-BLAST and V-BLAST:
1. Compute the pseudo inverse 𝑯+ of the channel matrix 𝑯 using the equation
𝑯+ =⁡(𝑯𝑯 𝑯)−𝟏 .𝑯𝑯
2. Multiply the received matrix 𝑹 by 𝑯+ .
3. Estimate the symbols for each layer by performing ML decoding on each row of 𝑅 by using
the equation 𝑠𝑗 𝑘 = arg 𝑚𝑖𝑛|𝑟𝑗 𝑘 − 𝜌𝑠𝑗 (k) |2
{𝑠𝑗 (k)}
Linear Minimum Mean Square Detection (LMMSE):
• The LMMSE criterion is based on the assumption that each transmitted signal can be estimated at
the receiver by linearly combining weighted versions of the received signals.
• As an example, we can try to estimate the symbol transmitted from antenna 1 at time slot 𝑘 by the
equation: 𝑠1 (k) =𝑤1,1 𝑟1 (k)+ 𝑤1,2 𝑟1 (k)+…….+ 𝑤1,𝑁𝑟 𝑟𝑁𝑟 (k) where the parameters⁡𝑤1,1 , 𝑤1,2 , … 𝑤1,𝑁𝑟
are complex numbers that are chosen to minimize the error between the true and estimated values
of the transmitted symbols.
• In a similar manner, we can write the expressions for estimates of symbols from the other transmit
antennas at time slot 𝑝 as follows:
𝑠1 (k) =𝑤1,1 𝑟1 (k)+ 𝑤1,2 𝑟1 (k)+…….+ 𝑤1,𝑁𝑟 𝑟𝑁𝑟 (k)
𝑠2 (k) =𝑤2,1 𝑟1 (k)+ 𝑤2,2 𝑟1 (k)+…….+ 𝑤2,𝑁𝑟 𝑟𝑁𝑟 (k)
A

𝑠𝑁𝑡 (𝑘)=𝑤𝑁𝑡,1 𝑟1 (k)+ 𝑤𝑁𝑡,2 𝑟1 (k)+…….+ 𝑤𝑁𝑡,𝑁𝑟 𝑟𝑁𝑟 (k)


18
Linear Minimum Mean Square Detection (LMMSE)

• We will now define the following matrix and vectors

𝑤11 𝑤12 𝑤1,𝑁𝑡 𝑟1 (𝑘) 𝑠1


𝑤21 𝑤22 𝑤2,𝑁𝑡 𝑟2 (𝑘) 𝑠2
𝑾= ⋮ ⋮ ⋯ ⋮ ; 𝒓(𝒌)= ;⁡⁡𝒔(𝒌) = ⋮

𝑤𝑁𝑟 ,1 𝑤𝑁𝑟 ,2 𝑤𝑁 ,𝑁 𝑟𝑁𝑟 (𝑘) 𝑠𝑁𝑡
𝑟 𝑡

• In terms of these matrices, we can write,


𝒔𝒌 (k)=𝑾.𝒓(𝒌)
• This expression can be generalized to 𝑝 symbols which results in the following expression for the
estimated symbol matrix:

𝑟1 (1) ⁡⁡𝑟1 (2) ⁡⁡𝑟1 (p)


𝑟 (1) ⁡⁡𝑟2 (2) ⁡⁡𝑟 (p)
𝑺 = 𝑾. 𝑹 where 𝑹 is defined as 𝑹 = 𝜌𝑯. 𝑺 + 𝒁; 𝑹 = 2 ⋯ 1⋮
⋮ ⋮
𝑟𝑁𝑟 (1) 𝑟𝑁𝑟 (2) 𝑟𝑁𝑟 (p)
The matrix of estimated symbols has the form,

𝑠1 (1) 𝑠1 (2) 𝑠1 (𝑝)


𝑠 (2) 𝑠2 (2) 𝑠 (𝑝)
𝑺= 2 |… 2
⋮ ⋮ ⋮
𝑠𝑁𝑡 (𝑝) 𝑠𝑁𝑡 (2) 𝑠𝑁𝑡 (𝑝)

19
Linear Minimum Mean Square Detection (LMMSE)
• In LMMSE detection, we seek the matrix 𝑾 that minimizes the mean square error between
𝑺⁡and⁡⁡𝑺. We denote this optimum matrix by 𝑾𝟎 .
𝑾𝟎 ≜ 𝑎𝑟𝑔⁡𝑚𝑖𝑛⁡𝐸[||𝑺 − 𝑺||2𝐹 ]=⁡arg 𝑚𝑖𝑛 𝐸[||𝑺 − 𝑾. 𝑹||2𝐹 ]
{W} {W}
• Details of the technique used to solve this equation have been provided in the handout. It is
shown that the optimum value of 𝑾 = 𝑾𝟎 is given by,
𝜌
𝑯
𝐻 𝑁𝑡
𝑾0 = 𝜌
[ 𝑯. 𝑯𝑯 + 𝑰𝑁𝑟 ]
𝑁𝑡
The value of 𝑾𝟎 is determined from this equation.
• Once the value of 𝑾𝟎 is determined, the entries of the matrix 𝑤𝑖,𝑗 can be substituted in set
0
of equations (A) on slide 18 to determine the estimates of the *𝑠𝑖 (k)}, the transmitted
symbols during the 𝑘 𝑡ℎ interval.

20
End of section on Spatial Multiplexing

21

You might also like