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.

takes four points in and four points out. The number<br />

of butterflies in each pass is N/4. Each butterfly<br />

uses four multiplicati<strong>on</strong>s, three additi<strong>on</strong>s, and three<br />

subtracti<strong>on</strong>s, except that the type (a) butterfly uses<br />

<strong>on</strong>ly two additi<strong>on</strong>s or two subtracti<strong>on</strong>s. For N=2 m ,<br />

Bergland algorithm may need<br />

i 1<br />

4 × N⁄ 4 4 BB 2 –<br />

i 1<br />

[ + ( – 1)<br />

]N 2 +<br />

m– 1<br />

+<br />

⁄ ( )<br />

∑<br />

i = 2<br />

Eqn. 6-4<br />

instructi<strong>on</strong> cycles to perform a N-point real FFT,<br />

where BB is the number of instructi<strong>on</strong>s for the Bergland<br />

butterfly. Theoretically, for the DSP96002<br />

and the DSP56001, BB should be 4 and 6, respectively.<br />

If the normal order output is desired, then<br />

c<strong>on</strong>verting Bergland order data to the normal order<br />

data must be included in the performance estimati<strong>on</strong>.<br />

At least two more instructi<strong>on</strong>s have to be<br />

added to the last pass for accessing the Bergland<br />

order table. The performance of the Bergland algorithm<br />

including unscrambling could be:<br />

i 1<br />

N 4 BB 2 –<br />

i 1<br />

[ + ( – 1)<br />

] N 2 +<br />

m– 1<br />

+ ( ⁄ ) +<br />

( N⁄ 2)<br />

– 1<br />

∑<br />

i = 2<br />

Eqn. 6-5<br />

Eventually, the real performance of an FFT is determined<br />

by the architecture of the DSP <strong>on</strong> which<br />

the FFT runs. As described in SECTION 4.4, the<br />

actual performance of the FFT is determined by<br />

the number of data paths, the number of registers,<br />

the instructi<strong>on</strong> type, the cycle time of DO loop, and<br />

the memory organizati<strong>on</strong>. In other words, a good<br />

6-8 MOTOROLA

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

Saved successfully!

Ooh no, something went wrong!