Está disponível Sound Open Firmware 2.2, um conjunto de firmware aberto para chips DSP

Foi publicado o lançamento do projeto Sound Open Firmware 2.2 (SOF), originalmente criado pela Intel para se afastar da prática de entrega de firmware fechado para chips DSP relacionados ao processamento de áudio. O projeto foi posteriormente transferido para a Linux Foundation e agora está sendo desenvolvido com o envolvimento da comunidade e com a participação da AMD, Google e NXP. O projeto 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 diversos chips DSP, para os quais também são gerados assemblies binários, certificados por assinatura digital. O código do firmware é escrito em linguagem C com inserções de montagem e é distribuído sob a licença BSD.

Graças à sua estrutura modular, o Sound Open Firmware pode ser portado para diversas arquiteturas DSP e plataformas de hardware. Por exemplo, entre as plataformas suportadas, suporte para vários chips Intel (Broadwell, Icelake, Tigerlake, Alderlake, etc.), Mediatek (mt8195), NXP (i.MX8*) e AMD (Renoir) equipados com DSPs baseados em Xtensa HiFi arquiteturas são indicadas 2, 3 e 4. Durante o processo de desenvolvimento, um emulador especial ou QEMU pode ser usado. O uso de firmware aberto para DSP permite corrigir e diagnosticar problemas de firmware mais rapidamente e também dá aos usuários a oportunidade de adaptar de forma independente o firmware às suas necessidades, fazer otimizações específicas e criar versões leves de firmware que contêm apenas a funcionalidade necessária para o produto.

O projeto fornece um framework para desenvolvimento, otimização e teste de soluções relacionadas ao processamento de áudio, bem como criação de drivers e programas para interação com DSP. A composição inclui implementações de firmware, ferramentas para testar firmware, utilitários para converter arquivos ELF em imagens de firmware adequadas para instalação em equipamentos, ferramentas de depuração, um emulador DSP, um emulador de plataforma host (baseado em QEMU), ferramentas para rastrear firmware, scripts para MATLAB /Octave para coeficientes de ajuste fino de componentes de áudio, aplicativos para organização de interação e troca de dados com firmware, exemplos prontos de topologias de processamento de áudio.

Está disponível Sound Open Firmware 2.2, um conjunto de firmware aberto para chips DSP
Está disponível Sound Open Firmware 2.2, um conjunto de firmware aberto para chips DSP

O projeto também está desenvolvendo um driver universal que pode ser usado com dispositivos que utilizam firmware baseado em Sound Open Firmware. O driver já está incluído no kernel principal do Linux, a partir da versão 5.2, e vem sob licença dupla - BSD e GPLv2. O driver é responsável por carregar o firmware na memória do DSP, carregar topologias de áudio no DSP, organizar a operação do dispositivo de áudio (responsável por acessar as funções do DSP a partir dos aplicativos) e fornecer pontos de acesso do aplicativo aos dados de áudio. O driver 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. Para aplicações, um DSP com Sound Open Firmware se parece com um dispositivo ALSA normal, que pode ser controlado usando uma interface de software padrão.

Está disponível Sound Open Firmware 2.2, um conjunto de firmware aberto para chips DSP

Principais inovações no Sound Open Firmware 2.2:

  • O componente para trabalhar com bibliotecas de codecs externas foi renomeado de codec_adapter para module_adapter e alinhado com a API dos módulos de processamento de sinal, o que permitirá usar o código dos manipuladores do Windows sem alterá-lo.
  • A API Frag foi descontinuada e melhorou o desempenho de cada componente em aproximadamente 1 MCPS (milhão de ciclos por segundo).
  • Adicionada a API Frame, que realiza cálculo direto de tamanhos de bloco para manipuladores com base em instruções SIMD e não SIMD. A otimização permitiu aumentar o desempenho em aproximadamente 0.25 MCPS.
  • Adicionado um novo mixer com suporte HiFi4 para reduzir ou aumentar o número de canais de áudio em um stream.
  • As possibilidades de utilização do Zephyr RTOS em vez do XTOS como base de firmware para o ambiente foram ampliadas. O uso do Zephyr pode simplificar e reduzir significativamente o código dos aplicativos Sound Open Firmware. A nova versão adiciona suporte para APIs Zephyr nativas para registro e introdução de atrasos. Suporte nativo completo para Zephyr é esperado na próxima versão.
  • A capacidade de usar o protocolo IPC4 para capturar e reproduzir som em dispositivos que executam Windows foi expandida (o suporte IPC4 permite que o Windows interaja com DSPs baseados em Sound Open Firmware sem usar um driver específico).

Fonte: opennet.ru

Adicionar um comentário