Thursday , October 22 2020

Suscribete gratis a nuestro boletin semanal

VISIONA . DESARROLLADORES . CONECTADOS .

Suscribete nuestro boletin semanal

PATROCINADORES
Home / Diseño Digital / Optimizando códecs DSP con ARM Cortex-M

Optimizando códecs DSP con ARM Cortex-M

En un documento técnico la compañía ARM muestra cómo se pueden acelerar los códecs utilizando extensiones de DSPs incorporadas a los chips Cortex-M, y así evitar recurrir a los costosos chips DSPs dedicados.

ElectronicosOnline.com Magazine / Oswaldo Barajas

Los proyectos que requieren procesamiento de señales digitales a menudo suelen estar caracterizados por los costosos presupuestos que necesitan, principalmente por el uso de chips DSPs dedicados y soluciones más asequibles pero no menos complejas como la implementación de microcontroladores que requieren bibliotecas matemáticas de punto fijo.

 

Cuando la topología del proyecto incluye el uso de procesadores ARM Cortex-M, existe un elemento que permite sacar el mejor provecho a los códecs de DSPs utilizando extensiones compatibles que están diseñadas para trabajar con estos chips y los cuales permiten acelerar los códecs de procesamiento de señales digitales.

En un documento titulado Improving Codec Execution With ARM Cortex-M Processors, la compañía licenciadora de arquitecturas microelectrónicas comparte una guía detallada sobre las formas para obtener el mejor provecho al trabajar con sistemas DSPs con el objetivo primario de reducir costos de desarrollo.

Instrucciones para la gama de procesadores ARM Cortex-M. Incluyen instrucciones de DSPs y Punto Flotante para maximizar el rendimiento.

 

Entre otras cosas, el documento aborda la variedad de extensiones de DSP que se pueden utilizar sobre los Cortex-M y sus beneficios a nivel de sistema. También la forma de convertir sistemas basados en circuitos analógicos en software aplicando software de modelado como MathWorks MATLAB, o el diseñador de filtros ASN.

Del mismo modo, cómo utilizar las Unidades de Punto Flotante (FPUs) con la gama de procesadores Cortex-M para elevar el rendimiento de los sistemas; cómo software de fuente abierta como el CMSIS-DSP y su librería para crear filtros IIR y FIR, además de Transformadas Rápidas de Fourier (FFT).

“La industria de sistemas embebidos está experimentando actualmente una importante transición impulsada por la necesidad de contar con dispositivos inteligentes, de tiempo real, que giren en torno al esquema I/O. Como los sistemas necesitan hacer más para permitir un mayor rendimiento de computación, se está forzando a los dispositivos a hacer mucho más a nivel de software que nunca antes. En el pasado, los datos podían ser enviados a la nube para su procesamiento y análisis, pero a medida que los sistemas inteligentes de tiempo real comienzan a llenar el paisaje, ese procesamiento debe hacerse al límite”, menciona el documento de ARM.

- PUBLICIDAD -
El entorno de desarrollo de ARM también posee filtros IIR para bandas de entre 0 y 25 Hz, y 64.104 y 250 Hz.

 

Elevar la potencia de estos sistemas también se acompaña de una variedad de retos y desventajas, por ejemplo, los sistemas tienden a elevar su consumo de energía de forma considerable, también generar un sistema altamente eficiente como para procesar la gran cantidad de señales digitales existentes y el último aspecto no menos importante, minimizar los costos de desarrollo.

De acuerdo al documento de ARM, las extensiones de DSP proporcionan a los microcontroladores un conjunto de instrucciones extendidas incluyendo las del DSP, como los Datos de Instrucción Única Múltiple (SIMD) que permiten que los algoritmos de estos chips se ejecuten más rápidamente que en un microcontrolador estándar.

Para un microcontrolador estándar está limitado el conjunto de instrucciones DSP, lo que significa que si se necesita un DSP se debe utilizar un procesador DSP adicional o se deben gastar más ciclos de reloj en el microcontrolador para ejecutar una biblioteca de software que pueda añadir esa capacidad al sistema general.

Librería CMSIS-DSP es gratuita y posee aproximadamente 60 algoritmos que pueden utilizar los desarrolladores para acelerar el desarrollo del software para DSPs.

 

Entre los beneficios de contar con extensiones DSP para microcontroladores están: un ahorro significativo en el costo total de los materiales (BOM, por sus siglas en inglés), la reducción de los niveles de complejidad a nivel de sistema por el hecho de evitar la necesidad de memoria compartida y una comunicación dedicada al DSP, además de arquitecturas de multiprocesamiento y la adquisición de otros módulos adicionales para incrementar el rendimiento del DSP.

También hay una ventaja en el uso de extensiones DSP para MCUs, como la disminución de tiempo y recursos para el desarrollo de software dedicado para soportar la compilación/depuración/IDE en lenguajes de alto nivel como C o C++.

Las instrucciones SIMD por su parte, pueden operar en 8 o 16 bits, lo que significa que cada instrucción puede trabajar en múltiples piezas del dato dentro de un mismo registro. Esta característica es sumamente útil, según reconoce ARM, debido a que a menudo los sistemas de 8 y 16 bits son los más utilizados, mientras que los entornos de 32 bits son raros y requieren por supuesto otros módulos que estén alineados a su propia demanda de robustez.

“Muchos factores dentro del sector de sistemas embebidos están impulsando la necesidad de reducir los costos y mejorar el rendimiento de ejecución al límite. A medida que empecemos a empujar el procesamiento hasta el límite, los desarrolladores de sistemas embebidos necesitarán aprovechar cada vez más las capacidades de los chips DSPs. Los procesadores y el ecosistema de ARM Cortex-M han construido la base que los desarrolladores necesitan para implementar fácilmente los códecs de DSP mientras mejoran las capacidades de computación a través de las extensiones y bibliotecas de DSP, así como la facilidad para minimizar la lista de materiales y sus costos (BOM)”, puntualiza el documento de ARM.

- PUBLICIDAD -

Revisa también ...

Industria lanza primera herramienta abierta para diseño de ASICs

El proyecto lleva por nombre Open PDK y está coordinado por la Fundación FOSSi (Free …

NULL