-
Bibliotecas
- LwIP
Red TCP/IP Stack
- xilisf
Flash
- BSP independiente
Paquete de soporte de placa
- xilffs
Sistema de archivos FAT
- xilfpga
Gestión de PL/FPGA (Field-Programmable Gate Arrays, matriz de puertas lógicas programable en campo) (carga de secuencia binaria)
- xilskey
Seguridad xilsecu
- xilsecure
Seguridad
- xilrsa
Seguridad
Ecosistema de software integrado de SoC adaptable de AMD
Impulsar la conectividad y la innovación rápida a través del software
El ecosistema de software integrado de AMD permite a los desarrolladores acelerar el proceso desde las ideas a los sistemas integrados listos para comercialización. Con un conjunto completo de herramientas, tiempos de ejecución y entornos, este ecosistema está diseñado para aprovechar a la perfección las capacidades de la cartera de dispositivos integrados de AMD, incluidos los AMD Zynq™ 7000 SoC, los MPSoC Zynq UltraScale+™, los SoC adaptables Versal™ y los núcleos del procesador AMD MicroBlaze™ y MicroBlaze V. Nuestra oferta se erige en una base de funciones avanzadas, lo que incluye controladores de software de seguridad y virtualización innovadores, intrincadamente incorporados en la estructura de los dispositivos Zynq y Versal de AMD. Esta sinergia permite crear sistemas ingeniosos, interconectados y distintos que satisfagan las demandas de las aplicaciones integradas modernas.

Herramientas de compilación y desarrollo
Linux
AMD Linux es el sistema operativo más utilizado en los productos AMD. AMD proporciona PetaLinux Tools para un flujo de desarrollo de Linux simplificado, además del código fuente y los archivos de recetas de Yocto de nuestro repositorio de GIT para que se pueda proporcionar compatibilidad con Linux para los chips de AMD mediante sistemas de compilación internos o herramientas de terceros. El proyecto AMD Linux es un proyecto de desarrollo de Linux personalizado y no comercial dirigido al desarrollo de SoC adaptables Versal™, MPSoC Zynq™ UltraScale™, Zynq 7000 SoC y procesadores MicroBlaze™ de AMD.
La compatibilidad del kernel de Linux con las versiones de AMD incluyen las siguientes opciones:
- 2023.x es v6.1
- 2022.x es v5.15
- 2021.x es v5.10
Herramientas de compilación
AMD ofrece dos herramientas para compilar e implementar soluciones de Linux integradas. Son PetaLinux de AMD y el proyecto de código abierto de Yocto . PetaLinux ofrece una interfaz gráfica de usuario para compilar rápidamente una imagen de Linux integrado, y usuarios más experimentados pueden utilizar Yocto a fin de personalizar Linux para sus placas.
Los productos AMD cuentan con un conjunto completo de recursos de código abierto para desarrollar, iniciar, ejecutar, depurar y mantener aplicaciones basadas en Linux para un SoC AMD o una plataforma de emulación. Ofrecemos ejemplos de aplicaciones, configuraciones de kernel, recetas de Yocto, soluciones de multiprocesamiento y en tiempo real, y controladores de dispositivos. Los desarrolladores de código abierto de Linux encontrarán herramientas, foros de soporte y fuentes conocidas para aprender, desarrollar e interactuar con otras personas con intereses, necesidades y pasiones similares.
Imágenes prediseñadas y de código abierto
Creación de kernel e imágenes de arranque
- Creación del kernel
- Creación del sistema de archivos raíz
- Creación del árbol de dispositivos de Linux
- Creación de la imagen U-Boot
Linux en tiempo real
Controladores y modelos de emulación
Herramientas de desarrollo
La plataforma de software unificado Vitis™, el SDK (Software Development Kit, el kit de desarrollo de software) de AMD y las herramientas de socios del ecosistema ofrecen una amplia variedad de entornos de desarrollo que permiten la programación en C/C++ similar a SoC de las plataformas Zynq y Versal.
Entornos de software AMD
- Plataforma de software unificado Vitis: desarrollo de software integrado para dispositivos MPSoC y RFSoC Zynq UltraScale+™ y SoC adaptables Versal.
- Kit de desarrollo de software (SDK): diseño y depuración para Zynq 7000 SoC, MPSoC Zynq UltraScale+ y procesadores MicroBlaze.
(Nota: A partir de 2019.1, el SDK se clasifica como una herramienta heredada y ya no se actualizará).
Herramientas y desarrollo de software para ecosistemas
RTOS y bibliotecas de socios
RTOS, hipervisores y dispositivos sin sistema operativo
RTOS
“Un RTOS (real-time operating system, sistema operativo en tiempo real) es un sistema operativo (SO) destinado a servir datos de proceso de aplicaciones en tiempo real a medida que llegan, por lo general, sin retrasos en el búfer”. (wikipedia.org)
Los factores clave en un RTOS son su sencillez y ligereza. Otros factores son la latencia mínima de las interrupciones y la latencia de cambios de contexto. Un RTOS se valora más por la rapidez y la determinación de su respuesta que por la complejidad que pueda manejar.
FreeRTOS
FreeRTOS es un RTOS líder del mercado de Amazon Web Services que admite más de 35 arquitecturas y se descargó una vez cada tres minutos durante el 2017. Está desarrollado por profesionales y sometido a estrictos controles de calidad, es robusto, cuenta con soporte técnico y puede integrarse libremente en productos comerciales sin necesidad de exponer tu código fuente patentado (referencia: https://www.freertos.org/RTOS.html).
Puedes encontrar más información sobre FreeRTOS en https://www.freertos.org/RTOS.html.
Se encuentra disponible un puerto de kernel FreeRTOS para los siguientes FPGA, SoM y SoC adaptables de AMD
Puedes encontrar más información y recursos de soporte para FreeRTOS en productos AMD en AMD FreeRTOS
Procesador | Dispositivos |
---|---|
APU (unidad de procesador de aplicaciones, application processor unit) Arm® Cortex®-A72 de 64 bits y RPU (unidad de procesador en tiempo real, real-time processor unit) Cortex-R5 de 32 bits | Dispositivos SoC adaptable Versal™ |
Unidad de procesador de aplicaciones (APU) Arm Cortex-A53 de 64 bits y unidad de procesador en tiempo real (RPU) Cortex-R5 de 32 bits | Dispositivos MPSoC Zynq™ UltraScale+™ y SoM Kria™ |
Unidad de procesador de aplicaciones (APU) Arm Cortex-A9 de 32 bits | Dispositivos Zynq 7000 SoC |
Procesador MicroBlaze™ de 32 bits | Todas las familias de dispositivos de AMD |
Soporte de RTOS de AMD y socios de ecosistema
Proveedor | Producto | SoC Zynq-7000 | MPSoC Zynq UltraScale+ | SoC adaptable Versal | MicroBlaze | |||||
---|---|---|---|---|---|---|---|---|---|---|
Cortex-A9 | Cortex-A53 | Cortex-R5 | VCU | Mali-400 | Cortex-A72 | Cortex-R5F | AIE | |||
AMD | Sin sistema operativo | Sí | Sí1 | Sí | Sí | Sí | Sí | Sí | Sí | Sí |
AMD | FreeRTOS | Sí | Sí1 | Sí | No | No | Sí | Sí | Sí | Sí |
BlackBerry | QNX Neutrino | Sí | Sí | No | Sí | Sí | Sí | No | No | No |
QNX OS for Safety | Sí | Sí | No | Sí | Sí | Sí | No | No | No | |
Wind River | VxWorks | Sí | Sí | Sí | No | Sí | Sí | Sí | No | No |
Green Hills | INTEGRITY-178 | No | Sí | No | No | No | Sí | No | No | No |
INTEGRITY | Sí | Sí | No | No | No | Sí | No | No | No | |
u-velOsity | No | No | Sí | No | No | No | Sí3 | No | No | |
Siemens | Nucleus | Sí | Sí | Sí | No | No | No | Sí4 | No | No |
PX5 | PX5 RTOS | No | Sí | Sí | No | No | No | No | No | Sí |
Microsoft | Azure RTOS | Sí | Sí | Sí | No | No | No | No | No | Sí |
ETAS | ETAS RTA-OS | Sí | Sí | Sí | No | No | No | No | No | No |
Sysgo | PikeOS | Sí | Sí | No | No | No | No | No | No | No |
PikeOS for MPU | No | No | Sí | No | No | No | No | No | No | |
Lynx | LynxOS-178 | No | Sí | No | No | No | No | No | No | No |
Weston Embedded | Cesium Cs/OS2, OS3 | Sí | Sí | Sí | No | No | No | No | No | No |
DDC-I | Deos | Sí | Sí | No |
No | No | No | No | No | No |
RTEMS | RTEMS | Sí | Sí | Sí | No | No | Sí | Sí | No | Sí |
eForce | uC3 | Sí1 | Sí1 | No |
No | No | No | No | No | No |
ENEA | OSE | Sí | Sí | No |
No | No | No | No | No | No |
eSOL | eT-kernel | Sí | Sí | No | No | No | No | No | No | No |
Silicon Labs | Micrium uc/OS-II/OS-III5 | Sí | Sí1 | Sí | No | No | No | No | No | No |
Sciopta | Sciopta RTOS | Sí1 | Sí1 | Sí | No | No | No | No | No | No |
Wittenstein | SafeRTOS | Sí1 | No | No | No | No | No | No | No | No |
Segger | emBOS | Sí1 | No | No | No | No | No | No | No | No |
La mayoría de los RTOS ofrecen algún nivel de certificación para diferentes estándares de seguridad. Consulta con el proveedor del sistema operativo para determinar si requieres necesidades específicas.
1. Sin soporte de SMP
2. Micrium solo está en modo de mantenimiento Weston Embedded está desarrollando el sistema operativo bajo la marca Cesium
3. Paquete de soporte de arquitectura
4. En desarrollo
5. Solo heredado, comunícate con Weston Embedded para obtener soporte
Se puede encontrar más información y recursos de apoyo en la wiki de AMD en: Ecosistema de software integrado.
Virtualización e hipervisores
AMD ofrece a sus clientes y socios tecnologías clave, documentación y soporte para permitir diseños avanzados de sistemas de múltiples sistemas operativos en nuestros productos. Las ofertas disponibles en nuestro ecosistema incluyen las siguientes opciones:
Proveedor | Producto | SoC adaptable Versal | MPSoC Zynq UltraScale+ | Zynq 7000 SoC |
---|---|---|---|---|
AMD | Hipervisor Xen | Sí | Sí | No |
BlackBerry | QNX Hypervisor | Sí | Sí | No |
Wind River | Helix Virtualization Platform | Sí | Sí | No |
Sysgo | PikeOS Hypervisor | No | Sí | Sí |
Green Hills | Integrity Multivisor | Sí1 | Sí1 | No |
Lynx | LynxSecure Separation Kernel Hypervisor | Sí | Sí | No |
Dornerworks | SEL4 | Sí | Sí | No |
Siemens | Nucleus Hypervisor | No | Sí | Sí |
General Dynamics Mission Systems | OKL4 Microvisor | No | Sí | No |
1. Requiere contrato de servicios
Se puede encontrar más información y recursos de apoyo en la wiki de AMD en: Ecosistema de software integrado.
Dispositivos sin sistema operativo y bibliotecas
AMD proporciona bibliotecas adicionales y controladores sin sistema operativo. Estas bibliotecas están desarrolladas específicamente para dispositivos de AMD.
Puedes encontrar más información y recursos de soporte para bibliotecas y controladores sin sistema operativo en la wiki de AMD en: Dispositivos sin sistema operativo y bibliotecas.
Linux integrado
Linux de código abierto es el sistema operativo más popular para ejecutarse en hardware integrado, y AMD ha estado proporcionando soporte para Linux en sus dispositivos FPGA y SoC adaptable desde la introducción de la FPGA AMD Virtex™-II Pro en el 2001. Además de los entornos de compilación de PetaLinux y Yocto, AMD ofrece soporte comercial para dispositivos de AMD de varios proveedores externos, incluido Ubuntu certificado de Canonical Ltd.
Yocto
Como se afirma en Yocto Project: “Yocto Project es un proyecto de colaboración de código abierto que ayuda a los desarrolladores a crear sistemas personalizados basados en Linux para productos integrados, independientemente de la arquitectura de hardware. El proyecto proporciona un conjunto flexible de herramientas y un espacio donde los desarrolladores integrados de todo el mundo pueden compartir tecnologías, pilas de software, configuraciones y prácticas recomendadas que se pueden utilizar a fin de crear imágenes de Linux personalizadas para dispositivos integrados”.
PetaLinux
PetaLinux Tools ofrece todo lo necesario para personalizar, desarrollar y evaluar soluciones Linux integradas en sistemas de procesamiento AMD. La solución, diseñada para acelerar la productividad del diseño, funciona con las herramientas de diseño de hardware de AMD a fin de facilitar el desarrollo de sistemas Linux para SoC adaptables Versal™, MPSoC Zynq™ UltraScale+™, Zynq 7000 SoC y procesadores MicroBlaze™.
Linux
Proveedor | Producto | Distribución | SoC adaptable Versal | MPSoC Zynq UltraScale+ | SoC Zynq-7000 | MicroBlaze |
---|---|---|---|---|---|---|
AMD | PetaLinux | Yocto | Sí | Sí | Sí | Sí |
Yocto | Yocto | Sí | Sí | Sí | Sí | |
Canonical | Ubuntu | Debian | Sí1 | Sí | No | No |
Wind River | Wind River Linux | Yocto | Sí | Sí | Sí | No |
Foundies.io | FoundriesFactory | Yocto | Sí | Sí | No | No |
Siemens | Sokol Flex OS | Yocto | No | Sí | Sí | No |
Sokol Omni OS | Debian | No | Sí | No | No | |
TimeSys | Linux Services | Yocto | Sí | Sí | Sí | No |
MontaVista | CGX/CGE | Yocto | No | Sí | Sí | No |
ArchLinuxARM | ArchLinuxARM | N/D | No | No | Sí | No |
1. Versión beta para VCK190
Se puede encontrar más información y recursos de apoyo en la wiki de AMD en: Ecosistema de software integrado.
Proyectos de código abierto
QEMU
QEMU (Quick EMUlator) es un emulador de sistema de código abierto y multiplataforma. Es un ejecutable que funciona en un sistema operativo Linux x86. QEMU puede emular un sistema completo (comúnmente conocido como invitado), como una placa AMD ZCU102 o VCK190.
La emulación incluye los procesadores, los periféricos y demás hardware de la placa de desarrollo, lo que permite ejecutar un sistema operativo u otras aplicaciones en el hardware virtualizado.
QEMU también puede interactuar con el equipo host a través de interfaces, como CAN (Controller Area Network, red de área de controladores), Ethernet y USB, lo que permite que los datos reales del host se utilicen en el equipo host en tiempo real.
Hipervisor Xen
Xen es un hipervisor de tipo 1 definido, mantenido y proporcionado a la comunidad de código abierto por Xen Project. Xen permite que se ejecuten múltiples instancias de sistemas operativos o aplicaciones sin sistema operativo en MPSoC Zynq™ UltraScale+™ de AMD. Puedes encontrar información adicional sobre el hipervisor Xen en la página de inicio de Xen Project.
U-Boot
U-Boot es un cargador de arranque universal de código abierto que se utiliza con frecuencia en la comunidad de Linux. AMD proporciona un árbol de GIT ubicado en https://github.com/Xilinx/u-boot-xlnx, que incluye un U-Boot para ejecutarse en placas AMD.
Arm Trusted Firmware
Arm® Trusted Firmware proporciona una referencia al software seguro para la arquitectura ARMv8-A, además de implementaciones de varios estándares de interfaz como PSCI (Power State Coordination Interface, interfaz de coordinación de estado de alimentación) y código de monitor seguro para la interconexión con el software del mundo normal. El puerto de AMD Arm Trusted Firmware está disponible en https://github.com/Xilinx/arm-trusted-firmware.