06.06.2022 Views

B. P. Lathi, Zhi Ding - Modern Digital and Analog Communication Systems-Oxford University Press (2009)

Create successful ePaper yourself

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

594 PERFORMANCE ANALYSIS OF DIGITAL COMMUNICATION SYSTEMS

the same BER from simulation, the three different polar modulations require drastically different amount

of channel bandwidth.

COMPUTER EXERCISE l 0.2: ON-OFF BINARY SIGNALING

Next, we present an exercise that implements and tests the on-off signaling as well as a more generic

orthogonal type of signaling. Recall that on-off signaling is a special form of orthogonal binary signaling.

MATLAB program Ex10_2 .m will measure the receiver BER of both signaling schemes.

% MATLAB PROGRAM <Exl0_2 .m>

% This Matlab exercise <Ex10_2 .m> generate

% on/off baseband signals using root-raised cosine

% pulseshape (rolloff factor = 0.5 ) and orthogonal baseband

% signal before estimating the bit error rate (BER) at dif ferent

% Eb/N ratio for display and comparison

clear;clf

L=l000000;

% Total data symbols in experiment is 1 million

% To display the pulse shape , we oversample the signal

% by factor of f_ovsamp=B

f_ovsamp=16;

% Oversampling factor vs data rate

delay_rc=3 ;

% Generating root-raised cosine pulseshape (rolloff factor 0.5)

prcos=rcosflt ([ 1 ], 1, f_ovsamp , 'sqrt ', 0.5, delay_rc );

prcos=prcos (l:end-f_ovsamp+l) ;

prcos=prcos/norm (prcos);

pcmatch=prcos (end : -1:1) ;

% Generating a rectangular pulse shape

psinh=sin ([0:f_ovsamp-l]*pi/f_ovsamp) ;

psinh=psinh/norm (psinh) ;

phmatch=psinh (end:- 1:1) ;

% Generating a hal f-sine pulse shape

psine=sin ([0:f_ovsamp- 1] *2*pi/f_ovsamp) ;

psine=psine/norm (psine );

psmatch=psine (end : -1:1) ;

% Generating random signal data for polar signaling

s_data=round (rand(L, l) );

% upsample to match the 'fictitious oversampling rate '

% which is f_ovsamp /T (T=l is the symbol duration)

s_up=upsample ( s_data, f_ovsamp) ;

s_cp=upsample (l -s_data, f_ovsamp) ;

% Identify the decision delays due to pulse shaping

% and matched filters

delayrc=2*delay_rc* f_ovsamp ;

delayrt=f_ovsamp-1;

% Generate polar signaling of different pulse-shaping

xrcos=conv ( s_up,prcos) ;

xorth=conv (s_up,psinh) +conv (s_cp ,psine) ;

t= (l:200) /f_ovsamp ;

figure (l)

subplot (211)

figwavel=plot (t,xrcos (delayrc /2 : delayrc/2+199) );

title(' (a) On/off root-raised cosine pulse. ');

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

Saved successfully!

Ooh no, something went wrong!