次の方法で共有


Intel の HD オーディオのアーキテクチャ

Intel High Definition Audio 仕様 (Intel HD Audio の Web サイトを参照) では、Intel AC'97 コーデックおよびコントローラー仕様の後継として開発されているオーディオ ハードウェア アーキテクチャについて説明しています。 オペレーティング システムの UAA ドライバー コンポーネントは、ハードウェア ベンダーからのソリューション固有のドライバーがなくても、HD オーディオ レジスタ セットを公開し、システムの内部バスに接続するオーディオ ソリューションにサービスを提供できます。

HD オーディオ アーキテクチャは、デジタル オーディオ コントローラー用の統一されたプログラミング インターフェイスを提供します。 通常、今日のオーディオ コーデックは AC'97 業界標準に準拠しており、デジタル コントローラーは別の業界標準である AC-Link を通じて 1 つ以上の AC'97 コーデックに接続します。 これらの標準はコーデックとリンクが一貫して実装されるようにするのに役立ちますが、デジタル オーディオ コントローラーへのインターフェイスを定義する標準は現在存在していません。 ベンダーは、システム統合 AC'97 デジタル オーディオ コントローラー用にかなり似たソリューションを持つ傾向がありますが、各 AC'97 ソリューションは異なるため、別のドライバーを必要とする可能性があります。 HD オーディオ アーキテクチャは、すべての実装で統一されたベース レジスタ セットを指定することにより、ソリューション固有のドライバーの要件をなくすことを目的としています。

HD オーディオ アーキテクチャに準拠するバス コントローラー:

  • コントローラー ハードウェアのバージョン情報を提供します。

  • シリアル データアウト (SDO) 行と DMA エンジンの数など、ハードウェア構成情報を提供します。

  • HD オーディオ リンクで使用可能なバス帯域幅の量を管理します。

  • コーデックから未承諾の応答とウェイクアップ イベントを受け入れます。

  • コーデック コマンドとコーデック応答を別個のリング バッファーのキューに入れます。

  • スキャッター/ギャザー転送を実行し、ホスト プロセッサによる介入なしでメモリ内のコーデックと循環バッファーの間でデータをストリーミングできる、入力、出力、および双方向 DMA エンジンのコレクションを提供します。

次の図は、Windows Vista の HD オーディオ デバイスの UAA ドライバー アーキテクチャの図を示しています。 この図では、UAA HD オーディオ クラス ドライバーと HD オーディオ バス ドライバーというラベルの付いたソフトウェア コンポーネントがマイクロソフトによって提供されています。 モデム ドライバーというラベルが付いたコンポーネントは、独立系ハードウェア ベンダーによって提供されます。

Diagram illustrating the UAA driver architecture for Intel HD Audio devices in Windows Vista.

UAA HD オーディオ クラス ドライバーは、(前の図に示されていない) ドライバーの上のオペレーティング システム オーディオ スタックにストリーミング インターフェイスを提供します。

HD オーディオ バス ドライバーは、HD オーディオ コントローラーのハードウェア レジスタに直接アクセスし、DMA エンジンの管理とコーデックへのコマンドの送信を行うために UAA HD オーディオ クラス ドライバーまたはモデム ドライバーが使用する DDI を提供します。 HD オーディオ バス ドライバーは、HD オーディオ リンク上のオーディオ デバイスに代わって、すべての割り込み、プラグ アンド プレイ通知、電源管理イベントを処理します。

HD オーディオ コントローラーは、コマンドとデータを HD オーディオ リンク上のコーデックに転送するために使用される DMA エンジンとコマンド バッファーを提供します。 前の図のコーデックというラベルが付いているボックスは、オーディオ コーデックまたはモデム コーデックのいずれかであり、外部ジャックを通じてリムーバブル周辺機器に接続することも、モバイル PC スピーカーなどの固定内部周辺機器に接続することもできます。