Si, el proceso es casi como dices:
Auque uso un ADC de 12 bits , el resultado lo almaceno en un "signed int", y la señal seno o coseno de referencia tambien ,por lo que al final el proceso de multiplicación del MAC es:
16 x 16 => 32 bits
si a esto le sumamos bits extras debidos al proceso acumulativo, podría llegar a usar los 48 bits....
En las pruebas que estoy haciendo con 500 muestras no paso de magnitudes que necesiten más de 36 bits , pero como ya comenté, el código que uso está preparado para 48 bits, asi que ... me sobra espacio
Luego, como dices habrá que ver que parte es útil.
Ahora estoy probando el control y carga del DAC externo para generar la señal senoidal de referencia... mi problema va a ser que con un PIC a 40 Mhz y 96 muestras por ciclo no podré pasar de 1000 Hz.