11.09.2015 Views

Lecture 5

Lecture 5

Lecture 5

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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

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!