¿Cuáles son las restricciones (matemáticas) de un DSP TMS320C6713?

0

Tengo una función que calcula la suma de los números pares en una secuencia de Fibonacci menos que un límite.

¿Debería preocuparme por este cálculo? ¿Puede el TMS320C6713 manejarlo?

Cuando ejecuto el siguiente código en Visual Studio en mi computadora de 64 bits con un valor de 4294967295 (2 32 -1), devuelve 4611685999100035072.

unsigned long long int sum = 0;
unsigned int f_n0 = 0;
unsigned int f_n1 = 1;
unsigned long long int f_n2 = 0;

unsigned long long int list_fibonacci(unsigned long long int boundary)
{
   while ((f_n2 = f_n0 + f_n1) < boundary)
   {
       if (f_n2 % 2 == 0)                      
          sum += f_n2;                         
       f_n0 = f_n1;                         
       f_n1 = f_n2;                         
   }
   return sum;
}

Gracias.

    
pregunta massakrienen

1 respuesta

0

Ha pasado un tiempo desde que trabajé en DSP's de TI, para responder, sí, lo hará y lo hará rápido. Si tiene la intención de realizar muchas de estas operaciones, deberá tener en cuenta el tiempo de envío y recepción. Harán operaciones de 256 bits (VLIW). Los DSP también tienen una gran cantidad de registros y funciones especiales que deseará obtener familiarizado con este documento. El poder de un DSP se utiliza mejor cuando se optimizan las funciones con el ensamblaje, los compiladores no hacen un gran trabajo. Para hacer que su función se ejecute rápidamente, necesitará optimizar la función mod \ remainder ya que esta función no tiene un equivalente de ensamblaje directo. También querrá ver cómo se almacenan en la memoria f_n0, f_n1 y f_n2. Suponemos que desea que esto se ejecute muy rápido.

La mejor manera sería compilar la función y cargarla en el DSP, luego pasar y optimizar el ensamblaje a mano.

    
respondido por el laptop2d

Lea otras preguntas en las etiquetas