Sound Open Firmware, um SDK para desenvolvimento e firmware DSP de código aberto

Faz pouco foi anunciado o lançamento do projeto Sound Open Firmware 2.0 (SOF), originalmente criado pela Intel abandonar a prática de fornecer firmware fechado para chips DSP relacionados ao processamento de som. Este projeto mais tarde ficou sob a asa da Linux Foundation E agora está sendo desenvolvido com a participação da comunidade e a participação da AMD, Google e NXP.

O projeto você está desenvolvendo um SDK para simplificar o desenvolvimento de firmware, um driver de som para o kernel Linux e um conjunto de firmware pronto para uso para vários chips DSP, para os quais, entre outras coisas, são formados conjuntos binários certificados por uma assinatura digital.

Sobre o firmware aberto de som

Devido à sua estrutura modular, O Sound Open Firmware pode ser portado para várias arquiteturas DSP e plataformas de hardware. Por exemplo, entre as plataformas suportadas, suporte para vários chips da Intel (Broadwell, Icelake, Tigerlake, Alderlake, etc.), Mediatek (mt8195), NXP (i.MX8 *) e AMD (Renoir) equipados com DSP baseado em Xtensa . As arquiteturas Hi-Fi 2, 3 e 4 são declaradas.

Durante o processo de desenvolvimento, você pode usar um emulador especial ou QEMU. O uso de firmware aberto para DSP permite solução de problemas e diagnóstico mais rápidos de problemas de firmware e também oferece aos usuários a oportunidade de adaptar o firmware de forma independente às suas necessidades, realizar otimizações específicas e criar versões de firmware leves que contenham apenas a funcionalidade exigida no produto.

O projeto fornece uma estrutura para desenvolver, otimizar e testar soluções relacionados ao processamento de som, bem como criar controladores e programas para interagir com DSP.

Inclui implementações de firmware, ferramentas de teste de firmware, utilitários para converter arquivos ELF em imagens de firmware adequadas para instalação em hardware, ferramentas de depuração, emulador de DSP, emulador de plataforma de host (baseado em QEMU), ferramentas de rastreamento de firmware, scripts MATLAB / Octave para ajuste de coeficientes para som componentes, aplicativos para organizar a interação e troca de dados com firmware, exemplos prontos para uso de topologias de processamento de som.

O projeto também você está desenvolvendo um driver universal que pode ser usado com dispositivos usando firmware baseado em Sound Open Firmware. O driver já está incluído no kernel principal do Linux desde a versão 5.2 e possui dupla licença sob BSD e GPLv2.

O controlador é responsável por carregar o firmware na memória do DSP, carregar as topologias de som no DSP, organizar a operação do dispositivo de som (responsável por acessar as funções do DSP dos aplicativos) e fornecer pontos de acesso do aplicativo aos dados de som .

O controlador também fornece um mecanismo IPC para comunicação entre o sistema host e o DSP, e uma camada para acessar os recursos de hardware do DSP por meio de uma API genérica. O DSP com Sound Open Firmware parece um dispositivo ALSA normal para aplicativos, para os quais você pode usar a interface de software padrão.

Principais novos recursos do Sound Open Firmware 2.0

Para a parte das novidades que se destacam nesta nova versão:

  • O desempenho das funções de cópia de dados de áudio foi significativamente melhorado e o número de operações de acesso à memória foi reduzido. Em alguns cenários de processamento de áudio, a carga é reduzida em até 40%, mantendo a mesma qualidade de áudio.
  • Melhor estabilidade nas plataformas Intel Multicore (cAVS), incluindo suporte para execução de drivers em qualquer núcleo DSP.
  • Para a plataforma Apollo Lake (APL), o ambiente Zephyr RTOS é usado como base para o firmware em vez do XTOS.
  • O nível de integração do Zephyr OS atingiu a paridade de funcionalidade para algumas plataformas Intel. O Zephyr pode simplificar e encurtar bastante o código dos aplicativos Sound Open Firmware.
  • A capacidade de usar o protocolo IPC4 para suporte básico para captura e reprodução de áudio foi implementada em alguns dispositivos Tiger Lake (TGL) do sistema operacional Windows (o suporte a IPC4 permite que o Windows interaja com o DSP com base no Sound Open Firmware sem usar um driver específico).

Por fim, se estiver interessado em saber mais sobre o assunto, pode consultar os detalhes no link a seguir


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.