You are on page 1of 5

DSP log » BER for BPSK in ISI channel with Zer... http://www.dsplog.com/2009/11/29/ber-bpsk-isi-...

- DSP log - http://www.dsplog.com -

BER for BPSK in ISI channel with Zero Forcing equalization


Posted By Krishna Sankar On November 29, 2009 @ 1:15 am In Filter | 57 Comments

In the past, we had discussed BER for BPSK in flat fading Rayleigh channel. I [1]n this post, lets discuss a
frequency selective channel with the use of Zero Forcing (ZF) equalization to compensate for the inter
symbol interference (ISI). For simplifying the discussion, we will assume that there is no pulse shaping at the
transmitter. The ISI channel is assumed to be a fixed 3 tap channel.

Transmit symbol
Let the transmit symbols be modeled as

, where

is the symbol period,

is the symbol to transmit,

is the transmit filter,

is the symbol index and

is the output waveform.

For simplicity, lets assume that the transmit pulse shaping filter is not present, i.e .

So the transmit symbols can be modeled by the discrete time equivalent

Figure: Transmit symbols

Channel Model
Lets us assume the channel to be a 3 tap multipath channel with spacing i.e.

[2]

1 of 5 31/10/18, 10:34 PM
DSP log » BER for BPSK in ISI channel with Zer... http://www.dsplog.com/2009/11/29/ber-bpsk-isi-...

Figure: Channel model (3 tap multipath)

In addition to the multipath channel, the received signal gets corrupted by noise , typically referred to as
Additive White Gaussian Noise (AWGN). The values of the noise follows the Gaussian probability

distribution function, with

mean and

variance .

The received signal is

, where

is the convolution operator.

Zero Forcing Equalization


Objective of Zero Forcing Equalization is to find a set of filter coefficients which can make
.

After equalization

Note:

The term causes noise amplification resulting poorer bit error rate performance.

Deriving the equalization coefficients

From the post on toeplitz matrix [3],we know that convolution operation can be represented as matrix
multiplication.

% Matlab code for using Toeplitz matrix for convolution


clear all
x = [1:3];
h = [4:6];
xM = toeplitz([x zeros(1,length(h)-1) ], [x(1) zeros(1,length(h)-1) ]);
y1 = xM*h';
y2 = conv(x,h);
diff = y1'-y2
diff = [ 0 0 0 0 0 ]

Using similar matrix algebra and assuming that the coefficients has 3 taps, the equation
can be equivalently represented as,

Solving for , we have

If we assume that has 5 taps,

2 of 5 31/10/18, 10:34 PM
DSP log » BER for BPSK in ISI channel with Zer... http://www.dsplog.com/2009/11/29/ber-bpsk-isi-...

Solving for , we have

Example

% Assuming a 3 tap channel as follows


ht = [0.2 0.9 0.3];
L = length(ht);
kk = 1;
hM = toeplitz([ht([2:end]) zeros(1,2*kk+1-L+1)], [ ht([2:-1:1]) zeros(1,2*kk+1-L+1) ]);
d = zeros(1,2*kk+1);
d(kk+1) = 1;
c = [inv(hM)*d.'].';

The frequency response of the channel and the equalizer are shown below:

[4]

Figure: Frequency response of the channel and the equalizer

Simulation Model
Click here to download: Matlab/Octave script for computing BER for BPSK with 3 tap ISI channel with Zero
Forcing Equalization [5]

The attached Matlab/Octave simulation script performs the following:

(a) Generation of random binary sequence

(b) BPSK modulation i.e bit 0 represented as -1 and bit 1 represented as +1

(c) Convolving the symbols with a 3-tap fixed fading channel.

(d) Adding White Gaussian Noise

3 of 5 31/10/18, 10:34 PM
DSP log » BER for BPSK in ISI channel with Zer... http://www.dsplog.com/2009/11/29/ber-bpsk-isi-...

(e) Computing the equalization filter at the receiver – the equalization filter is 3, 5, 7, 9 taps in length

(f) Demodulation and conversion to bits

(g) Counting the number of bit errors

(h) Repeating for multiple values of Eb/No

The simulation results are as shown in the plot below.

Figure: BER plot for BPSK in a 3 tap ISI channel with Zero Forcing equalizer

Observations

1. Increasing the equalizer tap length from 3 to 5 showed reasonable performance improvement.

2. Diminishing returns from improving the equalizer tap length above 5.

3. The results are poorer compared to the AWGN no multipath results. This is due to the noise amplification
(see the frequency response above) by the zero forcing equalization filter.

Next step is to discuss the zero forcing equalizer in the presence of transmit pulse shaping and then move
on to minimum mean square error equalizer.

Related posts:

BER for BPSK in ISI channel with MMSE equalization

4 of 5 31/10/18, 10:34 PM
DSP log » BER for BPSK in ISI channel with Zer... http://www.dsplog.com/2009/11/29/ber-bpsk-isi-...

Using Toeplitz matrices in MATLAB Polyphase filters for interpolation

MIMO with Zero Forcing Successive Interference Cancellation equalizer

Article printed from DSP log: http://www.dsplog.com

URL to article: http://www.dsplog.com/2009/11/29/ber-bpsk-isi-channel-zero-forcing-equalization/

URLs in this post:

[1] BER for BPSK in flat fading Rayleigh channel. I: http://www.dsplog.com/2008/08/10/ber-bpsk-rayleigh-


channel/
[2] Image: http://www.dsplog.com/db-install/wp-content/uploads/2009/11/mutipath_channel.png
[3] toeplitz matrix: http://www.dsplog.com/2007/04/21/using-toeplitz-matrices-in-matlab/http:
//www.dsplog.com/2007/04/21/using-toeplitz-matrices-in-matlab/
[4] Image: http://www.dsplog.com/db-install/wp-content/uploads/2009/11
/frequency_response_zero_forcing_equalizer.png
[5] Matlab/Octave script for computing BER for BPSK with 3 tap ISI channel with Zero Forcing Equalization:
http://www.dsplog.com/db-install/wp-content/uploads/2009/11/script_ber_bpsk_isi_zf_equalization.m
[6] click here to SUBSCRIBE : http://www.feedburner.com/fb/a/emailverifySubmit?feedId=1348583&
loc=en_US

Copyright © 2007-2012 dspLog.com. All rights reserved. This article may not be reused in any fashion without written
permission from http://www.dspLog.com.

5 of 5 31/10/18, 10:34 PM

You might also like