Autor Tema: Intrucciones DSP en STM32F4  (Leído 2347 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado JKM

  • PIC10
  • *
  • Mensajes: 1
Intrucciones DSP en STM32F4
« en: 30 de Septiembre de 2014, 19:52:06 »
Hola Gente!

Tengo una duda.

Estoy implementado, con un microcontrolado STM32F4, un reproductor WAV al cual le aplico unos filtro IIR para eliminar ciertas frecuencias.
La finalidad es implementar algo parecido a un ecualizador.

Tengo entendido que estos micro poseen instrucciones optimizadas para DSP y en mi caso simplemente puse el codigo en C de un filtro generico.
Nose si en realidad este se esta implementado con esas instrucciones. Hay que habilitar algo para el uso de DSP o directamente el compilador ya utiliza las intrucciones optimizadas?

Por ejemplo este es el filtro pasa bajo que tengo, que anda, pero nose si esta utilizando las intrucciones especificas de DSP o estos quemando recursos....

float filtro_low_2(float x)
{

   static float vt_1 = 0, vt_2 = 0, yt, vt;

   vt= x  + 0.19507203E+01 * vt_1  -.97258544E+00 * vt_2;
   yt = vt   -.19681747E+01 * vt_1 +   0.10000000E+01 * vt_2;
   vt_2 = vt_1;
   vt_1 = vt;

   return(yt);
}

 float filtro_low(float x)
{
   static float vt_1 = 0, vt_2 = 0, yt, vt, yt2;

   vt= x * 0.75627159E-01 + 0.18378850E+01 * vt_1  -.85192148E+00 * vt_2;
   yt = vt   -.18767974E+01 * vt_1 +   0.10000000E+01 * vt_2;
   vt_2 = vt_1;
   vt_1 = vt;
   yt2 = filtro_low_2(yt);
   return(yt2);
}

Desde ya, muchas gracias!

Desconectado MerLiNz

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2463
Re: Intrucciones DSP en STM32F4
« Respuesta #1 en: 01 de Octubre de 2014, 07:27:33 »
siempre puedes ver el codigo generado en ASM y ahi verificar que utiliza las instrucciones DSP, sin embargo yo creo que no las utiliza, por defecto normalmente suelen usar librerias que contiene el compilador, luego existen otras librerias con funciones DSP, tendrias que enterarte de como va.

Toma, por si esto te ayuda: