Yra „Sound Open Firmware 2.2“ – atviros DSP lustų programinės aparatinės įrangos rinkinys

Paskelbtas „Sound Open Firmware 2.2“ (SOF) projekto leidimas, kurį iš pradžių sukūrė „Intel“, kad būtų atsisakyta praktikos teikti uždarą programinę-aparatinę įrangą DSP lustams, susijusiems su garso apdorojimu. Vėliau projektas buvo perkeltas į „Linux Foundation“ sparną ir dabar yra kuriamas dalyvaujant bendruomenei bei dalyvaujant AMD, „Google“ ir NXP. Projekte kuriamas SDK, skirtas supaprastinti programinės aparatinės įrangos kūrimą, garso tvarkyklę Linux branduoliui ir paruoštos programinės įrangos rinkinį įvairiems DSP lustams, kuriems taip pat generuojami dvejetainiai rinkiniai, patvirtinti skaitmeniniu parašu. Programinės įrangos kodas parašytas C kalba su surinkimo įdėklais ir platinamas pagal BSD licenciją.

Dėl savo modulinės struktūros „Sound Open Firmware“ galima perkelti į įvairias DSP architektūras ir aparatinės įrangos platformas. Pavyzdžiui, tarp palaikomų platformų palaikomi įvairūs „Intel“ lustai („Broadwell“, „Icelake“, „Tigerlake“, „Alderlake“ ir kt.), „Mediatek“ (mt8195), „NXP“ (i.MX8*) ir „AMD“ („Renoir“), aprūpinti Xtensa HiFi pagrindu veikiančiais DSP. architektūros nurodytos 2, 3 ir 4. Kūrimo proceso metu gali būti naudojamas specialus emuliatorius arba QEMU. Atviros programinės aparatinės įrangos naudojimas DSP leidžia greičiau ištaisyti ir diagnozuoti programinės aparatinės įrangos problemas, taip pat suteikia vartotojams galimybę savarankiškai pritaikyti programinę-aparatinę įrangą pagal savo poreikius, atlikti konkrečius optimizavimus ir sukurti lengvas programinės aparatinės įrangos versijas, kuriose yra tik reikalingos funkcijos. produktas.

Projektas suteikia pagrindą kurti, optimizuoti ir išbandyti su garso apdorojimu susijusius sprendimus, taip pat kurti tvarkykles ir programas, skirtas sąveikai su DSP. Į kompoziciją įeina programinės įrangos diegimas, programinės aparatinės įrangos testavimo įrankiai, ELF failų konvertavimo į programinės aparatinės įrangos vaizdus, ​​tinkančius diegti įrangoje, programos, derinimo įrankiai, DSP emuliatorius, pagrindinės platformos emuliatorius (pagrįstas QEMU), programinės aparatinės įrangos sekimo įrankiai, MATLAB scenarijai. /Octava garso komponentų koregavimo koeficientams, sąveikos ir duomenų mainų su programine įranga organizavimo programoms, paruošti garso apdorojimo topologijų pavyzdžiai.

Yra „Sound Open Firmware 2.2“ – atviros DSP lustų programinės aparatinės įrangos rinkinys
Yra „Sound Open Firmware 2.2“ – atviros DSP lustų programinės aparatinės įrangos rinkinys

Projekte taip pat kuriama universali tvarkyklė, kurią galima naudoti su įrenginiais, naudojantys programinę-aparatinę įrangą, pagrįstą „Sound Open Firmware“. Vairuotojas jau įtrauktas į pagrindinį „Linux“ branduolį, pradedant nuo 5.2 versijos, ir jai taikoma dviguba licencija – BSD ir GPLv2. Vairuotojas yra atsakingas už programinės aparatinės įrangos įkėlimą į DSP atmintį, garso topologijų įkėlimą į DSP, garso įrenginio veikimo organizavimą (atsakingas už prieigą prie DSP funkcijų iš programų) ir programos prieigos taškų suteikimą prie garso duomenų. Vairuotojas taip pat suteikia IPC mechanizmą, skirtą ryšiui tarp pagrindinės sistemos ir DSP, ir sluoksnį, leidžiantį pasiekti DSP aparatinės įrangos galimybes per bendrąją API. Programoms DSP su „Sound Open Firmware“ atrodo kaip įprastas ALSA įrenginys, kurį galima valdyti naudojant standartinę programinės įrangos sąsają.

Yra „Sound Open Firmware 2.2“ – atviros DSP lustų programinės aparatinės įrangos rinkinys

Pagrindinės „Sound Open Firmware 2.2“ naujovės:

  • Компонент для работы с внешними библиотеками кодеков переименован из codec_adapter в module_adapter и приведён к соответствию API модулей обработки сигналов, что позволит использовать код из Windows-обработчиков без его изменения.
  • Объявлен устаревшим API Frag, отказ от которого позволил повысить производительность каждого компонента примерно на 1 MCPS (миллион тактов в секунду).
  • Добавлен API Frame, выполняющий упреждающее вычисление размеров блоков для обработчиков на базе инструкций SIMD и без них. Оптимизация позволила увеличить производительность примерно на 0.25 MCPS.
  • Добавлен новый модуль смешивания с поддержкой HiFi4 для сокращения или увеличения числа звуковых каналов в потоке.
  • Расширены возможности использования в качестве основы прошивки окружения Zephyr RTOS вместо XTOS. Применение Zephyr позволяет значительно упростить и сократить код приложений Sound Open Firmware. В новой версии добавлена поддержка родных для Zephyr API для ведения логов и внесения задержек. В следующем выпуске ожидается полная встроенная поддержка Zephyr.
  • Расширена возможность использования протокола IPC4 для захвата и воспроизведения звука на устройствах с ОС Windows (поддержка IPC4 позволяет из Windows взаимодействовать с DSP на базе прошивок Sound Open Firmware без применения специфичного драйвера).

Šaltinis: opennet.ru

Добавить комментарий