文档库 最新最全的文档下载
当前位置:文档库 › 数字信号处理第四章

数字信号处理第四章

数字信号处理第四章
数字信号处理第四章

第四章线性时不变离散时间系统的频域分析

一、传输函数和频率响应

例4.1传输函数分析

Q4.1

clear;

M = input('Enter the filter lengthM: ');

w = 0:2*pi/1023:2*pi;

num = (1/M)*ones(1,M);

den = [1];

h = freqz(num,den, w);

subplot(2,1,1)

plot(w/pi,abs(h));grid

title('Magnitude Spectrum |H(e^{j\omega})|')

xlabel('\omega /\pi');

ylabel('Amplitude');

subplot(2,1,2)

plot(w/pi,angle(h));grid

title('Phase Spectrum arg[H(e^{j\omega})]')

xlabel('\omega/\pi');

ylabel('Phase in radians');

M=2M=10M=15

幅度谱为偶对称,相位谱为奇对称,这是一个低通滤波器。M越大,通带越窄且过渡带越陡峭。

Q4.2使用修改后的程序P3.1,计算并画出当w=[0,pi]时传输函数

的因果线性时不变离散时间系统的频率响应。它表示哪种类型的滤波器?

w = 0:pi/511:pi;

num =[0.15 0 -0.15];

den = [1 -0.50.7];

如下图1这是一个带通滤波器。

图1图2

Q4.3对下面的传输函数重做习题Q4.2:,式(4.36)和式(4.37)给出的两个滤波器之间的区别是什么?你将选择哪一个滤波器来滤波,为什么?

w = 0:pi/511:pi;

num = [0.15 0 -0.15];

den = [0.7 -0.5 1];

如上图2也是一个带通滤波器,这两个滤波器的幅度谱是一样的,相位谱不太一样,我会选择第一个带通滤波器,因为它的相位谱更加平滑,相位失真小。

Q4.4 使用MATLAB计算并画出当w=[0,pi]时因果线性时不变离散时间系统的群延迟。

系统的传输函数为。

clf;

w =0:pi/511:pi;

num = [1 -1.21];

den = [1 -1.3 1.04 -0.222];

h= grpdelay(num,den,w);

plot(w/pi,h);

xlabel('w/pi');

ylabel('群延迟');

Q4.5使用Q3.50中编写的程序,分别计算并画出式(4.36)和式(4.37)确定的两个滤波器的冲激响应中的前一百个样本。讨论你的结果。

clf;

num = [0.15 0 -0.15];

den = [0.7 -0.5 1];

L = input('输入样本数 L: ');

[g t]= impz(num,den,L);

stem(t,g);

title(['前 ',num2str(L),' 脉冲响应的样本']);

xlabel('时间序号n');

ylabel('h[n]');

(4.36)式(4.37)式

由图可知:这些情节由impz给生成的因果的脉冲响应实现的H(z)。我们观察到Q4.3因果滤波器与H(z)在(4.36)稳定,这意味着H[n]是绝对可和,我们看到交替和指数衰减的脉冲响应。在另一方面,因果编档人员与H(z)在(4.37)极点以外的单位圆,是不稳定的。不足为奇的是,相应的h[n]上图显示与n指数增长。

Q4.6 传输函数的极零点图同样能分析线性时不变离散时间系统的性质。使用命令zplane可以很容易地得到系统的极零点图。使用zplane分别生成式(4.36)和式(4.37)确定的两个滤波器的极零点图。讨论你的结果。

clf;

num = [0.15 0 -0.15];

den=[1 -0.50.7];

[z p k]= tf2zpk(num,den);

disp('Zeros:');

disp(z);

disp('Poles:');

disp(p);

input('Hit

[sos k] = zp2sos(z,p,k)

input('Hit tocontinue...');

zplane(z,p);

式(4.36)

式(4.37)

由图可知:过滤器在(4.36)在单位圆和两极因此它的因果实现稳定;较低的图显示过滤器

(4.37)极点在单位圆外,其因果关系的实现是不稳定的。

二、传输函数的类型

例4.2滤波器

Q4.7

clf;

fc = 0.25;

n= [-6.5:1:6.5];

y = 2*fc*sinc(2*fc*n);k = n+6.5;

stem(k,y);title('N= 14');axis([013 -0.2 0.6]);

xlabel('Time index n');

ylabel('Amplitude');

grid;

图1 图2

如图1低通有限冲激滤波器的长度为14,决定滤波器长度的语句为n = [-6.5:1:6.5],而控制截止频率的参数是fc = 0.25。

Q4.8

fc = 0.45;

n =[-9.5:1:9.5];

y = 2*fc*sinc(2*fc*n);k =n+9.5;

stem(k,y);title('N = 20');axis([0 19 -0.2 0.7]);

xlabel('Time index n');

ylabel('Amplitude');

grid;

修改参数fc和n,得到如上图2,可知低通有限冲激滤波器的长度变为20.

Q4.9

clf;

fc = 0.65;

n = [-7.0:1:7.0];

y = 2*fc*sinc(2*fc*n);k = n+7.0;

stem(k,y);title('N = 14');axis([0 14 -0.4 1.4]);

xlabel('Time index n');

ylabel('Amplitude');

grid;

Q4.10

clear;

N= input('Enterthe filtertimeshift N: ');

No2 = N/2;fc = 0.25;n = [-No2:1:No2];

y = 2*fc*sinc(2*fc*n);w = 0:pi/511:pi;h = freqz(y, [1], w); plot(w/pi,abs(h));

grid;

title(strcat('|H(e^{j\omega})|, N=',num2str(N)));

xlabel('\omega /\pi');

ylabel('Amplitude');

上图依次分别为N=5,10,30,100的四幅图,从这四幅图可以看出随着阶数N的增大,低通滤波器的过渡带越来越窄,阻带衰减越来越快,滤波器越来越接近理想低通滤波器。

Q4.11

clf;

M = 2;

num = ones(1,M)/M;

[g,w] = gain(num,1);

plot(w/pi,g);grid

axis([0 1 -50 0.5])

xlabel('\omega /\pi');ylabel('Gain in dB');

title(['M = ',num2str(M)])

可以验证3dB截止频率在π/2处。

Q4.12

clear;

K = input('Enter the number of sections K: ');

Hz = [1];

for i=1:K;

Hz =conv(Hz,[1 1]);

end;

Hz=(0.5)^K * Hz;

[g,w]= gain(Hz,1);

ThreedB= -3*ones(1,length(g));

t1 = 2*acos((0.5)^(1/(2*K)))*ones(1,512)/pi;

t2 = -50:50.5/511:0.5;

plot(w/pi,g,w/pi,ThreedB,t1,t2);grid;

axis([01 -50 0.5])

xlabel('\omega /\pi');ylabel('Gain in dB');

title(['K = ',num2str(K),'; Theoretical \omega_{c} = ',num2str (t1(1))]);

Q4.13

clear;

M = input('Enter the filterlength M: ');

n = 0:M-1;

num = (-1).^n .* ones(1,M)/M;

[g,w] = gain(num,1);

plot(w/pi,g);grid;

axis([0 1 -50 0.5]);

xlabel('\omega /\pi');ylabel('Gain in dB');

title(['M = ', num2str(M)]);

其3dB截止频率约为0.82pi

Q4.14 设计一个在0.45pi处具有3dB截止频率wc的一阶无限冲激响应低通滤波器和一阶无限冲激响应高通滤波器。用MATLAB计算并画出它们的增益响应,验证设计的滤波器是否满足指标。用MATLAB证明两个滤波器是全通互补和功率互补的。

Q4.15级联10个式(4.15)所示一阶无限冲激响应低通滤波器,设计一个在0.3pi处具有3dB截止频率wc的无限冲激响应低通滤波器。把它与一个具有相同截止频率的一阶无限冲激响应低通滤波器的增益响应作比较。

Q4.16 设计一个中心频率wo在0.61pi处、3dB带宽为0.51pi的二阶无限冲激响应带通滤波器。由于式(4.20)是α的二次方程,为了产生相同的3dB带宽,参数α将有两个数值,得到的传输函数HBP(z)也会有两个不同的表达式。使用函数zplane可产生两个传输函数的极零点图,从中可以选择一个稳定的传输函数。用MATLAB计算并画出你所设计的滤波器的增益响应,并验证它确实满足给定的条件。用设计的稳定无限冲激响应带通滤波器的传输函数的参数α和β,生成一个二阶无限冲激响应带阻滤波器的传输函数HBS(z)。用MATLAB证明HBP(z)和HBS(z)都是全通互补和功率互补的。

数字信号处理第四章附加题

第四章附加题 1. 由三阶巴特沃思低通滤波器的幅度平方函数推到其系统函数,设 1/c rad s Ω=。 2. 设计一个满足下列指标的模拟Butterworth 低通滤波器,要求通带的截止频率 6,p f kH z =,通带最大衰减3,p A dB =,阻带截止频率12,s f kH z =,阻带的最 小衰减25s A dB =,求出滤波器的系统函数。 3. 设计一个模拟切比雪夫低通滤波器,要求通带的截止频率 f p =3kHz ,通带衰 减要不大于0.2dB ,阻带截止频率 f s = 12kHz ,阻带衰减不小于 50dB 。 4. 数字滤波器经常以下图描述的方式来处理限带模拟信号。 (1) 如果系统()h n 的截止频率是rad s π,110T kHz =,等效模拟滤波器的截止频率是多少? (2) 设120T kHz =,重复(1)。 ( ) () () () () () () T T a x t x n y n y t a h n ???→ ???→ ???→ ???→ 模-数变换器 数-模变换器 采样周期采样周期 5. 一个线性时不变因果系统由下列差分方程描述 ()()()()10.51y n x n x n y n =---- (1) 系统函数()H Z ,判断系统属于FIR 和IIR 中的哪一类以及它的滤波特性(低通、高通等)。 (2) 若输入()()2cos 0.55x n n π=+ ()0n ≥,求系统输出信号达到稳态后的最大幅度値。 6. 设()a h t 表示一模拟滤波器的单位冲激响应, ()0.9,0 0,0 t a e t h t t -?≥=?

DSP第四章节

四、该应用的软件设计 1、系统初始化程序设计 DSP系统的硬件设计之后,软件设计就成为系统设计的关键,一个DSP系统在很大程度上取决于软件设计是否合理与可靠。在DSP进行数字滤波运算前必须进行一些初始化程序。在本系统中初始化程序主要包括:DSP芯片的初始化、矢量表初始和两个串行端口的初始化。 DSP芯片的初始化是设定DSP芯片工作状态的重要步骤,只有正确进行DSP芯片的初始化,才能保证芯片的正确运行。 中断矢量表是每个DSP系统必须用到的,对中断矢量表进行初始化是DSP初始化的一个重要的组成部分,正确设置中断矢量包括: 1)根据DSP芯片对各中断矢量的设置位置编写一个子程序。 2)设置PMST控制寄存器。该寄存器的高9位是IPTR,用于设置矢量表的起始地址。 3)连接时将矢量表重定位到IPTR指定的地址。 2、数字滤波程序设计流程 DSP实现数字滤波器流程图 本设计的程序工程中包含4个文件:filter,init.asm,vectors.asm,filter.cmd。四个文件实现不同的功能。filter.c文件为C语言编写的源文件,在本设计中主要功能是将各个子程序结合起来,便于阅读。init.asm文件为汇编语言编写的源文件,是本设计中的主要文件,

包含了各个初始化程序的具体操作和实现数字滤波的具体代码。vectors.asm文件为中断矢量表初始化子程序文件,中断矢量表是每个DSP系统必须用到的,对中断矢量表进行初始化是DSP初始化的一个重要的部分。filter.cmd为链接器命令文件。 3、软硬件联调与结论 进行软硬件联调是系统设计的最后一步,是检测系统的稳定性及可行性的重要方法。本系统的联调过程和实际结果如下:①在电脑中设置本系统软件开发环境的相关配置,连接DSP 仿真器与目标测试系统的JTAG接口,给系统上电。运行DSP开发平台,如果不能正常连接则需要检查JTAG电路的连接、整个硬件系统的工作状态、软件平台的配置。②编译修改程序代码,直到编译完全通过,本系统前期所设计的程序全部通过编译。③下载程序到目标系统,通过设置断点和单步运行,检查DSP相关寄存器的值是否配置为所需要的值。④运行完整的程序,给系统送入输入信号,用示波器观察输出信号的参数和特性是接近理想值。通过实际不断调试与改进,本系统能达到预期的数字滤波效果。

相关文档