- simplex_example
- Architecture of 64
- decimationintimeandfrequency-130117005655-phpapp01
- Fourier Theory
- DSP Practical File
- IV B.E. (Fire Technology)
- Vort Rag
- New DSP Manual (2)
- Lecture_1
- Lession Plan
- CSC380 Spring 2011 Syllabus
- 1410.0759v3
- USSD-2014_FEA of Dynamic Behavior of Large Dams
- syllabusbca
- DXP
- 4. Mathematics - IJMCAR - Numerical Solution of System of Second
- FEA Procedure
- rohan dsp
- Numerical solution for the flow over a stretchable disk
- 2 Differentiation Mod.ppt [Compatibility Mode]
- MatLab Commands
- Endgame Maths
- Torsion of a Non-Circular Bar.pdf
- Weighted Essentially Non-Oscillatory Schemes
- hmwrk2
- L13L14
- 26-784
- out iv
- Course Outline (1)
- Getting Started
- Assignment 2hgjgth
- 30March2016.pdf
- OpenMPLecture.ppt
- code for z
- Wavelet Introduction
- EE 524 _Course Outline_2016

Content

Introduction

Radix-2 DIT- FFT Algorithm

Radix-2 DIF- FFT Algorithm

M

.K

.B

hu

ya

n

The fast algorithm of IDFT

Introduction

•

Problems

**Although the DFT is a computable transform, the
**

straightforward implementation is very inefficient,

especially when the sequence length N is large.

N complex multiplications for each value of k.

(N-1) complex addition for each value of k.

N2 complex multiplications for N values of k.

N(N-1) complex additions for N values of k.

M

.K

.B

hu

ya

n

N 1

**X [k ] [(Re{x[n ]}Re{WNkn } Im{x[n ]Im{WNkn })
**

n 0

**j (Re{x[n ]}Im{WNkn } Im{x[n ]}Re{WNkn })],
**

k 0.1........, N 1

requires:

4 real multiplications and 2 real additions

.B

hu

ya

n

** Each complex addition requires two real additions.
**

4N real multiplications for each value of k

.K

W

M

kn

N

** (4N-2) real additions for each value of k.
**

That means 4N2 real multiplications and N(4N -2) real

additions are required for N different values of k

B hu ya n • Can the number of computations required be reduced? M Number of Multiplications Performance of the DFT Algorithm 8 9 10 .120 Number of Additions 120 100 80 60 40 20 100 80 60 40 20 0 0 0 1 2 3 4 5 6 7 8 9 0 10 1 2 3 4 5 6 7 Number of Samples Number of Samples .K .

B hu ya n . M .Introduction How to reduce the computational complexity In 1965. Cooley and Tukey showed a procedure to substantially reduce the amount of computations involved in the DFT. All these efficient algorithms are collectively known as Fast Fourier Transform (FFT) algorithms. Most of the computations can be eliminated using the symmetry and periodicity properties of DFT.K . This led to the explosion of applications of the DFT.

K 1 M W N/ 2 N n 2 N k N k N .Symmetry and Periodicity W exp( j 2k / N ) k N W ( k N/ 2 ) N W (k N ) N W W W WN / 2 ya .B hu .

FFT: Decimation-in-frequency FFT algorithm .Introduction FFT algorithm classification DIT .FFT: Decimation-in-time FFT algorithm M .B hu ya n DIF .K .

and odd-indexed samples.B hu ya n To synthesize the N spectra into a single frequency spectrum. separating the even.K .FFT Algorithm Radix-2: the sequence length N satisfied: L is an integer N 2 L How does DIT-FFT operate To decompose an N point time domain signal into N signals each containing a single point. M .Radix-2 DIT. To calculate the N frequency spectra corresponding to these N time domain signals. Each decomposing stage uses an interlace decomposition. .

FFT Algorithm 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 signals of 8 points 0 2 4 6 8 10 12 14 1 3 5 7 9 11 13 15 4 signals of 4 points 0 4 8 12 2 6 10 14 1 5 9 13 8 signals of 2 points 0 8 4 12 2 10 6 14 16 signals of 1 point 0 4 12 1 9 3 7 11 15 5 13 3 11 7 15 M .Radix-2 DIT. .K .B hu ya n 1 signal of 16 points 8 2 10 6 14 1 9 5 13 3 11 7 15 The frequency spectrum of a 1 point signal is equal to itself.

x 2 ( r ) x ( 2 r 1 ) .B N 1 2 x ( r )W r 0 2 rk N 2 N 1 2 x ( 2r 1)W r 0 rk N 2 N (k 0 ~ 1) 2 . 2 . 1 2 To compute the DFT of x1(r) and x2(r) x ( 2r )W n r 0 ya r 0 1 hu x ( r )W rk N 2 N 1 2 N (k 0 ~ 1) 2 rk N 2 X 2 (k ) M .Radix-2 DIT. r 0 .K X 1 (k ) N 1 2 .FFT Algorithm Algorithm principle To divide N-point sequence x(n) into two N/2-point sequence x1(r) and x2(r) N x 1 ( r ) x ( 2 r ).1 .

To compute the DFT of N-point sequence x(n) N 1 X ( k ) x ( n )W n0 n 0 ( even ) N 1 2 N 1 2 r 0 r 0 nk N N 1 x( n)W n 0 ( odd ) 2 rk ( 2 r 1 ) k x ( 2 r ) W x ( 2 r 1 ) W N N N 1 2 N 1 2 rk k rk x ( r ) W W x ( r ) W 1 N N 2 N X 1 ( k ) W Nk X 2 ( k ) r 0 n 2 ya r 0 .K nk N N 1 M nk N .2.B hu x( n)W 2 ( k 0.1. N 1) .

2 k N x1 ( r ) X 1 (k ) X (k ) x2 ( r ) M .K .B hu ya n x(n) X 2 (k ) .1.1. 2 N ( ) k N N N 2 X (k ) X 1 (k ) W N X 2 (k ) 2 2 2 N k X 1 (k ) W N X 2 (k ) 1) ( k 0.N 1) X ( k ) X 1 ( k ) W X 2 ( k ) ( k 0.

1) 2 There are 1 complex multiplication and 2 complex additions .K X 2 (k ) N ( k 0 .1.1. Butterfly computation flow graph X (k ) X 1 (k ) W X 2 (k ) k N N X ( k ) X 1 ( k ) W Nk X 2 ( k ) 2 X 1 ( k ) W Nk X 2 ( k ) X 1(k ) . 1) 2 N ( k 0 .B hu ya n W Nk 1 X 1 ( k ) W Nk X 2 ( k ) M .

X 1 (0) x1(0 ) x (0 ) X (1 ) X 1(2) X (2) DFT x1(3 ) x (6 ) X 1(3) x 2 ( 0 ) x (1 ) X 2 (0) W N0 x 2 (1 ) x ( 3 ) X 2 (1 ) W N1 X 2 (2) W N2 X 2 (3) W N3 x 2 (2 ) x (5 ) N/2point DFT .B hu ya n x 2 (3 ) x (7 ) X (3) .K x2 (r ) x1(2 ) x (4 ) X 1 (1 ) M x1 (r ) x 1 (1 ) x ( 2 ) N/2point X (0 ) N-point DFT 1 X (4 ) 1 X (5 ) 1 X (6 ) 1 X (7 ) .

the N point sequence is decimated into 2-point sequences. From the result of 2 point DFTs. the 4 point DFTs can be computed. until we get N point DFT. and 2 point DFT for each decimated sequence is computed. the 8 point DFT can be computed and so on.K x (7 ) W 0 N W N0 . From the result of 4 point DFT.B hu x (5) W X (2) 1 In radix-2 FFT .x (0) x (4) X (0 ) W N0 1 x(2) x (6) W N0 X (1 ) W N0 W N2 1 1 x (1 ) 0 N 1 x(3) 1 ya n W N2 1 1 W 0 N W 1 N W 2 N W 3 N X (3) 1 X (4 ) 1 X (5 ) 1 X (6 ) 1 X (7 ) M . .

FFT Algorithm The computation complexity for N 2 3 X (k ) x(n ) 2-point DFT 2-point DFT Synthesize the 2-point DFTs into a 4-point DFT Synthesize the 4-point DFTs into a 8-point DFT .K M 2-point DFT ya n 2-point DFT Synthesize the 2-point DFTs into a 4-point DFT 3-stage synthesize.B hu .Radix-2 DIT. each has N/2 butterfly computation .

each has N/2 butterfly computations.FFT Algorithm for N 2L There are L-stage synthesization.K a F N L N lo g 2 N M . The total number of complex multiplications is: N N mF L log 2 N 2 2 . Each butterfly computation has 1 complex multiplication and 2 complex additions.Radix-2 DIT.B hu ya n The total number of complex additions is: .

Radix-2 DIT.B hu 1 M X m 1 ( j ) WNr X m (k ) X r ( k ) W m 1 N X m 1 ( j) X m ( j) X r ( k ) W m 1 N X m 1 ( j) .FFT Algorithm The characteristics of DIT-FFT algorithm In-place computation X m 1 ( k ) .K n ya .

FFT Algorithm At the end of computation flow graph at any stage. . output variables can be stored in the same registers previously occupied by the corresponding input variables.Radix-2 DIT.K .B hu ya n This type of memory location sharing is called in-place computation which results in significant saving in overall memory requirements. M .

Thus.B hu ya n Let m. n represent the sequential and bit-reversed order in binary forms respectively. 010 n: 100 010 000 . a sequentially ordered input x(n) must be reordered appropriately before the fast algorithm can be implemented.Radix-2 DIT. then: .FFT Algorithm Bit-reversed order In the DFT computation scheme.K 001 011 100 101 110 111 110 001 101 011 111 M m: 000 . the DFT samples X(k) appear at the output in a sequential order while the input samples x(n) appear in a different order: a bit-reversed order.

B hu ya n 1 .K M x (000) x (0) 1 x (1 0 0 ) x(4) x (010) x(2) 1 x (1 1 0 ) x (6) 0 x (001) x (1 ) 1 x (1 0 1 ) x (011) x (5 ) x (1 1 1 ) x (7 ) 0 1 1 0 0 1 x (3 ) . Why is the input bit-reversed order n0 n1 n2 0 0 x (n 2n1n0 ) 0 .

then: A ( 0 ) A (1 ) A ( 2 ) A ( 3 ) A (4) A (5) A (6) A (7 ) x (4) x (5) x (6) x (7 ) x (1 ) x (5) x(3) x (7 ) ya n n x ( 0 ) x (1 ) x ( 2 ) x ( 3 ) ˆrepresent the n M . the bit-reversed order.K . How to get the bit-reversed order Let n represent the natural order.B hu ˆ x (0) x (4) x (2 ) x (6) n .

K .Radix-2 DIF.FFT Algorithm M .B hu ya n How does DIF-FFT operate .

K .x(n ) 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 butterfly computation 0 1 0 1 2 2 3 0 1 2 3 3 0 1 2 3 butterfly computation butterfly computation 1 0 1 0 1 0 n 0 ya 1 0 1 1 0 1 0 1 X (k ) M .B hu 0 butterfly butterfly butterfly butterfly 0 2 1 3 4 6 5 7 .

B hu ya n The latter N/2-point .FFT Algorithm Algorithm principle To divide N-point sequence x(n) into two N/2-point sequence N x ( n ).Radix-2 DIF. 0n 1 2 N N x ( n ). 0 n 1 2 2 The former N/2-point M .K .

K N nk k x ( n ) ( 1) x ( n )W N 2 n0 ( k 0.B hu N 1 2 n N k N nk 2 x ( n ) W N x ( n )W N 2 n0 M . To compute the DFT of N-point sequence x(n) N 1 X ( k ) x ( n )W n0 N 1 2 x( n)W n0 N 1 2 nk N nk N N 1 2 x( n)W n0 nk N N 1 x( n)W n N 1 2 ( n N x ( n )W N 2 n0 nk N N 2 N )k 2 ya . N 1) .1.

1 .FFT Algorithm To separate the even and odd numbered samples of X(k) N le t k 2 r .1 . 1) 2 2 2 n0 ya n N 1 2 M .B hu N n nr N X ( 2 r 1 ) x ( n ) x ( n ) W N W N ( r 0 . ( r 0 .1 . 1) 2 2 n0 2 . k 2 r 1 .Radix-2 DIF. 1 ) 2 N 1 2 N nr N X ( 2 r ) x ( n ) x ( n ) W N ( r 0 .K . .

1 2 ya N x 1 ( n ) x ( n ) x ( n 2 ) let N n x 2 ( n ) x ( n ) x ( n ) W N 2 2 .1.Radix-2 DIF.B hu N 1 2 .1.K n0 1 N ( r 0. 1) 2 .1.FFT Algorithm X ( 2 r 1) x ( n )W n0 nr N 2 N ( r 0. 1) 2 n x ( n )W nr N 2 M X ( 2r ) N 1 2 N n 0 .

B hu There are 1 complex multiplication and 2 complex additions .Radix-2 DIF.K .FFT Algorithm Butterfly computation flow graph N x1 (n ) x (n ) x (n ) 2 x(n ) 1 N n x 2 ( n ) x ( n ) x ( n ) W N 2 ya n N x(n ) 2 W Nn M .

for N 2 3 x1 (0) x (0) x 1 (1 ) x (1 ) x1 (2) x(2) x (7 ) 1 W N2 x2 (2) W N3 n x 2 (1 ) ya 1 W N1 .K x (6) 1 W N0 M x (5) N/2point X (2) DFT X (4 ) x1 (3) x(3) x (4) X (0 ) x2 (3) X (6 ) X (1 ) N/2point X (3) DFT X (5 ) X (7 ) .B hu 1 x 2 (0) .

K x (5) W 0 N M x (4) 1 W N0 1 W N0 1 W N0 1 X (5 ) X (3) W N0 W N2 1 X (7 ) .for N 2 3 x (0) X (0 ) x (1 ) x(2) 1 x(3) 1 W N0 W N2 1 W N0 W N2 1 W N3 n 1 X (2) W N1 ya x (7 ) 1 X (4 ) X (6 ) X (1 ) .B hu x (6) 1 .

B hu ya n .FFT Algorithm The comparison of DIT and DIF The order of samples DIT-FFT: the input is bit.K .Radix-2 DIF.reversed order and the output is natural order DIF-FFT: the input is natural order and the output is bitreversed order The butterfly computation DIT-FFT: multiplication is done before additions DIF-FFT: multiplication is done after additions M .

FFT Algorithm Both DIT-FFT and DIF-FFT have the identical computation complexity.e.K . Each butterfly computation has 1 multiplication and 2 additions. A DIT-FFT flow graph can be transposed to a DIFFFT flow graph and vice versa. Both DIT-FFT and DIF-FFT have the characteristic of in-place computation. there are total L stages and each has N/2 butterfly computation.B hu ya n return . for N 2 L . i. M .Radix-2 DIF.

K .The fast algorithm of IDFT Algorithm 1 N 1 X (k ) x(n)WNnk n 0 N 1 1 x(n) X (k )WN nk N k 0 N 2 L In an FFT flow graph of DFT: .B hu ya n x ( n ) X ( k ). X ( k ) x ( n ) M W N1 W N 1 . each stage is multiplied by 1/2 .

N-1 ) .1 .K M n N 1 (k 0 .The fast algorithm of IDFT Algorithm 2 1 x(n) N N 1 X ( k )W k 0 nk N 1 nk X ( k )W N N k 0 1 DFT[ X ( k )] N ya .B hu .

- simplex_exampleUploaded byRichard Lee
- Architecture of 64Uploaded byBibinMathew
- decimationintimeandfrequency-130117005655-phpapp01Uploaded bykibrom atsbha
- Fourier TheoryUploaded byAlexis MUHIRWA
- DSP Practical FileUploaded byVishav Verma
- IV B.E. (Fire Technology)Uploaded by9y9a
- Vort RagUploaded byamin
- New DSP Manual (2)Uploaded bysnehilj_1
- Lecture_1Uploaded byAhmedAbubakr
- Lession PlanUploaded byarunathangam
- CSC380 Spring 2011 SyllabusUploaded byLookz Look
- 1410.0759v3Uploaded bypeterhaijin
- USSD-2014_FEA of Dynamic Behavior of Large DamsUploaded byfersirza
- syllabusbcaUploaded bydanishather
- DXPUploaded bySakthivel Srini
- 4. Mathematics - IJMCAR - Numerical Solution of System of SecondUploaded byTJPRC Publications
- FEA ProcedureUploaded byraj_bhojraj
- rohan dspUploaded byRohan Mhatre
- Numerical solution for the flow over a stretchable diskUploaded byAsia Pacific Journal of Multidisciplinary Research
- 2 Differentiation Mod.ppt [Compatibility Mode]Uploaded byZulvicky Liandy
- MatLab CommandsUploaded by_Leonel_
- Endgame MathsUploaded byXuelong Zhao
- Torsion of a Non-Circular Bar.pdfUploaded byPREM KUMAR
- Weighted Essentially Non-Oscillatory SchemesUploaded bymecharash
- hmwrk2Uploaded byamirkhan1369
- L13L14Uploaded byalanadad
- 26-784Uploaded bySukadanaNyoman
- out ivUploaded byAlh. Aliu
- Course Outline (1)Uploaded byZeeShanShah
- Getting StartedUploaded byBruno Celis