Sound Open Firmware 2.0 is beschikbaar, een set open firmware voor DSP-chips

De release van het Sound Open Firmware 2.0 (SOF)-project is gepubliceerd, oorspronkelijk gemaakt door Intel om af te stappen van de praktijk van het leveren van gesloten firmware voor DSP-chips gerelateerd aan audioverwerking. Het project werd vervolgens overgedragen onder de vleugels van de Linux Foundation en wordt nu ontwikkeld met betrokkenheid van de gemeenschap en met deelname van AMD, Google en NXP. Het project ontwikkelt een SDK om de firmware-ontwikkeling te vereenvoudigen, een geluidsdriver voor de Linux-kernel en een set kant-en-klare firmware voor verschillende DSP-chips, waarvoor ook binaire assemblies worden gegenereerd, gecertificeerd door een digitale handtekening. De firmwarecode is geschreven in C-taal met montage-inzetstukken en wordt gedistribueerd onder de BSD-licentie.

Dankzij de modulaire structuur kan Sound Open Firmware worden geporteerd naar verschillende DSP-architecturen en hardwareplatforms. Onder de ondersteunde platforms is er bijvoorbeeld ondersteuning voor verschillende Intel-chips (Broadwell, Icelake, Tigerlake, Alderlake, etc.), Mediatek (mt8195), NXP (i.MX8*) en AMD (Renoir) uitgerust met DSP's gebaseerd op Xtensa HiFi architecturen staat vermeld 2, 3 en 4. Tijdens het ontwikkelingsproces kan een speciale emulator of QEMU worden gebruikt. Het gebruik van open firmware voor DSP stelt u in staat om problemen in de firmware sneller te corrigeren en te diagnosticeren, en geeft gebruikers ook de mogelijkheid om de firmware onafhankelijk aan te passen aan hun behoeften, specifieke optimalisaties door te voeren en lichtgewicht firmwareversies te maken die alleen de functionaliteit bevatten die nodig is voor het product.

Het project biedt een raamwerk voor het ontwikkelen, optimaliseren en testen van oplossingen met betrekking tot audioverwerking, en voor het creëren van stuurprogramma's en programma's voor interactie met DSP. De samenstelling omvat firmware-implementaties, tools voor het testen van firmware, hulpprogramma's voor het converteren van ELF-bestanden naar firmware-images geschikt voor installatie op apparatuur, debugging-tools, een DSP-emulator, een hostplatform-emulator (gebaseerd op QEMU), tools voor het traceren van firmware, scripts voor MATLAB /Octave voor het verfijnen van coëfficiënten voor audiocomponenten, toepassingen voor het organiseren van interactie en gegevensuitwisseling met firmware, kant-en-klare voorbeelden van audioverwerkingstopologieën.

Sound Open Firmware 2.0 is beschikbaar, een set open firmware voor DSP-chips
Sound Open Firmware 2.0 is beschikbaar, een set open firmware voor DSP-chips

Het project ontwikkelt ook een universele driver die kan worden gebruikt met apparaten die firmware gebruiken die is gebaseerd op Sound Open Firmware. De driver is al opgenomen in de belangrijkste Linux-kernel, te beginnen met release 5.2, en valt onder een dubbele licentie: BSD en GPLv2. De driver is verantwoordelijk voor het laden van firmware in het DSP-geheugen, het laden van audiotopologieën in de DSP, het organiseren van de werking van het audioapparaat (verantwoordelijk voor toegang tot DSP-functies vanuit applicaties) en het bieden van applicatietoegangspunten tot audiogegevens. De driver biedt ook een IPC-mechanisme voor communicatie tussen het hostsysteem en de DSP, en een laag voor toegang tot de DSP-hardwaremogelijkheden via een generieke API. Voor toepassingen ziet een DSP met Sound Open Firmware eruit als een gewoon ALSA-apparaat, dat kan worden bestuurd via een standaard software-interface.

Sound Open Firmware 2.0 is beschikbaar, een set open firmware voor DSP-chips

Belangrijkste innovaties in Sound Open Firmware 2.0:

  • De prestaties van audiokopieerfuncties zijn aanzienlijk verbeterd en het aantal geheugentoegangen is verminderd. Bij sommige audioverwerkingsscenario's is de belasting tot wel 40% verminderd, terwijl dezelfde audiokwaliteit behouden bleef.
  • De stabiliteit op multi-core Intel-platforms (cAVS) is verbeterd, inclusief ondersteuning voor het uitvoeren van handlers op elke DSP-kern.
  • Voor het Apollo Lake (APL)-platform wordt de Zephyr RTOS-omgeving gebruikt als basis voor de firmware in plaats van XTOS. Zephyr OS-integratieniveaus hebben pariteit bereikt in functionaliteit voor geselecteerde Intel-platforms. Het gebruik van Zephyr kan de code van Sound Open Firmware-applicaties aanzienlijk vereenvoudigen en verminderen.
  • De mogelijkheid om het IPC4-protocol te gebruiken is geïmplementeerd voor basisondersteuning voor het vastleggen en afspelen van audio op sommige Tiger Lake (TGL)-apparaten met Windows (IPC4-ondersteuning stelt u in staat te communiceren met DSP's op basis van Sound Open Firmware van Windows zonder een specifiek stuurprogramma te gebruiken) .

Bron: opennet.ru

Voeg een reactie