方言を話すおしゃべり猫型ロボット『ミーア』をリリースしました(こちらをクリック)

【MAX98357A】クラスDアンプのICパッケージをTQFNからWLPに変更

この記事は約6分で読めます。

様々な方言を話すおしゃべりネコ型ロボット「ミーア」を開発中

https://mia-cat.com

頭を撫でたらしゃべるようなプログラムを組んでいるが、スピーカーのアンプでMAX98357を使用しているので、今回はMAX98357Aの2つのパッケージと配線について記載。

Lipo給電でもスピーカー駆動できるようにする

今のAudio ampの回路はこちら。入力電源が5Vのままなので、USB給電だとスピーカーが駆動するが、リチウム電池に変えると、入力電圧が最大でも4.2Vなので駆動しない。

MAX98357Aのデータシートを見ると、入力電圧は2.5-5.5Vが可能なので、今回は3.3Vに変更する。

MAX98357A WLPパッケージのTQFNとの比較

ClassDオーディオアンプのMAX98357Aシリーズには、下記2つがある。

  • WLPパッケージ(Wafer Level Package :MAX98357AEWL+T):9ピン
  • TQFNパッケージ(MAX98357AETE+T):16ピン

WLPパッケージは、従来のTQFNパッケージと比較して小型で、高価なスルーホールビア(PCBを通過する接続ピン)が不要で、コスト効果が高い。これにより、ICのサイズとピン数が削減され、製造コストを下げながら小型化が可能になるとのこと。

ちなみに、今まで使用していたのは、16ピンのTQFNパッケージ。

実際に、IC単体で見ても、WLPパッケージの方が若干安い。

MAX98357A WLPのGAINピンの取り扱い

WLPパッケージのGAINの取り扱いに関して、下記に詳細に解説されている。

https://www.analog.com/en/design-notes/optimize-cost-size-and-performance-with-max98357-wlp.html

WLPパッケージは下記の9ピン構造になっていて、音量を調節するGAINピンが9ピンの真ん中に位置しているので、これをもし使うときは配線をどうするのか問題が出てくる。

GAIN_SLOTピンは、アナログ制御ではなくデジタル制御で音量を調整することが推奨されていて、これにより、GAIN_SLOTピンに新しいルートを設ける必要がなく、より正確なボリューム制御が可能になる。

TDM(Time-Division Multiplexing)モードは、複数のオーディオチャネルを同時に伝送および処理する必要がある場合に使用される。一つの入力音声ファイルからの単一のオーディオストリームを処理する場合、通常、TDMモードは不要。ちなみにTDMモードの場合は、Gainは12dBで固定される。

今回使用しているI2Sモード(Inter-IC Sound)では、GAIN_SLOTピンを使用して出力スピーカーの音量を設定できる。今回は、GAIN_SLOTピンを内部でGNDに接続して、12dBのアウトプットにしてみる。

I2Sモードで12dBを入力する場合、GAIN_SLOTとGNDを結合

SD_MODE:1つのスピーカーで両チャネルを出力するには?

ICの電源をオン/オフするためと、チャネル選択に使用される。

SD_MODEピンを低電圧(例えばGND)に接続すると、ICはシャットダウンモード(オフ状態)になり、高電圧(例えばVDD)に接続すると、ICは通常の動作モード(オン状態)になる。

また、SD_MODEピンにプルアップ抵抗を使用してチャンネル選択を行うことができる。SD_MODEピンの電圧レベルを制御し、ICがどのステレオチャンネルを処理するかを指示する。SD_MODEを高電圧にすると左チャンネルを選択し、小さい抵抗を通して高電圧にすると右チャンネルを選択し、大きい抵抗を通して高電圧にすると両チャンネルを選択する。この方法により、電圧レベルに基づいてICの動作モードが決定される。

今回は、スピーカーは1つで、両チャネル(左+右)をミックスして使用したい。これにより、ステレオ音源の左右両方の音情報を組み合わせ、音楽や音声の奥行きや空間的な広がりをある程度保つことができる。

表によると、Left/2+Right/2のチャンネルになるようにする必要があるので、SD_MODEピンには大きな抵抗値を通して高電圧を供給する必要がある。

RLARGE (kΩ) = 222.2 x VDDIO – 100 という計算式であり、VDDIOはチップやICに対してデジタルインターフェースを通じて供給される論理電圧。今回、5Vから変更して入力電圧を3.3Vにするので、VDDIOも同様に3.3V。

RLARGE (kΩ) = 222.2 x 3.3 – 100 ≒ 634kΩ(表にすでに例として記載があるが)をプルアップ抵抗として繋ぐ必要がある。

接続するスピーカー要件

推奨されるスピーカーは、10μH以上のシリーズインダクタンス(電流の流れを遅らせる特性を持ち、オーディオ信号の処理に影響を与える)を持つもの。

インダクタンスが高いと、ボイスコイルは電流の変化に対してより良く反応し、より正確に音を再現できる。10μH以上の値は、音声信号の質を向上させるのに役立つ。

典型的な8Ωスピーカーは20μHから100μHの範囲のシリーズインダクタンスを示しているので、この条件を満たしている。

ちなみに、

スピーカーに記載されているΩ(オーム)は、スピーカーの抵抗値を表し、低い値はより多くの電流を必要とするが、より高い音量を提供できる。インピーダンスが高いほうが音は小さくなるがノイズがなくなり綺麗な音になる。

W(ワット)は、スピーカーが取り扱うことができる最大電力を示し、高いワット数は大きな音量を意味する。

というわけで、このようにMAX98357A WLPパッケージに変更してみた。

Routingがメチャクチャむずい

WLPパッケージに変えてから、auto routingしても、WLPパッケージ周りの配線でrouting errorが生じてしまい、難しくなった。

何回かトライしたのだが、esp32 wroom 32EモジュールのGPIO25,26ピンと、反対側にあるGPIO22ピンも繋がないといけず、基盤のサイズも小さくなってきたので、routing errorの解消が難しい。

今後の課題として、従来のTQFNパッケージのままPCB作成して発注。

TQFNパッケージデauto routingしたら、一発でfailure 0で作成できた。

P.S. その後TQFNパッケージの在庫切れ問題に遭遇し、Trach WidthとClearanceの設定変更することでWLPパッケージでの配線ができるようにした記事がこちら。

コメント

タイトルとURLをコピーしました