N为组合数的FFT(任意基数的FFT算法).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
五. N为组合数的FFT(任意基数的FFT算法) 以P=3,Q=4, N=12为例 (1) 先将 x(n)通过 x(n1Q+n0)改写成 x(n1,n0)。因为 Q=4, n1=0,1,2, n0=0,1,2,3,故输入是按自然顺序的,即 x(0,0)=x(0) x(0,1)=x(1) x(0,2)=x(2) x(0,3)=x(3) x(1,0)=x(4) x(1,1)=x(5) x(1,2)=x(6) x(1,3)=x(7) x(2,0)=x(8) x(2,1)=x(9) x(2,2)=x(10) x(2,3)=x(11) (2) 求Q个P点的DFT (3)X1(k0,n0)乘以得到X1′(k0,n0)。 (4)求P个Q点的DFT,参变量是k0 (1)求Q个P点DFT需要QP2次复数乘法和Q·P·(P-1)次复数加法; (2)乘N个W因子需要N次复数乘法; (3)求P个Q点DFT需要PQ2 次复数乘法和P·Q(Q-1)次复数加法。 总的复数乘法量: QP2+N+PQ2=N(P+Q+1); 总的复数加法量: Q·P(P-1)+P·Q·(Q-1)=N(P+Q-2) 当组合数 N=P1P2P3…Pm中所有的Pi均为4时,就是基四FFT算法 以N=43为例,第一级运算的一般形式为: 6、Chirp-z变换 算法原理: Chirp-z变换的实现步骤 (1)选择一个最小的整数L,使其满足L=N+M-1,同时满足L=2m ,以便采用基-2FFT算法。 (2)将 补上零值点,变为L点的序列。 (3)形成L点序列h(n),为 (4)G(k)=FFT[ g(n)] , L点 (5)Y(k)=G(k)H(k), L点 (6)y(n)=IFFT[Y(k)] , L点 (7) , 0≤k≤M-1 Chirp-z变换的特点: * * 以上讨论的都是以2为基数的FFT算法,即N=2M,这种情况实际上使用得最多。 优点:程序简单,效率高,使用方便。 实际应用时,有限长序列的长度N很大程度上由人为因素确定,因此多数场合可取 N=2M,从而直接使用以 2 为基数的FFT算法。 如N不能人为确定 , N的数值也不是以2为基数的整数次方,处理方法有两种: ① 补零: 将x(n)补零 , 使N=2M. 例如N=30,补上x(30)=x(31)=0两点,使N=32=25,这样可直接采用以2为基数M=5的FFT程序。 有限长度序列补零后并不影响其频谱 X(ejw) ,只是频谱的采样点数增加了,上例中由30点增加到32点,所以在许多场合这种处理是可接受的。 ② 如要求准确的N点DFT值,可采用任意数为基数的 FFT 算法 , 其 计算效率低于以2为基数FFT算法。 如 N 为复合数,可分解为两个整数p与q的乘积,像前面以2为基数时一样,FFT的基本思想是将DFT的运算尽量分小,因此,在N=pq情况下,也希望将N点的DFT分解为p个q点DFT或q个p点DFT,以减少计算量。 步骤: 分别为0, 1,…,Q-1; 分别为0, 1,…,P-1。 N点DFT可以重新写成为 考虑到 再令 令 (5)将X2(k0,k1)通过X(k0+k1P)恢复为X(k) N=12为组合数时的FFT 上述分解原则可推广至任意基数的更加复杂的情况。 例如, 如果N可分解为m个质数因子p1,p2,…,pm,即 N=p1p2p3…pm 则 第一步:可把N先分解为两个因子N=p1q1,其中q1=p2p3…pm ,并用上述讨论的方法将DFT分解为p1个q1点DFT; 第二步:将q1分解为q1=p2q2,q2=p3p4…pm,然后将每个q1 点DFT再分解为p2个q2点DFT; : : 依此类推, : 通过m次分解,一直分到最少点数的DFT运算,从而获得最高的运算效率。其运算量近似为N(p1+p2+…+pm)次复数乘法和复数加法。 但计算效率的提高是要以编程的复杂性为代价的,一般较少应用。 p1=p2 = …=pm =2,为基2 FFT 算法。 采用FFT可以算出全部N点DFT值,即z

文档评论(0)

zhuliyan1314 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档