11.09.2015 Views

Lecture 5

Lecture 5

Lecture 5

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

MIMO Channel Equalisation MATLAB Programming Conclusions<br />

DSP Applications for Wireless Communications:<br />

Linear Equalisation of MIMO Channels<br />

Dr. Waleed Al-Hanafy<br />

waleed alhanafy@yahoo.com<br />

Faculty of Electronic Engineering, Menoufia Univ., Egypt<br />

Digital Signal Processing (ECE407) — <strong>Lecture</strong> no. 5<br />

August 10, 2011<br />

Dr. Waleed Al-Hanafy Digital Signal Processing (ECE407) — <strong>Lecture</strong> no. 5<br />

Linear Equalisation of MIMO Channels


MIMO Channel Equalisation MATLAB Programming Conclusions<br />

Overview<br />

1 MIMO Channel Equalisation<br />

2 MATLAB Programming<br />

3 Conclusions<br />

Dr. Waleed Al-Hanafy Digital Signal Processing (ECE407) — <strong>Lecture</strong> no. 5<br />

Linear Equalisation of MIMO Channels


MIMO Channel Equalisation MATLAB Programming Conclusions<br />

System Model<br />

v<br />

s<br />

y ˜s<br />

H W H<br />

y = Hs+v (1)<br />

y — noisy N r-dimensional received vector<br />

s — N t-dimensional transmit vector ∈ S N is assumed to be a<br />

spatially-uncorrelated and uniformly distributed complex random vector process<br />

with zero-mean and variance σ 2 s (i.e. R ss = E [ ss H] = σ 2 sI Nt<br />

v — noise vector with dimension N r ×1 drawn from CN ( 0,σ 2 v)<br />

, or<br />

equivalently R vv = E [ vv H] = σ 2 vI Nr<br />

H — N r ×N t flat-fading channel with entries h ij are assumed i.i.d. complex<br />

Gaussian random variables with zero-mean and unit-variance E [ |h ij| 2] = 1, i.e.,<br />

h ij ∈ CN (0,1)<br />

Dr. Waleed Al-Hanafy Digital Signal Processing (ECE407) — <strong>Lecture</strong> no. 5<br />

Linear Equalisation of MIMO Channels


MIMO Channel Equalisation MATLAB Programming Conclusions<br />

Zero-Forcing (ZF) Equaliser<br />

The ZF approach is a very simple linear filter scheme that is accomplished by<br />

computing the Moore-Penrose pseudo-inverse of the channel matrix, H + . Accordingly,<br />

nulling in the ZF criterion is equivalent to completely cancelling the interference<br />

contributed by streams of other users (transmitting antennas). However, ZF receivers<br />

generally suffer from noise enhancement. The ZF filter is therefore given by<br />

( −1H<br />

WZF H = H+ = H H) H H , (2)<br />

and its output as<br />

˜s ZF = W H ZF y = s+ (H H H) −1H H v (3)<br />

The error covariance matrix is therefore given by<br />

Φ ZF = E<br />

[<br />

(˜s ZF −s)(˜s ZF −s) H] ( −1<br />

= σv<br />

2 H H) H (4)<br />

Noticeably, by referring to (4), it is evident that small eigenvalues of H H H will lead to<br />

significant errors due to noise amplification. This, in fact, represents the main<br />

drawback of the ZF filter design as it disregards the noise term from the overall design<br />

and focuses only on perfectly removing the interference term from signal s<br />

Dr. Waleed Al-Hanafy Digital Signal Processing (ECE407) — <strong>Lecture</strong> no. 5<br />

Linear Equalisation of MIMO Channels


MIMO Channel Equalisation MATLAB Programming Conclusions<br />

Minimum Mean Square Error (MMSE) Equaliser<br />

An improved performance over ZF can be achieved by considering the noise term in<br />

the design of the linear filter W H . This is achieved by the MMSE equaliser, whereby<br />

the filter design accounts for a trade-off between noise amplification and interference<br />

suppression. The MMSE filter is obtained by solving for error minimisation of the error<br />

criterion defined by [ ] ( [<br />

ϕ = E e H e = tr E ee H]) (5)<br />

where the error vector e d = s−˜s = s−W H y. Minimisation of ϕ leads to the<br />

Wiener-Hopf equation<br />

WMMSE H Ryy = Rsy (6)<br />

This equation can also be obtained directly by invoking the orthogonality principle<br />

which states that the estimate ˜s achieves minimum mean square error if the error<br />

sequence e is orthogonal to the observation y, i.e., their cross-correlation matrix has to<br />

be the zero matrix E [ ey H] = 0. After some algebraic manipulation, the linear<br />

MMSE-sense filter is given by<br />

( ) −1<br />

WMMSE H = H H H+ σ2 v<br />

σs<br />

2 I Nt H H (7)<br />

Dr. Waleed Al-Hanafy Digital Signal Processing (ECE407) — <strong>Lecture</strong> no. 5<br />

Linear Equalisation of MIMO Channels


MIMO Channel Equalisation MATLAB Programming Conclusions<br />

MMSE Equaliser (cont’d)<br />

Similar to (4) the error covariance matrix using the MMSE filter in (7) is given as<br />

( ) −1<br />

Φ MMSE = σv<br />

2 H H H+ σ2 v<br />

σs<br />

2 I Nt (8)<br />

Obviously by comparing (8) and (4), the error rate of the MMSE solution Φ MMSE is<br />

less than its ZF counterpart Φ ZF specifically at low SNR defined as<br />

[ ]<br />

E ‖s‖ 2 2<br />

SNR = [ ] = tr(Rss)<br />

E ‖v‖ 2 tr(R = σ2 sN t<br />

2 vv) σvN 2 = P budget/N 0 (9)<br />

r<br />

where P budget is the total transmit power budget and N 0 is the total noise power at<br />

the receiver. At high SNR, the second term in (8) will vanish, which leads to<br />

asymptotic error performance similar to the ZF filter. Compared to the ZF filter in (2),<br />

the MMSE filter in (7) can be viewed as a“regularised”expression by a diagonal matrix<br />

of entries σ2 v<br />

σs<br />

2 , which is equal to the reciprocal of the SNR in (9) for equal numbers of<br />

transmit and receive antennas. This regularisation introduces a bias that gives a much<br />

more reliable result than (2) when the matrix is ill-conditioned, A matrix is said to be<br />

ill-conditioned if its condition number (the absolute ratio between the maximum and<br />

minimum eigenvalues) is too large., and/or the estimation of the channel is noisy.<br />

Dr. Waleed Al-Hanafy Digital Signal Processing (ECE407) — <strong>Lecture</strong> no. 5<br />

Linear Equalisation of MIMO Channels


MIMO Channel Equalisation MATLAB Programming Conclusions<br />

MATLAB Programing<br />

clc; clear all;<br />

nt = 4; nr = 4; d = 1000; MinErrs = 100; MaxData = 1e6; chs = 10;<br />

snr dB = 0:3:21; snr = 10.ˆ(snr dB/10); Lsnr = length(snr);<br />

berZF = zeros(1,Lsnr); berMMSE = zeros(1,Lsnr);<br />

for e = 1:chs<br />

disp([’ch ’ num2str(e) ’/’ num2str(chs)]);<br />

H = (randn(nr,nt)+sqrt(-1)*randn(nr,nt))/sqrt(2);<br />

G ZF = inv(H’*H)*H’;<br />

nErZF = zeros(1,Lsnr); nErMMSE = zeros(1,Lsnr); data = zeros(1,Lsnr);<br />

for z = 1:Lsnr<br />

disp([’ step ’ num2str(z) ’/’ num2str(Lsnr) ’: SNR(dB) = ’ num2str(snr dB(z))]);<br />

G MMSE = inv(H’*H + (1/snr(z))*eye(nt))*H’;<br />

while((nErZF(z)


MIMO Channel Equalisation MATLAB Programming Conclusions<br />

MATLAB Programing (cont’d)<br />

aTempZF = G ZF*r; aTempMMSE = G MMSE*r;<br />

aHatZF = FnDecodeQAM(aTempZF,’QPSK’,1);<br />

aHatMMSE = FnDecodeQAM(aTempMMSE,’QPSK’,1);<br />

[dumy dumy nBerZF dumy] = FnSerBerQAM(a,aHatZF,4,’gray’);<br />

[dumy dumy nBerMMSE dumy] = FnSerBerQAM(a,aHatMMSE,4,’gray’);<br />

nErZF(z) = nErZF(z) + nBerZF;<br />

nErMMSE(z) = nErMMSE(z) + nBerMMSE;<br />

end<br />

berZF(z) = berZF(z) + nErZF(z)/data(z);<br />

berMMSE(z) = berMMSE(z) + nErMMSE(z)/data(z);<br />

end<br />

end<br />

berZF = berZF/chs; berMMSE = berMMSE/chs;<br />

semilogy(snr dB,berZF,’k-s’,snr dB,berMMSE,’m-o’); grid on<br />

legend(’ZF’,’MMSE’); grid on; xlabel(’SNR (dB)’); ylabel(’BER’);<br />

.<br />

Dr. Waleed Al-Hanafy Digital Signal Processing (ECE407) — <strong>Lecture</strong> no. 5<br />

Linear Equalisation of MIMO Channels


MIMO Channel Equalisation MATLAB Programming Conclusions<br />

Results<br />

A 4×4 MIMO system with QPSK transmission is considered. It is clearly noted that<br />

the MMSE filter outperforms its ZF counterpart and their BER performance converges<br />

at higher SNR where the regularisation factor σ 2 v/σ 2 s ≪ 1<br />

Nt = 4, Nr = 4, NumChan = 300<br />

10 0 SNR [dB]<br />

ZF<br />

MMSE<br />

10 −1<br />

10 −2<br />

BER<br />

10 −3<br />

10 −4<br />

0 5 10 15 20 25 30<br />

Dr. Waleed Al-Hanafy Digital Signal Processing (ECE407) — <strong>Lecture</strong> no. 5<br />

Linear Equalisation of MIMO Channels


MIMO Channel Equalisation MATLAB Programming Conclusions<br />

Conclusions<br />

Concluding remarks<br />

Linear equalisation systems for linear MIMO systems is studied<br />

Both ZF and MMSE equalisers are derived and analysed<br />

Simulation results comparisons are shown<br />

.<br />

Dr. Waleed Al-Hanafy Digital Signal Processing (ECE407) — <strong>Lecture</strong> no. 5<br />

Linear Equalisation of MIMO Channels

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!