在进行DIT-FFT将N点序列DFT拆分成M次时需要应用到蝶形图,在这里我将详细的描述蝶形图该如何绘制
这里将有N=16点进行举例
①首先我们得得到初始时序序列的排序。即
x
(
0
−
15
)
x(0-15)
x(0−15)的时域序列的排序。
这里推荐使用二进制高位到低位进位法进行判决。
即从最高位开始加1,若最高位已经是1了向次高位进位,直到加满。
如:
那么我们已经明白该如何进行最初的时域序列的排序了,接下来可以先画上第一次的蝶形运算。
如图:
这时我们需要知道蝶形图的下脚的C为多少,这里引进一个公式(公式在这就不进行推导)
C
=
W
N
j
∗
2
M
−
L
(
L
为
第
L
层
蝶
形
运
算
j
=
0
,
1
,
…
2
L
−
1
)
C=W_N^{j*2^{M-L}}(L为第L层蝶形运算 j=0,1,…2^{L-1})
C=WNj∗2M−L(L为第L层蝶形运算j=0,1,…2L−1)
因此我们可以进行C的填充。
以此类推画完全部的蝶形图: