Ang Sound Open Firmware 2.2 anaa, usa ka set sa open firmware alang sa DSP chips

Ang pagpagawas sa Sound Open Firmware 2.2 (SOF) nga proyekto gimantala, nga orihinal nga gimugna sa Intel aron mapalayo gikan sa praktis sa paghatud sa closed firmware alang sa DSP chips nga may kalabutan sa audio processing. Ang proyekto sa ulahi gibalhin ubos sa pako sa Linux Foundation ug karon gipalambo uban sa pag-apil sa komunidad ug uban sa partisipasyon sa AMD, Google ug NXP. Ang proyekto nagpalambo sa usa ka SDK aron pasimplehon ang pag-uswag sa firmware, usa ka sound driver alang sa Linux kernel ug usa ka set sa andam nga firmware alang sa lainlaing mga DSP chips, diin ang mga binary nga asembliya gihimo usab, gipamatud-an sa usa ka digital nga pirma. Ang firmware code gisulat sa C nga pinulongan nga adunay mga pagsal-ot sa assembly ug giapod-apod ubos sa lisensya sa BSD.

Salamat sa modular nga istruktura niini, ang Sound Open Firmware mahimong ma-port sa lainlaing mga arkitektura sa DSP ug mga platform sa hardware. Pananglitan, taliwala sa gisuportahan nga mga plataporma, suporta alang sa lainlaing Intel chips (Broadwell, Icelake, Tigerlake, Alderlake, ug uban pa), Mediatek (mt8195), NXP (i.MX8*) ug AMD (Renoir) nga adunay mga DSP base sa Xtensa HiFi. Ang mga arkitektura gipahayag nga 2, 3 ug 4. Atol sa proseso sa pag-uswag, ang usa ka espesyal nga emulator o QEMU mahimong magamit. Ang paggamit sa bukas nga firmware alang sa DSP nagtugot kanimo sa mas paspas nga pagtul-id ug pag-diagnose sa mga problema sa firmware, ug naghatag usab sa mga tiggamit og oportunidad nga independente nga ipahiangay ang firmware sa ilang mga panginahanglan, paghimo og piho nga mga pag-optimize ug paghimo og mga lightweight nga bersyon sa firmware nga adunay sulod lamang nga gikinahanglan alang sa ang produkto.

Naghatag ang proyekto og balangkas alang sa pagpalambo, pag-optimize ug pagsulay sa mga solusyon nga may kalabotan sa pagproseso sa audio, ingon man paghimo sa mga drayber ug mga programa alang sa pakig-uban sa DSP. Ang komposisyon naglakip sa mga pagpatuman sa firmware, mga himan alang sa pagsulay sa firmware, mga gamit sa pag-convert sa ELF nga mga file ngadto sa mga imahe sa firmware nga angay alang sa pag-instalar sa mga ekipo, mga himan sa pag-debug, usa ka DSP emulator, usa ka host platform emulator (base sa QEMU), mga himan alang sa pagsubay sa firmware, mga script alang sa MATLAB /Octave para sa fine-tuning coefficients para sa audio components, mga aplikasyon para sa pag-organisar sa interaction ug data exchange sa firmware, ready-made nga mga ehemplo sa audio processing topologies.

Ang Sound Open Firmware 2.2 anaa, usa ka set sa open firmware alang sa DSP chips
Ang Sound Open Firmware 2.2 anaa, usa ka set sa open firmware alang sa DSP chips

Ang proyekto nagpalambo usab sa usa ka unibersal nga drayber nga magamit sa mga aparato gamit ang firmware nga gibase sa Sound Open Firmware. Ang drayber nalakip na sa panguna nga kernel sa Linux, sugod sa pagpagawas sa 5.2, ug naa sa ilawom sa usa ka doble nga lisensya - BSD ug GPLv2. Ang drayber maoy responsable sa pagkarga sa firmware ngadto sa panumduman sa DSP, pagkarga sa mga topolohiya sa audio ngadto sa DSP, pag-organisar sa operasyon sa audio device (responsable sa pag-access sa mga function sa DSP gikan sa mga aplikasyon), ug paghatag sa mga access point sa aplikasyon ngadto sa audio data. Naghatag usab ang drayber og mekanismo sa IPC alang sa komunikasyon tali sa host system ug sa DSP, ug usa ka layer alang sa pag-access sa mga kapabilidad sa hardware sa DSP pinaagi sa usa ka generic nga API. Alang sa mga aplikasyon, ang usa ka DSP nga adunay Sound Open Firmware morag usa ka regular nga ALSA device, nga mahimong kontrolado gamit ang standard interface sa software.

Ang Sound Open Firmware 2.2 anaa, usa ka set sa open firmware alang sa DSP chips

Pangunang mga inobasyon sa Sound Open Firmware 2.2:

  • Ang sangkap alang sa pagtrabaho sa gawas nga mga librarya sa codec giilisan ang ngalan gikan sa codec_adapter ngadto sa module_adapter ug gipahiuyon sa API sa mga module sa pagproseso sa signal, nga magtugot kanimo sa paggamit sa code gikan sa mga tagdumala sa Windows nga dili kini usbon.
  • Ang Frag API wala na gamita, nga nagpauswag sa performance sa matag component sa gibana-bana nga 1 MCPS (million cycles per second).
  • Gidugang ang Frame API, nga naghimo sa unahan nga pagkalkula sa mga gidak-on sa block alang sa mga tigdumala pinasukad sa mga panudlo sa SIMD ug dili SIMD. Ang pag-optimize nagpaposible sa pagpataas sa pasundayag sa gibana-bana nga 0.25 MCPS.
  • Nagdugang usa ka bag-ong mixer nga adunay suporta sa HiFi4 aron makunhuran o madugangan ang gidaghanon sa mga channel sa audio sa usa ka sapa.
  • Ang mga posibilidad sa paggamit sa Zephyr RTOS imbes sa XTOS isip basehan sa firmware alang sa kalikopan gipalapdan. Ang paggamit sa Zephyr makapasimple ug makapamenos sa code sa mga aplikasyon sa Sound Open Firmware. Ang bag-ong bersyon nagdugang suporta alang sa lumad nga Zephyr API para sa pag-log ug pagpaila sa mga paglangan. Ang bug-os nga lumad nga suporta alang sa Zephyr gilauman sa sunod nga pagpagawas.
  • Ang abilidad sa paggamit sa IPC4 protocol alang sa pagkuha ug pagpatugtog sa tingog sa mga device nga nagdagan sa Windows gipalapdan (ang suporta sa IPC4 nagtugot sa Windows nga makig-interact sa mga DSP base sa Sound Open Firmware nga walay paggamit sa espesipikong drayber).

Source: opennet.ru

Idugang sa usa ka comment