Este informe técnico demuestra cómo los SoC multinúcleo KeyStone de Texas Instruments descargan muchas funciones de software en AccelerationPacs de hardware u otros elementos arquitectónicos, lo que reduce la cantidad de software necesario y automatiza muchas de las tareas de administración multinúcleo más complejas. También cubre aspectos del kit de desarrollo de software multinúcleo (MCSDK) de TI. Este es un paquete de software básico gratuito que se utiliza para comenzar con el desarrollo de aplicaciones multinúcleo en dispositivos KeyStone.
Acelere el desarrollo de aplicaciones multinúcleo con el software KeyStone
prólogo
El desarrollo de software multinúcleo es una inversión fundamental que puede marcar una gran diferencia en el éxito final de su producto.
La complejidad de los sistemas en chips (SoC) multinúcleo se traduce directamente en la complejidad del software. Y la partición, la programación de tareas, el envío y la coordinación entre núcleos de las arquitecturas de software multinúcleo no tienen por qué ser abrumadoras, sino que se suman al desafío de la programación. Cómo acelerar el desarrollo de software multinúcleo y ofrecer soluciones de sistema robustas y de la más alta calidad es de gran interés para los desarrolladores multinúcleo. Este informe técnico demuestra cómo los SoC multinúcleo KeyStone de Texas Instruments descargan muchas funciones de software en AccelerationPacs de hardware u otros elementos arquitectónicos, lo que reduce la cantidad de software necesario y automatiza muchas de las tareas de administración multinúcleo más complejas. También cubre aspectos del kit de desarrollo de software multinúcleo (MCSDK) de TI. Este es un paquete de software básico gratuito que se utiliza para comenzar con el desarrollo de aplicaciones multinúcleo en dispositivos KeyStone.
Familia multinúcleo KeyStone
Los SoC KeyStone de Texas Instruments son una familia de DSP multinúcleo, ARM® multinúcleo, DSP y ARM multinúcleo y aceleradores de hardware específicos de la aplicación (AccelerationPacs). Los AccelerationPac seleccionados incluyen un AccelerationPac inalámbrico para el procesamiento 3GPP Layer 1, un AccelerationPac de paquetes y seguridad, y un conmutador Ethernet en el chip que brinda una potencia y una eficiencia de área excepcionales al mismo tiempo que descarga del núcleo muchas tareas de uso intensivo de cómputo. Los SoC multinúcleo de KeyStone tienen una infraestructura multinúcleo única que facilita las aplicaciones de alto rendimiento. La gran memoria en chip se combina con KeyStone Multicore Shared Memory Controller (MSMC) para proporcionar acceso a memoria externa de baja latencia.
TeraNet de alto rendimiento admite transferencias de datos sin bloqueo entre puntos finales del sistema, lo que hace que los SoC de KeyStone sean ideales para aplicaciones de alto rendimiento. Multi-core Navigator con motor de transferencia de acceso directo a memoria (DMA) y gestor de colas con reconocimiento de paquetes es una plataforma excelente para la programación multinúcleo de alto nivel con comunicación entre núcleos, programación y envío de trabajos multinúcleo altamente eficientes. La Figura 1 muestra una descripción general de la arquitectura multinúcleo de KeyStone.
Keystone MCSDK
El kit de desarrollo de software KeyStone Multicore (MCSDK) es un paquete de software de plataforma clave que habilita la funcionalidad SoC y demuestra las características clave de SoC en una plataforma de hardware de evaluación de referencia. MCSDK acelera el tiempo de comercialización de productos de usuario final al proporcionar una base estable de componentes de software, una API fácil de usar, técnicas de programación multinúcleo integradas y software de demostración de aplicaciones que muestra las características clave del SoC y los marcos de trabajo de software multinúcleo. está diseñado para acortar Código fuente completo. MCSDK admite SYS/BIOS™, RTOS de TI para núcleos C66x DSP y Linux™ SMP para núcleos ARM®. Además, software básico para controladores de bajo nivel, bibliotecas DSP optimizadas para varias aplicaciones y multinúcleo para instrumentación de depuración que permite el monitoreo de eventos en tiempo real, la creación de perfiles en tiempo real, la evaluación comparativa y la visualización de datos. También proporciona un analizador de sistema. MCSDK también proporciona un modelo de programación multinúcleo estándar de la industria para facilitar la programación y obtener licencias multinúcleo. La Figura 2 muestra los principales componentes de MCSDK.