FFT算法介绍.ppt

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

(0)=A0(0) A1(0) A2(0) A3(0)=X(0) (4)=A0(1) A1(1) A2(1) A3(1)=X(1) (2)=A0(2) A3(2)=X(2) (6)=A0(3) A3(3)=X(3) (1)=A0(4) A1(4) A2(4) A3(4)=X(4) (5)=A0(5) A3(5)=X(5) (3)=A0(6) A3(6)=X(6) (7)=A0(7) A1(7) A2(7) A3(7)=X(7) W W W W N 0 N 0 N 0 N -1 -1 -1 -1 W W W W N 0 N 2 N 0 N 2 -1 -1 -1 -1 W W W W N N N N 0 1 2 3 . . . . . . . . . . . 原位运算的图示 输入数据、中间运算结果和最后输出均用同一存储器。 L=1 L=2 L=3 W 0 L=1 L=3 W N 0 W W N 0 -1 -1 开始时,输入序列的N个数放于此N个存储器内,倒序重排后仍存于这N个存储器中,每一次迭代运算后的结果也仍然存于这N个存储器中,整个运算完成后,这N个存储器中即为所求的频谱序列X(k) (k = 0、1、…..、 N-1)。这就是所谓的同址计算,这样可以大大节约存储元件。 N点DIT―FFT运算流图中,每级都有N/2个蝶形。每个蝶形都要乘以因子WpN,称其为旋转因子,p称为旋转因子的指数。 2)旋转引子的变化规律 3)蝶形运算规律 对N = 2M点FFT,输入倒位序,输出自然顺序, 设第L级运算每个蝶形的两节点距离为 B行,则 第L级运算: 旋转因子的确定仅与指数P有关,当L一定时J可以确定,进而可以确定指数P。对于同一P,参与本级蝶形运算的次数为 ,每级第一次调用 的蝶形结第一个输入节点的位置为J,第二次调用 的蝶形结第一个输入节点的位置为J+2L,即以2L为步进,搜索下一蝶形运算第一个输入节点的位置。以此类推,直至做完 个蝶形运算。 同一级中,同一P的蝶形计算完成后,计算下一个P值对应的蝶形运算,直至完成本级所有蝶形运算。 DIT-FFT原位计算步骤 1.确定L; 2.求出第L级的 个 ; 3.对每一个 完成其所参与的 个蝶形运算, 4. 重复步骤1~3完成M级蝶形运算。 以2L为步进参与本级同一旋转因子对应的其他蝶形运算 作为练习请写出L=3时的运算过程。 4) 编程思想及程序框图 在一般情况下,进行FFT运算的序列至少都有几百点的长度,因此需要编制FFT算法程序以便能够利用计算机来快速进行计算。输入倒位序,输出顺序的DIT-FFT的编程思想, N必须等于2的正整数幂,FFT的计算程序可以分为两部分:一部分是倒序重排,另一部分是用三层嵌套的循环来完成M=log2N次迭代。 三层循环的功能是:最里的一层循环完成相同WNP 的蝶形运算,中间的一层循环完成因子WNP的变化,而最外的一层循环则是完成M次迭代过程。 循环L 确定输入数据所在的位置,循环J L、P、B确定后进行蝶形计算 5) 序列的倒序 由DIT-FFT的规律可知,输出X(k)按正常顺序排列在存储单元,而输入是按顺序: 这种顺序称作倒位序,即二进制数 倒位。在编程时需完成倒位序,才能执 行原位计算。 n =0 0 n =1 0 n =0 1 n =1 1 n =0 1 n =1 1 0 1 0 1 0 1 0 1 (n2) x(000) 0 x(100) 4 x(010) 2 x(110) 6 x(001) 1 x(101) 5 x(011) 3 x(111) 7 (偶) (奇) 倒位序由奇偶分组造成,以N=8为例 说明如下: 0 0 0 0 0 0 0 0 1 0 0 1 1 0 0 4 2 0 1 0 0 1 0 2 3 0 1 1

文档评论(0)

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

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

1亿VIP精品文档

相关文档