FFT原理

FFT在通信领域有着很重要的地位,因为它运算快,易于硬件实现,例如OFDM符号的生成就可以直接利用FFT,今天我们就分析一下FFT的原理。

一、DFT复杂度
我们知道FFT是一种DFT的高效算法,称为快速傅立叶变换(fast Fourier transform)。那么为什么要有这种高效算法呢?就先从DFT说起。下面是DFT的公式:
在这里插入图片描述
式中
在这里插入图片描述
既然FFT是为了减小DFT的运算复杂度,那么咱们先分析DFT的运算复杂度。举一个简单的例子,假如采用N=3,采用的是BPSK调制,那么假设信号序列是101,经过BPSK调制之后,信号如下:
在这里插入图片描述
根据欧拉公式有:
在这里插入图片描述
其中N=3,所以对于k=0:
在这里插入图片描述
还有k=1和k=2时X(1)和X(2)。
从这个具体的例子中不难推导出DFT的运算复杂度,对于一个k值,需要进行4N次实数相乘和4N-2次实数相加,所以总共需要4N*N次相乘和N(4N-2)次相加,也就说它的复杂度是O(n^2)。

二、FFT推导
FFT方便处理长度N=2^M的情况,如果长度不是2的整数次幂的情况,则通过补零即可。
首先将x(n)分为奇偶两个序列之和:
在这里插入图片描述
则两个序列的长度都为N/2,则:
在这里插入图片描述
由于:
在这里插入图片描述
所以:
在这里插入图片描述
对于其中的X1(k)和X2(k),我们可以推导下面过程:
在这里插入图片描述
所以:
在这里插入图片描述
即:
我们把一个N点的DFT拆成了两个N/2的DFT。同理逐渐拆下去,直到2^m的DFT拆成m-1个2点DFT为止。就以8点DFT为例,可以拆成两个4点DFT:
在这里插入图片描述
然后继续可以拆成4个2点DFT:
在这里插入图片描述
这就是FFT的蝶形运算。

  • 5
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我就是你们要打的张小贱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值