Na voljo je Sound Open Firmware 2.2, nabor odprte strojne programske opreme za čipe DSP

Objavljena je bila izdaja projekta Sound Open Firmware 2.2 (SOF), ki ga je prvotno ustvaril Intel, da bi se oddaljil od prakse zagotavljanja zaprte strojne programske opreme za čipe DSP, povezane z obdelavo zvoka. Projekt je bil nato prenesen pod okrilje fundacije Linux in se zdaj razvija z vključevanjem skupnosti in s sodelovanjem AMD, Googla in NXP. Projekt razvija SDK za poenostavitev razvoja vdelane programske opreme, zvočni gonilnik za jedro Linuxa in nabor že pripravljene vdelane programske opreme za različne čipe DSP, za katere so ustvarjeni tudi binarni sklopi, potrjeni z digitalnim podpisom. Koda vdelane programske opreme je napisana v jeziku C z vložki za sestavljanje in se distribuira pod licenco BSD.

Zahvaljujoč svoji modularni strukturi je mogoče Sound Open Firmware prenesti na različne arhitekture DSP in platforme strojne opreme. Med podprtimi platformami je na primer podpora za različne Intelove čipe (Broadwell, Icelake, Tigerlake, Alderlake itd.), Mediatek (mt8195), NXP (i.MX8*) in AMD (Renoir), opremljene z DSP-ji, ki temeljijo na Xtensa HiFi. arhitekture so navedene 2, 3 in 4. Med razvojnim procesom je mogoče uporabiti poseben emulator ali QEMU. Uporaba odprte vdelane programske opreme za DSP vam omogoča hitrejše odpravljanje in diagnosticiranje težav v vdelani programski opremi, poleg tega pa daje uporabnikom možnost, da samostojno prilagodijo vdelano programsko opremo svojim potrebam, izvedejo specifične optimizacije in ustvarijo lahke različice vdelane programske opreme, ki vsebujejo samo funkcionalnost, potrebno za izdelek.

Projekt zagotavlja okvir za razvoj, optimizacijo in testiranje rešitev, povezanih z obdelavo zvoka, kot tudi ustvarjanje gonilnikov in programov za interakcijo z DSP. Sestava vključuje implementacije vdelane programske opreme, orodja za testiranje vdelane programske opreme, pripomočke za pretvorbo datotek ELF v slike vdelane programske opreme, primerne za namestitev na opremo, orodja za odpravljanje napak, emulator DSP, emulator gostiteljske platforme (na osnovi QEMU), orodja za sledenje vdelani programski opremi, skripte za MATLAB /Octave za koeficiente natančnega prilagajanja za avdio komponente, aplikacije za organizacijo interakcije in izmenjavo podatkov z vdelano programsko opremo, že pripravljene primere topologij obdelave zvoka.

Na voljo je Sound Open Firmware 2.2, nabor odprte strojne programske opreme za čipe DSP
Na voljo je Sound Open Firmware 2.2, nabor odprte strojne programske opreme za čipe DSP

Projekt prav tako razvija univerzalni gonilnik, ki ga je mogoče uporabljati z napravami, ki uporabljajo strojno programsko opremo, ki temelji na Sound Open Firmware. Gonilnik je že vključen v glavno jedro Linuxa, začenši z izdajo 5.2, in je pod dvojno licenco - BSD in GPLv2. Gonilnik je odgovoren za nalaganje vdelane programske opreme v pomnilnik DSP, nalaganje zvočnih topologij v DSP, organizacijo delovanja zvočne naprave (odgovoren za dostop do funkcij DSP iz aplikacij) in zagotavljanje aplikacijskih dostopnih točk do zvočnih podatkov. Gonilnik nudi tudi mehanizem IPC za komunikacijo med gostiteljskim sistemom in DSP ter plast za dostop do zmogljivosti strojne opreme DSP prek generičnega API-ja. Za aplikacije je DSP z vdelano programsko opremo Sound Open videti kot običajna naprava ALSA, ki jo je mogoče krmiliti s standardnim programskim vmesnikom.

Na voljo je Sound Open Firmware 2.2, nabor odprte strojne programske opreme za čipe DSP

Ključne novosti v Sound Open Firmware 2.2:

  • Komponenta za delo z zunanjimi knjižnicami kodekov je bila preimenovana iz codec_adapter v module_adapter in usklajena z API-jem modulov za obdelavo signalov, kar vam bo omogočilo uporabo kode iz upravljalcev Windows brez spreminjanja.
  • Frag API je bil opuščen in izboljša zmogljivost vsake komponente za približno 1 MCPS (milijon ciklov na sekundo).
  • Dodan Frame API, ki izvaja vnaprejšnji izračun velikosti blokov za upravljalnike na podlagi navodil SIMD in ne-SIMD. Optimizacija je omogočila povečanje zmogljivosti za približno 0.25 MCPS.
  • Dodan nov mešalnik s podporo za HiFi4 za zmanjšanje ali povečanje števila zvočnih kanalov v toku.
  • Razširjene so možnosti uporabe Zephyr RTOS namesto XTOS kot osnove za vdelano programsko opremo za okolje. Uporaba Zephyrja lahko bistveno poenostavi in ​​zmanjša kodo aplikacij Sound Open Firmware. Nova različica dodaja podporo za izvorne API-je Zephyr za beleženje in uvedbo zamud. Popolna izvorna podpora za Zephyr se pričakuje v naslednji izdaji.
  • Možnost uporabe protokola IPC4 za zajemanje in predvajanje zvoka v napravah z operacijskim sistemom Windows je bila razširjena (podpora za IPC4 omogoča operacijskemu sistemu Windows interakcijo z DSP-ji na podlagi Sound Open Firmware brez uporabe posebnega gonilnika).

Vir: opennet.ru

Dodaj komentar