14.08.2013 Views

Fast Fourier Transforms on Motorola's Digital Signal Processors

Fast Fourier Transforms on Motorola's Digital Signal Processors

Fast Fourier Transforms on Motorola's Digital Signal Processors

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

The twiddle factors appear to be in the Bergland order<br />

also, as shown Figure 6-1, if more than 16 points<br />

of real FFT are carried out. The next secti<strong>on</strong> explains<br />

how to c<strong>on</strong>vert a normal order of twiddle factors to<br />

the Bergland order and how to c<strong>on</strong>vert the Bergland<br />

ordered outputs to normal order. The <strong>on</strong>ly operati<strong>on</strong><br />

performed for multiplying by -j is a re-labeling of half<br />

of the current outputs as imaginary inputs for the next<br />

stage. Thus, in Figure 4-2 all butterflies, except <strong>on</strong>e<br />

with W 0 , have the crossed inputs to the butterfly,<br />

even though the butterfly in each group is identical.<br />

An additi<strong>on</strong>al benefit of ‘no operati<strong>on</strong>’ is the reducti<strong>on</strong><br />

of the number of passes, log 2 (N)-1, except for<br />

<strong>on</strong>e additi<strong>on</strong> and <strong>on</strong>e subtracti<strong>on</strong>. The final algorithm<br />

is shown in Figure 6-2.<br />

The Bergland butterfly differs from the Cooly-Tukey<br />

butterfly simply in that the Bergland requires two more<br />

c<strong>on</strong>jugate operati<strong>on</strong>s, which are d<strong>on</strong>e by re-labeling<br />

(see Figure 6-3). Essentially, the number of arithmetic<br />

operati<strong>on</strong>s required by both algorithms is the same.<br />

Although re-labeling can be implemented in parallel<br />

with other arithmetic operati<strong>on</strong>s without c<strong>on</strong>suming<br />

instructi<strong>on</strong> cycle time, it does require a data move.<br />

This extra traffic may have an impact <strong>on</strong> the implementati<strong>on</strong><br />

later <strong>on</strong>. Figure 6-3 depicts the Bergland<br />

butterfly. Butterfly (a) is a simplified versi<strong>on</strong> of (b)<br />

since no complex multiplicati<strong>on</strong> is carried out when<br />

w=1. Note that the inputs in (b) have been re-labeled<br />

to reflect a multiplying -j operati<strong>on</strong>. To calculate the<br />

butterfly (a) two additi<strong>on</strong>s and two subtracti<strong>on</strong>s are<br />

needed al<strong>on</strong>g with four real multiplicati<strong>on</strong>s, three real<br />

additi<strong>on</strong>s, and three real subtracti<strong>on</strong>s.<br />

6-4 MOTOROLA

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!