Dostupan je Sound Open Firmware 2.2, set otvorenog firmware-a za DSP čipove

Objavljeno je izdanje projekta Sound Open Firmware 2.2 (SOF), koji je izvorno kreirao Intel kako bi se odmaknuo od prakse isporuke zatvorenog firmware-a za DSP čipove povezane s audio obradom. Projekt je kasnije prebačen pod okrilje Linux Foundationa i sada se razvija uz uključivanje zajednice i uz sudjelovanje AMD-a, Googlea i NXP-a. Projekt razvija SDK za pojednostavljenje razvoja firmvera, zvučni upravljački program za Linux kernel i skup gotovih firmvera za različite DSP čipove, za koje se također generiraju binarne sklopove, ovjerene digitalnim potpisom. Programski kod je napisan u jeziku C s umetcima sklopa i distribuira se pod BSD licencom.

Zahvaljujući svojoj modularnoj strukturi, Sound Open Firmware može se prenijeti na različite DSP arhitekture i hardverske platforme. Na primjer, među podržanim platformama, podrška za razne Intelove čipove (Broadwell, Icelake, Tigerlake, Alderlake itd.), Mediatek (mt8195), NXP (i.MX8*) i AMD (Renoir) opremljene DSP-ovima temeljenim na Xtensa HiFi arhitekture su navedene pod 2, 3 i 4. Tijekom procesa razvoja može se koristiti poseban emulator ili QEMU. Korištenje otvorenog firmvera za DSP omogućuje vam brže ispravljanje i dijagnosticiranje problema u firmveru, a također daje korisnicima mogućnost da samostalno prilagode firmver svojim potrebama, izvrše specifične optimizacije i kreiraju lagane verzije firmvera koje sadrže samo funkcionalnost potrebnu za proizvod.

Projekt pruža okvir za razvoj, optimizaciju i testiranje rješenja vezanih uz obradu zvuka, kao i stvaranje upravljačkih programa i programa za interakciju s DSP-om. Sastav uključuje implementacije firmvera, alate za testiranje firmvera, uslužne programe za pretvaranje ELF datoteka u slike firmvera pogodne za instalaciju na opremi, alate za otklanjanje pogrešaka, DSP emulator, emulator host platforme (temeljen na QEMU), alate za praćenje firmvera, skripte za MATLAB /Octave za fino podešavanje koeficijenata za audio komponente, aplikacije za organiziranje interakcije i razmjenu podataka s firmverom, gotove primjere topologija audio obrade.

Dostupan je Sound Open Firmware 2.2, set otvorenog firmware-a za DSP čipove
Dostupan je Sound Open Firmware 2.2, set otvorenog firmware-a za DSP čipove

Projekt također razvija univerzalni upravljački program koji se može koristiti s uređajima koji koriste firmware temeljen na Sound Open Firmware. Upravljački program je već uključen u glavnu jezgru Linuxa, počevši od izdanja 5.2, i dolazi pod dvostrukom licencom - BSD i GPLv2. Upravljački program je odgovoran za učitavanje firmvera u DSP memoriju, učitavanje audio topologija u DSP, organiziranje rada audio uređaja (odgovornog za pristup DSP funkcijama iz aplikacija) i pružanje aplikacijskih pristupnih točaka audio podacima. Upravljački program također nudi IPC mehanizam za komunikaciju između glavnog sustava i DSP-a, te sloj za pristup DSP hardverskim mogućnostima putem generičkog API-ja. Za aplikacije, DSP sa Sound Open Firmware izgleda kao običan ALSA uređaj, koji se može kontrolirati pomoću standardnog softverskog sučelja.

Dostupan je Sound Open Firmware 2.2, set otvorenog firmware-a za DSP čipove

Ključne inovacije u Sound Open Firmware 2.2:

  • Komponenta za rad s vanjskim bibliotekama kodeka preimenovana je iz codec_adapter u module_adapter i usklađena s API-jem modula za obradu signala, što će vam omogućiti korištenje koda iz Windows rukovatelja bez mijenjanja.
  • Frag API je zastario i poboljšao je performanse svake komponente za približno 1 MCPS (milijun ciklusa u sekundi).
  • Dodan Frame API za proaktivno izračunavanje veličina blokova za rukovatelje sa i bez SIMD uputa. Optimizacija je omogućila povećanje produktivnosti za približno 0.25 MCPS.
  • Dodan je novi modul miksera s HiFi4 podrškom za smanjenje ili povećanje broja audio kanala u streamu.
  • Proširene su mogućnosti korištenja Zephyr RTOS-a umjesto XTOS-a kao osnove za firmware za okruženje. Korištenje Zephyra može značajno pojednostaviti i smanjiti kod aplikacija Sound Open Firmware. Nova verzija dodaje podršku za izvorne Zephyr API-je za bilježenje i uvođenje kašnjenja. Potpuna izvorna podrška za Zephyr očekuje se u sljedećem izdanju.
  • Proširena je mogućnost korištenja protokola IPC4 za snimanje i reprodukciju zvuka na uređajima sa sustavom Windows (podrška za IPC4 omogućuje interakciju sustava Windows s DSP-ovima na temelju Sound Open Firmware-a bez upotrebe određenog upravljačkog programa).

Izvor: opennet.ru

Dodajte komentar