DSP 第4章_0905.ppt

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DSP 第4章_0905

求出四点DFT实际上只需要一次复数乘法。 经过一次分解,可使运算量减少一半。   【例1】 将8点序列的DFT用基2时分FFT算法进行分解。  解 (1) 第一次分解。   将8点序列x(n)分解为两个4点序列x1(n)和x2(n),x1(n)为偶数序列,x2(n)为奇数序列,即     x1(n)={x(0),x(2),x(4),x(6)}     x2(n)={x(1),x(3),x(5),x(7)} 4点序列x1(n)和x2(n)分别做4点DFT得到X1(k)和X2(k),由X1(k)和X2(k)通过蝶形构造获得8点DFTX(k)。第一次分解的旋转因子为   (k=0,1,2,3),运算流图如图4.3.2所示。   3. 已知X(k)和Y(k)是两个N点实序列x(n)和y(n)的DFT, 希望从X(k)和Y(k)求x(n)和y(n), 为提高运算效率, 试设计用一次N点IFFT来完成的算法。    解: 因为x(n)和y(n)均为实序列, 所以, X(k)和Y(k)为共轭对称序列, jY(k)为共轭反对称序列。 可令X(k)和jY(k)分别作为复序列F(k)的共轭对称分量和共轭反对称分量, 即      F(k)=X(k)+jY(k)=Fep(k)+Fop(k) 计算一次N点IFFT得到      f(n)=IFFT[F(k)]=Re[f(n)]+j Im[f(n)]   解: 本题的解题思路就是DIT-FFT思想。   (1) 在时域分别抽取偶数和奇数点x(n), 得到两个N点实序列x1(n)和x2(n):    x1(n)=x(2n)   n=0, 1, …, N-1    x2(n)=x(2n+1) n=0, 1, …, N-1   根据DIT-FFT的思想, 只要求得x1(n)和x2(n)的N点DFT, 再经过简单的一级蝶形运算就可得到x(n)的2N点DFT。 因为x1(n)和x2(n)均为实序列, 所以根据DFT的共轭对称性, 可用一次N点FFT求得X1(k)和X2(k)。 具体方法如下:   这样, 通过一次N点IFFT计算就完成了计算2N点DFT。 当然还要进行由Y(k)求X1(k)、 X2(k)和X(k)的运算(运算量相对很少)。    (2) 与(1)相同, 设     x1(n)=x(2n)     n=0, 1, …, N-1     x2(n)=x(2n+1)    n=0, 1, …, N-1     X1(k)=DFT[x1(n)] k=0, 1, …, N-1     X2(k)=DFT[x2(n)] k=0, 1, …, N-1 则应满足关系式   x1n=ifft46(X1k, N) %调用ifft46函数计算X1k的IDFT   x2n=ifft46(X2k, N) %调用ifft46函数计算X2k的IDFT   x3n=ifft46(X3k, N) %调用ifft46函数计算X3k的IDFT   运行程序输出时域序列如下所示, 正是原序列x1n、 x2n和x3n。    x1n = 1 0 0 0 0 0 0 0   x2n = 1 1 1 1 1 1 1 1   x3n = 1 2 3 4 4 3 2 1 与本章有关的MATLAB文件 fft和ifft % to test fft.m dn ifft.m clear all; % 产生两个正弦信号加白噪声; N=256; f1=.1;f2=.2;fs=1; a1=5;a2=3; w=2*pi/fs; x=a1*sin(w*f1*(0:N-1))+a2*sin(w*f2*(0:N-1))+randn(1,N); % 应用FFT 求频谱; subplot(3,1,1); plot(x(1:N/4)); f=-0.5:1/N:0.5-1/N; X=fft(x); y=ifft(X); subplot(3,1,2); plot(f,fftshift(abs(X))); subplot(3,1,3); plot(real(y(1:N/4)));   解: 为了使用灵活方便, 将本题所给算法公式作

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档