組み込みプラットフォームでのオーディオインターフェイステストの自動化
オーディオインターフェースは、最近どこにでもあるようになりました。産業用モノのインターネット(IIOT)用のほとんどのシングルボードコンピューター(SBC)で利用できます。アナログオーディオからデジタルオーディオポートまで、さまざまなタイプのインターフェイスを利用できます。このインターフェイスの各タイプには、設計とテストにおいて独自の課題があります。組み立ておよび製造中のこれらのインターフェースのテストには、アナログまたはデジタルのフロントエンドから処理装置のデジタルオーディオ入力ポートまでの完全なパスが含まれます。
組み込みプラットフォームのオーディオフロントエンドと、実稼働テストセットアップ環境でのオーディオデータパスの一般的なフローを以下に示します(図1)。
図1:組み込みプラットフォームのテストセットアップとオーディオフロントエンド(出典:作成者)
上の図は、データパスに存在する主要なブロック/コンポーネントを示しています。存在するレシーバーICは、アナログ-デジタルコンバーター(ADC)などのアナログフロントエンドICにすることも、デジタルオーディオレシーバーICにすることもできます。 ICの出力は、Inter-IC Sound Bus(I2S)のような任意のシリアルフォーマットにすることができます。このインターフェースは、パルス符号変調(PCM)形式の生のオーディオデータを伝送できます。
プロダクションテストの目的は、完全なオーディオパスがあらゆる種類の問題について機能的にテストされていることを確認することです。考えられる問題には、次のものがあります。
-
フロントエンドレシーバーICの障害。
-
高さでスタック(電源に接続)や低でスタック(アースに接続)などのI2Sラインでのアセンブリ関連の問題または複数の信号線間の短絡。
このオーディオインターフェイステストは、組み込みボード上のすべてのインターフェイスをテストする、より大規模な実稼働テストシステムの一部になります。
以下にリストされているのは、オーディオインターフェイステストでアセンブリ関連の問題を検出するために使用される一般的な手法の1つです。フロントエンドレシーバーICの障害については、さまざまな手法を使用する必要がありますが、それらの手法はこのドキュメントの範囲を超えています。
テクニック1-主観的テスト
主観的なテストでは、オーディオデータサンプルを数秒間キャプチャし、聴覚検査によって実際に再生されているオーディオと比較します。この手法の欠点は、人間の介入が必要であり、時間がかかることです。たとえば、複数のステレオチャンネルがある場合、ユーザーは次々に聞いて確認する必要があります。
上記の手法の欠点を考慮して、オーディオインターフェイス信号をテストし、プロセス全体を自動化する革新的な方法を考案しました。
テクニック2–自動テスト
この自動テスト手法を理解するには、I2Sインターフェースのいくつかの基本的な概念を理解することが重要です。
I2Sには、BCLK(ビットクロック)、WCLK(ワードクロック)、DATA(データ信号)の3つの信号があります。 BCLKまたはWCLKが適切でない場合(ハイ/ローでスタックしている場合)、プロセッサのオーディオ入力ポートはキャプチャに失敗し、対応する結果としてクロック障害を示します。これらの信号が正常であれば、DATAの値に関係なくオーディオキャプチャが発生します。これで、DATAが1または0でスタックしている場合、オーディオデータバッファには、16ビットサンプルごとにすべてのFFFFまたはすべての0000が含まれます。したがって、MD5チェックサムを生成すると、MD5(FFFF)とMD5(0000)の2つの対応する値が取得されます。オーディオデータの他のすべての値について、MD5チェックサムは異なります。この概念は、オーディオキャプチャ信号を自動化およびチェックするために使用できます。
この方法の手順は、適切なオーディオが再生されており、ミュート状態にないときにオーディオをキャプチャすることです。これにより、オーディオファイルのみがキャプチャされ、バッファ内のデータが正しくなります。オーディオデータバッファが約100のサンプルをキャプチャすると、そのMD5チェックサムを生成できます。 DATA信号がハイでスタックした場合、そのMD5チェックサム値はMD5(FFFF)と同じになり、ローでスタックした場合、そのMD5チェックサム値はMD5(0000)と同じになります。 DATA信号がトグルしている場合、MD5チェックサム値は他のランダムな値になります。したがって、MD5チェックサム値に基づいて、DATA信号に問題があるかどうかについて結論を出すことができます。
通常、これらのI2Sラインには複数のデータ信号があります。これは、4つのデータ信号DATAx(x =0,1,2,3)を持つI2Sバスの次の例で実証できます。これは、DATA信号の1つにオーディオデータを与え、残りのすべてのデータ信号に0を与えることによって行うことができます。このようにして、すべてのDATAx(x =0,1,2,3)のキャプチャされたデータのMD5チェックサムを生成し、MD5チェックサム値が期待どおりであることを確認できます。
DATA0のみのオーディオデータを指定した場合、DATA1-3信号のMD5チェックサムはMD5(0000)であり、DATA0の場合はランダムな値である必要があります。これは、表1に示すように、4つのデータ信号すべてに対して4回の反復で次々に実行できます。
クリックして大きな画像を表示
表1:オーディオテストの反復(出典:作成者)
この手法の制限は、上記の問題を特定するためにのみ使用できることです。一部のユースケースでは、問題を区別できません。たとえば、複数の信号線が短絡している場合、この技術は問題が存在することを検出できますが、どの線が一緒に短絡しているかを明確に示すことはできません。
結論
上記の方法はテストされており、現在Ittiamによって開発された多くのハードウェアボード全体でオーディオ入力インターフェイスをテストするために正常に使用されています。オーディオインターフェイスの全体的なテスト時間が短縮され、ボードのテストコストが削減されたことがわかりました。
Ayusman Mohantyは、ビデオおよびオーディオ放送および監視システム用のハードウェアの構築に重点を置いた製品アーキテクトです。彼はLinkedinを通じて連絡を取ることができます。
モノのインターネットテクノロジー