Radix-4 FFT Algorithm
&
Analysis of Time Complexity
Raj K Jaiswal
Research Scholar
National Institute of Technology, Karnataka
Surathkal, Mangalore
Email: jaiswal.raaj@gmail.com
Outline

• Need of Redix-4 FFT.
• Analysis of Time Complexity for Radix-4 FFT.

11/8/2013

RKJ@DIT,NITK
DFT
The DFT is defined as

N 1

Xr   xl w , r  0,1,........N  1
l 0

11/8/2013

rl
N

RKJ@DIT,NITK
Radix-4 FFT
•

The radix-4 FFT is derived from DFT as shown in
above equation, Which Defines the DFT of a
complex time series.

•

The above Equation can be written as follows..

Xr 

N / 4 1

 x4 kw
k 0



r (4k )
N



N / 4 1

 x 4 k  1w
k 0

r ( 4 k 1)
N



N / 4 1

 x4k  2w
k 0

r ( 4 k  2)
N



N / 4 1

r
x 4 k  3 wN( 4 k 3)

k 0

N / 4 1

N / 4 1

N / 4 1

N / 4 1

k 0

k 0

k 0

k 0

r
r
x 4 kwN( 4 k )  wN


11/8/2013

r
2
x 4 k  1wN( 4 k )  wNr


RKJ@DIT,NITK

r
3
x 4 k  2 wN( 4 k )  wNr


r
x 4 k  3 wN( 4 k )

Radix-4 FFT
•

By decimating the Time series into four sets
mentioned as follows.

{ yk | yk
{ zk | zk
{ gk | gk
{hk | hk

x 4 k ,0  k 



x4k







x4k
x4k

N
4

,0  k 

 1

 2

,0  k 

,0  k 

 3

1
}
N
4
N
4
N
4

1
}
1
}
1
}

The four sub problems with period of N/4 can be
defined after the appropriate twiddle factor is
4
w  wN
identified by
N / 4

11/8/2013

RKJ@DIT,NITK
Radix-4 FFT
Hence the above four sub problems can be written as
N / 4 1

N / 4 1

k 0

Yr 

N / 4 1

k 0

k 0

r
x 4 kwN( 4 k ) 


4
x 4 k ( wN ) rk 


rk
ykwN / 4 , r  0,1,....N / 4  1


Similarly
Zr  .......
Gr  ..........
N / 4 1

N / 4 1

k 0

Hr 

N / 4 1

k 0

k 0

r
h 4 k  3 wN( 4 k ) 


11/8/2013

4
x 4 k  3( wN ) rk 


RKJ@DIT,NITK

rk
hkwN / 4 , r  0,1,....N / 4  1

Radix-4 FFT
•Now The size of each sub problem is N/4,Which is
equal to input size.
Above sub problem can be solved recursively to
obtain the solution for main problem with size of N.
Since the series Yr has a period of N/4,so
Y r =Yr+n/4 = Yr+n/2 = Yr+3n/4 this applies to Zr, Gr H r

11/8/2013

RKJ@DIT,NITK
Radix-4 FFT
Above sub problem can be written in form of
r
2
3
X r  Yr  wN Z r  wNr Gr  wNr H r
r
2
3
X r  N / 4  Yr  wN N / 4 Z r  wN( r  N / 4 )Gr  wN( r  N / 4 ) H r
r
2
3
X r  N / 2  Yr  wN N / 2 Z r  wN( r  N / 2 )Gr  wN( r  N / 2 ) H r
r
2
3
X r 3 N / 4  Yr  wN3 N / 4 Z r  wN( r 3 N / 4 )Gr  wN( r 3 N / 4 ) H r

By noting twiddle factors
N
wN / 4  w4  e 

j 2 / 4

N
  j , wN / 2  (  j ) 2  1

and
3
wNN / 4  (  j ) 3  j

Above four equation can be written in form of
11/8/2013

RKJ@DIT,NITK
Radix-4 FFT
X r  Yr  w Z r  w Gr  w H r
r
N

rN / 4
rN

X rN / 4  Y

2r
N

3r
N

r
2
3
 jwN Z r  wNr Gr  jwNr H r

r
2
3
X r  N / 2  Yr  wN Z r  wNr Gr  wNr H r

X r 3 N / 4  Yr  jw Z r  w Gr  jw H r
r
N

11/8/2013

2r
N

RKJ@DIT,NITK

3r
N
Radix-4 FFT
Analyzing the arithmetic cost
1. To analyze the arithmetic cost of radix-4 make
2
r
3
wNr Gr , wN Z r , wNr H r
sure that
Is calculated before the partial sum

2.Since the size of each sub problem is N/4.3N/4
complex multiplication and N complex addition is
required in 1st stage of butterfly computation.

11/8/2013

RKJ@DIT,NITK
Radix-4 FFT
3.The 2nd Stage of butterfly computation involves no
multiplication by twiddle factor, so only N complex
additions are needed.

4.Hence 3N/4 complex multiplication & 2N complex
addition is required to perform two stages of butterfly
computation.
5.Since One complex addition incurs 2 real addition and
one complex multiplication incurs 3 real multiplication
and 3 real addition.
11/8/2013

RKJ@DIT,NITK
Radix-4 FFT
6.Accordingly 9N/4 real multiplication and 25N/4 real
additions are required per step of Radix-4.
7.Total flop count required is 17N/2
8.After considering the special cases we need 17N/2-32
flop counts.
9.Since special factors also occur in every subsequent
step, the savings can be incorporated in setting up
recurrence equation.
10.The cost of Radix-4 FFT algorithm can be
represented by the following recurrence

11/8/2013

RKJ@DIT,NITK
Radix-4 FFT
T(N)={ 4T(N/4)+17/2N-32 if N=4n >4,
16
if N=4.
we get following result on solving above equation.

T(N)=4(1/4)Nlog2 N-43/6N+32/3

11/8/2013

RKJ@DIT,NITK
Radix-4 FFT:Conclusion
Compare to arithmetic cost of T(N)=N log2 N of radix-2
FFT,the saving by radix-4 is 15 percent.

11/8/2013

RKJ@DIT,NITK

Radix 4 FFT algorithm and it time complexity computation

  • 1.
    Radix-4 FFT Algorithm & Analysisof Time Complexity Raj K Jaiswal Research Scholar National Institute of Technology, Karnataka Surathkal, Mangalore Email: jaiswal.raaj@gmail.com
  • 2.
    Outline • Need ofRedix-4 FFT. • Analysis of Time Complexity for Radix-4 FFT. 11/8/2013 RKJ@DIT,NITK
  • 3.
    DFT The DFT isdefined as N 1 Xr   xl w , r  0,1,........N  1 l 0 11/8/2013 rl N RKJ@DIT,NITK
  • 4.
    Radix-4 FFT • The radix-4FFT is derived from DFT as shown in above equation, Which Defines the DFT of a complex time series. • The above Equation can be written as follows.. Xr  N / 4 1  x4 kw k 0  r (4k ) N  N / 4 1  x 4 k  1w k 0 r ( 4 k 1) N  N / 4 1  x4k  2w k 0 r ( 4 k  2) N  N / 4 1 r x 4 k  3 wN( 4 k 3)  k 0 N / 4 1 N / 4 1 N / 4 1 N / 4 1 k 0 k 0 k 0 k 0 r r x 4 kwN( 4 k )  wN  11/8/2013 r 2 x 4 k  1wN( 4 k )  wNr  RKJ@DIT,NITK r 3 x 4 k  2 wN( 4 k )  wNr  r x 4 k  3 wN( 4 k ) 
  • 5.
    Radix-4 FFT • By decimatingthe Time series into four sets mentioned as follows. { yk | yk { zk | zk { gk | gk {hk | hk x 4 k ,0  k   x4k    x4k x4k N 4 ,0  k   1  2 ,0  k  ,0  k   3 1 } N 4 N 4 N 4 1 } 1 } 1 } The four sub problems with period of N/4 can be defined after the appropriate twiddle factor is 4 w  wN identified by N / 4 11/8/2013 RKJ@DIT,NITK
  • 6.
    Radix-4 FFT Hence theabove four sub problems can be written as N / 4 1 N / 4 1 k 0 Yr  N / 4 1 k 0 k 0 r x 4 kwN( 4 k )   4 x 4 k ( wN ) rk   rk ykwN / 4 , r  0,1,....N / 4  1  Similarly Zr  ....... Gr  .......... N / 4 1 N / 4 1 k 0 Hr  N / 4 1 k 0 k 0 r h 4 k  3 wN( 4 k )   11/8/2013 4 x 4 k  3( wN ) rk   RKJ@DIT,NITK rk hkwN / 4 , r  0,1,....N / 4  1 
  • 7.
    Radix-4 FFT •Now Thesize of each sub problem is N/4,Which is equal to input size. Above sub problem can be solved recursively to obtain the solution for main problem with size of N. Since the series Yr has a period of N/4,so Y r =Yr+n/4 = Yr+n/2 = Yr+3n/4 this applies to Zr, Gr H r 11/8/2013 RKJ@DIT,NITK
  • 8.
    Radix-4 FFT Above subproblem can be written in form of r 2 3 X r  Yr  wN Z r  wNr Gr  wNr H r r 2 3 X r  N / 4  Yr  wN N / 4 Z r  wN( r  N / 4 )Gr  wN( r  N / 4 ) H r r 2 3 X r  N / 2  Yr  wN N / 2 Z r  wN( r  N / 2 )Gr  wN( r  N / 2 ) H r r 2 3 X r 3 N / 4  Yr  wN3 N / 4 Z r  wN( r 3 N / 4 )Gr  wN( r 3 N / 4 ) H r By noting twiddle factors N wN / 4  w4  e  j 2 / 4 N   j , wN / 2  (  j ) 2  1 and 3 wNN / 4  (  j ) 3  j Above four equation can be written in form of 11/8/2013 RKJ@DIT,NITK
  • 9.
    Radix-4 FFT X r Yr  w Z r  w Gr  w H r r N rN / 4 rN X rN / 4  Y 2r N 3r N r 2 3  jwN Z r  wNr Gr  jwNr H r r 2 3 X r  N / 2  Yr  wN Z r  wNr Gr  wNr H r X r 3 N / 4  Yr  jw Z r  w Gr  jw H r r N 11/8/2013 2r N RKJ@DIT,NITK 3r N
  • 10.
    Radix-4 FFT Analyzing thearithmetic cost 1. To analyze the arithmetic cost of radix-4 make 2 r 3 wNr Gr , wN Z r , wNr H r sure that Is calculated before the partial sum 2.Since the size of each sub problem is N/4.3N/4 complex multiplication and N complex addition is required in 1st stage of butterfly computation. 11/8/2013 RKJ@DIT,NITK
  • 11.
    Radix-4 FFT 3.The 2ndStage of butterfly computation involves no multiplication by twiddle factor, so only N complex additions are needed. 4.Hence 3N/4 complex multiplication & 2N complex addition is required to perform two stages of butterfly computation. 5.Since One complex addition incurs 2 real addition and one complex multiplication incurs 3 real multiplication and 3 real addition. 11/8/2013 RKJ@DIT,NITK
  • 12.
    Radix-4 FFT 6.Accordingly 9N/4real multiplication and 25N/4 real additions are required per step of Radix-4. 7.Total flop count required is 17N/2 8.After considering the special cases we need 17N/2-32 flop counts. 9.Since special factors also occur in every subsequent step, the savings can be incorporated in setting up recurrence equation. 10.The cost of Radix-4 FFT algorithm can be represented by the following recurrence 11/8/2013 RKJ@DIT,NITK
  • 13.
    Radix-4 FFT T(N)={ 4T(N/4)+17/2N-32if N=4n >4, 16 if N=4. we get following result on solving above equation. T(N)=4(1/4)Nlog2 N-43/6N+32/3 11/8/2013 RKJ@DIT,NITK
  • 14.
    Radix-4 FFT:Conclusion Compare toarithmetic cost of T(N)=N log2 N of radix-2 FFT,the saving by radix-4 is 15 percent. 11/8/2013 RKJ@DIT,NITK