ch3离散傅立叶变换快速算法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第3章 离散傅里叶变换快速算法(FFT)
问题的提出
4点序列{2,3,3,2} DFT 的计算复杂度
1,1,0,][][1
0-==∑-=N m W k x m X km
N N k
102332]0[0000=+++=N N N N W W W W X j W W W W X N N N N --=+++=12332]1[3210 02332]2[6420=+++=N N N N W W W W X j W W W W X N N N N +-=+++=12332]3[9630
复数加法N (N -1) 复数乘法N 2 如何提高DFT 的运算效率? 解决问题的思路
1. 将长序列DFT 分解为短序列的DFT
2. 利用旋转因子 的周期性、对称性、可约性。
旋转因子km
N W 的性质
1)周期性
km
N
N m k N m N k N W W W ==++)()( 2) 对称性
mk
N
N
mk N
W W -=+
2
()mk N km N W W -*
= 3)可约性
nmk
nN
mk N W W = 为整数n N W W n
m k n N m k N /,
//= 解决问题的方法
将时域序列逐次分解为一组子序列,利用旋转因子的特性, 由子序列的DFT 来实现整个序列的DFT 。 基2时间抽取(Decimation in time)FFT 算法
12,1,0]
12[]2[][-=⎩⎨⎧+→N r r x r x k x
基2频率抽取(Decimation in frequency)FFT 算法
⎩⎨
⎧+→]
12[]
2[][m X m X m X
基2时间抽取FFT 算法流图 N =2 x [k ]={x [0], x [1]}
]1[]0[]0[02x W x X +=
]1[]0[]1[12x W x X +=]1[]0[02x W x -=
1,0],[][][241=+=m m X W m X m X m 1,0],[][]2[241=-=+m m X W m X m X m
4点基2时间抽取FFT 算法流图
x [0]x [2]x [1]x [3]
X 1[0]
X 1[1]X 2[0]
X 2[1]
2点DFT 2点DFT
-1
-1
-1
-1
4W 1
4W 0
2W 0
2W X [0]X [1]
X [2]X [3]
4点基2时间抽取FFT 算法流图
3,2,1,0],[][][281=+=m m X W m X m X m 3,2,1,0],[][]4[281=-=+m m X W m X m X m
]0[x ]
1[x ]
0[X ]
1[X x [0]x [2]
x [1]x [3]X [0]X [2]
X [1]
X [3]
8点基2时间抽取FFT 算法流图
4点DFT
4点DFT
x [0]x [2]x [4]x [6]x [1]x [3]x [5]x [7]
X 1[0]X 1[1]
X 1[2]X 1[3]X 2[0]X 2[1]
X 2[2]X 2[3]X [0]X [1]X [2]X [3]
X [4]X [5]X [6]X [7]
-1-1-1-1
08W 1
8W 28W 3
8W
8点基2时间抽取FFT 算法流图
X [0]X [1]X [2]X [3]
X [4]X [5]X [6]X [7]
3.1 基2时间抽取FFT 算法
x x x x X [0]
X [2]X [1]
X [3]
x x x x X [0]X [2]X [1]X [3]
算法的计算复杂度
复乘次数
N
基2时间抽取FFT 算法流图
x
x x x X [0]
X [2]X [1]
X [3]
x x x x X [0]X [2]X [1]X [3]
FFT 算法流图旋转因子P N W 规律
第一级的蝶形系数均为0
N W ,蝶形节点的距离为1。 第二级的蝶形系数为4/0,N N N W W ,蝶形节点的距离为2。
第三级的蝶形系数为8/38/28/0,,,N N N N N N N W W W W ,蝶形节点的距离为4。 第M 级 的蝶形系数为)12/(10,,,-N N
N N W W W ,蝶形节点的距离为N /2。
倒序
k 0k 1k 2x [k 2 k 1k 0]
x [000]x [100]x [010]0
1
1
1]
12 x [k k 0]
x [k 2 k 10
1
x [110]x [001]x [101]x [011]x [111]01
01
01
1
3.2 基2频率抽取FFT 算法
mk
N
N N k mk N
N k W k x W
k x m X ][][][1
2
/1
2/0
∑
∑
-=-=+
=
)
2/(1
2/0
1
2/0
]2/[][N k m N
N k mk
N
N k W N k x W
k x +-=-=++
=
∑
∑
()
mk
N
m
N k W N k x k x ]2/[)
1(][1
2/0
+-+=
∑-= ()rk N N k W
N k x k x r X 2
/1
2/0]2/[][]2[++=
∑-=
()rk N k N
N k W
W N k x k x r X 2
/1
2/0
]2/[][]12[+-=
+∑-=
()rk N N k W
N k x k x r X 2
/1
2/0]2/[][]2[++=
∑-= 12/1,0-=N r
()rk N k N
N k W
W N k x k x r X 2
/1
2/0
]2/[][]12[+-=
+∑-=