Technical discussions about Freescale (Motorola) DSPs (including the DSP56000, DSP56300, DSP56600, 56800 DSPs).
Hello, all. My goal is to use 56F8323 Motorola's Hybrid Controller for filtering a sinusoidal signal sampled up to 96 KHz with a bandpass. To implement the digital filter I've to multiply 4 float values and (add/subtract) the results, between every sample. At this moment I use the uController to get the signal from the integratedADc and reproduce the sample through a SPI DAc, all at 48Khz (to not be ambitious). For test the performance I add between acquisition and reproduction a stupid code that multiply and add some values. The code's: aux=aux+aux; aux=aux*aux; aux=aux*aux; aux=aux*aux; The compiler translate every instruction to 3 'move.l' and a 'jsr' asm instructions, who spend 18uS on 56F8323@60Mhz (Which's a lot of time because the period@48Khz is just 20uS long). Somebody can show me the way to use the 56F8300E core to be able to calculate the 4 multiplications and the 3 adding float operations within less than 20uS(48K) or 10uS(96K) ?