要約
オーディオ音声コーデックのMAX9860は、Skype®の長距離オーディオキャプチャアプリケーションに最適なソリューションを実現し、高品質な音声伝送を可能にします。対象アプリケーションには、Skype for TV、セットトップボックス、スピーカーフォンなどがあります。利得設定を柔軟に選択可能で、最大48kHzのサンプルレートに対応するMAX9860は、アナログマイクロフォンの信号増幅とそのデジタルオーディオ変換に優れた性能を発揮します。さらに、MAX9860は2つのマイクロフォン入力を備えているため、アプリケーションでは指向性感度やノイズキャンセレーションに対応したビーム形成アルゴリズムを利用して、2マイクロフォンまたは4マイクロフォンアレイからの録音が可能です。
はじめに
MAX9860は、Skypeの音声キャプチャアプリケーションに必要なすべてのシステムブロックと機能を提供します。マイクロフォン入力ピンと内蔵のアナログ-デジタルコンバータ(ADC)間では、0dB~50dB (1dBステップを採用)の範囲で任意の利得を選択することができます(
図1)。さらに、ADCの出力では-12dB~+3dBの利得も選択可能です。このデバイスのデジタルオーディオインタフェースの出力は、システムのアプリケーションプロセッサとの通信用に、I²S、左揃え、TDMの各標準プロトコルに対応しています。すべての設定は、I²C互換の2線式インタフェースからプログラムします。
図1. MAX9860のブロックダイアグラム、ADC経路
推奨されるマイクロフォンプリアンプ回路
Skypeアプリケーションでは、十分な利得を確保するため、MAX9860のアナログ入力の前にプリアンプ段を追加することが推奨されます。このブロックには、
MAX4253など、単一電源、デュアルチャネルの低ノイズオペアンプを使用します。総合的な信号対ノイズ比(SN比)性能を向上させるには、外付けオペアンプのSN比をMAX9860のSN比よりも大きくすることが重要です。この外付けオペアンプ回路は、高周波ノイズを除去するためのローパスフィルタとして機能することもできます。
長距離Skypeアプリケーション用に推奨されるマイクロフォン構成は2つあります。4マイクロフォンアレイと2マイクロフォンアレイです。4マイクロフォンアレイ使用時の推奨される入力回路図については、図2と図3を参照してください。2マイクロフォンアレイを使用する際は、MK3、MK4、FB3、FB4、C101、C102、R91、R101を取り除きます。また、R41とR42の値を0Ωに変更します。2マイクロフォンアレイ使用時の推奨される入力回路図については、図4と図5を参照してください。
図2. 4マイクロフォンの入力回路
詳細画像 (PDF, 282kB)
図3. 4マイクロフォンのオペアンプ回路
図4. 2マイクロフォンの入力回路
詳細画像 (PDF, 278kB)
図5. 2マイクロフォンのオペアンプ回路
2マイクロフォンアレイは、MAX9860で1つのマイクロフォン信号を左チャネルの入力に送り、もう1つのマイクロフォン信号を右チャネルの入力に送ることによってサポートされます。4マイクロフォンアレイは、2つのマイクロフォン信号の和を左チャネルの入力に送り、その他2つのマイクロフォン信号の和を右チャネルの入力に送ることによってサポートされます。
デバイスのセットアップ
MAX9860をSkypeアプリケーション用に設定するには、I²Cレジスタ0x03~0x07によって目的のクロック速度とインタフェースモードを選択します(
表1)。MAX9860は、10MHz~60MHzの範囲内のあらゆるシステムクロックから供給されるマスタークロック(MCLK)と連携することができます。さらに、サポートされているサンプルレートの範囲は8kHz~48kHzで、すべての一般的なサンプルレート(8kHz、16kHz、24kHz、32kHz、44.1kHz、48kHz)が含まれます。クロック制御レジスタの詳細については、
MAX9860のデータシートを参照してください。
表1. 推奨されるレジスタ設定値 |
REGISTER |
B7 |
B6 |
B5 |
B4 |
B3 |
B2 |
B1 |
B0 |
REGISTER ADDRESS |
POR |
RECOMMENDED SETTING FOR SKYPE USE |
R/W |
STATUS/INTERRUPT |
Interrupt Status |
CLD |
SLD |
ULK |
0 |
0 |
0 |
0 |
0 |
0x00 |
— |
— |
R |
Microphone NG/AGC Readback |
NG |
AGC |
0x01 |
— |
— |
R |
Interrupt Enable |
ICLD |
ISLD |
IULK |
0 |
0 |
0 |
0 |
0 |
0x02 |
0x00 |
0x10 |
R/W |
CLOCK CONTROL |
System Clock |
0 |
0 |
PSCLK |
0 |
FREQ |
16KHZ |
0x03 |
0x00 |
Depends on system clock requirements and desired sample rate |
R/W |
Stereo Audio Clock Control High |
PLL |
NHI |
0x04 |
0x00 |
R/W |
Stereo Audio Clock Control Low |
NLO |
0x05 |
0x00 |
R/W |
DIGITAL AUDIO INTERFACE |
Interface |
MAS |
WCI |
DBCI |
DDLY |
HIZ |
TDM |
0 |
0 |
0x06 |
0x00 |
Depends on system interface requirements |
R/W |
Interface |
0 |
0 |
ABCI |
ADLY |
ST |
BSEL |
0x07 |
0x00 |
R/W |
DIGITAL FILTERING |
Voice Filter |
AVFLT |
DVFLT |
0x08 |
0x00 |
Depends on desired sample rate |
R/W |
DIGITAL LEVEL CONTROL |
DAC Attenuation |
DVA |
0x09 |
0x00 |
0xFF |
R/W |
ADC Output Levels |
ADCRL |
ADCLL |
0x0A |
0x00 |
0x33 |
R/W |
DAC Gain and Sidetone |
0 |
DVG |
DVST |
0x0B |
0x00 |
0x00 |
R/W |
MICROPHONE LEVEL CONTROL |
Microphone Gain |
0 |
PAM |
PGAM |
0x0C |
0x00 |
0x34 as starting point. Adjust as necessary. |
R/W |
RESERVED |
Reserved |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0x0D |
0x00 |
MICROPHONE AUTOMATIC GAIN CONTROL |
Microphone AGC |
AGCSRC |
AGCRLS |
AGCATK |
AGCHLD |
0x0E |
0x00 |
0x00 |
R/W |
Noise Gate, Microphone AGC |
ANTH |
AGCTH |
0x0F |
0x00 |
0x00 |
R/W |
POWER MANAGEMENT |
System Shutdown |
Active-Low SHDN |
0 |
0 |
0 |
DACEN |
0 |
ADCLEN |
ADCREN |
0x10 |
0x00 |
0x83 |
R/W |
レジスタ0x0Eと0x0Fを0x00に設定することによって、AGCが無効になるようにします。MAX9860には自動利得制御(AGC)が内蔵されていますが、Skypeアプリケーションでは、通常、この機能をオフにした方が賢明です。Skypeには、ホストプラットフォーム上で動作する独自のAGCアルゴリズムがあります。レジスタ0x0Cに変更を加えるために、Skypeで利得制御用に提供されているアプリケーションプログラムインタフェース(API)を設定する必要があります。
始動性能を最大限に引き上げるため、0x34をレジスタ0x0Cに書き込むことによって0dBの初期利得を選択します。次に、レジスタ0x83によってアナログレコード経路とデバイス動作を有効にします。ビット1とビット0を設定して、左右のADCをそれぞれ有効にします。ビット7を設定してMAX9860を動作可能にします。
デバイスが動作可能になったら、レジスタ0x0Cを使用して、アナログ入力で予想される信号レベルに最適なマイクプリアンプの利得とマイクPGAの利得を選択します。推奨されるI²Cレジスタのプログラミングシーケンスについては、表2を参照してください。
表2. 推奨されるプログラミングシーケンス |
Address |
Value |
0x10 |
0x00 |
0x0C |
0x34 |
0x03–0x08 |
Depends on system requirements |
0x09 |
0xFF |
0x0A |
0x33 |
0x0B |
0x00 |
0x0E |
0x00 |
0x0F |
0x00 |
0x10 |
0x83 |
0x0C |
Set gain based on expected signal level |
レイアウトとグランド処理
Skypeアプリケーションで性能を最大限に引き上げるには、正しいレイアウトとグランド処理が不可欠です。MAX9860用のPCBを設計する際は、回路を分割して、MAX9860のアナログセクションとデジタルセクションを切り離します。これによって、アナログオーディオのトレースをデジタルトレースの近くに配線する必要がなくなります。ツイストペアケーブルでマイクロフォンをPCBに接続することが推奨されます。物理設計の許すかぎりオペアンプに近付けてマイクロフォンを配置します。
入力回路で優れたノイズ耐性を実現するには、負のマイクロフォン入力信号(MICLNとMICRN)をオペアンプの出力(MIX_MICLとMIX_MICR)にできるかぎり近付けてACグラウンドします(図3と図5)。MICLPとMICLNを差動ペアとしてMAX9860に配線し、正と負の信号ができるかぎり接近して同じトレース長の同じ経路をたどるようにします。MICRPとMICRNに同じ設計手順を適用します。
PCBの専用の層で、大面積の連続したグランドプレーンを使用してループ領域を最小限に抑えてください。AGND、DGND、MICGNDを可能なかぎり短いトレース長で直接、グランドプレーンに接続します。適切なグランド処理を行えば、オーディオ性能を向上させ、チャネル間のクロストークを最小限に抑えるとともに、あらゆるデジタルノイズとアナログオーディオ信号の結合を防止することができます。
REG、PREG、REFのバイパスコンデンサを最小限のトレース長で直接、グランドプレーンに接地します。また、AGNDとMICGNDへの経路長をできるかぎり短くします。AVDDを直接、AGNDにバイパスします。MICBIASを直接、MICGNDにバイパスします。
すべてのデジタルI/O終端を、DGNDへの最小限の経路長でグランドプレーンに接続します。DVDDとDVDDIOを直接、DGNDにバイパスします。
MAX9860のTQFNパッケージは、底面にエクスポーズドサーマルパッドを備えています。このパッドは、ダイからPCBへの直接的な伝熱経路を提供してパッケージの熱抵抗を引き下げます。このエクスポーズドパッドをAGNDに接続します。
MAX9860のレイアウト例を示す評価キット(EVキット)が提供されています。この
MAX9860EVKITはMAX9860の迅速なセットアップを可能にし、すべての内部レジスタを制御可能な使いやすいソフトウェアが同梱されています。
結論
MAX9860は、高品質なオーディオキャプチャを実現するために必要なすべての機能と、さまざまなシステム要件に対応する柔軟性を兼ね備えています。このアプリケーションノートで概説した推奨構成に従うことによって、Skypeアプリケーションの設計を簡単に完了し、試作することができます。MAX9860のEVキットとソフトウェアを必要に応じて利用可能です。