DSP チップ用のオープン ファームウェアのセットである Sound Open Firmware 2.0 が利用可能です

Sound Open Firmware 2.0 (SOF) プロジェクトのリリースが公開されました。これはもともと、オーディオ処理に関連する DSP チップ用のクローズド ファームウェアを提供する慣行から脱却するために Intel によって作成されました。 その後、このプロジェクトは Linux Foundation の傘下に移管され、現在はコミュニティの参加と AMD、Google、NXP の参加のもとで開発が進められています。 このプロジェクトは、ファームウェア開発を簡素化するための SDK、Linux カーネル用のサウンド ドライバー、およびデジタル署名によって認証されたバイナリ アセンブリも生成されるさまざまな DSP チップ用の既製ファームウェアのセットを開発しています。 ファームウェア コードはアセンブリ挿入を含む C 言語で書かれており、BSD ライセンスの下で配布されます。

モジュール構造のおかげで、Sound Open Firmware はさまざまな DSP アーキテクチャやハードウェア プラットフォームに移植できます。 たとえば、サポートされているプラ​​ットフォームのうち、Xtensa HiFi ベースの DSP を搭載したさまざまな Intel チップ (Broadwell、Iselake、Tigerlake、Alderlake など)、Mediatek (mt8195)、NXP (i.MX8*)、AMD (Renoir) のサポートアーキテクチャは 2、3、4 に記載されています。開発プロセス中に、特別なエミュレータまたは QEMU を使用できます。 DSP 用のオープン ファームウェアを使用すると、ファームウェアの問題をより迅速に修正および診断できるようになります。また、ユーザーはファームウェアをニーズに合わせて個別に調整し、特定の最適化を行って、必要な機能のみを含む軽量のファームウェア バージョンを作成する機会も得られます。製品。

このプロジェクトは、オーディオ処理に関連するソリューションの開発、最適化、テスト、および DSP と対話するためのドライバーとプログラムの作成のためのフレームワークを提供します。 この構成には、ファームウェアの実装、ファームウェアをテストするためのツール、ELF ファイルを機器へのインストールに適したファームウェア イメージに変換するためのユーティリティ、デバッグ ツール、DSP エミュレーター、ホスト プラットフォーム エミュレーター (QEMU ベース)、ファームウェアをトレースするためのツール、MATLAB 用のスクリプトが含まれます。オーディオ コンポーネントの係数を微調整するための /Octave、ファームウェアとの対話とデータ交換を整理するためのアプリケーション、オーディオ処理トポロジの既製の例。

DSP チップ用のオープン ファームウェアのセットである Sound Open Firmware 2.0 が利用可能です
DSP チップ用のオープン ファームウェアのセットである Sound Open Firmware 2.0 が利用可能です

このプロジェクトでは、Sound Open Firmware に基づくファームウェアを使用するデバイスで使用できるユニバーサル ドライバーも開発中です。 このドライバーは、リリース 5.2 以降、メインの Linux カーネルにすでに組み込まれており、BSD と GPLv2 のデュアル ライセンスの下で提供されます。 ドライバーは、DSP メモリへのファームウェアのロード、DSP へのオーディオ トポロジのロード、オーディオ デバイスの動作の編成 (アプリケーションから DSP 機能へのアクセスを担当)、およびオーディオ データへのアプリケーション アクセス ポイントの提供を担当します。 このドライバーは、ホスト システムと DSP 間の通信のための IPC メカニズムと、汎用 API を介して DSP ハードウェア機能にアクセスするためのレイヤーも提供します。 アプリケーションにとって、Sound Open Firmware を備えた DSP は通常の ALSA デバイスのように見え、標準のソフトウェア インターフェイスを使用して制御できます。

DSP チップ用のオープン ファームウェアのセットである Sound Open Firmware 2.0 が利用可能です

Sound Open Firmware 2.0 の主な革新:

  • オーディオコピー機能のパフォーマンスが大幅に向上し、メモリアクセス数が削減されました。 一部のオーディオ処理シナリオでは、同じオーディオ品質を維持しながら最大 40% の負荷が削減されました。
  • マルチコア Intel プラットフォーム (cAVS) での安定性が向上し、あらゆる DSP コアでのハンドラーの実行がサポートされました。
  • Apollo Lake (APL) プラットフォームの場合、XTOS の代わりに Zephyr RTOS 環境がファームウェアのベースとして使用されます。 Zephyr OS の統合レベルは、一部の Intel プラットフォームの機能において同等に達しています。 Zephyr を使用すると、Sound Open Firmware アプリケーションのコードを大幅に簡素化し、削減できます。
  • IPC4 プロトコルを使用する機能は、Windows を実行している一部の Tiger Lake (TGL) デバイスでのオーディオ キャプチャと再生の基本サポートのために実装されました (IPC4 サポートにより、特定のドライバーを使用せずに Windows から Sound Open Firmware に基づいて DSP と対話できるようになります)。 。

出所: オープンネット.ru

コメントを追加します