32
Copyright © S. K. Mitra 1 Cooley Cooley - - Tukey Tukey FFT Algorithms FFT Algorithms Consider a length-N sequence x[n] with an N-point DFT X[k] where Represent the indices n and k as 2 1 N N N = + = 1 0 1 0 , 2 2 1 1 2 1 2 N n N n n n N n + = 1 0 1 0 , 2 2 1 1 2 1 1 N k N k k N k k

Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

  • Upload
    lamhanh

  • View
    218

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra1

CooleyCooley--Tukey Tukey FFT AlgorithmsFFT Algorithms• Consider a length-N sequence x[n] with an

N-point DFT X[k] where• Represent the indices n and k as

21NNN =

−≤≤−≤≤+= 10

10,2211

212 NnNnnnNn

−≤≤−≤≤+= 10

10,2211

211 NkNkkNkk

Page 2: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra2

CooleyCooley--TukeyTukey FFT Algorithms FFT Algorithms• Using these index mappings we can write

as∑=−

=

1

0][][

N

n

nkNWnxkX

][][ 211 kNkXkX +=

∑ ∑−

=

=

+++=1

0

1

0

))((212

2

2

1

1

211212][N

n

N

n

kNknnNNWnnNx

∑ ∑−

=

=+=

1

0

1

0212

2

2

1

1

212122112112][N

n

N

n

knNNN

knNN

knN

knNN WWWWnnNx

Page 3: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra3

CooleyCooley--TukeyTukey FFT Algorithms FFT Algorithms

• Since , ,and , we have

where and

11

1

112 knN

knNN WW = 22

2

221 knN

knNN WW =

12121 =knNNNW

][ 211 kNkX +

22

2

2

2

121

1

11

1

1

0

1

0212 ][ kn

N

N

n

knN

N

n

knN WWWnnNx∑

∑ +=

=

=

10 11 −≤≤ Nk 10 22 −≤≤ Nk

Page 4: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra4

CooleyCooley--TukeyTukey FFT Algorithms FFT Algorithms• The effect of the index mapping is to map the

1-D sequence x[n] into a 2-D sequence thatcan be represented as a 2-D array with specifying the rows and specifying thecolumns of the array

• Inner parentheses of the last equation is seento be the set of -point DFTs of the -columns:

1n2n

2N1N

∑−

=

−≤≤−≤≤+=

1

0 2211

212211

1

111 10

10,][],[N

n

knN Nn

NkWnnNxnkG

Page 5: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra5

CooleyCooley--TukeyTukey FFT Algorithms FFT Algorithms• Note: The column DFTs can be done in

place• Next, these row DFTs are multiplied in

place by the twiddle factors yielding

• Finally, the outer sum is the set of -pointDFTs of the columns of the array:

−≤≤−≤≤= 10

10],,[],[~2211

2112

21 NnNknkGWnkG kn

N

12knNW

∑−

=

−≤≤−≤≤=+

1

0 1010,],[~][

2

222

11222

21211N

n NkNkkn

NWnkGkNkX

2N

Page 6: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra6

CooleyCooley--TukeyTukey FFT Algorithms FFT Algorithms• The row DFTs, , can again be

computed in place• The input x[n] is entered into an array

according to the index map:

• Likewise, the output DFT samples X[k]need to extracted from the array accordingto the index map:

−≤≤−≤≤+= 10

10,2211

212 NnNnnnNn

−≤≤−≤≤+= 10

10,2211

211 NkNkkNkk

][ 211 kNkX +

Page 7: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra7

CooleyCooley--TukeyTukey FFT Algorithms FFT Algorithms

• Example - Let N = 8. Choose and

• Then

for and

21 =N42 =N

∑ ∑= =

+=+

3

048

1

022121

2

2221

1

11]4[]2[n

nknk

n

nk WWWnnxkkX

10 1 ≤≤ k 30 2 ≤≤ k

Page 8: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra8

CooleyCooley--TukeyTukey FFT Algorithms FFT Algorithms• 2-D array representation of the input is

• The column DFTs are 2-point DFTs givenby

• These DFTs require no multiplications

≤≤≤≤+−+= 30

10],4[)1(][],[21

21221 nknxnxnkG k

0 1 2 3

0 x[0] x[1] x[2] x[3]

1 x[4] x[5] x[6] x[7]

n1

n2

Page 9: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra9

CooleyCooley--TukeyTukey FFT Algorithms FFT Algorithms• 2-D array of row transforms is

• After multiplying by the twiddle factorsarray becomes

128

knW

n2k1

]3,1[]2,1[]1,1[]0,1[1]3,0[]2,0[]1,0[]0,0[0

3210

GGGGGGGG

k1

]3,1[~]2,1[~]1,1[~]0,1[~1]3,0[~]2,0[~]1,0[~]0,0[~0

3210

GGGGGGGG

n2

Page 10: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra10

CooleyCooley--TukeyTukey FFT Algorithms FFT Algorithms• Note:• Finally, the 4-point DFTs of the rows are

computed:

• Output 2-D array is given by

],[],[~21821

12 nkGWnkG kn=

≤≤≤≤=+ ∑

= 3010,],[~]2[

21

3

042121

2

22kkWnkGkkX

n

kn

0 1 2 3

0 X[0] X[2] X[4] X[6]

1 X[1] X[3] X[5] X[7]

k1k2

Page 11: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra11

CooleyCooley--TukeyTukey FFT Algorithms FFT Algorithms• The process illustrated is precisely the first

stage of the DIF FFT algorithm• By choosing and , we get

the first stage of the DIT FFT algorithm• Alternate index mappings are given by

−≤≤−≤≤+= 10

10,2211

211 NnNnnNnn

−≤≤−≤≤+= 10

10,2211

212 NkNkkkNk

41 =N 22 =N

Page 12: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra12

Prime Factor AlgorithmsPrime Factor Algorithms• Twiddle factors can be eliminated by

defining the index mappings as

• To eliminate the twiddle factors we need toexpress

−≤≤−≤≤>+<= 10

10,2211

21 NnNnBnAnn N

−≤≤−≤≤>+<= 10

10,2211

21 NkNkDkCkk N

22

2

11

1

2121 ))(( nkN

nkN

DkCkBnAnN WWW =++

Page 13: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra13

Prime Factor AlgorithmsPrime Factor Algorithms• Now

• It follows from above that if

then

))(( 2121 DkCkBnAnNW ++

22122111 kBDnN

kBCnN

kADnN

kACnN WWWW=

,, 12 NBDNAC NN =⟩⟨=⟩⟨

0=⟩⟨=⟩⟨ NN BCAD

22

2

11

1

2121 ))(( knN

knN

DkCkBnAnN WWW =++

Page 14: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra14

Prime Factor AlgorithmsPrime Factor Algorithms• One set of coefficients that eliminates the

twiddle factors is given by

• Here denotes the multiplicativeinverse of reduced modulo

• If thenor, in other words whereis any integer

,, 12 NBNA ==

211

111

22 , NN NNDNNC ⟩⟨=⟩⟨= −−

21

1 NN ⟩⟨ −

1N 2Nα=⟩⟨ −

21

1 NN 121 =⟩α⟨ NN⇒

121 += βα NN β

Page 15: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra15

Prime Factor AlgorithmsPrime Factor Algorithms• For example, if and , then since• Likewise, if , then

where is any integer• Now,

• Similarly,

41 =N 32 =N33 4

1 =⟩⟨ − 133 4 =⟩⋅⟨γ=⟩⟨ −

11

2 NN 112 += δγ NNδ

NNN NNNAC ⟩⟩⟨⋅⟨=⟩⟨ − )(1

1222

221212 )1( NNNNNN NN =⟩+δ⟨=⟩+δ⟨=

NNN NNNBD ⟩⟩⟨⋅⟨=⟩⟨ − )(2

1111

112121 )1( NNNNNN NN =⟩+β⟨=⟩+β⟨=

Page 16: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra16

Prime Factor AlgorithmsPrime Factor Algorithms• Next,

• Likewise,

• Hence,

0)(2

1112 =⟩α⟨=⟩⟩⟨⋅⟨=⟩⟨ −

NNNN NNNNAD

0)(1

1221 =⟩γ⟨=⟩⟩⟨⋅⟨=⟩⟨ −

NNNN NNNNBC

][][ 21 NDkkCXkX ⟩+⟨=

∑ ∑ ⟩+⟨=−

=

=

1

0

1

021

1

1

2

2

221112][N

n

N

n

knNN

knNNN WWBnAnx

Page 17: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra17

Prime Factor AlgorithmsPrime Factor Algorithms• Thus,

where

and

222

111

1

1

2

2

][1

0

1

021

knN

knN

N

n

N

nN WWBnAnx∑ ∑ ⟩+⟨=

=

=

222

2

2

1

012 ],[ kn

N

N

nWknG∑=

=

][ 21 NDkCkX ⟩+⟨

10,10 2211 −≤≤−≤≤ NkNk

111

1

1

][],[1

02112

knN

N

nN WBnAnxknG ∑ ⟩+⟨=

=

Page 18: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra18

Prime Factor AlgorithmsPrime Factor Algorithms• Example - Let N = 12. Choose and

• Then, A = 3, B = 4, C and

• The index mappings are

41 =N32 =N

933 41 =⟩⟨= −

444 31 =⟩⟨= −D

≤≤≤≤

⟩+⟨=2030

,432

11221 n

nnnn

≤≤≤≤

⟩+⟨=2030

,492

11221 k

kkkk

Page 19: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra19

Prime Factor AlgorithmsPrime Factor Algorithms• 2-D array representation of input is

• 4-point transforms of the columns lead ton2

n2n1

]5[]1[]9[3]2[]10[]6[2]11[]7[]3[1]8[]4[]0[0

210

xxxxxxxxxxxx

k1

]2,3[]1,3[]0,3[3]2,2[]1,2[]0,2[2]2,1[]1,1[]0,1[1]2,0[]1,0[]0,0[0

210

GGGGGGGGGGGG

Page 20: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra20

Prime Factor AlgorithmsPrime Factor Algorithms• Final DFT array is

• 4-point DFTs require no multiplications,whereas the 3-point DFTs require 4complex multiplications

• Thus, the algorithm requires 16 complexmultiplications

k2k1

]11[]7[]3[3]2[]10[]6[2]5[]1[]9[1]8[]4[]0[0

210

XXXXXXXXXXXX

Page 21: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra21

Chirp Chirp zz-Transform Algorithm-Transform Algorithm

• Let x[n] be a length-N sequence with aFourier transform

• We consider evaluation of M samples ofthat are equally spaced in angle on the unitcircle at frequencies

where the starting frequency and thefrequency increment can be chosenarbitrarily

10, −≤≤∆+= Mkkok ωωω

oωω∆

Page 22: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra22

Chirp Chirp zz-Transform Algorithm-Transform Algorithm• Figure below illustrates the problem

(M 1) o

unit circle

z planeIm

Re

Page 23: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra23

Chirp Chirp zz-Transform Algorithm-Transform Algorithm• The problem is thus to evaluate

or, with W defined as

to evaluate

10,][)(1

0−≤≤∑=

=

− MkenxeXN

n

njj kk ωω

ω∆−= jeW

nkN

n

njj WenxeX ok ∑=−

=

−1

0][)( ωω

Page 24: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra24

Chirp Chirp zz-Transform Algorithm-Transform Algorithm• Using the identity

we can write

• Lettingwe arrive at

2/)(2/2/1

0

222][)( nkknnjN

n

j WWWenxeX ok −−−

=∑= ωω

])([21 222 nkknnk −−+=

2/2][][ nnj Wenxng oω−=

,][)(1

0

2/)(2/ 22

∑=−

=

−−N

n

nkkj WngWeX kω

10 −≤≤ Mk

Page 25: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra25

Chirp Chirp zz-Transform Algorithm-Transform Algorithm• Interchanging k and n we get

• Thus, corresponds to theconvolution of the sequence g[n] with thesequence followed by multiplicationby the sequence as indicated below

,][)(1

0

2/)(2/ 22

∑=−

=

−−N

k

knnj WkgWeX nω

2/2nW2/2nW −

)( njeX ω

x[n]g[n]

2/2nnj We oω− 2/2nW

)( njeX ω2/2nW −

Page 26: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra26

Chirp Chirp zz-Transform Algorithm-Transform Algorithm

• The sequence can be thought of as acomplex exponential sequence with linearlyincreasing frequency

• Such signals, in radar systems, are calledchirp signals

• Hence, the name chirp transform

2/2nW −

Page 27: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra27

Chirp Chirp zz-Transform Algorithm-Transform Algorithm• For the evaluation of

the output of the system depicted earlierneed to be computed over a finite interval

• Since g[n] is a length-N sequence, only afinite portion of the infinite length sequence

is used in obtaining the convolutionsum over the interval

,][)(1

0

2/)(2/ 22

∑=−

=

−−N

k

knnj WkgWeX nω

2/2nW −

10 −≤≤ Mn

Page 28: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra28

Chirp Chirp zz-Transform Algorithm-Transform Algorithm• Typical signals

g[n]

n

N 10

W n2 /2

n0

M 1

W -n2 /2g[n] *

0n

Page 29: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra29

Chirp Chirp zz-Transform Algorithm-Transform Algorithm• The portion of the sequence used in

obtaining the convolution sum is from theinterval

• Let

as shown below

2/2nW −

−≤≤−−=

otherwise,0)1()1(,][

2/2 MnNWnhn

11 −≤≤+− MnN

n0 ↑↑

h[n]

1+− N 1−M

Page 30: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra30

Chirp Chirp zz-Transform Algorithm-Transform Algorithm• It can be seen that

• Hence, the computation of the frequencysamples can be carried out usingan FIR filter as indicated below

where

10],[O][O][ *2/*2 −≤≤=− MnnhngWng n

10),(][ −≤≤= MneXny njω

)( njeX ω

g[n]y[n]x[n] h[n]

2/2nnj We oω− 2/2nW

Page 31: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra31

Chirp Chirp zz-Transform Algorithm-Transform Algorithm• Advantages -• (1) N = M is not required as in FFT

algorithms• (2) Neither N nor M do not have to be

composite numbers• (3) Parameters and are arbitrary• (4) Convolution with h[n] can be

implemented using FFT techniques

oω ω∆

Page 32: Cooley-Tukey FFT Algorithmssip.cua.edu/res/docs/courses/ee515/chapter08/ch8-2.pdfCooley-Tukey FFT Algorithms • The effect of the index mapping is to map the 1-D sequence x[n] into

Copyright © S. K. Mitra32

Chirp Chirp zz-Transform Algorithm-Transform Algorithmg[n]

n

N 10

M 1

W -n2 /2g[n] *

0n

W n2 /2

n0