数字信号处理实验指导
- 格式:doc
- 大小:500.00 KB
- 文档页数:43
1 目 录 实验一 离散时间的信号和系统......................................... 2 实验二 离散时间傅立叶变换........................................... 4 实验三 离散傅立叶变换(DFT)........................................ 7 实验四 数字滤波器结构.............................................. 10 实验五 IIR数字滤波器的设计 ........................................ 13 实验六 FIR滤波器的设计——窗函数法和频率抽样设计法 ................ 18 实验七 语音处理系统仿真(综合滤波器设计).......................... 22 附录 自编函数...................................................... 23 2
实验一 离散时间的信号和系统 一、实验目的 1、复习离散时间的信号和系统,复习离散时间重要类型的信号和它们的运算的实现。 2、复习离散时间信号理论中一些重要的结果,它们在数字信号处理中很有用。 二、实验原理 1、典型序列 单位采样序列;单位阶跃序列;实数指数序列;复数指数序列; 正余弦序列;随机序列:MATLAB可用rand(1,N)和randn(1,N)来生成;周期序列。 2、序列的运算 信号加;信号乘;改变比例 ;移位;折叠:fliplr(x);取样和:sum(x(n1:n2)) 取样积:prod(x(n1:n2));信号能量:sum(abs(x)^2); 信号功率:sum(abs(x)^2)/length(x) 3、一些有用的结果 单位采样合成: 奇偶合成:
几何级数:
序列相关: 卷积运算:
kknkxnx)()()(
)()()(nxnxnxoe1||,110aaann对nyxllnynxlr称为移位),()()(,),(yxconv
MmNkkmknyamnxbny01)()()( 3
差分方程: 在Matlab中: 三、实验内容 1.典型序列的实现 单位阶跃序列;实数指数序列;复数指数序列;正余弦序列;随机序列用rand(1,N)和randn(1,N)来生成; 2.序列的运算 给定序列x1=[1 2 3 4 5 6 7 8 9], ns1=-4; x2=[9 8 7 6 5 4 3 2 1], ns2=4 求:1) x1+x2; 2) y3=x1×x2; 3) y1=0.5×x1+0.8×x2; 4) y2=0.3×x1(n)×δ(n-6)+0.8×δ(n-5)×x2(n); 5) x1和x2的反折序列; 6) x1(n)和x2(n)的功率; 7) y3=x1*x2 (线性卷积); 四、本实验用到的一些MATLAB函数 Stem(x,y),Plot(x,y): x轴和y轴均为线性刻度(Linear scale) Xlable (‘x’), Ylable(‘y’) Title(‘x’) axis([xmin,xmax,ymin,ymax]):调整图轴的范围 Subplot(x,y,z):同时画出数个小图形在同一视窗中。 Real(x):求复数x的实数部分; Imag(x):求复数x的虚数部分;
),,()(xabfilterny 4
Abs(x):求复数x的模; Angle(x):求复数x的相位; Conv(x,y):求x和y的卷积,注意下标是从1开始; Fliplr(x):信号反折; Fliter(b,a,x):差分方程的实现。 五、MATLAB编程和调试技巧 因为 MATLAB 语言是一种解释性语言,所以有时 MATLAB 程序的执行速度不是很理想。因此尽量避免使用循环,用向量化的运算来代替循环操作。 注意;的使用。 如果有的同学对MATLAB的使用不熟悉,请在老师处考取语言学习PPT。 六、实验报告的要求 实验目的; 实验原理; 实验内容:要求有程序,有图形(坐标要标识清楚)。 实验结论。
实验二 离散时间傅立叶变换 一、实验目的 1.复习离散时间傅立叶正反变换 2.复习DTFT的两个重要特性 3.复习DTFT的其它特性 5
4.离散LTI系统的频率响应 5.采样及重构信号 二、实验原理 1、信号的离散时间傅立叶变换(DTFT)
2、DTFT的两个重要特性 周期性:离散时间傅立叶变换是w的周期函数,其周期为2π。 对称性:对于实值的X(n),是共扼对称的。即实部为偶对称,虚部为奇对称。 3、DTFT的其他特性 线性; 时移、共扼、折叠、卷积、乘法、能量等; 4、LTI系统的频率响应
5、模拟信号的采样与重构 采样定理 重构: 步骤如下 (a)先把样本集转换成一个加权脉冲串列 (b)再将此脉冲串列通过一个带宽为F的低通滤波器进行滤波。
dweeXnxenxeXjwnjwnnjwnjw)(21)()()()]([)]([)]()([2121nxbFnxaFnbxnaxFnjwnjwenheH)()(
naTstFscnxtx)]([sin)()( 6
以上两个步骤可用插值公式来描述: 三、实验内容 1.求信号的离散时间傅立叶变换并分析其周期性和对称性; 给定正弦信号x(t)=2*cos(2*pi*10*t),fs=100HZ,求其DTFT。 2.用以下两个有限长序列来验证DTFT的线性、卷积和共轭特性; x1(n)=[1 2 3 4 5 6 7 8 9 10 11 12];x2(n)=R10(n) 3. 求LTI系统的频率响应 给定系统H(Z)=B(Z)/A(Z),A=[0.98777 -0.31183 0.0256] B=[0.98997 0.989 0.98997],求系统的幅频响应和相频响应。(要求使用filter(B,A,δ(n))求解。 4. 采样和频谱混叠 给定信号x(t)=100*exp(-100*t)*cos(2*pi*500*t),求该信号的频谱;当采样频率分别为fs1=2000HZ,fs2=1000HZ;fs3=500HZ; fs4=200HZ,时输出序列的DTFT。 四、本实验用到的函数 有限长序列的DTFT:dtft(x,n,w)(该函数需自己编写) 算法: nnjwnjwenxeX1)()(
)()2()1(*)(............)()()()()()2()()1()2()()2()2()2()1()1()()1()2()1()1()()2()1(nxxx
eeeeeeeeeeXeXeX
nnkjwnnjwnnjwnkjwnjwnjwnkjwnjwnjwkjwjwjw
7
用Matlab语言来实现: function [y]=dtft(x,n,w) y=x*(exp(-j).^(n'*w)); 五、实验报告的要求 实验目的; 实验原理; 实验内容:要求有程序,有图形(坐标要标识清楚)。 实验结论。
实验三 离散傅立叶变换(DFT) 一、实验目的 1.掌握离散傅立叶级数(DFS) 2.掌握DFT变换 3.掌握DFT性质 4.掌握利用DFT计算线性卷积 5.掌握快速傅立叶变换(FFT) 二、实验原理 1、离散傅立叶级数 DFS
10102)(~)(~)](~[)(~NnnkNNnnkNj
WnxenxnxDFSkX
8
IDFS 2、离散傅立叶变换(DFT) X(n)为有限长序列: DFT:
IDFT:
3、DFT的性质 线性性 循环折叠性 共轭性 时序列的对称性 序列的圆周移位 频域中的圆周移位 时域循环卷积 频域循环卷积 帕赛瓦尔定理 4、用DFT计算线性卷积 1)设x1(n)为N1点的序列,x2(n)为N2点的序列,则线性卷积的
10102)(~)(~1)](~[)(~NknkNNknkNj
WkXekXNkXIDFSnx
10102)()()]([)(NnnkNNnnkNj
WnxenxnxDFTkX
10102)()(1)]([)(NknkNNknkNj
WkXekXNkXIDFTnx