Sound Open Firmware 2.2 beschikbaar, een reeks open firmware voor DSP-chips

De uitgave van het Sound Open Firmware-project 2.2 (SOF) is gepubliceerd, oorspronkelijk opgericht door Intel om weg te gaan van het leveren van gesloten firmware voor DSP-chips die verband houden met geluidsverwerking. Het project is later onder de vleugels van de Linux Foundation gebracht en wordt nu ontwikkeld met de betrokkenheid van de gemeenschap en met deelname van bedrijven als AMD, Google en NXP. Het project ontwikkelt een SDK om de ontwikkeling van firmware te vereenvoudigen, een geluidsdriver voor de Linux-kernel en een set kant-en-klare firmware voor verschillende DSP-chips, waarvoor ook binaire builds worden gevormd, gevalideerd met digitale handtekeningen. De firmwarecode is geschreven in C met assembly-instructies en wordt verspreid onder een BSD-licentie.

Dankzij de modulaire structuur kan Sound Open Firmware worden geport naar verschillende DSP-architecturen en hardwareplatforms. Ondersteunde platforms zijn onder andere verschillende Intel-chips (Broadwell, Icelake, Tigerlake, Alderlake enz.), Mediatek (mt8195), NXP (i.MX8*) en AMD (Renoir), uitgerust met DSP op basis van Xtensa HiFi 2, 3 en 4-architecturen. Tijdens de ontwikkeling kan een speciale emulator of QEMU worden gebruikt. Het gebruik van open firmware voor DSP maakt het mogelijk om problemen in de firmware sneller op te lossen en te diagnosticeren, en geeft gebruikers de mogelijkheid om firmware zelf aan te passen voor hun behoeften, specifieke optimalisaties aan te brengen en lichtgewicht firmwareversies te creƫren die alleen de noodzakelijke functionaliteit van het product bevatten.

Het project biedt een framework voor de ontwikkeling, optimalisatie en testing van oplossingen die verband houden met geluidsverwerking, evenals voor het maken van drivers en software voor interactie met DSP. Het omvat implementaties van firmware, gereedschappen voor het testen van firmware, hulpprogramma's voor het omzetten van ELF-bestanden in firmware-images die geschikt zijn voor installatie op hardware, debugtools, DSP-emulator, host-platformemulator (op basis van QEMU), tools voor het traceren van firmware, scripts in MATLAB/Octave voor het nauwkeurig afstemmen van coƫfficiƫnten voor geluidscomponenten, applicaties voor het organiseren van interactie en dataverkeer met de firmware, en kant-en-klare voorbeelden van geluidverwerkingstopologieƫn.

Sound Open Firmware 2.2 beschikbaar, een reeks open firmware voor DSP-chips
Sound Open Firmware 2.2 beschikbaar, een reeks open firmware voor DSP-chips

Het project ontwikkelt ook een universele stuurprogramma dat kan worden gebruikt met apparaten die firmware op basis van Sound Open Firmware gebruiken. De stuurprogramma maakt al deel uit van de hoofdversie van de Linux-kernel, beginnend met release 5.2, en wordt geleverd onder een dubbele licentie — BSD en GPLv2. De stuurprogramma is verantwoordelijk voor het laden van de firmware in het geheugen van de DSP, het laden van geluidsarchitecturen naar de DSP, het organiseren van de werking van het geluidsapparaat (verantwoordelijk voor het aanroepen van DSP-functies vanuit applicaties) en het bieden van toegangspunten voor applicaties tot geluidsgegevens. De stuurprogramma biedt ook een IPC-mechanisme voor interactie tussen het host-systeem en de DSP, en een laag om toegang te krijgen tot de hardwarecapaciteiten van de DSP via een generieke API. DSP met firmware van Sound Open Firmware lijkt voor applicaties op een gewoon ALSA-apparaat, waarvoor de standaard programmeerinterface kan worden gebruikt.

Sound Open Firmware 2.2 beschikbaar, een reeks open firmware voor DSP-chips

Belangrijke innovaties in Sound Open Firmware 2.2:

  • De component voor interactie met externe codec-bibliotheken is hernoemd van codec_adapter naar module_adapter en is in overeenstemming gebracht met de API van signaalverwerkingsmodules, wat zal toelaten om code uit Windows-processors zonder wijzigingen te gebruiken.
  • De API Frag is verouderd verklaard, wat heeft geleid tot een prestatieverhoging van elke component van ongeveer 1 MCPS (miljoen klokcycli per seconde).
  • Er is een Frame API toegevoegd die een voorspellende berekening van de blokgroottes uitvoert voor processors op basis van SIMD-instructies en zonder. Deze optimalisatie heeft de prestaties met ongeveer 0,25 MCPS verhoogd.
  • Er is een nieuwe mixmodule toegevoegd met ondersteuning voor HiFi4 om het aantal geluidskanalen in de stroom te verkleinen of te verhogen.
  • De mogelijkheden voor het gebruik van het Zephyr RTOS-omgeving als basis voor de firmware zijn uitgebreid in plaats van XTOS. Het gebruik van Zephyr maakt het mogelijk om de code van Sound Open Firmware-toepassingen aanzienlijk te vereenvoudigen en te verkorten. In de nieuwe versie is er ondersteuning toegevoegd voor native Zephyr API's voor logging en invoeren van vertragingen. In de volgende release wordt volledige ingebouwde ondersteuning voor Zephyr verwacht.
  • De mogelijkheid om het IPC4-protocol te gebruiken voor opname en weergave van geluid op apparaten met Windows OS is uitgebreid (ondersteuning voor IPC4 maakt het mogelijk om vanuit Windows interactie te hebben met DSP op basis van Sound Open Firmware zonder een specifieke stuurprogramma te gebruiken).

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster