Buscar especificaciones para procesadores de señales digitales (DSP) para una aplicación de audio determinada [cerrado]

3

Estoy encontrando dificultades para elegir una solución de procesador adecuada para mi aplicación desde mi experiencia nula con DSP:

  • 8ch 24-bit @ 11025Hz I2S Entrada TDM
  • Formación de haces + ASNR
  • Selección de fuente múltiple de MSS
  • DRC Dynamic Range Compession
  • Análisis de dominio de frecuencia ( FFT real )
  • 5 segundos STFT
  • Búsqueda de picos
  • Comparación algoritmos
  • Conectividad ( Bluetooth @ Baja tasa de transferencia, solo notificaciones)

EstoyconsiderandoundiseñoqueincluyeunMCUhostosoloelDSP.

HastaahoraestoyviendoprocesadoresSigmaDSP:

  • Pros:seproporcionólainterfazI2STDM,blogaritméticoparalaformacióndehaz,costo
  • Contras:Interfazdeprogramacióngráficaconfallosylimitados(sinprogramaciónenc),soloestándisponibleslasventanasdeanálisisdesuperposiciónFFTRadix-2y50%,faltadedocumentaciónparaenviarunaseñalatravésdeSPIalcontroladorhost

TambiénestoyconsiderandoprocesadoresSHARC,queencuentroexcesivoparamiaplicación(sincódecs,sinsalida,puertodeentradaúnico,etc.):

  • Ventajas:flexibilidaddeprogramaciónenC,noesnecesarioelcontroladordelhost,siemprequelainterfazI2STDM
  • Contras:faltadeexperienciaconlaprogramaciónDSP,costodelprocesador,kitsdedesarrollo,emuladoresysoftware

Mispreguntasson:

  1. ¿Cómodeterminarlasfuentesdelsistemarequeridas(memoria,frecuenciadereloj,etc.)?
  2. ¿Deboconsultaralgunaguía/recomendación/otrasfamilias/marcas?

Hardwarequeestoyusando...
2xMicArray: enlace
I2S TDM a USB: enlace

Muchas gracias, Pedro

    

1 respuesta

2

No hay fórmulas mágicas. Sin embargo, para un comienzo muy aproximado, encuentre el número de acumulaciones múltiples (MAC) que necesita hacer por segundo. Eso le da un límite inferior en la velocidad de instrucción.

Para hacerlo, primero debes decidir algunos parámetros:

  1. La frecuencia de muestreo de cada señal.

  2. La cantidad de señales a las que aplicará las circunvoluciones.

  3. El ancho de cada convolución en muestras.

El total de MAC por segundo es el producto de todos estos. Calcule que cualquier DSP competente puede hacer un MAC en cada ciclo una vez que se pone en marcha por convolución. Por supuesto, habrá ciclos adicionales para iniciar y finalizar cada convolución, controlar la sobrecarga, comunicarse con cualquier otro lugar, etc. Por ejemplo, puede comenzar reservando el 25% de los ciclos del procesador a otros que no sean MAC.

A menudo, estos procesadores vienen en una familia de dispositivos relacionados. Una estrategia es hacer un prototipo con el mejor de los mejores, y luego reducirlo a lo que realmente necesita en la versión de producción. El margen adicional también le permite realizar pruebas de simulación en el prototipo, agregar código que podría ayudar en la depuración o la verificación, etc. Puede ser muy útil tener un margen adicional significativo en el primer prototipo.

    
respondido por el Olin Lathrop

Lea otras preguntas en las etiquetas