-
Bibliotecas
- Iwip
TCP/IP Stack de rede
- xilisf
Flash
- BSP independente
Board Support Package
- xilffs
Sistema de arquivos FAT
- xilfpga
Gerenciamento PL/FPGA (carregamento de fluxo de bits)
- xilskey
Segurança xilsecu
- xilsecure
Segurança
- xilrsa
Segurança
Ecossistema de software incorporado do SoC adaptativo da AMD
Capacitando a inovação e a conectividade rápidas por meio de software
O ecossistema de software incorporado da AMD capacita os desenvolvedores a acelerar sua jornada desde a ideia até sistemas incorporados prontos para o mercado. Com um conjunto abrangente de ferramentas, tempos de execução e ambientes, este ecossistema é adaptado para aproveitar perfeitamente as capacidades do portfólio de dispositivos incorporados da AMD, incluindo os SoCs AMD Zynq™ 7000, os MPSoCs Zynq UltraScale+™, SoCs adaptativos Versal™, processador AMD MicroBlaze™ e núcleos do processador MicroBlaze V. Nossa oferta tem como base recursos avançados, que incluem drivers de software de segurança e virtualização pioneiros, intrinsecamente no DNA dos dispositivos AMD Zynq e Versal. Esta sinergia desbloqueia o potencial para criar sistemas engenhosos, interconectados e distintos que atendam às demandas de aplicativos incorporados modernos.

Ferramentas de criação e desenvolvimento
Linux
O AMD Linux é o sistema operacional mais predominante usado pelos produtos AMD. A AMD fornece as ferramentas PetaLinux para um fluxo de desenvolvimento simplificado do Linux, bem como o código-fonte e arquivos de receitas Yocto do nosso repositório GIT para que o suporte Linux para chip da AMD seja oferecido por sistemas internos de criação ou ferramentas de terceiros. O projeto AMD Linux é um projeto de desenvolvimento Linux personalizado e não comercial voltado para o desenvolvimento em SoCs adaptativos AMD Versal™, MPSoCs Zynq™ UltraScale™, SoCs Zynq 7000 e processadores MicroBlaze™.
O suporte do kernel do Linux para as versões da AMD inclui o seguinte:
- 2023.x é v6.1
- 2022.x é v5.15
- 2021.x é v5.10
Ferramentas de criação
A AMD oferece duas ferramentas para criar e implantar soluções Linux incorporadas. A PetaLinux da AMD e o Projeto de código aberto da Yocto. O PetaLinux oferece ao usuário uma GUI para criar rapidamente uma imagem Linux incorporada, e o Yocto pode ser usado por usuários mais experientes para personalizar o Linux para suas placas.
Os produtos AMD são compatíveis com um conjunto abrangente de recursos de código aberto para desenvolver, inicializar, executar, depurar e manter aplicativos baseados em Linux para um SoC AMD ou plataforma de emulação. Oferecemos aplicativos de exemplo, configurações de kernel, receitas Yocto, soluções de multiprocessamento e em tempo real e drivers de dispositivo. Os desenvolvedores de código aberto do Linux encontrarão fontes, ferramentas e fóruns de suporte familiares para aprender, desenvolver e interagir com outras pessoas com interesses, necessidades e paixões semelhantes.
Imagens pré-criadas e de código aberto
Criando o kernel e as imagens de inicialização
- Criando o kernel
- Criando o sistema de arquivos raiz
- Criando a árvore de dispositivos do Linux
- Criando a imagem do U-Boot
Linux em tempo real
Modelos e drivers de emulação
Ferramentas de desenvolvimento
A plataforma de software unificada Vitis™, o Kit de desenvolvimento de software (SDK) da AMD e as ferramentas de parceiros do ecossistema oferecem uma ampla variedade de ambientes de desenvolvimento que possibilitam a programação C/C++ semelhante ao SoC das plataformas Zynq e Versal.
Ambientes de software da AMD
- Plataforma de software unificada Vitis – Desenvolvimento de software incorporado para RFSoC e MPSoC Zynq UltraScale+™ e dispositivos de SoC adaptativo Versal.
- Kit de desenvolvimento de software (SDK) – Projeto e depuração para SoCs Zynq 7000, MPSoCs Zynq UltraScale+ e processadores MicroBlaze.
(Nota: a partir da versão 2019.1, o SDK é classificado como uma ferramenta legada e não será mais atualizado.)
Ferramentas e desenvolvimento de software do ecossistema
RTOS e parceiros de biblioteca
RTOS, hipervisores e bare-metal
RTOS
"Um sistema operacional em tempo real (RTOS) é um sistema operacional (SO) destinado a fornecer dados de processo de aplicativos em tempo real conforme eles chegam, normalmente sem atrasos de buffer." (wikipedia.org)
Os principais fatores de um RTOS são mantê-lo simples e leve. Outros fatores são latência mínima de interrupção e latência de troca de contexto. Um RTOS é mais valorizado pela rapidez e determinismo com que pode responder do que pela quantidade de complexidade com que pode lidar.
FreeRTOS
O FreeRTOS é um RTOS líder de mercado da Amazon Web Services que oferece suporte a mais de 35 arquiteturas e foi baixado uma vez a cada 3 minutos durante 2017. Ele é desenvolvido profissionalmente, com rigoroso controle de qualidade, robusto, com suporte e gratuito para incorporar em produtos comerciais sem qualquer requisito para expor seu código-fonte proprietário (referência: https://www.freertos.org/RTOS.html).
Mais informações sobre o FreeRTOS podem ser encontradas em https://www.freertos.org/RTOS.html.
Uma porta de kernel FreeRTOS está disponível para os seguintes SOMs, FPGAs e SoCs adaptativos da AMD
Mais informações e recursos de suporte para FreeRTOS em produtos AMD podem ser encontrados em AMD FreeRTOS
Processador | Dispositivo |
---|---|
Unidade de processador de aplicativos (APU) Arm® Cortex®-A72 de 64 bits e unidade de processador em tempo real (RPU) Cortex-R5 de 32 bits | Dispositivos de SoC adaptativo Versal™ |
Unidade de processador de aplicativos (APU) Arm Cortex-A53 de 64 bits e unidade de processador em tempo real (RPU) Cortex-R5 de 32 bits | Dispositivos MPSoC Zynq™ UltraScale+™ e SOMs Kria™ |
Unidade de processador de aplicativos (APU) Arm Cortex-A9 de 32 bits | Dispositivos SoC Zynq 7000 |
Processador MicroBlaze™ de 32 bits | Todas as famílias de dispositivos AMD |
Suporte para RTOS da AMD e parceiros de ecossistema
Fornecedor | Produto | SoC Zynq 7000 | MPSoC Zynq UltraScale+ | SoC adaptativo Versal | MicroBlaze | |||||
---|---|---|---|---|---|---|---|---|---|---|
Cortex-A9 | Cortex-A53 | Cortex-R5 | VCU | Mali-400 | Cortex-A72 | Cortex-R5F | AIE | |||
AMD | Bare-metal | S | S1 | S | S | S | S | S | S | S |
AMD | FreeRTOS | S | S1 | S | N | N | S | S | S | S |
BlackBerry | QNX Neutrino | S | S | N | S | S | S | N | N | N |
QNX OS for Safety | S | S | N | S | S | S | N | N | N | |
Wind River | VxWorks | S | S | S | N | S | S | S | N | N |
Green Hills | INTEGRITY-178 | N | S | N | N | N | S | N | N | N |
INTEGRITY | S | S | N | N | N | S | N | N | N | |
u-velOsity | N | N | S | N | N | N | S3 | N | N | |
Siemens | Nucleus | S | S | S | N | N | N | S4 | N | N |
PX5 | PX5 RTOS | N | S | S | N | N | N | N | N | S |
Microsoft | Azure RTOS | S | S | S | N | N | N | N | N | S |
ETAS | ETAS RTA-OS | S | S | S | N | N | N | N | N | N |
Sysgo | PikeOS | S | S | N | N | N | N | N | N | N |
PikeOS for MPU | N | N | S | N | N | N | N | N | N | |
Lynx | LynxOS-178 | N | S | N | N | N | N | N | N | N |
Weston Embedded | Cesium Cs/OS2, OS3 | S | S | S | N | N | N | N | N | N |
DDC-I | Deos | S | S | N |
N | N | N | N | N | N |
RTEMS | RTEMS | S | S | S | N | N | S | S | N | S |
eForce | uC3 | S1 | S1 | N |
N | N | N | N | N | N |
ENEA | OSE | S | S | N |
N | N | N | N | N | N |
eSOL | eT-kernel | S | S | N | N | N | N | N | N | N |
Silicon Labs | Micrium uc/OS-II / OS-III5 | S | S1 | S | N | N | N | N | N | N |
Sciopta | Sciopta RTOS | S1 | S1 | S | N | N | N | N | N | N |
Wittenstein | SafeRTOS | S1 | N | N | N | N | N | N | N | N |
Segger | emBOS | S1 | N | N | N | N | N | N | N | N |
A maioria dos RTOSs fornece algum nível de certificação para diferentes padrões de segurança. Consulte o fornecedor do sistema operacional para determinar se ele atende às suas necessidades específicas.
1. Sem suporte para SMP
2. Micrium está em modo somente manutenção. A Weston Embedded está levando o sistema operacional adiante sob a marca Cesium.
3. Pacote de suporte de arquitetura
4. Em desenvolvimento
5. Somente legado, entre em contato com a Weston Embedded para obter suporte
Mais informações e recursos de suporte podem ser encontrados no Wiki da AMD em: Ecossistema de software incorporado.
Virtualização e hipervisores
A AMD fornece a seus clientes e parceiros tecnologias, documentação e suporte essenciais para habilitar projetos avançados com vários sistemas operacionais em nossos produtos. As ofertas disponíveis em nosso ecossistema incluem:
Fornecedor | Produto | SoC adaptativo Versal | MPSoC Zynq UltraScale+ | SoC Zynq 7000 |
---|---|---|---|---|
AMD | Hipervisor Xen | S | S | N |
BlackBerry | QNX Hypervisor | S | S | N |
Wind River | Helix Virtualization Platform | S | S | N |
Sysgo | PikeOS Hypervisor | N | S | S |
Green Hills | Integrity Multivisor | S1 | S1 | N |
Lynx | LynxSecure Separation Kernel Hypervisor | S | S | N |
Dornerworks | SEL4 | S | S | N |
Siemens | Nucleus Hypervisor | N | S | S |
General Dynamics Mission Systems | OKL4 Microvisor | N | S | N |
1. Requer contrato de serviços
Mais informações e recursos de suporte podem ser encontrados no Wiki da AMD em: Ecossistema de software incorporado.
Bare-metal e bibliotecas
A AMD fornece bibliotecas adicionais e drivers bare-metal. Essas bibliotecas são desenvolvidas especificamente para dispositivos AMD.
Mais informações e recursos de suporte para bibliotecas e drivers bare-metal podem ser encontrados no Wiki da AMD em: Bare-metal e bibliotecas.
Linux incorporado
O Linux de código aberto é o sistema operacional mais popular para execução em hardware incorporado, e a AMD oferece suporte para Linux em seus dispositivos FPGA e SoC adaptativo desde a introdução da FPGA AMD Virtex™-II Pro em 2001. Além dos ambientes de criação do PetaLinux e Yocto, a AMD fornece suporte comercial para direcionar dispositivos AMD de vários fornecedores terceirizados, incluindo o certificado Ubuntu da Canonical Ltd.
Yocto
Como o Projeto Yocto afirma: "O Projeto Yocto é um projeto de colaboração de código aberto que auxilia os desenvolvedores a criar sistemas personalizados baseados em Linux para produtos incorporados, independentemente da arquitetura do hardware. O projeto fornece um conjunto flexível de ferramentas e um espaço onde desenvolvedores incorporados em todo o mundo podem compartilhar tecnologias, pilhas de software, configurações e práticas recomendadas que podem ser usadas para criar imagens personalizadas do Linux para dispositivos incorporados."
PetaLinux
As ferramentas PetaLinux oferecem tudo o que é necessário para personalizar, criar e avaliar soluções Linux incorporadas em sistemas de processamento AMD. Adaptada para acelerar a produtividade do projeto, a solução funciona com as ferramentas do projeto de hardware da AMD para facilitar o desenvolvimento de sistemas Linux para SoCs adaptativos Versal™, MPSoC Zynq™ UltraScale+™, SoCs Zynq 7000 e processadores MicroBlaze™.
Linux
Fornecedor | Produto | Distribuição | SoC adaptativo Versal | MPSoC Zynq UltraScale+ | SoC Zynq 7000 | MicroBlaze |
---|---|---|---|---|---|---|
AMD | PetaLinux | Yocto | S | S | S | S |
Yocto | Yocto | S | S | S | S | |
Canonical | Ubuntu | Debian | S1 | S | N | N |
Wind River | Wind River Linux | Yocto | S | S | S | N |
Foundies.io | FoundriesFactory | Yocto | S | S | N | N |
Siemens | Sokol Flex OS | Yocto | N | S | S | N |
Sokol Omni OS | Debian | N | S | N | N | |
TimeSys | Linux Services | Yocto | S | S | S | N |
MontaVista | CGX/CGE | Yocto | N | S | S | N |
ArchLinuxARM | ArchLinuxARM | N/A | N | N | S | N |
1. Versão beta para VCK190
Mais informações e recursos de suporte podem ser encontrados no Wiki da AMD em: Ecossistema de software incorporado.
Projetos de código-fonte aberto
QEMU
O QEMU (Quick EMUlator) é um emulador de sistema multiplataforma de código aberto. É um executável que é roda em um sistema operacional Linux x86. O QEMU pode emular um sistema completo (comumente chamado de convidado), como uma placa ZCU102 ou VCK190 da AMD.
A emulação inclui os processadores, periféricos e outros hardwares na placa de desenvolvimento, permitindo que você inicie um sistema operacional ou outros aplicativos no hardware virtualizado.
O QEMU também pode interagir com a máquina host por meio de interfaces, como CAN, Ethernet e USB, permitindo que dados do mundo real do host sejam usados na máquina convidada em tempo real.
Hipervisor Xen
O Xen é um hipervisor Tipo 1 definido, mantido e fornecido à comunidade de código aberto pelo Projeto Xen. O Xen permite que várias instâncias de sistemas operacionais ou aplicativos bare-metal sejam executadas em MPSoCs AMD Zynq™ UltraScale+™. Informações adicionais sobre o hipervisor Xen podem ser encontradas na página Introdução ao projeto Xen.
U-Boot
O U-Boot é um carregador de inicialização universal de código aberto frequentemente usado na comunidade Linux. A AMD fornece uma árvore GIT localizada em https://github.com/Xilinx/u-boot-xlnx, que inclui um U-Boot para execução em placas AMD.
Arm Trusted Firmware
O Arm® Trusted Firmware fornece uma referência para software seguro para a arquitetura ARMv8-A, bem como implementações de vários padrões de interface, como PSCI (Interface de coordenação de estado de energia) e código de monitor seguro para interface com software do mundo normal. A porta AMD Arm Trusted Firmware foi lançada e está disponível em https://github.com/Xilinx/arm-trusted-firmware.