新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于TMS320LF2407的FFT算法的实现

基于TMS320LF2407的FFT算法的实现

作者:时间:2011-08-08来源:网络收藏

1 快速傅里叶变换的原理

本文引用地址:http://www.eepw.com.cn/article/150397.htm

  非周期性连续时间信号x(t)的傅里叶变换可以表示为

  式中计算出来的是信号x(t)的连续频谱。但是,在实际的控制系统中能够得到的是连续信号x(t)的离散采样值x(nT)。因此需要利用离散信号x(nT)来计算信号x(t)的频谱。

  有限长离散信号x(n),n=0,1,…,N-1的DFT定义为:

  可以看出,DFT需要计算大约N2次乘法和N2次加法。当N较大时,这个计算量是很大的。利用WN的对称性和周期性,将N点DFT分解为两个N/2点的 DFT,这样两个N/2点DFT总的计算量只是原来的一半,即(N/2)2+(N/2)2=N2/2,这样可以继续分解下去,将N/2再分解为N/4点 DFT等。对于N=2m 点的DFT都可以分解为2点的DFT,这样其计算量可以减少为(N/2)log2N次乘法和Nlog2N次加法。图1为与DFT-所需运算量与计算点数的关系曲线。由图可以明显看出的优越性。

FFT与DFT运算量与计算点数的关系

  将x(n)分解为偶数与奇数的两个序列之和,即

  x1(n)和x2(n)的长度都是N/2,x1(n)是偶数序列,x2(n)是奇数序列,则

  其中X1(k)和X2(k)分别为x1(n)和x2(n)的N/2点DFT。由于X1(k)和X2(k)均以N/2为周期,且WN k+N/2=-WN k,所以X(k)又可表示为:

  上式的运算可以用图2表示,根据其形状称之为蝶形运算。依此类推,经过m-1次分解,最后将N点DFT分解为N/2个两点DFT。图3为8点的分解流程。


8点FFT的分解流程图

  FFT的原理是通过许多小的更加容易进行的变换去大规模的变换,降低了运算要求,提高了与运算速度。FFT不是DFT的近似运算,它们完全是等效的。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭