Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

EEE351-Principles of Communication Systems

Lab Report-10

Name Abdul Wahab


Faiq Jhanzaib

FA20-BEE-010
Registration Number FA20-BEE-048

Class/Section
BEE-5B
Instructor’s Name Sir Khan Afsar

Lab Assessment Marks

Ability to use software /1

Follow procedures /1
In Lab
Troubleshoot software /1 /4

Q&A /1

Presentation /2

Post-Lab Analysis /2 /6

Writing /2
LAB # 10 : Investigation of Inter Symbol Interference and
Eye Diagram using MATLAB

OBJECTIVES:
The students will be taught about inter-symbol interference and eye diagrams. The advantages of
eye diagrams and how to develop and properly asses an eye diagram.

PRE-LAB:
Inter Symbol Interference:
Due to filtering nature of the channel the transmitted pulses get smeared in the time domain and
interfere in the detection of each other. This phenomenon is termed as Inter Symbol Interference
(ISI) and is a major source of signal degradation. In presence of ISI the BER performance does not
increases with increase in SNR after a certain level. Nyquist pulse shaping and Raised Cosine Pulse
Shaping are used to mitigate the effects of ISI.

Nyquist Pulse:
Nyquist pulse shaping can be employed to ensure zero ISI if the channel behaves as an ideal filter. If
the data transmission rate is R then define

𝑊𝑊 = 𝑅𝑅/2

and

𝑝𝑝(𝑡𝑡) = 𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠(2𝑊𝑊𝑊𝑊)

Where P(t) is called the Nyquist pulse.

Nyquist Pulse with W = 500Hz


200

150

100
P(t)

50

-5 0
-3 -2 -1 0 1 2 3
Time x 10-3

LAB TASKS:
Task A:
1. Define a symbol time Tb and sample time Ts and define a rectangular pulse. Define a
channel filter with cut off frequency equal to 1/2Tb.

2. Pass the pulse through the filter, pass the output through a matched filter and plot the
output.

3. Assume SNR=0db, define a random data of 100 bits, for each bit define a pulse using polar
NRZ signaling scheme. Pass each pulse through the channel and matched filter, add noise
and plot the result on top of each other. This would result in an eye diagram.

4. Figure out noise margin, sensitivity to timing error and the ISI error free interval.

5. Repeat the experiment for different values of SNR.

Matlab Code :

test_data=[0 1 0 1 0 1];
rand_data=double(rand(1,100)>0.4)
ts=0.001;
t=0:ts:0.0999
x=length(t);
tx=0:ts:0.005;
n1=length(tx);
n=30;
pulse=ones(1,n);
y=[];
lpf = fir1(n, 0.2);
for i=1:length(rand_data)
if(rand_data(i) == 0)
y = [y -1*pulse];
else
y = [y 1*pulse];
end
end
n2=length(y)
pulse_ext=[]
j=1;
for i=1:length(rand_data)
pulse_ext=(y(j:j+(n-1)));
filter_output=conv(lpf,pulse_ext);
AGWN=awgn(filter_output,0);
output=conv(pulse,AGWN);
plot(output),grid on,hold on
j=j+n;
end
title('With SNR = 0');
With SNR = 15
With SNR = 25

POST LAB
Repeat the experiment by using raised cosine filter, with roll of factor r=0, 0.5, 1 and explain the
results.

With r = 0

test_data=[0 1 0 1 0 1];
rand_data=double(rand(1,100)>0.4)
ts=0.001;
t=0:ts:0.0999
x=length(t);
tx=0:ts:0.005;
n1=length(tx);
n=30;
pulse=ones(1,n);
y=[];
r=0;
lpf = rcosdesign(r,n,n);
for i=1:length(rand_data)
if(rand_data(i) == 0)
y = [y -1*pulse];
else
y = [y 1*pulse];
end
end
n2=length(y)
pulse_ext=[]
j=1;
for i=1:length(rand_data)
pulse_ext=(y(j:j+(n-1)));
filter_output=conv(lpf,pulse_ext);
AGWN=awgn(filter_output,15);
output=conv(pulse,AGWN);
plot(output),grid on,hold on
j=j+n;
end
title('With r = 0');

With r=0
With r = 0.5

With r = 1
Critical Analysis / Conclusion :
In this lab, we observed how channel noise
and filtering (ISI) affect transmission. With enough samples per bit, the
voltage samples for transmitting '1's are distinctly above the threshold, and
those for transmitting '0's are distinctly below it within the eye's center. An
"open" eye ensures minimal noise won't cause errors in converting
detection samples to bits, although complete error prevention is
impossible. Correctly setting the digitization threshold is crucial; it should
evenly divide the upper and lower halves of the eye. The eye diagram
serves as a valuable tool to visualize ISI and determine an appropriate
number of samples per bit for effective data transmission on our channel.

You might also like