Sound Open Firmware 2.2 on saatavilla, sarja avoimia laiteohjelmistoja DSP-siruille

Sound Open Firmware 2.2 (SOF) -projektin julkaisu on julkaistu, alunperin Intelin luoma siirtyäkseen pois suljetun laiteohjelmiston toimittamisesta äänenkäsittelyyn liittyville DSP-siruille. Myöhemmin projekti siirrettiin Linux Foundationin siiven alle, ja sitä kehitetään nyt yhteisön ja AMD:n, Googlen ja NXP:n osallistuessa. Projektissa kehitetään laiteohjelmistokehitystä yksinkertaistavaa SDK:ta, ääniohjainta Linux-ytimelle ja valmiita laiteohjelmistoja erilaisille DSP-siruille, joille myös luodaan binäärikokoonpanoja, jotka on sertifioitu digitaalisella allekirjoituksella. Laiteohjelmistokoodi on kirjoitettu C-kielellä kokoonpanolisäkkeillä ja sitä jaetaan BSD-lisenssillä.

Modulaarisen rakenteensa ansiosta Sound Open Firmware voidaan siirtää erilaisille DSP-arkkitehtuureille ja laitteistoalustoille. Tuetuista alustoista esimerkiksi tuki erilaisille Intel-siruille (Broadwell, Icelake, Tigerlake, Alderlake jne.), Mediatekille (mt8195), NXP:lle (i.MX8*) ja AMD:lle (Renoir), jotka on varustettu Xtensa HiFi -pohjaisilla DSP:illä arkkitehtuurit on ilmoitettu 2, 3 ja 4. Kehitysprosessin aikana voidaan käyttää erityistä emulaattoria tai QEMU:ta. Avoimen laiteohjelmiston käyttö DSP:lle mahdollistaa laiteohjelmiston ongelmien nopeamman korjaamisen ja diagnosoinnin, ja antaa käyttäjille myös mahdollisuuden sovittaa laiteohjelmisto itsenäisesti tarpeisiinsa, tehdä erityisiä optimointeja ja luoda kevyitä laiteohjelmistoversioita, jotka sisältävät vain tarvittavat toiminnot. tuote.

Projekti tarjoaa puitteet äänenkäsittelyyn liittyvien ratkaisujen kehittämiseen, optimointiin ja testaamiseen sekä ajurien ja ohjelmien luomiseen vuorovaikutukseen DSP:n kanssa. Koostumus sisältää laiteohjelmistototeutukset, työkalut laiteohjelmiston testaamiseen, apuohjelmat ELF-tiedostojen muuntamiseksi laiteohjelmistokuviin, jotka soveltuvat asennettavaksi laitteisiin, virheenkorjaustyökalut, DSP-emulaattori, isäntäalustan emulaattori (QEMU-pohjainen), työkalut laiteohjelmiston jäljittämiseen, skriptit MATLABille /Octave äänikomponenttien hienosäätökertoimiin, sovellukset vuorovaikutuksen ja tiedonvaihdon järjestämiseen firmwaren kanssa, valmiita esimerkkejä äänenkäsittelytopologioista.

Sound Open Firmware 2.2 on saatavilla, sarja avoimia laiteohjelmistoja DSP-siruille
Sound Open Firmware 2.2 on saatavilla, sarja avoimia laiteohjelmistoja DSP-siruille

Hankkeessa kehitetään myös universaalia ajuria, jota voidaan käyttää Sound Open Firmware -ohjelmistoon perustuvien laiteohjelmistojen kanssa. Ajuri sisältyy jo Linuxin pääytimeen, alkaen julkaisusta 5.2, ja se tulee kaksoislisenssin alaisena - BSD ja GPLv2. Ajuri on vastuussa laiteohjelmiston lataamisesta DSP-muistiin, äänitopologioiden lataamisesta DSP:hen, äänilaitteen toiminnan järjestämisestä (vastaa DSP-toimintojen käyttämisestä sovelluksissa) ja sovellusten käyttöpisteiden tarjoamisesta äänidataan. Ohjain tarjoaa myös IPC-mekanismin isäntäjärjestelmän ja DSP:n välistä viestintää varten sekä kerroksen DSP-laitteistoominaisuuksien käyttämiseksi yleisen API:n kautta. Sovelluksille Sound Open Firmware -ohjelmistolla varustettu DSP näyttää tavalliselta ALSA-laitteelta, jota voidaan ohjata tavallisella ohjelmistoliittymällä.

Sound Open Firmware 2.2 on saatavilla, sarja avoimia laiteohjelmistoja DSP-siruille

Sound Open Firmware 2.2:n tärkeimmät innovaatiot:

  • Ulkoisten koodekkikirjastojen kanssa työskentelyyn tarkoitettu komponentti on nimetty uudelleen codec_adapterista module_adapteriksi ja yhdenmukaistettu signaalinkäsittelymoduulien API:n kanssa, jonka avulla voit käyttää Windows-käsittelijöiden koodia muuttamatta sitä.
  • Frag API on vanhentunut ja se on parantanut kunkin komponentin suorituskykyä noin 1 MCPS:llä (miljoonaa sykliä sekunnissa).
  • Lisätty Frame API, joka laskee lohkokoot käsittelijöille SIMD- ja ei-SIMD-ohjeiden perusteella. Optimointi mahdollisti suorituskyvyn lisäämisen noin 0.25 MCPS:llä.
  • Lisätty uusi mikseri HiFi4-tuella vähentämään tai lisäämään äänikanavien määrää streamissa.
  • Mahdollisuuksia käyttää Zephyr RTOS:ia XTOS:n sijaan ympäristön laiteohjelmiston perustana on laajennettu. Zephyrin käyttö voi merkittävästi yksinkertaistaa ja vähentää Sound Open Firmware -sovellusten koodia. Uusi versio lisää tuen alkuperäisille Zephyr API:ille kirjaamiseen ja viiveiden lisäämiseen. Täysi natiivituki Zephyrille odotetaan seuraavassa julkaisussa.
  • Mahdollisuutta käyttää IPC4-protokollaa äänen sieppaamiseen ja toistamiseen Windows-laitteissa on laajennettu (IPC4-tuki mahdollistaa Windowsin vuorovaikutuksen Sound Open Firmware -ohjelmistoon perustuvien DSP:iden kanssa ilman erityistä ohjainta).

Lähde: opennet.ru

Lisää kommentti