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.

implementati<strong>on</strong> complexity. Ideal implementati<strong>on</strong><br />

complexity c<strong>on</strong>siders <strong>on</strong>ly the implementati<strong>on</strong> of the<br />

core algorithm by the given microprocessor’s instructi<strong>on</strong><br />

capabilities, such as available instructi<strong>on</strong><br />

type, addressing mode, parallel data move, etc.<br />

Ideal implementati<strong>on</strong> complexity indicates the n<strong>on</strong>overhead<br />

performance of a given algorithm <strong>on</strong> a microprocessor,<br />

and always provides an optimistic<br />

estimati<strong>on</strong> of an algorithm’s performance. Practical<br />

complexity denotes the ideal implementati<strong>on</strong> complexity<br />

plus the structure overhead of the<br />

microprocessor. (Structure overhead includes all<br />

required instructi<strong>on</strong>s not associated with the core<br />

algorithm.) Moving pointers, setting up DO loops,<br />

jumps to subroutines, and c<strong>on</strong>diti<strong>on</strong>al jumps are<br />

typical structure overhead in microprocessors.<br />

By distinguishing the different complexities, <strong>on</strong>e<br />

can easily determine which microprocessor is competent<br />

for each aspect, and which instructi<strong>on</strong> or<br />

address mode is critical to the specific algorithms.<br />

Also, chip designers may derive clues from the<br />

complexity analysis for determining which instructi<strong>on</strong><br />

or address mode should be added to the next<br />

revisi<strong>on</strong>. For example, the DSP96002 supports<br />

FMPY||ADD||SUB — an instructi<strong>on</strong> with two parallel<br />

moves. The theoretical complexity of a radix-2 butterfly<br />

is four real multiplicati<strong>on</strong>s and six additi<strong>on</strong>s or<br />

subtracti<strong>on</strong>s. Thus, the ideal implementati<strong>on</strong> complexity<br />

of a radix-2 FFT <strong>on</strong> the DSP96002 is four<br />

instructi<strong>on</strong> cycles. If each butterfly needs an average<br />

of 0.25 instructi<strong>on</strong>s to set up a pointer or DO<br />

loop, etc., the practical complexity of radix-2 is 4.25<br />

instructi<strong>on</strong>s. The ratio of ideal implementati<strong>on</strong> com-<br />

5-2 MOTOROLA

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

Saved successfully!

Ooh no, something went wrong!