Fast Fourier Transform (FFT)
Fast Fourier Transform (FFT)
𝑁 𝑘=0 𝑛=0
𝑘+ 𝑁 𝑘𝑛 𝑁
𝑊 𝑁 =𝑊 .𝑊 𝐴𝑠 𝑁 𝑁
02/26/2025 Dr Ajay Singh Raghuvanshi 5
FFT Algorithms
Note that two length N/2 DFTs take less computation than
one length N DFT: 2(N/2)2<N2
There are basically two types of FFT Algorithms and one
hardware implementation
Decimation in Time
Decimation in frequency
Hence
then
[
𝑿 𝒌+
𝑵
𝟐 ]
=𝑮 [ 𝒌 ] − 𝑾 𝒌𝑵 𝑯 [ 𝒌 ]
( 𝑁 /2 )−1 ( 𝑁 /2 )−1
𝑋 [2𝑟 ]= ∑ 𝑥 [𝑛 ]𝑊
2 𝑛𝑟
𝑁 +¿ ∑ 𝑥 [𝑛+( 𝑁 / 2)]𝑊
2 𝑟 (𝑛+( 𝑁 /2))
𝑁 ¿
𝑛=0 𝑛=0
Since 2𝑟 [𝑛 +( 𝑁 / 2) ] 2 𝑟𝑛 𝑟𝑁 2 𝑟𝑛
𝑊𝑁 =𝑊 𝑁 𝑊 𝑁 =𝑊 𝑁
2
and 𝑊 𝑁 =𝑊 𝑁 / 2
( 𝑁 /2 )−1
𝑋 [2𝑟 ]= ∑ (𝑥[𝑛]+𝑥[𝑛+(𝑁/2)])𝑊
𝑟𝑛
𝑁 /2 𝑟 =0 ,1,...,(𝑁/2)−1
𝑛=0
The above equation is the (N/2)-point DFT of the (N/2)-point sequence
obtained by adding the first and the last half of the input sequence.
Adding the two halves of the input sequence represents time aliasing,
consistent with the fact that in computing only the even-number
frequency samples, we are sub-sampling the Fourier transform of x[n].
We now consider obtaining the odd-numbered frequency points:
𝑁 −1 (𝑁 / 2)− 1 𝑁−1
𝑋 [2𝑟 +1]= ∑ 𝑥[𝑛]𝑊 ∑ ∑
𝑛(2𝑟 + 1) 𝑛(2𝑟 +1) 𝑛(2𝑟 +1)
𝑁 = 𝑥[𝑛]𝑊
𝑁 +¿ 𝑥[𝑛]𝑊 𝑁 ¿
𝑛=0 𝑛=0 𝑛=(𝑁 / 2)
Since
𝑁−1 (𝑁/2)−1
∑ 𝑥[ 𝑛 ]𝑊 =¿ ∑ 𝑛(2 𝑟+1)
𝑥[𝑛+(𝑁/
𝑁 2 )]𝑊
(𝑛+𝑁/2)(2𝑟+1)
𝑁 ¿
𝑛=𝑁/2 𝑛=0
We obtain
( 𝑁 /2 )−1
𝑋 [2𝑟 +1]= ∑ (𝑥 [𝑛]− 𝑥 [𝑛+𝑁 /2])𝑊
𝑛(2 𝑟 +1)
𝑁
𝑛=0
The decimation-in-frequency FFT algorithm also has the computation complexity of O(N
log2N)
Decimation-In-Frequency FFT Algorithm
Final flow graph for 8-point decimation in frequency
http://en.wikipedia.org/wiki/Rader's_FFT_algorithm
02/26/2025 Dr Ajay Singh Raghuvanshi 23