要約
自動レベル制御(ALC)はスピーカへの出力電力を自動制御する技術です。ALCはスピーカの過負荷を防止し、ダイナミックレンジを最適化します。このアプリケーションノートでは、ALC技術を紹介し、MAX9756/MAX9757/MAX9758ステレオスピーカアンプでの使用例を紹介します。
マキシムの自動レベル制御(ALC)の主要な利点は、以下の2つです(図1および2)。
- アンプの出力電力を制限することによってラウドスピーカを保護します。
- 高レベル信号を歪めることなく低レベル信号をブーストします。
ALCは、MAX9756、MAX9757、およびMAX9758の2.3WステレオスピーカアンプとDirectDriveヘッドフォンアンプに実装されています。
図1および2. MAX9756の自動レベル制御(ALC)機能は歪みを加えることなくスピーカを保護します。
ALC対出力制限
ALCは従来の出力制限とは異なります。従来の出力リミッタ機能は、あらかじめ決定されたレベルで出力振幅を制限することによって、過電圧ピークからトランスデューサを保護しています。その結果、出力信号にクリッピング(歪み)が付加されます(図3)。一方、ALC機能は、利得を低減することによってトランスデューサを保護しています。歪みは一切付加されません(図4)。
図3. 出力リミッタは過電圧状態の出力信号をクリップするため、耳に聞き取れる歪みが発生します。
図4. MAX9756のALCは過電圧状態のアンプの利得を低減することによって、歪みが出力信号に付加されないようにしています。
ALCの機能の仕組み
マキシムのALC技術(図5および6)には、アタック時間、ホールド時間、およびリリース時間という3つの重要なタイミング仕様があります。
図5. ALC機能の重要なタイミング仕様
図6. ALC機能の3つの重要なタイミング仕様をグラフ化したデータ。データはMAX9756で計測しました。
アタック時間
これは、出力信号がスレッショルドレベルを超えてから利得を低減するまでに要する時間です。アタックの時定数は15,000 × CCT秒です。ここでCCTは外付けのタイミングコンデンサです。時定数の選択はアプリケーションに固有です。たとえば、スネアドラムを叩く音(音楽)または発砲の音(DVD)など、トランジェント信号をすばやく低減する必要のあるアプリケーションでは、より短いアタック時間を選択する必要があります。これよりもアタック時間が長いその他のアプリケーションの場合、ALCは短期間のピークを無視し、ラウドネス(音量)が著しく増加するときにのみ利得を減少します。
ホールド時間
これは、信号がスレッショルドレベル未満に低下してからリリース段階が開始されるまでの遅延時間です。ホールド時間は調整不可能で、内部で50msにセットされます。ホールド時間は、利得の「ポンピング」を防ぎます。利得の「ポンピング」では、低周波数の素材に応答するALCの動作を耳で聞くことができます。ホールド時間は設定されたスレッショルドレベルを超える信号によって終了し、その時点でアタックが再開されます。
リリース時間
これは、入力信号がスレッショルドレベル未満に低下してホールド時間が終了してから利得が通常レベルに復帰するまでに要する時間です。リリース時間をより詳細に定義すると、入力信号がPREF(ピン29)のスレッショルドレベル未満に低下し、50msのホールド時間が終了した後、6dBの利得圧縮から公称利得設定値の10%までの時間です。リリース時間はアタック時間/リリース時間の比で決定され、DR(ピン25)のロジック状態を設定することで選択することができます(表1)。リリース時間は95ms~10sの間で調整可能です。
DR | ATTACK/RELEASE RATIO |
VDD | 1:200 |
VBIAS | 1:633 |
GND | 1:2000 |
出力電力のスレッショルド
PREFとグランド間に接続された外付け抵抗は、スピーカ出力がクランプされるときのスレッショルドを設定します(図7)。式1は、所望の最大出力電力と選択したスピーカのインピーダンスについての、PREFにおける抵抗値を決定します。
図7. 出力電力のスレッショルドは外付けの抵抗器で設定されます。
アプリケーションの推奨事項について
音楽CDやDVDが主なオーディオソースであるノートブックのアプリケーションの場合、RL = 8Ωで出力電力のスレッショルドが1.2Wのとき、495msのアタック時間と990msのリリース時間をお勧めします(図8)。
図8. ノートブックのアプリケーションで推奨されるALCの値
{{modalTitle}}
{{modalDescription}}
{{dropdownTitle}}
- {{defaultSelectedText}} {{#each projectNames}}
- {{name}} {{/each}} {{#if newProjectText}}
-
{{newProjectText}}
{{/if}}
{{newProjectTitle}}
{{projectNameErrorText}}