数字信号处理第4章讲解.ppt

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

第4章 快速傅里叶变换(FFT) ;4.1 引 言 DFT是数字信号分析与处理中的一种重要变换 直接计算N点DFT:与变换区间长度N的平方成正比 N较大时,计算量太大——难以进行实时处理 快速傅里叶变换FFT(Fast Fourier Transform) 高效计算DFT的算法 使DFT运算效率提高1~2个数量级;4.2 基2FFT算法 4.2.1 直接计算DFT的特点及减少运算量基本途径 一、直接计算DFT   有限长序列x(n)的N点DFT为                   x(n)为复数序列的一般情况: 计算X(k)的1个值: 需要 次复数乘法和 次复数加法; 计算X(k)的所有N个值: 共需N2次复数乘法和N(N-1)次复数加法运算 (N1时, N(N-1)= N2 )。;;2:利用  的周期性和对称性来减少DFT的运算次数;则x(n)的N点DFT为;而;由于X1(k)和X2(k)均以N/2为周期,且 ;图4.2.2 8点DFT一次时域抽取分解运算流图;?? 要完成一个蝶形运算,需要 和 运算 经过一次分解后,计算1个N点DFT共需要计算: 两个N/2点DFT; 计算N点DFT时: 总共需要的复数乘法次数为 ;因为N=2M,N/2仍然是偶数,可对N/2点DFT再作进一步分解。 同上,将x1(r)按奇偶分解成两个N/4点的子序列x3(l)和x4(l):;同理,X3(k)和X4(k)以N/4为周期, ,可得:;其中:;图4.2.3 8点DFT二次时域抽取分解运算流图;图4.2.4 8点DIT-FFT运算流图;4.2.3 DIT-FFT算法与直接计算DFT运算量的比较   由DIT-FFT算法的分解过程及图4.2.4可见,N=2M 时,其运算流图应有M级蝶形,每一级都由N/2个蝶形运算构成。因此,每一级运算都需要N/2次复数乘和N次复数加(每个蝶形需要两次复数加法)。所以,M级运算总共需要的复数乘次数为;而直接计算DFT的复数乘为N2次,复数加为N(N-1)次。当N1时,N2(N/2) lbN,所以,DIT-FFT算法比直接计算DFT的运算次数大大减少。例如,N=210=1024时, 这样,就使运算效率提高200多倍。图4.2.5为FFT算法和直接计算DFT所需复数乘法次数CM与变换点数N的关系曲线。由此图更加直观地看出FFT算法的优越性,显然,N越大时,优越性就越明显。;图4.2.5 DIT-FFT算法与直接计算DFT所需复数乘法次数的比较曲线;4.2.4 DIT-FFT的运算规律及编程思想   1. 原位计算 DIT-FFT的运算规律: (1) N=2M,共进行M级运算,每级由N/2个蝶形运算组成; (2) 同一级中,每个蝶形的两个输入数据只对该蝶形有用, 每个蝶形的输入、输出数据在一条水平线上 ——输入、输出可用同一存储单元 即:第一级:N个存储单元存储N个序列值x(n) M级蝶形运算后,该N个存储单元中依次存放X(k)的N个值 原位计算:利用同一存储单元存储蝶形计算输入、输出数据 ——可节省大量内存,从而使设备成本降低。;  2. 旋转因子的变化规律 旋转因子:N点DIT-FFT运算流图中,每个蝶形都要乘以因子  ,称其为旋转因子,p为旋转因子的指数。 各级旋转因子和循环方式都有所不同,需找出旋转因子        与运算级数的关系。 用L表示从左到右的运算级数(L=1,2,…,M)。;第L级共有2L-1个不同的旋转因子。N=23=8时的各级旋转因子:;;  3. 蝶形运算规律   设序列x(n)经时域抽选(倒序)后,按图4.2.4所示的次序(倒序)存入数组A中。如果蝶形运算的两个输入数据相距B个点,应用原位计算,则蝶形运算可表示成如下形式: 式中 下标L:第L级运算 AL(J):第L级运算后A(J)的值(第L级蝶形输出) AL-1(J):第L级运算前A(J)的值(第L级蝶形输入);  4. 编程思想及程序框图 归纳运算规律: 第L级中,每个蝶形的两个输入数据相距B=2L-1个点; 每级有B个不同的旋转因子; 同一旋转因子对应着间隔为2L点的2M-L个蝶形。 总结上述运算规律,可采用下述运算方法: (1) 从输入端(第1级)开始,逐级进行,共进行M级运算; (2) 进行第L级运算

文档评论(0)

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

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

1亿VIP精品文档

相关文档