Firmware escalável universal, uma nova arquitetura aberta desenvolvida pela Intel

Faz pouco Intel apresentou o desenvolvimento de uma nova arquitetura de firmware Firmware escalável universal (USF) que é destinado a simplificar o desenvolvimento de todos os componentes da pilha de software de firmware para uma variedade de categorias de dispositivos, de servidores a sistemas em um chip (SoC).

USF fornece camadas de abstração para separar a lógica de inicialização do hardware de baixo nível dos componentes da plataforma responsáveis ​​pela configuração, atualizar firmware, proteger e inicializar o sistema operacional.

Sobre a USF

USF tem uma estrutura modular que não está vinculada a soluções específicas y permite usar vários projetos existentes Eles implementam a inicialização de hardware e estágios de boot, como a pilha TianoCore EDK2 UEFI, o firmware minimalista Slim Bootloader, o bootloader U-Boot e a plataforma CoreBoot.

Interface UEFI, camada LinuxBoot (para carregamento direto do kernel Linux), VaultBoot (inicialização verificada) e hipervisor ACRN podem ser usados ​​como ambientes de carga útil para localizar o carregador de inicialização e transferir o controle para o sistema operacional, além de interfaces típicas como ACPI, UEFI, Kexec e Multi-boot são fornecidos para sistemas operacionais.

As especificações USF da Intel consistem em duas partes: uma especificação interna da Intel que cobre a construção do SOC e suas interfaces internas (IP HW e IP FW); e uma especificação externa da indústria cobrindo interfaces para SOCs, plataformas e cargas úteis de SO, bem como construção e gerenciamento de produtos e soluções de firmware completos (ou seja, como inicializar, configurar, integrar, inicializar, atualizar e manter). A especificação externa está aberta a feedback ativo e colaboração de parceiros da indústria e de tecnologia. A versão de especificação externa no lançamento inicial está intencionalmente começando em uma revisão preliminar para que os parceiros de tecnologia tenham a oportunidade de ajudar a melhorar seu conteúdo e direção antes da finalização da v1.0.

USF definir uma camada de pacote de suporte de firmware Um FSP separado que faz interface com o Platform Orchestration Layer (POL) genérico e personalizado por meio de uma API comum. O FSP abstrai operações como redefinição de CPU, inicialização de hardware, SMM (modo de gerenciamento de sistema), autenticação e verificação no nível de SoC.

A camada de orquestração simplifica a criação de interfaces ACPI, também oferece suporte a bibliotecas de carga útil genéricas e permite o uso da linguagem Rust para criar componentes de firmware seguros e também permite definir a configuração usando a linguagem de marcação YAML. O POL também realiza atestado (confirmação de autenticidade), autenticação e organização da instalação segura de atualizações.

Com o USF, esperamos ajudar a resolver os pontos fracos da indústria no desenvolvimento de firmware, reduzir a complexidade, acelerar a inovação, melhorar a qualidade e segurança do firmware e permitir a flexibilidade e escalabilidade do firmware futuro em CPUs e XPUs.

Espera-se que a nova arquitetura permita:

  • Reduza a complexidade e o custo de desenvolvimento de firmware para novos dispositivos reutilizando o código de componente pronto para uso, uma arquitetura modular que não está vinculada a carregadores específicos e a capacidade de usar uma API universal para configurar módulos.
  • Melhore a qualidade e a segurança do firmware usando módulos verificáveis ​​para interação com o computador e uma infraestrutura mais segura para verificação e autenticação de firmware.
  • Use diferentes carregadores e componentes de carga útil, dependendo das tarefas a serem resolvidas.
  • Acelere o avanço de novas tecnologias e encurte o ciclo de desenvolvimento - os desenvolvedores podem se concentrar apenas em adicionar funcionalidade específica, caso contrário, usar componentes comprovados e prontos para uso.
  • Dimensione o desenvolvimento de firmware para várias arquiteturas de computação mista (XPUs), por exemplo, incluindo, além da CPU, um acelerador gráfico discreto integrado (dGPU) e dispositivos de rede programáveis ​​para acelerar as operações de rede em data centers que fornecem sistemas em nuvem (IPU), infraestrutura Unidade de processamento).

Finalmente para aqueles interessados ​​em saber mais sobre isso, eles devem saber que um projeto de especificação e implementação dos elementos típicos da arquitetura USF já está disponível são postados no GitHub.

fonte: https://www.intel.com