Experiment 5: Aim: To pass a BPSK signal through a frequency selective fading channel. Perform channel equalization using LMS adaptive filter. And observe BER vs. SNR plot for various SNRs. Theory:
Multipath Fading: If the channel possesses a constant gain and linear phase response over a bandwidth that is smaller than the bandwidth of the transmitted signal, then the channel creates frequency selective fading on the received signal. Under such condition the channel impulse response has a multipath delay spread which is greater than the reciprocal bandwidth of the transmitted message waveform. When this occurs, the received signal includes multiple versions of the transmitted waveform which are attenuated (faded) and delayed in time, and hence the received signal is distorted in time. Frequency selective fading is due to the time dispersion of the transmitted symbol within the channel. Thus the channel includes intersymbol interference (ISI). Adaptive Channel Equalization: Intersymbol interference (ISI) caused by multipath bandlimited (frequency selective) time dispersive channel distorts the transmitted signal causing bit error at the receiver. ISI has been recognized as a major drawback to high speed data transmission. Equalization is a technique used to combat the ISI.
An equalizer is usually implemented at baseband or at IF in a receiver. Since the baseband complex envelope expression can be used to represent bandpass waveforms, the channel response, demodulated signal and adaptive equalizer algorithms are usually simulated and implemented at baseband. If x(t) be the original information signal, if f(t) be the combined complex baseband impulse response of the transmitter, channel and the RF/IF sections of the receiver, the signal received by the equalizer can be expressed as:
( ) = ( ) ∗ ∗ () + () Where, f*(t) is the complex conjugate of f(t) and nb(t) is the baseband noise at the input of the equalizer. In modern communication systems, as equalizer is implemented in digital computers, the input to the equalizer in discrete time can be expressed as
() = ( ) ∗ ∗ () + ( ) Adaptive equalizers are used to estimate ( ) of x(n) from y(n) at the receiver. An equalizer is basically an FIR filter that changes it’s parameters to match the desired output. One most commonly used equalizer is the Least Mean Square (LMS) equalizer. The update algorithm of LMS equalizer is given by:
= + ( )̅ ∗ 13
Where, is the present filter parameter vector, is the next filter parameter vector, ̅ ∗ is the complex conjugate of the input vector {x(n), x(n – 1), x(n – 2), … , x(n – L + 1)} , is the step size of the adaptive equalizer and ( ) = ( ) − () is the error.
Figure: A basic linear equalizer during training
It is to be noted that the value of actual signal x(n) must be known to the signal to calculate the error e(n) in order to update the adaptive equalizer. However, practically the receiver cannot have the values of x(n). Therefore, some pilot symbols are transmitted along with the actual payload to train the adaptive equalizer. These pilots are inserted either at the beginning, or at the end or at the middle of a message block. These pilots are known to the receiver. These are used to train the adaptive filter. Once the filter is trained, the resultant FIR filter acts as an inverse of the complex filter f(n). Thus we can have:
( ) = ( ) ∗ ( )
Program %mul t i pat h channel equal i zat i on ( bl ock t ype channel ) cl ear al l ; cl os e al l ; cl c %def i ni ng modul at or and demodul at or M=2; hm=modem. ps kmod( M) ; hd=modem. pskdemod( M) ; %Lengt h i ni t i al i z at i on 14
N=10000; Nf =1000; Np=200; r ng( ' s huf f l e' ) ; %Cr eat i ng pi ol t pi l ot _ bi t s =r andi ( [ 0, 1] , 1, Np) ; pi l ot _symb=modul at e( hm, pi l ot _bi t s) ; ch_ or d=4; nf _msg=Nf - Np; N1=cei l ( N/ nf _msg) ; r chn1=1/ sqrt ( 2) *( r andn( ch_or d, N1) +1j *r andn( ch_or d, N1) ) ; r chn1=r chn1/ max( max( r chn1) ) ; f or k=1: N1 r chn1( : , k) =sor t ( r chn1( : , k) , ' descend' ) ; end % r chn1=r chn1/ nor m( r chn1) ; r chn=ones( Nf , ch_or d) ; f or k=1: Nf : N f or k1=1: ch_or d r chn( k: k+Nf - 1, k1) =r chn1( k1, ( k- 1) / Nf +1) *ones( Nf , 1) ; end end f i gur e, subpl ot 211 pl ot ( abs( r chn) ) t i t l e( ' Channel Magni t ude' ) subpl ot 212 pl ot ( angl e( r c hn) / pi ) t i t l e( ' Channel Phas e/ pi ' ) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %I nput si gnal x=r andi ( [ 0, 1] , 1, N) ; i f ( mod( N, nf _msg) ~=0) N_add=cei l ( N/ nf _msg) *nf _msg- N; N=N+N_add; x=[ x, zer os( 1, N_add) ] ; end snr =- 10: 10; N_f ul l =Nf *N/ nf _msg; Tx_c han=zer os( 1, N_f ul l ) ; count =1; f or k=1: nf _msg: N x_t emp=x( k: k+nf _msg- 1) ; mod_msg=modul at e( hm, x_ t emp) ; Tx_s ymb=[ mod_msg( 1: nf _msg/ 2) , pi l ot _symb, mod_msg( nf _msg/ 2+1: nf _msg) ] ; w=r chn1( 1: ch_or d, ( ( count - 1) / Nf +1) ) ; chan_out =f i l t er ( w, 1, Tx_symb) ; Tx_c han( count : count +Nf - 1) =chan_out ; count =count +Nf ; end ber _ex=zer os( si ze( snr ) ) ; ber _t h=zer os( si ze( snr ) ) ; eq_or d=5; mu=0. 001; f or k=1: l engt h( snr ) Tx_s i g=awgn( Tx_c han, snr ( k) ) ; Rx=zer os( 1, N) ; count =1; f or k1=1: Nf : N_f ul l Tx_t emp=Tx_s i g( [ ( k1: k1+nf _msg/ 2- 1) , ( k1+nf _msg/ 2+Np: k1+Nf - 1) ] ) ; pi l ot _r x=Tx_s i g( k1+nf _msg/ 2: k1+nf _msg/ 2+Np- 1) ; 15
%Adapt i ve equal i zat i on ( MSE al gor i t hm) h=zer os( 1, eq_or d) ; er 1=zer os( Np- eq_or d+1, 1) ; f or k2=eq_or d: Np pk=pi l ot _r x(k2: - 1: k2- eq_ord+1) ; s=pk*conj ( h' ) ; er 1( k2) =pi l ot _symb( k2) - s; h=h+mu*c onj ( pk) *( er 1( k2) ) ; end Rx_t emp=f i l t er ( h, 1, Tx_t emp) ; Rx( count : count +nf _msg- 1) =demodul at e( hd, Rx_t emp) ; count =count +nf _msg; end ber _t emp=l engt h( f i nd( x- Rx) ~=0) ; ber _ex( k) =ber_ t emp/ l engt h( Rx) ; ber _t h( k) =ber f adi ng( snr ( k) , ' psk' , M, 1) ; f i gur e, semi l ogy( abs( er 1) ) ;
% end f i gur e l 1=semi l ogy( snr , ber _ex, ' b- s' ) ; hol d on l 2=semi l ogy( snr , ber _t h, ' r ' ) ; l egend( ' BER Exper i ment al ' , ' BER Theor et i cal ' ) xl abel ( ' SNR ( dB) ' ) ; yl abel ( ' BER' ) ;
Channel Response: Channel Magnitude 1
0.5
0
0
1000
2000
3000
4000
5000
6000
7000
8000
9000
10000
7000
8000
9000
10000
Channel Phase/pi 1 0.5 0 -0.5 -1
0
1000
2000
3000
4000
5000
16
6000
Output:
0
10
BER Ex perimental BER Theoretical
-1 R E 10 B
-2
10
-10
-8
-6
-4
-2
0 SNR (dB)
17
2
4
6
8
10