Combinación de DSP con RTOS e IOT

Seguir + estrella cuenta oficial , no te pierdas contenido emocionante

32ff1858948cdcbd0ae49afecbe0ad79.gif

fuente | red

Con la cobertura integral de la red básica, Internet de las cosas (IOT) se ha desarrollado rápidamente y cada vez hay más dispositivos terminales de IoT.

Este artículo hablará sobre la nueva generación de tecnología DSP híbrida equipada con RTOS, que es la mejor opción para el Internet de las Cosas.

Evolución de la tecnología DSP

DSP se utiliza para convertir y procesar señales analógicas en el mundo real.Esta operación de procesamiento se realiza a través de complejos algoritmos de procesamiento de señales. Como tecnología que apareció en la década de 1980, DSP ha logrado grandes avances en términos de funciones de hardware, herramientas de desarrollo de software e infraestructura. Los algoritmos en los primeros años se programaron en el DSP en lenguaje ensamblador. A medida que el mercado de DSP se expandió y los algoritmos se volvieron más complejos, su arquitectura evolucionó y impulsó el desarrollo de compiladores de lenguaje de alto nivel.

Los chips con núcleos DSP incorporados generalmente se integran con la memoria en el chip, que suele ser lo suficientemente grande como para acomodar todo el programa requerido para realizar tareas dedicadas. La nueva generación de aplicaciones DSP cubre el procesamiento de audio/voz, procesamiento de imágenes, procesamiento de señales de telecomunicaciones, procesamiento de datos de sensores y control de sistemas. El mercado de IoT de hoy cubre casi todas las combinaciones de los muchos casos de uso anteriores. La firma de analistas de la industria Markets and Markets espera que el mercado global de tecnología IoT crezca a $ 566.4 mil millones para 2027. Frente a un mercado de IoT tan grande, una nueva generación de tecnología DSP es crucial.

¿Por qué DSP es una buena opción para los dispositivos IoT?

El Internet de las cosas permite la comunicación y la conectividad entre todo en el mundo real mediante el uso de diferentes tipos de sensores para recopilar datos. DSP analiza y procesa la señal que cambia continuamente del sensor. Hoy en día, ha aparecido el concentrador de sensores DSP (como CEVA-SensPro2), que se usa para procesar y fusionar información de múltiples sensores, y se usa para el razonamiento de redes neuronales sensibles al contexto. DSP está diseñado para analizar y procesar varias señales del mundo real, como audio y video, temperatura, presión o humedad, y sus tareas involucran cálculos digitales repetitivos en tiempo real precisos y exactos. A medida que crece el mercado de IoT y se implementan más y más sensores, todos los datos recopilados deben procesarse de manera eficiente en tiempo real. Cada vez está más claro que el procesamiento de datos debe realizarse directamente en los dispositivos IoT en lugar de enviarlos a la nube para su procesamiento.

Otra tendencia que está ocurriendo actualmente con los dispositivos IoT es el uso cada vez mayor de algoritmos basados ​​en inteligencia artificial (IA) para la localización de datos. Los algoritmos de IA se basan en modelos de redes neuronales y requieren un alto nivel de paralelismo para ejecutarse de manera efectiva. Las capacidades de cómputo paralelo son una ventaja clave de los DSP sobre las unidades centrales de procesamiento (CPU) de propósito general. Para cumplir con este requisito, las arquitecturas DSP modernas tienden a utilizar funciones de datos múltiples de instrucción única (SIMD) y de vector amplio.

En resumen, una poderosa solución basada en DSP que puede satisfacer simultáneamente las demandas de computación de alto rendimiento y bajo consumo de energía de los dispositivos IoT modernos.

¿Por qué DSP es una buena combinación con RTOS?

Así como un DSP es un procesador de propósito especial, un RTOS también es un sistema operativo de propósito especial. Los DSP se dedican a procesar datos del mundo real de manera extremadamente rápida y confiable, mientras que los RTOS se dedican a cumplir de manera confiable los requisitos de tiempo específicos en términos de tiempo de respuesta/reacción. Los DSP son más compactos en comparación con las CPU de uso general, al igual que los RTOS en comparación con los sistemas operativos normales. Estas características se adaptan perfectamente a las necesidades de los dispositivos IoT, lo que hace que los DSP y RTOS sean ideales para aplicaciones IoT.

Históricamente, los dispositivos integrados generalmente han utilizado un microcontrolador de propósito especial, generalmente de 8 o 16 bits, que puede funcionar sin un RTOS. Pero los dispositivos IoT de hoy en día son más complejos y requieren una CPU de 32 bits combinada con un DSP con un RTOS para administrar las funciones de control y ejecutar el procesamiento de señales complejas.

Pero la pregunta es, ¿es suficiente la nueva generación de DSP para completar simultáneamente las funciones de control y procesamiento de señales de los dispositivos IoT? La respuesta es sí. IoT y otros dispositivos integrados están adoptando rápidamente una arquitectura DSP híbrida capaz de proporcionar funciones tanto orientadas a DSP como orientadas a controladores. Este DSP híbrido tiene las características de admitir la implementación de arquitectura de palabra de instrucción muy baja (VLIW), operación de datos múltiples de instrucción única (SIMD), operación de punto flotante de precisión única, tamaño de código compacto, RTOS completo, cambio de contexto ultrarrápido, predicción de rama dinámica, etc. Esto elimina la necesidad de un procesador adicional en el dispositivo para ejecutar el RTOS.

RTOS para DSP

Un RTOS basado en DSP está diseñado para aprovechar al máximo las funciones de alto rendimiento de un DSP. Es un sistema operativo multitarea preventivo basado en prioridades que proporciona una latencia de interrupción muy baja. Este tipo de RTOS viene con controladores, interfaces de programación de aplicaciones (API) y bibliotecas de soporte de chips (CSL) para ejecutar funciones DSP personalizadas para chips DSP. Se pueden controlar todos los periféricos en chip, como la memoria caché, el acceso directo a la memoria (DMA), los temporizadores, la unidad de interrupción, etc. Como resultado, los desarrolladores de aplicaciones de IoT pueden configurar fácilmente el RTOS para manejar de manera eficiente las solicitudes de recursos y administrar el sistema.

RT-Thread es un RTOS de código abierto optimizado para dispositivos IoT, con un uso de recursos extremadamente bajo, alta confiabilidad y gran escalabilidad. RT-Thread es ampliamente compatible con un rico ecosistema de middleware, hardware y software necesarios para los dispositivos IoT.

RT-Thread admite todas las herramientas de compilación convencionales, como GCC, Keil e IAR, y admite entornos de aplicaciones POSIX, CMSIS, C++ y varias interfaces estándar, como Micropython y Javascript.

RT-Thread también proporciona un potente soporte para todas las arquitecturas principales de CPU y DSP. La comunicación y la sincronización entre subprocesos, semáforos de señales y otros servicios se pueden procesar de manera uniforme y eficiente a través del paso de mensajes RTOS.

Actualmente, RT-Thread tiene dos versiones. Una es una edición estándar para dispositivos IoT ricos en recursos, mientras que la otra es una edición Nano para sistemas con recursos limitados.

La combinación perfecta de DSP y RT-Thread

Ciertos diseños de arquitectura DSP (como CEVA DSP) admiten de forma nativa las funciones RTOS y el cambio de contexto ultrarrápido. Por lo tanto, los dispositivos IoT implementados con CEVA DSP y RT-Thread RTOS pueden manejar múltiples transacciones entre diferentes recursos sin interrumpir las tareas de comunicación RTOS. Por ejemplo, el mecanismo de interfaz de comunicación multinúcleo (MCCI) admite la comunicación de comandos y el paso de mensajes entre núcleos. La comunicación entre núcleos se logra mediante el acceso directo a registros de comando dedicados utilizando puertos esclavos AXI. DSP tiene controles e instrucciones especiales y puede rastrear el estado de la comunicación a través de MCCI.

d9203005231c58651888928026e7d007.png

Figura 1: arquitectura de interfaz de comunicación multinúcleo. (Fuente: CEVA)

La mensajería entre núcleos se realiza utilizando el registro de comando dedicado MCCI_NUM, ambos de 32 bits. Los registros COM_REGx de 32 bits son escritos por el núcleo externo a través del puerto esclavo AXI y solo pueden ser leídos por el núcleo. Para buses AXI de 128 bits, el núcleo de generación de comandos puede escribir simultáneamente hasta cuatro registros, y para buses AXI de 256 bits, este número aumenta a ocho.

Cuando el núcleo generador de comandos envía un comando a COM_REGx, el registro de direccionamiento se actualizará, al igual que los bits de estado asociados en el registro COM_STS. Además, se afirmará una interrupción (MES_INT) para notificar al núcleo receptor.

Cuando el núcleo receptor lee uno de los registros COM_REGx, envía una señal de indicación de lectura al iniciador. La señal de indicación de lectura es enviada por el núcleo receptor utilizando una interfaz de bus de bits MCCI_NUM RD_IND (indicación de lectura) dedicada. Cada bit del bus RD_IND representa una lectura de uno de los registros COM_REGx. Usando la interfaz IO, el núcleo receptor solo puede leer un registro COM_REGx a la vez. Esto no solo facilita la sincronización entre diferentes núcleos, sino que también facilita la sincronización entre diferentes tareas en el mismo núcleo.

Enlace original:

https://www.ceva-dsp.com/ourblog/iot-dsp-and-rtos-a-perfect-match/

Descargo de responsabilidad: El material de este artículo proviene de Internet y los derechos de autor pertenecen al autor original. Si se trata de problemas de derechos de autor, comuníquese conmigo para eliminarlo.

------------  FIN  ------------

642bdb65a15d556f8fcb3cd7e30c7405.gif

●Columna "Herramientas integradas "

●Columna "Desarrollo integrado"

●Columna "Tutorial de Keil"

●Tutoriales seleccionados en la columna incrustada

Preste atención a la cuenta oficial y responda " Jiagroup " para unirse al grupo de intercambio técnico de acuerdo con las reglas, y responda " 1024 " para ver más contenido.

c851b622602459ee28a59fdffc927c3d.jpeg

d2c2880c63c58a8395ecfdd51e4df508.png

Haga clic en " Leer el texto original " para ver más información compartida.

Supongo que te gusta

Origin blog.csdn.net/ybhuangfugui/article/details/132241874
Recomendado
Clasificación