Assignment and marking criteria included in that
Assignment 2 and Submission Guidelines School School of Information Technology and Engineering Course Name Master of Engineering (Telecommunications) Unit Code ME606 Unit Title Digital Signal Processing Assessment Author Dr. Reza Berangi Assessment Type Assignment 2 (Individual) Assessment Title z-Transforms, Filters Concepts Unit Learning Outcomes covered in this assessment a. Develop and implement signal processing algorithms in Matlab b. Undertake in-depth design of digital filters Weight 15% Total Marks 100 Word/page limit N/A Release Date Week 7 Due Date Week 11 (31 May 2019, 11:55 pm) Submission Guidelines • All work must be submitted on Moodle by the due date along with a completed Assignment Cover Page. • The assignment must be in MS Word format, single line spacing, 11-pt Calibri (Body) font and 2 cm margins on all four sides of your page with appropriate section headings. • Reference sources must be cited in the text of the report, and listed appropriately at the end in a reference list using IEEE referencing style for School of Business and School of Information Technology and Engineering respectively. Extension If an extension of time to submit work is required, a Special Consideration Application must be submitted directly through the AMS. You must submit this application three working days prior to the due date of the assignment. Further information is available at: http://www.mit.edu.au/about-mit/institute-publications/policies-proceduresand- guidelines/specialconsiderationdeferment Academic Misconduct Academic Misconduct is a serious offence. Depending on the seriousness of the case, penalties can vary from a written warning or zero marks to exclusion from the course or rescinding the degree. Students should make themselves familiar with the full policy and procedure available at: http://www.mit.edu.au/aboutmit/institute-publications/policies-procedures- and-guidelines/PlagiarismAcademic-Misconduct-Policy-Procedure. For further information, please refer to the Academic Integrity Section in your Unit Description. http://www.mit.edu.au/about http://www.mit.edu.au/about http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/special-considerationdeferment http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure http://www.mit.edu.au/about-mit/institute-publications/policies-procedures-and-guidelines/Plagiarism-Academic-Misconduct-Policy-Procedure © MIT/SITE | ME606 Digital Signal Processing Assignment 2 Page 2 of 9 ME606 Assessment 2 Introduction The objective of this assessment is for each student to demonstrate understanding of the contents of lecture materials in the unit by applying the principles and concepts in lecture notes. Concepts covered by this assignment include z-transforms, and FIR filter design. Section 1. FIR filter design In general, we have 3 commonly used FIR filter design techniques (1) Windowed Fourier series approach (2) Frequency sampling approach (3) Computer-based optimization methods In this assignment we practice the first and the second methods in designing FIR filters 1-1 Designing a low pass FIR filter using Windowed Fourier Series approach The amplitude frequency response of an ideal low pass filter is shown in Figure. 1. Its impulse response can be found from its inverse Fourier transform as: h = ( ω? π ) ∗ sinc ( nω? π ) , n =. . , −2, −1,0,1,2, … , 0 <><π (1)="" figure="" 1.="" ideal="" low="" pass="" filter="" amplitude="" frequency="" response="" (left)="" and="" impulse="" response="" (right)="" using="" the="" equation="" (1)="" we="" can="" find="" all="" the="" impulse="" response="" samples.="" the="" filter="" is="" iir="" but="" by="" truncating="" the="" impulse="" response="" to="" a="" limited="" number="" of="" samples="" we="" can="" make="" it="" an="" fir="" filter.="" to="" do="" so="" we="" usually="" select="" m="" samples="" (m="" is="" usually="" odd="" number)="" around="" n="0" as="" shown="" in="" figure="" 2.="" ©="" mit/site="" |="" me606="" digital="" signal="" processing="" assignment="" 2="" page="" 3="" of="" 9="" shift="" by="" m/2="" figure="" 2.="" truncated="" impulse="" response="" by="" multiplying="" the="" resultant="" impulse="" response="" by="" a="" window="" we="" can="" reduce="" unwanted="" ripples="" in="" the="" spectrum.="" the="" following="" matlab="" code="" designs="" a="" fir="" filter="" with="" windowed="" fourier="" series="" approach.="" wp="pi/8;" %="" lowpass="" filter="" bandwidth="" m="121;" n="-(M-1)/2:(M-1)/2;" %="" selection="" time="" window="" h0="(wp/pi)*sinc((wp/pi)*n);" %="" truncated="" impulse="" response="" h="h0.*rectwin(M)';" %="" windowing="" %="" h="h0.*hamming(M)';%" windowing="" %="" h="h0.*hanning(M)';%" windowing="" %="" h="h0.*bartlett(M)';%" windowing="" %="" h="h0.*blackman(M)';%" windowing="" figure;plot(h)="" ylabel('impulse="" response')="" xlabel('samples')="" %="" spectrum="" fftsize="512;" pxx="20*log10(abs(fft(h,FFTsize)));" fxx="(0:(FFTsize/2)-1)*(pi/(FFTsize/2));" figure;plot(fxx,pxx(1:fftsize/2));="" ylabel('amplitude[db]');="" xlabel('frequency="" [radian]');grid="" on="" do="" the="" following="" tasks="" and="" plot="" all="" the="" graphs="" in="" your="" report:="" 1)="" run="" the="" above="" program="" and="" plot="" the="" impulse="" response="" and="" the="" amplitude="" spectrum="" of="" the="" filter.="" 2)="" measure="" the="" filter="" frequency="" response="" at="" p="pi/8." is="" it="" close="" to="" the="" expected="" value="" of="" -6db?="" how="" much="" is="" the="" maximum="" ripple="" in="" the="" pass="" band.="" 3)="" this="" filtering="" technique="" does="" not="" define="" any="" cutoff.="" if="" we="" assume="" the="" stopband="" starts="" at="" -20db,="" measure="" the="" ratio="" of="" the="" transient="" band="" to="" the="" pass="" band.="" 4)="" increase="" the="" filter="" impulse="" response="" length="" to="" m="255" and="" run="" the="" program.="" a)="" if="" we="" assume="" the="" stopband="" starts="" at="" -20db,="" measure="" the="" ratio="" of="" the="" transient="" band="" to="" the="" passband.="" b)="" measure="" the="" ripple="" in="" the="" passbad.="" ©="" mit/site="" |="" me606="" digital="" signal="" processing="" assignment="" 2="" page="" 4="" of="" 9="" c)="" discuss="" the="" effect="" of="" the="" filter="" length="" on="" the="" ripples="" and="" stopband="" attenuation.="" 5)="" use="" hamming="" and="" hanning="" window="" with="" the="" filter="" impulse="" response="" length,="" m="121," and="" discuss="" the="" effect="" of="" the="" window="" on="" the="" ripples="" and="" stopband="" attenuation.="" 6)="" change="" p="pi/4" and="" repeat="" 1)="" and="" discuss="" the="" effect.="" 1-2="" designing="" a="" bandpass="" fir="" filter="" using="" windowed="" fourier="" series="" approach="" a="" fir="" lowpass="" filter="" can="" be="" converted="" to="" a="" bandpass="" filter="" by="" multiplying="" its="" impulse="" response="" by="" a="" complex="" sinusoidal="" with="" the="" frequency="" of="" the="" center="" frequency="" of="" the="" desired="" bandpass="" filter.="" in="" fact,="" the="" whole="" filter="" band="" shifts="" by="" this="" frequency.="" the="" following="" matlab="" code="" designs="" such="" a="" bandpass="" filter:="" wp="pi/16;" %="" lowpass="" filter="" bandwidth="" m="121;" n="-(M-1)/2:(M-1)/2;" %="" selection="" time="" window="" h0="(wp/pi)*sinc((wp/pi)*n);" %="" truncated="" impulse="" response="" h1="h0.*rectwin(M)';" %="" windowing="" w0="pi/4;" %="" bpf="" center="" frequency="" h="h1.*exp(j*w0*n);" %="" lowpass="" to="" bandpass="" conversion="" figure;="" subplot(211);plot(real(h));ylabel('real="" part="" of="" impulse="" response')="" xlabel('samples')="" subplot(212);plot(imag(h));ylabel('imag="" part="" of="" impulse="" response')="" xlabel('samples')="" %="" spectrum="" fftsize="512;" pxx="20*log10(abs(fft(h,FFTsize)));" fxx="(0:(FFTsize/2)-1)*(pi/(FFTsize/2));" figure;plot(fxx,pxx(1:fftsize/2));ylabel('amplitude="" [db]');xlabel('frequency="" [radian]');grid="" on="" do="" the="" following="" tasks="" and="" plot="" all="" the="" graphs="" in="" your="" report:="" 7)="" run="" the="" above="" program="" and="" plot="" the="" impulse="" response="" and="" the="" amplitude="" spectrum="" of="" the="" filter.="" 8)="" what="" are="" the="" passband="" edges="" p1="" p2.="" measure="" the="" attenuation="" in="" frequency="" response="" at="" these="" frequencies="" and="" compare="" them="" with="" the="" expected="" value="" of="" -6db.="" 9)="" measure="" the="" maximum="" ripple="" in="" the="" passband.="" 10)="" increase="" p="" to="" pi/4="" and="" discuss="" the="" result="" 1-3="" designing="" a="" band-stop="" fir="" filter="" using="" frequency="" sampling="" approach="" in="" this="" section,="" you="" must="" write="" your="" own="" code="" to="" design="" a="" band="" stop="" filter="" using="" the="" knowledge="" you="" gained="" from="" the="" sections="" 1-1="" and="" 1-2="" ©="" mit/site="" |="" me606="" digital="" signal="" processing="" assignment="" 2="" page="" 5="" of="" 9="" write="" a="" code="" to="" design="" a="" band-stop="" filter.="" design="" a="" band-stop="" filter="" by="" having="" the="" following="" block="" diagram="" in="" your="" mind="" the="" spectrum="" mask="" is="" as="" the="" following:="" 11)="" report="" your="" matlab="" code.="" select="" the="" filter="" impulse="" response="" length="" m="121;" 12)="" plot="" the="" frequency="" response,="" |h(ej)|,="" of="" your="" filter="" on="" the="" top="" of="" the="" spectrum="" mask="" in="" a="" single="" plot.="" 13)="" plot="" 20*log10(|h(ej)|)="" of="" your="" filter="" on="" the="" top="" of="" the="" spectrum="" mask="" in="" db="" in="" a="" single="" plot.="" 14)="" measure="" the="" amplitude="" at="" ="[/4," 3/4,="" /2]="" on="" your="" second="" plot.="" 15)="" find="" the="" deepest="" point="" in="" your="" frequency="" response="" in="" db.="" how="" you="" can="" increase="" the="" depth="" of="" the="" stopband?="" 1-4="" designing="" a="" low="" pass="" fir="" filter="" using="" frequency="" sampling="" approach="" in="" the="" frequency="" sampling="" approach,="" we="" design="" an="" amplitude="" response="" in="" the="" frequency="" domain="" and="" find="" the="" impulse="" response="" by="" applying="" ifft="" on="" that="" frequency="" response.="" the="" following="" matlab="" code="" designs="" a="" low="" pass="" fir="" filter="" using="" frequency="" sampling="" approach.="" it="" initially="" designs="" the="" amplitude="" spectrum="" and="" the="" apply="" ifft.="" using="" some="" shifts="" it="" finds="" the="" truncated="" impulse="" response.="" wp="pi/8;" m="121;" fftsize="512;" %="" passband="" frequency="" samples="" np="fix((wp/(2*pi))*FFTsize);" %="" number="" of="" pass="" band="" samples="" ns="FFTsize/2-Np;" %="" number="" of="" stop="" band="" samples="" h1="[ones(1,Np)" zeros(1,ns+1)];="" h="[H1" h1(end:-1:2)];="" %="" sampled="" frequency="" spectrum;="" fxx="(0:(FFTsize/2)-1)*(pi/(FFTsize/2));" figure;plot(fxx,h(1:fftsize/2));="" ylabel('amplitude');="" xlabel('frequency="" [radian]');grid="" on="" bpf="" +="" band-stop="" filter="" x[n]="" y[n]="" -="" +="" 0="" ="" ="" ="" 1="" ="" |h(ej)|="" ©="" mit/site="" |="" me606="" digital="" signal="" processing="" assignment="" 2="" page="" 6="" of="" 9="" %="" finding="" impulse="" response="" by="" truncating="" h1="real(ifft(H));" h0="[" h1(end-(m-1)/2+1:end)="" h1(1:1+(m-1)/2)];="" figure;plot(h0)="" ylabel('impulse="" response')="" xlabel('samples')="" %="" spectrum="" pxx="20*log10(abs(fft(h0,FFTsize)));" fh="figure;plot(fxx,pxx(1:FFTsize/2));hold" on;="" %="" effect="" of="" windowing="" h="h0.*hanning(M)';%" windowing="" %="" spectrum="" pxx="20*log10(abs(fft(h,FFTsize)));" figure(fh);plot(fxx,pxx(1:fftsize/2));grid="" on;="" legend('rectwin','hanning')="" do="" the="" following="" tasks="" and="" plot="" all="" the="" graphs="" in="" your="" report:="" 16)="" run="" the="" above="" program="" and="" plot="" the="" impulse="" response="" and="" the="" amplitude="" spectrum="" of="" the="" filter.="" try="" to="" understand="" what="" the="" program="" does.="" 17)="" use="" the="" above="" program="" as="" your="" base,="" design="" a="" band="" pass="" filter="" that="" passes="" the="" frequencies="" between="">π><>