0% found this document useful (0 votes)
273 views6 pages

Split Radix

This chapter discusses mixed-radix and split-radix FFT algorithms. It introduces two types of mixed-radix FFTs and describes the derivation of split-radix DIT and DIF FFT algorithms. It also analyzes the arithmetic costs of split-radix algorithms and provides references on the history and development of split-radix FFTs.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
273 views6 pages

Split Radix

This chapter discusses mixed-radix and split-radix FFT algorithms. It introduces two types of mixed-radix FFTs and describes the derivation of split-radix DIT and DIF FFT algorithms. It also analyzes the arithmetic costs of split-radix algorithms and provides references on the history and development of split-radix FFTs.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Chapter 12

The Mixed-Radix and Split-Radix FFTs


12.1 The Mixed-Radix FFTs

There are two kinds of mixed-radix FFT algorithms. The rst kind refers to a situation arising naturally when a radix-q algorithm, where q = 2m > 2, is applied to an input series consisting of N = 2k q s equally spaced points, where 1 k < m. In this case, out of necessity, k steps of radix-2 algorithm are applied either at the beginning or at the end of the transform, while the rest of the transform is carried out by s steps of the radix-q algorithm. For example, if N = 22m+1 = 2 4m , the mixed-radix algorithm combines one step of the radix-2 algorithm and m steps of the radix-4 algorithm.1 The second kind of mixed-radix algorithms in the literature refers to those specialized for a composite N = N0 N1 Nk . Dierent algorithms may be used depending on whether the factors satisfy certain restrictions. The FFT algorithms for composite N will be treated in Chapter 15.

12.2

The Split-Radix DIT FFTs

After one has studied the radix-2 and radix-4 FFT algorithms in Chapters 3 and 11, it is interesting to see that the computing cost of the FFT algorithm can be further reduced by combining the two in a split-radix algorithm. The split-radix approach was rst proposed by Duhamel and Hollmann in 1984 [39]. There are again DIT versions and DIF versions of the algorithm, depending on whether the input time series or the output frequency series is decimated. The split-radix DIT algorithm is derived from (3.1), which denes the discrete
1 It is of historical interest to note that a program for N = 22m+1 was written by Gentleman and Sande [47] in 1966, where they claimed a doubling of eciency by this approach. However, Singleton observed in [83] that when computing with all the data stored in memory, a good radix-2 program was nearly as ecient as a radix-4 plus one step of radix-2 program and was simpler.

2000 by CRC Press LLC

Fourier transform of a complex time series:

N 1

Xr =
=0
N 2

r x N , 1

r = 0, 1, . . . , N 1,
N 4

N 4

(12.1)

=
k=0
N 2

x2k N
1

r (2k)

+
k=0

x4k+1 N
N 4

r (4k+1)

+
k=0

x4k+3 N
N 4

r (4k+3)

=
k=0

x2k N

r (2k)

+ N
k=0

x4k+1 N

r (4k)

+ N

3r k=0

x4k+3 N

r (4k)

By decimating the time N/2 1}, the set {zk|zk k N/4 1}, the three 2 4 N = N and N = N
2 4

series into three sets, namely the set {yk |yk = x2k , 0 k = x4k+1 , 0 k N/4 1}, and the set {hk|hk = x4k+3 , 0 subproblems are dened after the appropriate twiddle factors are identied.

(12.2)

N 2

N 2

Yr =
k=0

x2k N

r (2k)

=
k=0

x2k N

2 rk

N 2

=
k=0

yk rk N ,
2

r = 0, 1, . . . , N/2 1.

(12.3)
N 2

N 4

Zr =
k=0

x4k+1 N

r (4k)

=
k=0

x4k+1 N

4 rk

N 4

=
k=0

zk rk N ,
4

r = 0, 1, . . . , N/4 1.

(12.4)
N 2

N 4

Hr =
k=0

x4k+3 N

r (4k)

=
k=0

x4k+3 N

4 rk

N 4

=
k=0

hk rk N ,
4

r = 0, 1, . . . , N/4 1.

After these three subproblems are each (recursively) solved by the split-radix algorithm, the solution to the original problem of size N can be obtained according to (12.1) for r = 0, 1, . . . , N 1. Because Yr+k N = Yr for 0 r N/2 1, Zr+k N = Zr for 2 4 0 r N/4 1, and Hr+k N = Hr for 0 r N/4 1, equation (12.1) can be
4

2000 by CRC Press LLC

rewritten in terms of Yr , Yr+ N , Zr , and Hr for 0 r N/4 1 as shown below.


4

r 3r Zr + N Hr Xr = Yr + N

(12.5)

r 3r = Yr + N Zr + N Hr ,

0r

N 1, 4 N 1, 4

(12.6)

Xr+ N = Yr+ N + N
4 4 4

r+ N 4

3(r + N 4 ) Zr + N Hr

r 3r = Yr+ N j N Zr N Hr ,

0r

(12.7)

Xr+ N = Yr + N
2

r+ N 2

3(r + N 2 ) Zr + N Hr

r 3r = Yr N Zr + N Hr ,

0r

N 1, 4 N 1. 4

(12.8)

Xr+ 3N = Yr+ N + N
4 4 4

N r + 34

N 3(r + 34 ) Zr + N Hr

r 3r = Yr+ N + j N Zr N Hr ,

0r

The computation represented by (12.5), (12.6), (12.7), and (12.8) is referred to as an unsymmetric DIT buttery computation in the literature as shown in Figure 12.1. Figure 12.1 The split-radix DIT FFT butteries.

12.2.1

Analyzing the arithmetic cost

To determine the arithmetic cost of the split-radix DIT FFT algorithm, observe that r 3r N Zr and N Hr must be computed before the two partial sums can be formed. Since these two subproblems are each of size N/4, N/2 complex multiplications and N/2 complex additions are required in order to obtain the partial sums. Among the N/2 complex multiplications, there are four special cases which were already identied in the earlier discussion of the radix-4 algorithm: they are two cases of multiplication by 1 and two cases of multiplication by an odd power of 8 . Recall that the former two cases are trivial, and only four real operations rather than six would be used in the latter two cases. Thus, (3+3) (N/2 4)+4 2+2 (N/2) = 4N 16 nontrivial real operations are performed in the rst stage of buttery computation. In the second stage of the buttery computation, only N complex additions or 2N real operations are required. The total cost for a single split-radix step thus involves 6N 16 nontrivial real operations (ops).

2000 by CRC Press LLC

To set up the recurrence equation, the boundary conditions for both N = 4 and N = 2 are needed; when the size of a subproblem is reduced to 8, the three subsequent subproblems are of sizes 4, 2 and 2. As noted earlier, T (4) = 16 ops, and T (2) = 4 ops. The cost of the split-radix FFT algorithm (in terms of nontrivial ops) can be represented by the following recurrence: N N n T 2 + 2T 4 + 6N 16 if N = 4 > 4 , (12.9) T (N ) = 16 4 if N = 4 , if N = 2 .

Solving (12.9) (see Appendix B), one obtains the solution (12.10) T (N ) = 4N log2 N 6N + 8 .

12.3

The Split-Radix DIF FFTs

A split-radix DIF FFT algorithm can be derived by recursively applying both radix-2 and radix-4 DIF FFT algorithm to solve each subproblem resulting from decimating the output frequency series in a similar fashion. That is, the frequency series is recursively decimated into three subsets, i.e., the set denoted by Yk = X2k for 0 k N/2 1, the set denoted by Zk = X4k+1 for 0 k N/4 1, and the set denoted by Hk = X4k+3 for 0 k N/4 1 as shown below. The derivation begins with the discrete Fourier transform dened by (3.1). Using the results developed earlier for the radix-2 DIF algorithm in (3.11), one obtains
N 2

1 r x N +

N 1

Xr = (12.11) =
=0 =0
N 2

r x N =N 2 rN r N ,

x +x

+N 2

N 2

r = 0, 1, . . . , N 1.

By letting Yk = X2k , y = x + x
N 2

+N 2 1

, one subproblem of half the size is dened by x +x k N


2

Yk = X2k = (12.12) =
=0 =0
N 2

+N 2

y k N ,
2

k = 0, 1, . . . , N/2 1.

To construct the other two subproblems of size N/4, begin with the DFT denition in (3.1) and use the results developed earlier for the DIF radix-4 algorithm in (11.22).
N 1

Xr = (12.13) =
=0 =0
N 4

r x N , 1

r = 0, 1, . . . , N 1 ,

x +x

+N 4

r 4 +x

+N 2

2r 4 +x

N + 34

3r r N 4 .

2000 by CRC Press LLC

By substituting r = 4k + 1 and r = 4k + 3, one again obtains (12.14)


N 4

Zk = X4k+1 =
=0
N 4

x +x
1

+N 4

4k+1 4 +x

+N 2

2(4k+1)

+x

N + 34

3(4k+1)

(4k+1)

=
=0
N 4

x x
1

+N 2

j x

+N 4

N + 34

N k N
4

=
=0

z k N ,
4

k = 0, 1, . . . , N/4 1 .

(12.15)
N 4

Hk = X4k+3 =
=0
N 4

x +x
1

+N 4

4k+3 4 +x

+N 2

2(4k+3)

+x

N + 34

3(4k+3)

(4k+3)

=
=0
N 4

x x
1

+N 2

+j x

+N 4

N + 34

3 k N N
4

=
=0

h k N ,
4

k = 0, 1, . . . , N/4 1 .

To form these three subproblems using two stages of unsymmetric buttery computation, the computation of the partial sums is again rearranged to facilitate the buttery computation. (12.16) (12.17) (12.18) (12.19) y y = x +x
+N 4 +N 2

,
N + 34

0 ,

= x

+N 4

+x

N 1. 4 N 0 1. 4
+N 4

z =

x x
+N 4

+N 2

j x
N + 34

N + 34

N ,
3 N ,

h = j x

+ x x

+N 2

N 1. 4 N 1. 0 4

The computation represented by (12.16), (12.17), (12.18), and (12.19) again yields an unsymmetric DIF buttery computation as depicted in Figure 12.2.

2000 by CRC Press LLC

Figure 12.2 The split-radix DIF FFT butteries.

12.4

Notes and References

The split-radix FFT was originally developed by Duhamel and Hollmann [39] in 1984, and it was subsequently extended and implemented for complex, real and real-symmetric data by Duhamel in [38]. In 1986, Sorensen, Heideman, and Burrus presented an indexing scheme which eciently implemented the Duhamel-Hollmann split-radix FFT [86]. Both DIF and DIT Fortran programs were presented in [86]. The history of the ideas on the fast Fourier transforms from Gauss to the split-radix algorithm is presented in [41].

2000 by CRC Press LLC

You might also like