CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 1Intersymbol Interference, Pulse Shapes Colorado Technical University EE 463 – Communications 2 Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, Intersymbol Interference, and Pulse Shapes December 2010 Loren K. Schwappach ABSTRACT: This lab report was completed as a course requirement to obtain full course credit in EE463,Communications 2 at Colorado Technical University. This Lab investigates the concepts of digital modulation, samplingreceivers, Nyquist criterion, Intersymbol Interference, and pulse shaping. If you have any questions or concerns in regards tothis laboratory assignment, this laboratory report, the process used in designing the indicated circuitry, or the final conclusionsand recommendations derived, please send an email to LSchwappach@yahoo.com. All computer drawn figures and picturesused in this report are of original and authentic content and were created using MATLAB. I. INTRODUCTION III. EQUIPMENT MATLAB is a powerful utility and is helpful in thevisualization of applied mathematics, physics, and practical The following tools and or equipment were used forengineering. The first concept of digital communications is to this lab assignment:gain an understanding of Intersymbol Inference (ISI). Toprevent ISI signals must be sampled properly as required by 1. MATLAB version 2010a (with all features/bock sets).the Nyquist criterion. A Nyquist pulse is a Nyquist shapedpulse which is idealized as a way to completely eliminate ISI. 2. Simulink (Part of MATLAB)Eye and scatter diagrams can further help by providing avisualize indication of ISI and sampling effects. The 3. Communications Toolbox (Part of Simulink)communication channel is the driving source of ISI due tononlinear frequency responses. Timing effects are anotherproblem encountered with digital transmission. These effectscome from duplicating delayed versions of the transmitted IV. PROCEDURE / RESULTSsignal over the communication channel. 1. Part A: Developing the basic digital modulator and sampling receiver in Simulink: II. OBJECTIVES To build a digital message a new work space was In this Communications 2 lab exercise MATLAB created in Simulink. The communication block-sets arewill be used to accomplish the following objectives: utilized as the primary source of building blocks for the digital tools. The Bernoulli binary generator is the first tool used to1. Gain a better understanding of the following concepts: produce a digital message by generating a randomized bit steam based on some user defined parameters. The following ISI figure shows these parameters. Nyquist Criterion Nyquist Pulse Eye and Scatter Diagrams Channel Noise & effects ISI due to overlapping pulses & effects Timing Offset & effect on eye/scatter diagrams Sampling Receiver
CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 2Intersymbol Interference, Pulse Shapes Next, an up sample block of 100 is used to generate a continuous time sample rate of 100 samples per second (100Hz). The Signal to Workspace blocks are used for visualizing the signals and a Discrete Filter block is used to modulate the incoming signal. In the Discrete Filter the Non Return to Zero (NRZ) pulse shaping parameter is modified as shown (Fig. 3).Figure 1: Parameters of the Bernoulli Binary Generator. The Bernoulli Binary Generator (Fig. 1) ensures thata one or a zero will be occur with equal probability by theinput “Probability of a zero” of “0.5”. The sampling time is setto 1 to ensure an output of one bit per second. So the final bit Figure 3: Parameters of the Discrete Filterrate is 1bps. The Simulink workspace now resembles Fig. 4 Next a lookup table is added to Simulink. The lookup below:table provides a representation of the incoming bits; one orzero provide a +1 and -1. The symbol rate is again 1symbolper second. The following figure (Fig.2) illustrates the look-up table parameters used in Simulink. Figure 4: Total Block set. After running the simulation the following signal to workspace results were obtained (Fig. 5):Figure 2: Parameter of the Lookup Table. The Lookup table symbols are intended to modulatethe Bernoulli Binary Generator (BBG) pulse train. As theBBG pulse train passes through the lookup table it is„encoded‟ and thus needs to be sampled. This raises thefrequency and symbol rate.
CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 3Intersymbol Interference, Pulse ShapesFigure 5: Modulated Impulse Train. Figure 6: Modulated Impulse Train with 20% Intersymbol Interference (ISI). From the above figure we can conclude that the bitrate is one bit per second and the NRZ pulse shaping is The results of Fig. 6 confirm that an overlap ofworking as expected. interference has occurred. Twenty percent of each bit overlaps with the following bit creating short additive pulses2. Part B: Experiments with Interfering Pulses: on the top and bottom of each correct bit. Next the NRZ pulse shaper is spread-out with the This introduced huge problems for the sampling1bps bit rate at 100Hz a 20% overlap is introduced by receiver. It is possible to detect this Inter Symbol Interferenceextending the NRZ numerator parameter to „ones(1,120)‟. (ISI) only if the impulse response of the digital filter satisfiesThis results in the new output as shown (Fig. 6). the Nyquist criterion for sampling. The Discrete Filter numerator is now changed to isipulse which is downloaded as isipulse.mat from the MATLAB prompt. This new pulse extends over four symbol periods as shown by the next figures (Fig. 7 & Fig 8).
CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 4Intersymbol Interference, Pulse ShapesFigure 7: ISI impulse response. Figure 9: Discrete filter response of Half Sine Pulse. Now, the numerator of the discrete filter was modified to “hspulse”. Fig. 10 below illustrates the output of the new “hspulse” response. With this modified configuration the modulated pulse train will now pass symbols correctly. Because the Nyquist pulse is at the same sample/symbol rate a perfect shift can now occur. The intersections at -1 and +1 indicate duplicates of the symbol time.Figure 8: Modulated signal with ISI pulse responsefiltering. Next a Half Sine (HS) pulse is created by typing inthe command “ >>hspulse = sin(pi*[0:0.01:2]/2);” via theMATLAB prompt. This pulse shape is displayed by Fig. 9.One observation my lab partner and I gained while performing Figure 10: The hspulse response signal output.this is the importance of centering “hspulse” at zero. The shiftencountered was unexpected and uncorrectable.
CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 5Intersymbol Interference, Pulse Shapes Now the pulse train is passed through a Raised RootCosine (RC) pulse with thirty percent of excess bandwidth.The function to achieve this is defined by the followingMATLAB script:% -----------% Matlab script for RC Pulsefunction y = rcpulse(a,t)tau = 1; % Set the symbol timet = t + 10^(-7); %Avoids division by zerotpi = pi/tau; atpi=tpi*a;at = 4*a^2/tau^2;y=sin(tpi*t).*cos(atpi*t)./(tpi*t.*(1-at*t.^2));% ------------- The function “rcpulse” is called in MATLAB with“rcpulse=rcpulse(.3,[-6:0.01]:6]);” command. This functioncall results in a Nyquist pulse that passes through zero at eachsample time and is illustrated by Fig 12 below. Figure 13: Updated signal using raised root cosine pulse response. As illustrated by Fig. 13 above the Discrete Filter is now much more effective at producing a quality response. Although overlapping is still observable the Nyquist criterion is achieved. 3. Part C: Additive Noise Channel: Additive channel noise is a common problem in communication systems. For the next phase in this lab additive channel noise is created by introducing zero mean Gaussian noise into the pulse train. The Gaussian noise generator block is now summed with the output of the discrete filter. Yet another signal to workspace block is added for monitoring the signal changes before and after the addition of noise (see Fig 14).Figure 11: The Raised Root Cosine Function (rcpulse) Next the Discrete Filter is modified to rcpulse. Thisproduced Fig. 13 after passing through a Gaussian pulse.
CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 6Intersymbol Interference, Pulse ShapesFigure 12: Addition of new block sets for additive channelnoise. The Gaussian Noise Generator (GNG) parameters arealtered to resemble the subsequent figure. Figure 14: Output of signal with min. additive channel noise. The noise shown by Fig. 16 is illustrated by the fuzz overcastting the signal. Additive channel noise depends upon the parameter of variance set for in the GNG. If the varience were increased the signal noise would also increase as shown by Fig. 17 below.Figure 13: Parameters of Gaussian Noise Generator Figure 15: Large amount of additive channel noise.
CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 7Intersymbol Interference, Pulse Shapes4. Part D: Sampling Receiver Changing the variance of the GNG to 0.000001 willeliminate most of the additive channel noise. The DiscreteTime Eye Diagram Scope, DSP Constant and Discrete TimeScatter Plots are now added to the Simulink workspace asillustrated by Fig. 18. Figure 18: Parameters of the Discrete Time Scatter Plot. The new simulation results produced the followingFigure 16: Sampling Receiver Block Set outputs as illustrated by Fig. 21 & 22. The Discrete Time Eye Diagram and a Discrete TimeScatter Plot scope parameters were modified as shown by Fig19 & Fig. 20. Figure 21: Eye plot diagram with no channel noise.Figure 17: Parameters of the Discrete Time Eye Diagram.
CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 8Intersymbol Interference, Pulse ShapesFigure 22: Scatter plot diagram with no channel noise. Figure 23: Eye plot diagram with triangle pulse response. The Discrete Time Filter Numerator (DTFN) is nowmodified for three different output responses. The firstresponse will be a triangular pulse using“tripulse=triang(200)”. The second response will be a halfsine pulse. The third and final response will be a non-Nyquistintersymbol interference pulse (isipulse). Theseresponses are illustrated by Fig. 23 – Fig. 28. Figure 24: Scatter plot diagram with triangle pulse response.
CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 9Intersymbol Interference, Pulse Shapes Figure 27: Eye plot diagram with non-Nyquist ISI response.Figure 25: EYE plot diagram with half sine pulseresponse. Figure 28: Scatter plot diagram with non-Nyquist ISI response.Figure 26: Scatter plot diagram with half sine pulseresponse.
CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 10Intersymbol Interference, Pulse Shapes The above eye diagrams indicate the variances ofsignals due to the selection of a good filter. By changing thetiming offset the impulse response is changed into the RaisedCosine pulse. Yet another discrete filter is now added afterthe introduction of channel noise to induce a twenty seconddelay corresponding to twenty percent of the symbol perioddue to the sample rate of one hundred samples per second.The second filters numerator is changed to “[zeros(1,19,1]”(see Fig. 29). Figure 31: Scatter plots diagram with minimal channel noise and delay.Figure 29: Simulink block set used inducing a time delay. As illustrated by the figures above the eye diagram is now sampled at a place where the eye is partially closed and The eye and scatter plot diagrams now result in the the scatter plot is indicating multiple sample rates as shown byfollowing (Fig. 30 & 31): the multiple symbols. Additional noise is now added into the system by increasing the GNG back to “.01” resulting in Fig. 32 & 33.Figure 30: Eye plot diagram result with small channelnoise and delay.
CTU: EE 463 – Communications 2: Lab 2: MATLAB Project – Digital Modulation, Sampling RCVR, Nyquist Criterion, 11Intersymbol Interference, Pulse Shapes V. CONCLUSIONS This was an excellent assignment to cover some essential concepts with digital communications. The first concept explained was Intersymbol Inference (ISI). ISI is a distortion of the original signal caused by one symbol interfering with another symbol. With the proper identification and selection of the Nyquist rate, ISI can be effectively eliminated. One key factor in the problem associated with ISI is the nonlinearity of the transmission channel. An eye pattern analyzer is a tool that addresses the issues of ISI and channel noise. Eye plot diagrams help visualize time jitter, ISI, and channel noise without the need of complex mathematics. Scatter plot diagrams assist in demonstrating the possibilities for recovering a signal and the effects of sampling. Additive channel noise is easily observed in eye diagrams as overlaid fuzz.Figure 32: Eye plot diagram result with large amounts of REFERENCESchannel noise and delay.  Haykin, S., “Analog and Digital Communications 2nd Edition” John Wiley & Sons, Haboken, NJ, 2007.Figure 33: Scatter plot diagram result with large amountsof channel noise and delay. The eye and scatter plot diagrams indicate that thenoise is now so severe as to nearly close the eye.