Projekt Sound Open Firmware 2.0 (SOF), pôvodne vytvorený spoločnosťou Intel s cieľom odkloniť sa od praxe poskytovania proprietárneho firmvéru pre DSP čipy súvisiace so spracovaním zvuku, bol zverejnený. Projekt bol následne presunutý pod záštitu organizácie. Linux Foundation sa v súčasnosti vyvíja za účasti komunity a spoločností AMD, Google a NXP. Projekt vyvíja SDK na zjednodušenie vývoja firmvéru a ovládač zvuku pre jadro. Linux a sadu hotového firmvéru pre rôzne DSP čipy vrátane digitálne podpísaných binárnych zostáv. Kód firmvéru je napísaný v jazyku C s vloženými zostavami a je distribuovaný pod licenciou BSD.
Vďaka svojej modulárnej štruktúre môže byť Sound Open Firmware portovaný na rôzne DSP architektúry a hardvérové platformy. Medzi podporované platformy patrí napríklad podpora rôznych čipov Intel (Broadwell, Icelake, Tigerlake, Alderlake atď.), Mediatek (mt8195), NXP (i.MX8*) a AMD (Renoir) vybavené DSP na báze Xtensa HiFi architektúry sa uvádza 2, 3 a 4. Počas procesu vývoja je možné použiť špeciálny emulátor alebo QEMU. Použitie otvoreného firmvéru pre DSP vám umožňuje rýchlejšie opraviť a diagnostikovať problémy vo firmvéri a tiež dáva používateľom možnosť nezávisle prispôsobiť firmvér svojim potrebám, vykonávať špecifické optimalizácie a vytvárať ľahké verzie firmvéru, ktoré obsahujú iba funkcie potrebné pre produkt.
Projekt poskytuje rámec pre vývoj, optimalizáciu a testovanie riešení týkajúcich sa spracovania zvuku, ako aj vytváranie ovládačov a programov pre interakciu s DSP. Kompozícia zahŕňa implementácie firmvéru, nástroje na testovanie firmvéru, nástroje na konverziu súborov ELF na obrazy firmvéru vhodné na inštaláciu do zariadenia, nástroje na ladenie, emulátor DSP, emulátor hostiteľskej platformy (založený na QEMU), nástroje na sledovanie firmvéru, skripty pre MATLAB /Octave pre jemné doladenie koeficientov pre audio komponenty, aplikácie na organizovanie interakcie a výmenu dát s firmvérom, hotové príklady topológií spracovania zvuku.


Projekt tiež vyvíja univerzálny ovládač, ktorý je možné použiť so zariadeniami s firmvérom založeným na Sound Open Firmware. Ovládač je už súčasťou hlavného jadra. Linux, počnúc verziou 5.2, a je distribuovaný pod dvojitou licenciou – BSD a GPLv2. Ovládač je zodpovedný za načítanie firmvéru do pamäte DSP, načítanie zvukových topológií do DSP, organizáciu prevádzky zvukového zariadenia (zodpovedného za prístup k funkciám DSP z aplikácií) a poskytovanie prístupových bodov aplikácií k zvukovým údajom. Ovládač tiež poskytuje mechanizmus IPC pre interakciu medzi hostiteľským systémom a DSP a vrstvu pre prístup k hardvérovým možnostiam DSP prostredníctvom štandardného rozhrania API. DSP s otvoreným firmvérom Sound sa aplikáciám javí ako bežné zariadenie ALSA, ktoré je možné ovládať pomocou štandardného softvérového rozhrania.

Kľúčové inovácie v Sound Open Firmware 2.0:
- Výrazne sa zlepšil výkon funkcií kopírovania zvuku a znížil sa počet prístupov do pamäte. Niektoré scenáre spracovania zvuku zaznamenali zníženie záťaže až o 40 % pri zachovaní rovnakej kvality zvuku.
- Stabilita na viacjadrových platformách Intel (cAVS) bola vylepšená, vrátane podpory spúšťania obslužných programov na akomkoľvek jadre DSP.
- Pre platformu Apollo Lake (APL) je ako základ firmvéru namiesto XTOS použité prostredie Zephyr RTOS. Úrovne integrácie systému Zephyr OS dosiahli rovnakú funkčnosť pre vybrané platformy Intel. Používanie Zephyr môže výrazne zjednodušiť a zredukovať kód aplikácií Sound Open Firmware.
- Implementovaná možnosť používať protokol IPC4 pre základný záznam a prehrávanie zvuku na niektorých zariadeniach Tiger Lake (TGL) s operačným systémom. Windows (Podpora IPC4 umožňuje Windows interagovať s DSP založenými na Sound Open Firmware bez použitia špecifického ovládača).
Zdroj: opennet.ru
