數(shù)字信號處理試卷試題及答案
數(shù)字信號處理試卷試題及答案,數(shù)字信號,處理,試卷,試題,答案,謎底
Answer to “Digital Signal Processing”Problem 1 (a). x1(n)={3,7,-2,-1,5,-8}, n1=-2:3 x2(n)={3,7,-2,-1,5,-8}, n2=1:6x3(n)={-8,5,-1,-2,7,3 }, n3=-2:3 [3 points](b) y(n)={14,9,-3,21,-11,-17,-5,-40,0}, n=-2:6 [3 points](c).MATLAB program:clear,close all;n=0:5; x=[3,7,-2,-1,5,-8];[x1,n1]=sigshift(x,n,-2); [x2,n2]=sigshift(x,n,1); [x3,n3]=sigfold(x,n); [x3,n3]=sigshift(x3,n3,3); [y1,yn1]=sigadd(2*x1,n1,x2,n2);[y1,yn1]=sigadd(y1,yn1,-x3,n3); [3 points]stem(yn1,y1);title('sequenceY(n)’) Problem 2 (a) 23456456()()430j jnnjjjjjjXexeee??????????????is periodic in with period 2 . [5 points]()je??(b) Matlab program:clear; close all;n = 0:6; x = [4,3,2,0,2,3,4];w = [0:1:100]*pi/100;X = x*exp(-j*n'*w); magX = abs(X); phaX = angle(X);% Magnitude Response Plotsubplot(2,1,1); plot(w/pi,magX);grid;xlabel('frequency in pi units'); ylabel('|X|');title('Magnitude Response');% Phase response plotsubplot(2,1,2); plot(w/pi,phaX*180/pi);grid;xlabel('frequency in pi units'); ylabel('Degrees');title('Phase Response'); axis([0,1,-180,180]) [5 points](c) Because the given sequence x (n)={4,3,2,0,2,3,4} (n=0,1,2,3,4,5,6) is symmetric about ,the phase response satisfied the condition 132N???()jHe??()jHe???so the phase response is a linear function in . [5 points](d) [5 points]sradfT3001.????(e) The difference of amplitude and magnitude response:Firstly, the amplitude response is a real function, and it may be both positive and negative. The magnitude response is always positive. Secondly, the phase response associated with the magnitude response is a discontinuous function. While the associated with the amplitude is a continuous linear function. [5 points]Problem 3 (a) Pole-zero plot – MATLAB script:b=[1,1,0];a=[1,0.5,-0.24];zplane(b,a)Figure : Pole-zero plot in Problem A2Because all the poles and zero are all in the unit circle,so the system is stable. [5 points](b) Difference equation representation.:;112())/(0.5.4)hzz?????After cross multiplying and inverse transforming; [5 points]()0.5().2()()ynynxn??(c) impulse response sequence h(n) using partial fraction representation:?11()0.18/(.).8/(0.3)hzzz?????[5 points]?)nnnu(d) MATLAB verification:(1) b=[1,1];a=[1,0.5,-0.24];[delta,n]=impseq(0,0,9)x=filter(b,a,delta)(2) n=[0:4];x=(-0.1818.*(-0.8).^n+1.1818.*(0.3).^n).*stepseq(0,0,9) [5 points]Problem 4 (a) figure 4.1 figure 4.2sequence x1(n) sequence x2 (n) The plots of x1(n) and x2(n) is shown in figure 4.1 and figure 4.2 [4 points](b) figure 4.3After calculate, we find circular convolution is equal when N is 7 or 8. [4 points](c)If circular convolution is equal to linear convolution ,the minimum N is m+n-1=7.The plots of circular convolution of x1(n) and x2(n) is shown in figure 4.3. [4 points](d) MATLAB program:clear,close all;n=0:7;m=0:6;l=0:3;x1=[1,-1,1,-1];x2=[3,1,1,3];figure,stem(l,x1),title('sequence x1'),box off;figure,stem(l,x2),title('sequence x2'),box off;%8-point circular convolutionx1_fft8=fft(x1,8);x2_fft8=fft(x2,8);y_fft8=x1_fft8.*x2_fft8;y8=real(ifft(y_fft8));figure,subplot(2,1,1),stem(n,y8),title('8-pointcircular convolution '),axis([0 7 -3 3]),box off;%7-point circular convolutionx1_fft7=fft(x1,7);x2_fft7=fft(x2,7);y_fft7=x1_fft7.*x2_fft7;y7=real(ifft(y_fft7));subplot(2,1,2),stem(m,y7),title('7-point circular convolution '),axis([0 7 -3 3]),box off; [4 points] Problem 5 (a) Block diagrams are shown as under:1z? 1z? 1z? 1z? 1z? 1z?1253521()xn ()yn[4 points][4 points]()xn()yn 1z? 1z? 1z?1z?1z?1z?1 2 5 3(b)The advantage of the linear-phase form:1. For frequency-selective filters, linear-phase structure is generally desirable to have a phase-response that is a linear function of frequency. 2. This structure requires 50% fewer multiplications than the direct form. [2 points] Problem 6 (a) we use Hamming window to design the bandpass filter because it can provide us attenuation exceed 50dB [5 points] (b) MATLAB verification:%% Specifications:ws1 = 0.3*pi; % lower stopband edgewp1 = 0.4*pi; % lower passband edgewp2 = 0.5*pi; % upper passband edgews2 = 0.6*pi; % upper stopband edgeRp = 0.5; % passband rippleAs = 50; % stopband attenuation%tr_width = min((wp1-ws1),(ws2-wp2));M = ceil(6.6*pi/tr_width); M = 2*floor(M/2)+1, % choose odd Mn = 0:M-1;w_ham = (hamming(M))';wc1 = (ws1+wp1)/2; wc2 = (ws2+wp2)/2;hd = ideal_lp(wc2,M)-ideal_lp(wc1,M);h = hd .* w_ham;[db,mag,pha,grd,w] = freqz_m(h,1);delta_w = pi/500;Asd = floor(-max(db([1:floor(ws1/delta_w)+1]))), % Actual AttnRpd = -min(db(ceil(wp1/delta_w)+1:floor(wp2/delta_w)+1)), % Actual passband ripple (5)%%% Filter Response Plotssubplot(2,2,1); stem(n,hd); title('Ideal Impulse Response: Bandpass');axis([-1,M,min(hd)-0.1,max(hd)+0.1]); xlabel('n'); ylabel('hd(n)')set(gca,'XTickMode','manual','XTick',[0;M-1],'fontsize',10)subplot(2,2,2); stem(n,w_ham); title('Hamming Window');axis([-1,M,-0.1,1.1]); xlabel('n'); ylabel('w_ham(n)')set(gca,'XTickMode','manual','XTick',[0;M-1],'fontsize',10)set(gca,'YTickMode','manual','YTick',[0;1],'fontsize',10)subplot(2,2,3); stem(n,h); title('Actual Impulse Response: Bandpass');axis([-1,M,min(hd)-0.1,max(hd)+0.1]); xlabel('n'); ylabel('h(n)')set(gca,'XTickMode','manual','XTick',[0;M-1],'fontsize',10)subplot(2,2,4); plot(w/pi,db); title('Magnitude Response in dB');axis([0,1,-As-30,5]); xlabel('frequency in pi units'); ylabel('Decibels')set(gca,'XTickMode','manual','XTick',[0;0.3;0.4;0.5;0.6;1])set(gca,'XTickLabelMode','manual','XTickLabels',['0';'0.3';'0.4';'0.5';'0.6';'1'],.'fontsize',10)set(gca,'TickMode','manual','YTick',[-50;0])set(gca,'YTickLabelMode','manual','YTickLabels',['-50';'0']);grid [10 points]Problem 7Firstly, we use the given specifications of to design an analog lowpass IIR spsAR,,?filter. Secondly, we change the analog lowpass IIR filter into the analog highpass IIR filte. Thirdly, we change the analog highpass IIR filter into the digital highpass IIR filte. [5 points]Digital Signal Processing of 20051Answer to “Digital Signal Processing of 2005”Problem 1(a) even part: odd part: };5.0,17,,15.0{??eX };5.0,13,5.0{???oX(b) 26943,62,?y(c) MATLAB Programn=-4:2;x=[1 -2 4 6 -5 8 10];[x11,n11]=sigshift(x,n,2);[x12,n12]=sigshift(x,n,-1);[x13,n13]=sigfold(x,n);[x13,n13]=sigshift(x13,n13,-2);[x12,n12]=sigmult(x,n,x12,n12);[y,n]=sigadd(2*x11,n11,x12,n12);[y,n]=sigadd(y,n,-1*x13,n13)Problem 2(a) , is periodic in with period 2wjjwjwjjjw eeeeX 6542 42104)( ???????? ()jX??(b) MATLAB Program:clear; close all;n = 0:6; x = [4,2,1,0,1,2,4];w = [0:1:1000]*pi/1000;X = x*exp(-j*n'*w); magX = abs(X); phaX = angle(X);% Magnitude Response Plotsubplot(2,1,1); plot(w/pi,magX);grid;xlabel('frequency in pi units'); ylabel('|X|');title('Magnitude Response');% Phase response plotsubplot(2,1,2); plot(w/pi,phaX*180/pi);grid;xlabel('frequency in pi units'); ylabel('Degrees');title('Phase Response'); axis([0,1,-180,180]) (c) Because the given sequence x (n)={4,2,1,0,1,2,4} (n=0,1,2,3,4,5,6) is symmetric about ,the 132N???phase response satisfied the condition:()jHe??()3jHe?????so the phase response is a linear function in . (d) ;150,350zz???(e) The difference of amplitude and magnitude response:Digital Signal Processing of 20052Firstly, the amplitude response is a real function, and it may be both positive and negative. The magnitude response is always positive. Secondly, the phase response associated with the magnitude response is a discontinuous function. While the associated with the amplitude is a continuous linear function. Problem 3(a) )9.0.1/()() 21????zzHZero:0 and 1;Pole:-0.6 and 1.5;(b) , 11165()220Hzzz??????165()(0.)(1.)(22nnhnu???(c) ROC : , .6.5Z???????633251n nhnu????????????????Problem 4(a) y(n)={50,44,34,52};(b) y(n)={5,16,34,52,45,28,0};(c) N=6;(d) MATLAB Program:Function y=circonv(x1,x2,N)If (length(x1)N)error(“N must not be smaller than the length of sequence”)elsex1=[x1,zeros(1,N-length(x1))];endif(length(x2)N)error(“N must not be smaller than the length of sequence”)Digital Signal Processing of 20053elsex2=[x2,zeros(1,N-length(x2))]; endy1=dft(x1,N).*dft(x2,N);y=idft(y,N);(e) DTFT is discrete in time domain, but continuous in frequency domain. The DFT is discrete both in time and frequency domain.The FFT is a very efficient method for calculating DFT. Problem 5(a) Direct form II uses the little delay and it can decrease the space of the compute.(b)The advantage of the linear-phase form:1. For frequency-selective filters, linear-phase structure is generally desirable to have a phase-response that is a linear function of frequency. 2. This structure requires 50% fewer multiplications than the direct form.(c) Block diagrams are shown as under:1z? 1z? 1z? 1z? 1z? 1z?1253521()xn ()yn()xn()yn 1z? 1z? 1z?1z?1z?1z?1 2 5 3Problem 6(a) we use Hamming or Blackman window to design the bandpass filter because it can provide us attenuation exceed 60dB .(b) According to Blackman window :first, Determine transition width = ;psW?second, Determine the type of the window according to ;sAthird, Compute M using the formula ;Mps?2?fourth, Compute ideal LPF ;sc?fifth, design the window needed, multiply point by point;sixth, determine spAR,(c) MATLAB Program:Digital Signal Processing of 20054%% Specifications about Blackman window:ws1 = 0.2*pi; % lower stopband edgewp1 = 0.3*pi; % lower passband edgewp2 = 0.6*pi; % upper passband edgews2 = 0.7*pi; % upper stopband edgeRp = 0.5; % passband rippleAs = 60; % stopband attenuation%tr_width = min((wp1-ws1),(ws2-wp2));M = ceil(6.6*pi/tr_width); M = 2*floor(M/2)+1, % choose odd Mn = 0:M-1;w_ham = (hamming(M))';wc1 = (ws1+wp1)/2; wc2 = (ws2+wp2)/2;hd = ideal_lp(wc2,M)-ideal_lp(wc1,M);h = hd .* w_ham;[db,mag,pha,grd,w] = freqz_m(h,1);delta_w = pi/500;Asd = floor(-max(db([1:floor(ws1/delta_w)+1]))), % Actual AttnRpd = -min(db(ceil(wp1/delta_w)+1:floor(wp2/delta_w)+1)), % Actual passband ripple (5)%%% Filter Response Plotssubplot(2,2,1); stem(n,hd); title('Ideal Impulse Response: Bandpass');axis([-1,M,min(hd)-0.1,max(hd)+0.1]); xlabel('n'); ylabel('hd(n)')set(gca,'XTickMode','manual','XTick',[0;M-1],'fontsize',10)subplot(2,2,2); stem(n,w_ham); title('Hamming Window');axis([-1,M,-0.1,1.1]); xlabel('n'); ylabel('w_ham(n)')set(gca,'XTickMode','manual','XTick',[0;M-1],'fontsize',10)set(gca,'YTickMode','manual','YTick',[0;1],'fontsize',10)subplot(2,2,3); stem(n,h); title('Actual Impulse Response: Bandpass');axis([-1,M,min(hd)-0.1,max(hd)+0.1]); xlabel('n'); ylabel('h(n)')set(gca,'XTickMode','manual','XTick',[0;M-1],'fontsize',10)subplot(2,2,4); plot(w/pi,db); title('Magnitude Response in dB');axis([0,1,-As-30,5]); xlabel('frequency in pi units'); ylabel('Decibels')set(gca,'XTickMode','manual','XTick',[0;0.3;0.4;0.5;0.6;1])set(gca,'XTickLabelMode','manual','XTickLabels',['0';'0.3';'0.4';'0.5';'0.6';'1'],.'fontsize',10)set(gca,'TickMode','manual','YTick',[-50;0])set(gca,'YTickLabelMode','manual','YTickLabels',['-50';'0']);gridProblem 7Firstly, we use the given specifications of to design an analog lowpass IIR filter. spsAR,,?Secondly, we change the analog lowpass IIR filter into the analog highpass IIR filter. Thirdly, we change the analog highpass IIR filter into the digital highpass IIR filter. Answer to “Digital Signal Processing”Problem 1 (a). x1(n)={3,7,-2,-1,5,-8}, n1=-2:3 x2(n)={3,7,-2,-1,5,-8}, n2=1:6x3(n)={-8,5,-1,-2,7,3 }, n3=-2:3 [3 points](b) y(n)={14,9,-3,21,-11,-17,-5,-40,0}, n=-2:6 [3 points](c).MATLAB program:clear,close all;n=0:5; x=[3,7,-2,-1,5,-8];[x1,n1]=sigshift(x,n,-2); [x2,n2]=sigshift(x,n,1); [x3,n3]=sigfold(x,n); [x3,n3]=sigshift(x3,n3,3); [y1,yn1]=sigadd(2*x1,n1,x2,n2);[y1,yn1]=sigadd(y1,yn1,-x3,n3); [3 points]stem(yn1,y1);title('sequenceY(n)’) Problem 2 (a) 23456456()()430j jnnjjjjjjXexeee??????????????is periodic in with period 2 . [5 points]()je??(b) Matlab program:clear; close all;n = 0:6; x = [4,3,2,0,2,3,4];w = [0:1:100]*pi/100;X = x*exp(-j*n'*w); magX = abs(X); phaX = angle(X);% Magnitude Response Plotsubplot(2,1,1); plot(w/pi,magX);grid;xlabel('frequency in pi units'); ylabel('|X|');title('Magnitude Response');% Phase response plotsubplot(2,1,2); plot(w/pi,phaX*180/pi);grid;xlabel('frequency in pi units'); ylabel('Degrees');title('Phase Response'); axis([0,1,-180,180]) [5 points](c) Because the given sequence x (n)={4,3,2,0,2,3,4} (n=0,1,2,3,4,5,6) is symmetric about ,the phase response satisfied the condition 132N???()jHe??()jHe???so the phase response is a linear function in . [5 points](d) [5 points]sradfT3001.????(e) The difference of amplitude and magnitude response:Firstly, the amplitude response is a real function, and it may be both positive and negative. The magnitude response is always positive. Secondly, the phase response associated with the magnitude response is a discontinuous function. While the associated with the amplitude is a continuous linear function. [5 points]Problem 3 (a) Pole-zero plot – MATLAB script:b=[1,1,0];a=[1,0.5,-0.24];zplane(b,a)Figure : Pole-zero plot in Problem A2Because all the poles and zero are all in the unit circle,so the system is stable. [5 points](b) Difference equation representation.:;112())/(0.5.4)hzz?????After cross multiplying and inverse transforming; [5 points]()0.5().2()()ynynxn??(c) impulse response sequence h(n) using partial fraction representation:?11()0.18/(.).8/(0.3)hzzz?????[5 points]?)nnnu(d) MATLAB verification:(1) b=[1,1];a=[1,0.5,-0.24];[delta,n]=impseq(0,0,9)x=filter(b,a,delta)(2) n=[0:4];x=(-0.1818.*(-0.8).^n+1.1818.*(0.3).^n).*stepseq(0,0,9) [5 points]Problem 4 (a) figure 4.1 figure 4.2sequence x1(n) sequence x2 (n) The plots of x1(n) and x2(n) is shown in figure 4.1 and figure 4.2 [4 points](b) figure 4.3After calculate, we find circular convolution is equal when N is 7 or 8. [4 points](c)If circular convolution is equal to linear convolution ,the minimum N is m+n-1=7.The plots of circular convolution of x1(n) and x2(n) is shown in figure 4.3. [4 points](d) MATLAB program:clear,close all;n=0:7;m=0:6;l=0:3;x1=[1,-1,1,-1];x2=[3,1,1,3];figure,stem(l,x1),title('sequence x1'),box off;figure,stem(l,x2),title('sequence x2'),box off;%8-point circular convolutionx1_fft8=fft(x1,8);x2_fft8=fft(x2,8);y_fft8=x1_fft8.*x2_fft8;y8=real(ifft(y_fft8));figure,subplot(2,1,1),stem(n,y8),title('8-pointcircular convolution '),axis([0 7 -3 3]),box off;%7-point circular convolutionx1_fft7=fft(x1,7);x2_fft7=fft(x2,7);y_fft7=x1_fft7.*x2_fft7;y7=real(ifft(y_fft7));subplot(2,1,2),stem(m,y7),title('7-point circular convolution '),axis([0 7 -3 3]),box off; [4 points] Problem 5 (a) Block diagrams are shown as under:1z? 1z? 1z? 1z? 1z? 1z?1253521()xn ()yn[4 points][4 points]()xn()yn 1z? 1z? 1z?1z?1z?1z?1 2 5 3(b)The advantage of the linear-phase form:1. For frequency-selective filters, linear-phase structure is generally desirable to have a phase-response that is a linear function of frequency. 2. This structure requires 50% fewer multiplications than the direct form. [2 points] Problem 6 (a) we use Hamming window to design the bandpass filter because it can provide us attenuation exceed 50dB [5 points] (b) MATLAB verification:%% Specifications:ws1 = 0.3*pi; % lower stopband edgewp1 = 0.4*pi; % lower passband edgewp2 = 0.5*pi; % upper passband edgews2 = 0.6*pi; % upper stopband edgeRp = 0.5; % passband rippleAs = 50; % stopband attenuation%tr_width = min((wp1-ws1),(ws2-wp2));M = ceil(6.6*pi/tr_width); M = 2*floor(M/2)+1, % choose odd Mn = 0:M-1;w_ham = (hamming(M))';wc1 = (ws1+wp1)/2; wc2 = (ws2+wp2)/2;hd = ideal_lp(wc2,M)-ideal_lp(wc1,M);h = hd .* w_ham;[db,mag,pha,grd,w] = freqz_m(h,1);delta_w = pi/500;Asd = floor(-max(db([1:floor(ws1/delta_w)+1]))), % Actual AttnRpd = -min(db(ceil(wp1/delta_w)+1:floor(wp2/delta_w)+1)), % Actual passband ripple (5)%%% Filter Response Plotssubplot(2,2,1); stem(n,hd); title('Ideal Impulse Response: Bandpass');axis([-1,M,min(hd)-0.1,max(hd)+0.1]); xlabel('n'); ylabel('hd(n)')set(gca,'XTickMode','manual','XTick',[0;M-1],'fontsize',10)subplot(2,2,2); stem(n,w_ham); title('Hamming Window');axis([-1,M,-0.1,1.1]); xlabel('n'); ylabel('w_ham(n)')set(gca,'XTickMode','manual','XTick',[0;M-1],'fontsize',10)set(gca,'YTickMode','manual','YTick',[0;1],'fontsize',10)subplot(2,2,3); stem(n,h); title('Actual Impulse Response: Bandpass');axis([-1,M,min(hd)-0.1,max(hd)+0.1]); xlabel('n'); ylabel('h(n)')set(gca,'XTickMode','manual','XTick',[0;M-1],'fontsize',10)subplot(2,2,4); plot(w/pi,db); title('Magnitude Response in dB');axis([0,1,-As-30,5]); xlabel('frequency in pi units'); ylabel('Decibels')set(gca,'XTickMode','manual','XTick',[0;0.3;0.4;0.5;0.6;1])set(gca,'XTickLabelMode','manual','XTickLabels',['0';'0.3';'0.4';'0.5';'0.6';'1'],.'fontsize',10)set(gca,'TickMode','manual','YTick',[-50;0])set(gca,'YTickLabelMode','manual','YTickLabels',['-50';'0']);grid [10 points]Problem 7Firstly, we use the given specifications of to design an analog lowpass IIR spsAR,,?filter. Secondly, we change the analog lowpass IIR filter into the analog highpass IIR filte. Thirdly, we change the analog highpass IIR filter into the digital highpass IIR filte. [5 points]
收藏