Saadaval on Sound Open Firmware 2.0, avatud püsivara komplekt DSP-kiipide jaoks

Avaldatud on projekti Sound Open Firmware 2.0 (SOF) väljalase, mille algselt lõi Intel, et loobuda helitöötlusega seotud DSP-kiipide suletud püsivara tarnimisest. Projekt viidi hiljem üle Linuxi fondi tiiva alla ja nüüd arendatakse seda kogukonna kaasamisel ning AMD, Google'i ja NXP osalusel. Projekti käigus töötatakse välja püsivara arendamise lihtsustamiseks SDK-d, Linuxi tuuma helidraiveri ja erinevate DSP-kiipide jaoks valmis püsivara komplekti, mille jaoks genereeritakse ka binaarkooste, mis on sertifitseeritud digitaalallkirjaga. Püsivarakood on kirjutatud C-keeles koos montaaži lisadega ja seda levitatakse BSD litsentsi alusel.

Tänu oma modulaarsele struktuurile saab Sound Open Firmware'i portida erinevatele DSP arhitektuuridele ja riistvaraplatvormidele. Näiteks toetatud platvormidest erinevate Inteli kiipide (Broadwell, Icelake, Tigerlake, Alderlake jne), Mediateki (mt8195), NXP (i.MX8*) ja AMD (Renoir) tugi, mis on varustatud Xtensa HiFi baasil põhinevate DSP-dega arhitektuurid on märgitud 2, 3 ja 4. Arendusprotsessi käigus saab kasutada spetsiaalset emulaatorit või QEMU-d. Avatud püsivara kasutamine DSP jaoks võimaldab kiiremini parandada ja diagnoosida püsivara probleeme, samuti annab kasutajatele võimaluse iseseisvalt kohandada püsivara vastavalt oma vajadustele, teha konkreetseid optimeerimisi ja luua kergeid püsivara versioone, mis sisaldavad ainult vajalikke funktsioone. toode.

Projekt annab raamistiku helitöötlusega seotud lahenduste arendamiseks, optimeerimiseks ja testimiseks, samuti draiverite ja programmide loomiseks DSP-ga suhtlemiseks. Kompositsioon sisaldab püsivara rakendusi, tööriistu püsivara testimiseks, utiliite ELF-failide teisendamiseks püsivara kujutisteks, mis sobivad seadmetele installimiseks, silumistööriistu, DSP-emulaatorit, hostiplatvormi emulaatorit (QEMU-l põhinev), püsivara jälgimise tööriistu, MATLAB-i skripte. /Octave helikomponentide koefitsientide peenhäälestamiseks, püsivaraga interaktsiooni ja andmevahetuse korraldamise rakendused, helitöötluse topoloogiate valmis näited.

Saadaval on Sound Open Firmware 2.0, avatud püsivara komplekt DSP-kiipide jaoks
Saadaval on Sound Open Firmware 2.0, avatud püsivara komplekt DSP-kiipide jaoks

Projekti käigus arendatakse ka universaalset draiverit, mida saab kasutada seadmetega, mis kasutavad Sound Open Firmwarel põhinevat püsivara. Draiver on juba Linuxi peamises kernelis, alates versioonist 5.2, ja sellel on topeltlitsents – BSD ja GPLv2. Draiver vastutab püsivara laadimise eest DSP-mällu, helitopoloogiate laadimise eest DSP-sse, heliseadme töö korraldamise (vastutab rakendustest DSP-funktsioonidele juurdepääsu eest) ja heliandmetele rakenduste pääsupunktide pakkumise eest. Draiver pakub ka IPC-mehhanismi hostsüsteemi ja DSP vaheliseks suhtluseks ning kihi DSP riistvaravõimalustele juurdepääsuks üldise API kaudu. Rakenduste jaoks näeb Sound Open Firmwarega DSP välja nagu tavaline ALSA seade, mida saab juhtida standardse tarkvaraliidese abil.

Saadaval on Sound Open Firmware 2.0, avatud püsivara komplekt DSP-kiipide jaoks

Peamised uuendused Sound Open Firmware 2.0-s:

  • Heli kopeerimise funktsioonide jõudlus on oluliselt paranenud ja mälupöörduste arv on vähenenud. Mõne helitöötlusstsenaariumi korral on koormus vähenenud kuni 40%, säilitades samal ajal sama helikvaliteedi.
  • Täiustatud on mitmetuumaliste Inteli platvormide (cAVS) stabiilsust, sealhulgas on toetatud töötlejate käitamist mis tahes DSP-tuumadel.
  • Apollo Lake'i (APL) platvormi puhul kasutatakse XTOS-i asemel püsivara aluseks Zephyr RTOS keskkonda. Zephyr OS-i integratsioonitasemed on saavutanud valitud Inteli platvormide funktsionaalsuse pariteedi. Zephyri kasutamine võib märkimisväärselt lihtsustada ja vähendada Sound Open Firmware rakenduste koodi.
  • Võimalus kasutada protokolli IPC4 on juurutatud helihõive ja taasesituse põhitoeks mõnes Windowsiga töötavas Tiger Lake'i (TGL) seadmetes (IPC4 tugi võimaldab teil suhelda Windowsi Sound Open Firmwarel põhinevate DSP-dega ilma konkreetset draiverit kasutamata) .

Allikas: opennet.ru

Lisa kommentaar