Forums

Motorola split56/split563 macros

Started by cmkessell January 17, 2002
Has anyone successfully used Motorola's split56.asm or split563.asm
macros for unscrambling the data after using a N/2-point complex FFT
to transform N real data points? I always get garbage out (running
on a 56311), whereas my own (much slower) split routine works fine.

It would be nice to have some confidence that the Motorola code is OK
so I can look for the problem elsewhere...

Chris




I know this is a very old question, but the same issue just got me
as a half-clueless(ful) beginner in this area. I made a few
observations about this macro:

- it expects a few modulo registers to be left as cfft563 left them
(check the references to r? with no initialization of m?)

- it expects the IDATA to be the original FFT's input data, and is
the _destination_ of the data from this macro. Notice its companion
cfft563 is not done in place.

To make it work with an inplace complex fft, make a copy of your
input data before running the FFT. You could reschedule FFT time
away from making the copy by having the data collection write to two
areas as the samples come in. Still seems like unnecessary
computations though. I'd like to find a good in place real valued
FFT. I've seen very good ones in C, but I'm new to 56K assembly.

--- In motoroladsp@y..., "cmkessell" <C_Kessell@t...> wrote:
> Has anyone successfully used Motorola's split56.asm or
split563.asm
> macros for unscrambling the data after using a N/2-point complex
FFT
> to transform N real data points? I always get garbage out
(running
> on a 56311), whereas my own (much slower) split routine works fine.
>
> It would be nice to have some confidence that the Motorola code is
OK
> so I can look for the problem elsewhere...
>
> Chris