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
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
4. Bit-reversed addressing mode<br />
5. Sufficient number of registers<br />
6. <str<strong>on</strong>g>Fast</str<strong>on</strong>g> I/O to provide real time data (in real-time<br />
applicati<strong>on</strong>s)<br />
4.2 Radix-2 DIT and<br />
DIF Butterflies<br />
Theoretically, radix-2 decimati<strong>on</strong> in time (DIT) butterflies<br />
and decimati<strong>on</strong> in frequency (DIF) butterflies have<br />
the same computati<strong>on</strong>al complexity: three additi<strong>on</strong>s,<br />
three subtracti<strong>on</strong>s, and four multiplicati<strong>on</strong>s. Since most<br />
DSPs have <strong>on</strong>ly <strong>on</strong>e hardware multiplier, the minimum<br />
cycle time for multiplicati<strong>on</strong> for <strong>on</strong>e DIT or DIF butterfly<br />
is four instructi<strong>on</strong> cycles. However, <strong>on</strong> the DSP56001,<br />
a MAC instructi<strong>on</strong> can implement <strong>on</strong>e multiplicati<strong>on</strong><br />
and <strong>on</strong>e additi<strong>on</strong> in parallel in a single instructi<strong>on</strong> cycle.<br />
Four of the six additi<strong>on</strong>s or subtracti<strong>on</strong>s in a DIT butterfly<br />
can be executed in parallel with four multiplicati<strong>on</strong>s,<br />
and two more additi<strong>on</strong>s are required to finish the DIT<br />
butterfly calculati<strong>on</strong>. Due to data dependence, a DIF<br />
butterfly can implement <strong>on</strong>ly two additi<strong>on</strong>s in parallel<br />
with two multiplicati<strong>on</strong>s. Thus, <strong>on</strong>e DIF butterfly calculati<strong>on</strong><br />
requires four multiplicati<strong>on</strong>s plus four additi<strong>on</strong>s<br />
(see Figure 4-3).<br />
The DSP96002 features a special instructi<strong>on</strong>,<br />
FMAY||ADD||SUB, which can implement either a DIT<br />
or a DIF butterfly in four instructi<strong>on</strong> cycles. Although<br />
the DSP56156 has a MAC instructi<strong>on</strong>, the lack of a<br />
dual memory write operati<strong>on</strong> plus c<strong>on</strong>straints <strong>on</strong> ad-<br />
4-4 MOTOROLA