Solución RTOS escalable para dispositivos núcleo único y multinúcleo
TI-RTOS acelera los cronogramas de desarrollo al eliminar la necesidad de crear funciones básicas de programas del sistema desde cero. Al proporcionar componentes de los programas esenciales del sistema previamente probados e integrados, TI-RTOS permite a los desarrolladores centrarse en la diferenciación de sus aplicaciones. Para los microprocesadores y DSP de TI, TI-RTOS ofrece un núcleo TI-RTOS en tiempo real del núcleo multitarea (anteriormente conocido como SYS/BIOS), controladores de dispositivos, comunicaciones multinúcleo y redes TCP/IP. Los componentes de TI-RTOS cuentan con un historial comprobado de fiabilidad en espacios de aplicaciones como las comunicaciones y control industriales, las comunicaciones inalámbricas y la industria automotriz.
Para obtener TI-RTOS para procesadores y DSPs SitaraTM
- Haga clic en el botón "Obtener software" para su kit de desarrollo de software (SDK) del procesador de TI correspondiente. Estos SDK del procesador contienen ejemplos adicionales, middleware, encapsulados de soporte de placa y herramientas de compilador que están equipadas con TI-RTOS en los módulos de evaluación compatibles.
Licencias: Ti-RTOS se proporciona con el código source completo y no requiere tarifas de licencia iniciales ni de tiempo de ejecución. El núcleo de multitarea, los controladores de dispositivo, la comunicación multinúcleo, la pila de redes TCP/IP y los ejemplos utilizan una licencia de código abierto similar a la BSD. Esto permite a los desarrolladores transferir programas fácilmente a socios o subcontratistas sin engorrosas restricciones de licencia. A diferencia de la licencia GPL, la licencia BSD no impone requisitos a los desarrolladores para enviar el código source completo de su aplicación.
TI-RTOS ofrece los siguientes componentes para los microprocesadores TI Sitara y los DSP de TI:
| Módulo TI-RTOS | Descripción |
| Núcleo TI-RTOS | El núcleo TI-RTOS (anteriormente conocido como SYS/BIOS) proporciona servicios deterministas de multiproceso preemptivo y sincronización, gestión de memoria y manejo de interrupciones. |
| Controladores de dispositivos TI-RTOS | Los controladores de dispositivos TI-RTOS proporcionan una capa de interfaz API común que abstrae las diferencias entre diferentes procesadores. |
| Red TI-RTOS | La red TI-RTOS (anteriormente conocida como NDK) proporciona una pila TCP/IP compatible con IPv4 y IPv6 junto con aplicaciones de red asociadas como DNS, HTTP y DHCP. |
| IPC TI-RTOS | La IPC TI-RTOS proporciona una comunicación eficiente entre procesadores en dispositivos multinúcleo. |
| Instrumentación TI-RTOS | La instrumentación TI-RTOS permite a los desarrolladores incluir instrumentación de depuración en su aplicación, lo que hace posible que herramientas de análisis a nivel de sistema muestren el comportamiento en tiempo de ejecución, incluidos los cambios de contexto. |
Descripción general del núcleo TI-RTOS
El núcleo TI-RTOS es un núcleo multitarea determinista y preventivo que permite a los desarrolladores crear aplicaciones sofisticadas sin comprometer los plazos en tiempo real. En el siguiente cuadro, se resumen los servicios del núcleo:
| Servicio del núcleo | Descripción |
| Memoria caché | Configuración y gestión de la memoria caché |
| Reloj | Funciones activadas por tiempo |
| Diagnóstico | Seguimiento configurable por el usuario que incluye afirmaciones para la verificación de parámetros y estado |
| Error | Defina, genere y verifique controladores de errores |
| Evento | Espere cualquier combinación de múltiples RTOS o evento personalizado |
| GateMutex | Multiplexor binario con herencia prioritaria |
| HeapBuf | Grupos de búfer de tamaño fijo rápidos y deterministas |
| HeapMem | Pilas dinámicas de tamaño variable |
| HeapMultiBuf | Pilas dinámicas deterministas de tamaño variable basadas en múltiples grupos de búfer |
| Interrupciones de hardware (HWI) | Interfaz de interrupciones de hardware al RTOS |
| Registro | Registro con bajo impacto en el rendimiento y declaraciones de impresión |
| Correo | Intercambio de datos sincronizado entre tareas |
| Memoria | Interfaz de asignación de memoria |
| Semáforos | Semáforos de conteo |
| Interrupciones de software (SWI) | Hilos ligeros preemptivo que utilizan la pila del programa pero no pueden producir |
| Sistema | Funciones generales del sistema, como cancelar, salir e imprimir el sistema |
| Tarea | Hilos independientes de ejecución que pueden ceder el procesador |
| Temporizador | Interfaz con temporizadores de hardware |
| Marca de tiempo | Servicios de marca de tiempo de 32 y 64 bits |
Soporte multinúcleo del núcleo TI-RTOS
TI-RTOS es totalmente compatible con las soluciones multinúcleo ARM y DSP de TI. El núcleo TI-RTOS puede ejecutarse en núcleos ARM Cortex A, ARM Cortex M y DSP, lo que proporciona un conjunto uniforme de API del sistema operativo en todos los núcleos. El núcleo TI-RTOS también ofrece imagen compartida y compatibilidad con SMP para los dispositivos adecuados. El encapsulado IPC asociado proporciona un amplio conjunto de mecanismos de comunicación multinúcleo que simplifican el desarrollo de aplicaciones distribuidas y aprovechan cualquier función de exclusión mutua de hardware para obtener el máximo rendimiento. Los servicios IPC están disponibles tanto para TI-RTOS como para Linux, lo que permite a los desarrolladores utilizar Linux en el núcleo ARM Cortex A y TI-RTOS en los núcleos DSP y ARM Cortex M si se desea:
| Objetos IPC | Descripción de servicios de IPC |
| HeapBuf | Implementación de HeapBuf en memoria compartida segura para sistemas multinúcleo y procesadores |
| HeapMultiBuf | Implementación de HeapMultiBuf en memoria compartida segura para sistemas multinúcleo y procesadores |
| Lista | Listas vinculadas a Atomic |
| ListMP | Listas vinculadas atómicas de multiprocesador |
| MessageQ | Mensajes transparentes y de longitud variable |
| Multiproc | Identificación del procesador |
| Servidor del nombre | Habilita la ubicación de objetos IPC en topologías multinúcleo y procesadores |
| Notify | Interrupción asincrónica de baja latencia a otro procesador |
| SharedRegion | Habilita la definición de punteros compartidos entre diferentes procesadores y núcleos |
| Stream | Interfaz de lectura y escritura o transmisión en búfer a controladores periféricos |
Herramientas de análisis y depuración compatibles con el sistema operativo
Junto con Code Composer Studio (CCS), el núcleo TI-RTOS proporciona varias herramientas para ayudar a la depuración y optimización de aplicaciones multiproceso. El visor de objetos en tiempo de ejecución (ROV) permite a un desarrollador comprobar el estado de objetos del sistema operativo como tareas, buzones y semáforos, incluyendo si una tarea está lista, en ejecución o bloqueada; qué tareas están bloqueadas en una IPC; y si las tareas han superado sus límites de pila. La herramienta RTOS Analyzer captura el comportamiento en tiempo real y puede mostrar la secuencia de ejecución y cambio de hilos, la carga de CPU de los hilos y el sistema, eventos del sistema operativo e información de registros definida por el usuario.
Descripción general de la red TI-RTOS
La conexión en red TI-RTOS, anteriormente conocido como el Kit para desarrolladores de redes (NDK, Network Developer Kit), combina una pila IPv4/IPv6 de modo dual con algunas aplicaciones de red. La compatibilidad con la conexión en red TI-RTOS está disponible para MCU, MPU y DSP habilitados para Ethernet. La red TI-RTOS incluye:
- Pila de protocolo TCP/IP principal: Pila IPv6/IPv4 de modo dual tanto en origen como en binario, incluido el marcado de prioridad de paquetes VLAN, TCP, UDP, ICMP, IGMP, IP y ARP.
- Aplicaciones de red: Cliente y servidor HTTP, TELNET, TFTP, SNTP, DNS, DHCP (solo IPv4)
- Compatibilidad con módem serie/celular: PPP y PPPoe
- Interfaces de programación de aplicaciones: Zócalos BSD, zócalos de copia cero y compatibilidad con Ethernet sin procesar