dif-fft
TRANSCRIPT
![Page 1: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/1.jpg)
DIF-FFT
Presented by :Aleem Alsanbani
Saleem Almaqashi
![Page 2: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/2.jpg)
Fast Fourier Transform FFT
- A fast Fourier transform (FFT) is an efficient algorithm to compute the discrete Fourier transform (DFT) and inverse of DFT.
- There are many FFT algorithms which involves a wide range of mathematics,. A Discrete Fourier transform decomposes a sequence of values into components of different frequencies.
- This operation is very useful in many fields but computing it directly from the definition is often too slow to be practical .
![Page 3: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/3.jpg)
Cont ..
• FFT are special algorithms for speedier implementation of DFT.
• FFT requires a smaller number of arithmetic operations such as multiplications and additions than DFT.
• FFT also requires lesser computational time than DFT .
![Page 4: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/4.jpg)
Fast Fourier Transform Algorithms
• Direct computation of the DFT is less efficient because it does not exploit the properties of symmetry and periodicity of the phase factor WN = e-j2π/N .
• These properties are:
- Symmetry property.
- Periodicity property.
• As we already know that all computationally efficient algorithms for DFT are collectively known as FFT Algorithms and these algorithms exploit the above two properties of phase factor, WN.
![Page 5: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/5.jpg)
FFT Algorithms Classification Based On Decimation
• Another classification of FFT algorithms based on Decimation of s(n) :r S(K). Decimation means decomposition into decimal parts. On the basis of decimation process, FFT algorithms are of two types:
• 1. Decimation-in-Time FFT algorithms.
• 2. Decimation-in-Frequency FFT algorithms.
![Page 6: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/6.jpg)
Cont..
• Decimation-in-Time Algorithms: sequence s(n) will be broken up into odd numbered and even numbered subsequences.
• This algorithm was first proposed by Cooley and Tukey in 1965.
• Decimation-in-Frequency Algorithms. the sequence s(n) will be. Broken up into two equal halves.
• This algorithm was first proposed by Gentlemen and Sande in 1966.
• Computation reduction factor of FFT algorithms .• Number of computations required for direct DFT / Number of
computations required for FFT algorithm
• = N2 / N / 2 log2 (N)
![Page 7: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/7.jpg)
decimation-in-frequency FFT algorithm
• In decimation-in-frequency FFT algorithm, the output DFT sequence S(K) is broken into smaller and smaller subsequences. For the derivation of this algorithm, the number of points or samples in a given sequence should be N = 2r where r > 0. For this purpose, we can first-divide the input sequence into the first-half and the second-half of the points.
• Flow graph of complete decimation-in-frequency (DIF) decomposition of an N-point DFT computation (N = 8).
![Page 8: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/8.jpg)
Steps for Computation of Decimation in Frequency FFT Algorithm
• Given below are the important steps for the computation of DIF FFT algorithms.
• 1. Data shuffling is not required but whole sequence is divided in two parts: first half and second half. From these we calculate g(n) and h(n) as follows:
• g(n) = s(n) +s(n+N/2 )
• and h(n) = s(n)-s(n+N/2 )
• where n = 0, 1, ..., N/2 -1
Finally data shuffling is performed. It is also performed by Bit reversal.
![Page 9: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/9.jpg)
Number Of Complex Multiplications Required In DIF- FFT Algorithm
• Number of complex multiplications required in decimation-m-. FFT algorithm are the same as that required in decimation-in-time FFT algorithm.
• Number of complex multiplication required in these DFT algorithms are N/2 log2iV, where N= 2r, r>0 and N is the total number of points (or samples) in a discrete-time sequence. Thus the total computations (number of multiplication and addition operations) are the same in both FFT algorithms.
• Now we will compare the computational complexity for the direct computation of the DFT and FFT algorithm. This comparison is given in Table
![Page 10: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/10.jpg)
Number Of Complex Multiplications Required In DIF- FFT Algorithm
No. of points"or samples)
in a sequences)n), N
Complexmultiplication
sin direct
computation of
DFT=NN =A
Complexmultiplication
sin FFT
algorithmsN/2 log2 N = B
SpeedimprovementFactor -A/B
22- 4 16 4 4.0=
23- 8 64 12 5.3=
24 - 16 256 32 8.0=
![Page 11: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/11.jpg)
First stage of the decimation-in-frequency FFT algorithm..
![Page 12: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/12.jpg)
![Page 13: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/13.jpg)
Alternate DIT FFT structures
• DIT structure with input natural, output bit-reversed (OSB 9.14):
![Page 14: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/14.jpg)
Alternate DIT FFT structures
• DIT structure with input bit-reversed, output natural
![Page 15: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/15.jpg)
Radix-2 Decimation-In-Frequency Solved Example Part1
• Example Find the DFT of the following discrete-time sequence .
• s(n) = {1, -1, -1, -1, 1, 1, 1, -1} using Radix-2 decimation-in-frequency FFT algorithm.
• Solution. The Twiddle factor or phase rotation factor WN= involved in the FFT calculation are found out as follows for N= 8.
![Page 16: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/16.jpg)
Example Part1
![Page 17: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/17.jpg)
Example Part1
![Page 18: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/18.jpg)
Radix-2 decimation-in-frequency Solved Example Part2
• Fig.Flow graph of Radix-2 decimation-in-frequency (DIF) FFT algorithm N = 8. In Radix-2 decimation-in-frequency (DIF) FFT algorithm, original sequence s(n) is decomposed into two subsequences as first half and second half of a sequence. There is no need of reordering (shuffling) the original sequence as in Radix-2 decimation-in-time (DIT) FFT algorithm. But resultant discrete frequency sequence is shuffled (reordered) into natural order because these are obtained in unnatural order. Flow graph of Radix-2 decimation-in-frequency (DIF) FFT algorithm for N= 8 is shown in Fig. Determination of DFT using Radix-2 DIF FFT algorithm requires three stages because the number of points in a given sequence is 8, i.e., = 2r — N — 8, where r is number of stages required = 3.
![Page 19: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/19.jpg)
Solv.Stage I : A0 = s(0) + s(4) = 1 + 1 = 2 A1 = s(l) + s(5) = -1 + 1 =0 A2 = s(2) + s(6) = -1 + 1 = 0 A3 = s(3) + s(7) = -1 - 1 = -2 A4 = [s(0)+(-1) s(4)] W8
0 = [1 + (-1) (1)] x 1 =0 A5 = [s(1) + (-1) s(5)]W8
1 = [-1 + (-1)(1)]((1-j) /√2= - √2(l - j) A6 = [s(2) + (-1) s(6)]W8
2 = [-1 + (-1) x 1] (- j) =2j
A7 = [s(3) + (-1) s(7)]W83 = [-1 + (-1)(-1)]{(-(1-j) /√2} = 0
![Page 20: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/20.jpg)
Solv….
S(K) = {S(0), S(l), S(2), S(3), S(4), S(5), S(6), S(6), S(7)}
Or S(X) = {0-√2+(2 + √2 )j, 2 -2j √2+(-2 + √2)j,4,
√2+ (2 - √2 )j,2 + 2j,- √2 -(2 + √2)7}
![Page 21: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/21.jpg)
21
Conclusions
• Radix 22, 24… Structure uses less adders and multipliers but still has good efficiency processing DIF DFT
• Common Factor Algorithm and Butterfly Structure enable this architecture to reuse its modules numerous times
![Page 22: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/22.jpg)
22
References
• [1],Shousheng He and Torkelson, M. “A new approach to pipeline FFT processor,” Proceedings of IPPS '96, 15-19, pp766 –770. April 1996
• [2] Alan V.Oppenheim, Ronald W. Schafer, “ Discrete-time signal processing “ 2nd edition
• [3] Zhangde Wang “INDEX MAPPING FOR ONE TO MULTI DIMENSIONS “Electronics Letters Publication Volume: 25, pp: 781-782 Jun 1989
• [4] He, S. & Torkelson, M., A systolic array implementation of common factor algorithm to compute DFT, Proc. Int. Symp. on Parallel Architectures, Algorithms and Networks, Kanazawa, Japan, pp. 374-381, 1994.
• [5]IJung-YeolOH and Myoung-Seob LIM , ‘Fast Fourier Transform Algorithm for Low-Power and Area-Efficient Implementation’EICETRANS.COMMUN.,VOL.E89–B, APRI
• [6]BURRUS, c. s.: 'Index mappings for multidimensional formulation of the DFT and convolution',IEEE Trans., 1977, ASSP-25, (6), pp. 239-242
![Page 23: DIF-FFT](https://reader033.vdocuments.us/reader033/viewer/2022061108/544f2093b1af9fb64d8b48ff/html5/thumbnails/23.jpg)
_________
_____
__