アンチエイリアシングの基本:スイッチトキャパシタフィルタを使用する方法

アンチエイリアシングの基本:スイッチトキャパシタフィルタを使用する方法

著者の連絡先情報

要約

不要な帯域外スプリアス信号のために生じるエイリアシングは、A/Dコンバータを使用する多くのアプリケーションで問題となります。これらの信号は、適切なフィルタリングを行わないと、データ変換システムの性能に深刻な影響を及ぼす可能性があります。このアプリケーションノートでは、アンチエイリアシングの原理と、システム性能に与える影響について説明します。また、的確でコスト効率に優れた完全なシステムの例を用いて、この重要な機能に対して統合型スイッチトキャパシタデバイスを使用する上でのアドバイスも示します。このアプリケーションノートは、高性能システムの設計に関連するすべての重要な性能パラメータと実用的な問題について詳しく説明します。

エイリアシングの原因は何でしょうか?この作用はナイキスト基準で説明されます。ナイキスト基準では、連続時間信号を離散時間信号に変換する場合、周期当り2回以上のサンプリングが必要であると言われています。信号のサンプリング頻度が十分でないと、元の信号を再現できないほどに情報が失われてしまいます。この問題を図1に示します。信号を周期当り1回サンプリングすると、DC信号(振幅は任意)が生成されます(図1a)。周期当り正確に2回サンプリングすると、方形波が生成されます(図1b)。重要なのは、サンプリング周波数は入力信号のちょうど2倍にならないようにすることです。図1cは、200kHzでサンプリングした190kHzの信号を表しています。結果は理想的な正弦波ですが、周波数がまったく誤っています。この周波数の変化は、エイリアシングによって生じたものです。

図1a. 周期当り1回だけ正弦波をサンプリングすると、任意の振幅のDC信号となります。

図1a. 周期当り1回だけ正弦波をサンプリングすると、任意の振幅のDC信号となります。

図1b. 同じ正弦波を周期当り正確に2回サンプリングすると、方形波が生成されますが、振幅情報は失われます。

図1b. 同じ正弦波を周期当り正確に2回サンプリングすると、方形波が生成されますが、振幅情報は失われます。

図1c. Fsignal = 190kHz、Fs = 200kHzは、アンダサンプリングされた信号であり、エイリアシングを生じます。

図1c. Fsignal = 190kHz、Fs = 200kHzは、アンダサンプリングされた信号であり、エイリアシングを生じます。

図2は、周波数領域のこの現象を示します。ここでは、f ≥ fs/2よりも高い信号が、fs/2を中心として反射されていることがわかります。これを回避することができる唯一の可能性は、より高い周波数において信号が存在しないことを確実にすることです。つまり、対象信号の最大周波数を知っておく必要があるということです。サンプリング周波数は、この周波数の2倍よりも高くする必要があります。初期には、ディジタル領域でこれを行うという考え方もありましたが、これは正しく機能しないと思われます。なぜなら、いったんサンプリングされて、対象の帯域内で周波数がエイリアシングされると、信号から不要な周波数を取り除くことが不可能になるからです。アンチエイリアシングは、信号をサンプリングする前のアナログ領域で実行する必要があります。

図2. 周波数領域でのエイリアシング。アンダサンプリングされた信号は、Fs/2を中心として反射されます。

図2. 周波数領域でのエイリアシング。アンダサンプリングされた信号は、Fs/2を中心として反射されます。

次の手順は、アンチエイリアシングフィルタを設計することです。これには、まず、所望のフィルタ特性(カットオフ周波数や遷移帯域の急峻性など)を決定し、次に、要件を満たす最適なフィルタ近似(タイプとも呼ばれる)を選択することが必要です。一般的に、オーバサンプリング(より高いサンプリング周波数)であるほど、フィルタ設計がより簡単になると言えます。ただし、より高速なADCが必要となるため、オーバサンプリングはコストがかかります。

たとえば、8倍のオーバサンプリング(つまり、サンプリング周波数が最大信号周波数の8倍)という想定を最初に考えてみましょう。これは、「ADCのコスト」と「必要なフィルタの複雑さ」の間でのよい妥協点となります。次に、80dBの信号対ノイズ比(SNR)を持つ14ビットのADC分解能を想定してみます。1/2のサンプリング周波数(この例では、4倍の信号周波数)では、誤差の可能性のあるすべての信号を十分に減衰して、サンプリングされた信号内にこれらの信号が現れることがないようにするため、ローパスフィルタは80dBの減衰量に達する必要があります。これは、オクターブ当り40dBの遷移帯域を意味します。つまり、高次アナログフィルタが必要であるということです。この要件は7次のバターワースフィルタを用いて満たすことができますが、アプリケーションによっては、最適な選択肢とは言えません。さまざまなアプリケーションに適した、いろいろなフィルタ近似があります。図3は、バターワース、チェビシェフ、および楕円フィルタの応答を示しています。このグラフでは、これらの近似が、異なる通過帯域と遷移帯域を表していることがわかります。楕円フィルタとバターワースフィルタを比較すると、楕円フィルタの方がはるかに急峻な遷移帯域であることがわかります。ただし、その犠牲として遷移域が悪化します。どの近似が最適であるかは、各ケースに応じて決定する必要があります。オーディオアプリケーションでは、(ベッセルでないにせよ)少なくともバターワースフィルタが必要ですが、一般的なデータ収集では、位相精度に対する要求はそれ程厳しくないため、チェビシェフフィルタ、あるいは楕円フィルタでも十分な場合があります。

図3. いろいろなフィルタ近似の比較

図3. いろいろなフィルタ近似の比較

普及しているA/Dコンバータには、いくつかの種類があります。一般的に、中速~高速のアプリケーションにはSAR (連続近似レジスタ)、高速~超高速のアプリケーションにはフラッシュ、および低速のアプリケーションにはデルタシグマ(シグマデルタとも呼ばれる)が使用されます。これらはすべて、変換率と所望の入力帯域幅によって決まる標準的なアンチエイリアシング要件を備えていますが、デルタ-シグマコンバータは例外です。このタイプのコンバータは、非常に高い入力サンプリングと変換率を利用した変換手法を使用して変換した後、ディジタルデシメーションフィルタを使用して実効スループットレートを低減しています。このため、分解能(ダイナミックレンジ)が増大するという効果が得られます。デルタ-シグマコンバータのアンチエイリアシング要件は、「入力サンプリングレート」対「入力信号内の該当する最大周波数」の比率によって決まります。この要件を低減するということは、任意のデータコンバータを単純にオーバサンプリングすることと同等になります。したがって、一般的に単純なRCフィルタを使用することができるということです。単純なアンチエイリアシングフィルタを使用すると、そのトレードオフとして伝播遅延が長くなってしまうという犠牲が付きまとい、このため、閉じた制御ループや多重化アプリケーションでこのようなコンバータを使用することは極めて困難となる可能性があります。

多くの設計者は、アナログフィルタを避ける傾向にあります。これは、アナログフィルタの設計が困難で、許容誤差が大きく、製造が難しいためであり、ここでの例のように厳しい仕様が必要な場合はなおさらです。これまでの経験から、ディスクリート部品の許容誤差は倍増すると想定されています。つまり、標準の市販の抵抗とコンデンサを用いると、コーナー周波数と遷移帯域に大きな誤差が生じることを想定する必要があるということです。この問題を解決する優れた代替方法は、これらのフィルタ用に統合された市販のソリューションを探すことです。これらのフィルタは、マキシムなどのIC製造業者から入手することができます。

内蔵フィルタには、連続時間フィルタとスイッチトキャパシタフィルタという2つの種類があります。連続時間フィルタは通常、コーナー周波数に合わせて調整するための外付け部品がいくつか必要であり、このためフィルタの柔軟性が限られてしまいます。スイッチトキャパシタフィルタは、そのアーキテクチャ上、高度な柔軟性を備えています。スイッチトキャパシタフィルタを正しく使用すれば、ディスクリートフィルタおよび内蔵型の連続時間フィルタの両方にとって優れた代替となり得ます。

スイッチトキャパシタは、古くから知られたアーキテクチャで、柔軟性と再現性に優れているため、今日のシリコン技術に組み込まれています。スイッチトキャパシタ機能の原理およびいくつかの数学的な基本を図4に示します。動作を説明すると、コンデンサの両側に配置されたスイッチを周期的に開閉することによって、コンデンサを充放電します。これによって電荷移動が起こり、パルス状の電流が流れます。平均の電流を計算することが可能で、スイッチング周波数が十分に高ければ、この電流は、抵抗を通過する電流と等価になります。基本的には、コンデンサが抵抗に取って代わることになります。電流の量(間接的には抵抗値)は、コンデンサの容量とスイッチング周波数という2つの変動要素によって決まります。周波数が高いほど、またコンデンサが大きいほど、抵抗値は低くなります(逆に言えば電流が高くなります)。このアーキテクチャを採用してフィルタを構築した場合、コンデンサの容量またはスイッチング周波数のいずれかを変更することによって、フィルタの周波数特性を変えることができます。統合ソリューションでは、コンデンサの値が固定であるため、スイッチング周波数を変更することによってフィルタ特性を変える必要があります。このフィルタの回路図を図5に示します。

図4. スイッチトキャパシタの回路図

図4. スイッチトキャパシタの回路図

図5. スイッチトキャパシタ手法を使用して実現した単純なフィルタ

図5. スイッチトキャパシタ手法を使用して実現した単純なフィルタ

フィルタの精度は、個々の部品の許容範囲に基づきます。ディスクリートフィルタの場合、不整合の部品しか使用することができませんが、統合ソリューションでは、これらの部品の整合性は極めて良好です(0.1%の範囲)。したがって、内蔵フィルタの特性の極めて良好な制御を期待することができます。たとえば、MAX7490のコーナー周波数精度は0.2%と規定されていますが、この値は、市販のディスクリート部品では実現不可能です。また、温度ドリフトも10ppm/℃という優れた値を示しています。

ここで重要なこと、すなわちスイッチトキャパシタのソリューションによる信号のサンプリングについて注目します。これは、連続時間信号を離散時間信号に変換することであり、つまり再びエイリアシングを考慮しなければならないということになります。好材料は、このようなフィルタにおけるサンプリングレートは非常に高く、通常、100倍のオーバサンプリングが使用されるということです。このため、極めて単純なアンチエイリアシングフィルタ(つまり、1つの抵抗とコンデンサ)を使用することができるということです。このシステムを用いる上での別の問題として、ADCの場合と同様、スイッチングクロックの位相ジッタによって歪みが生じるという事実があります。図6は、適正な信号が誤った時刻にサンプリングされ、振幅の誤差が生じている様子を示しています。

図6. アンダサンプリングによって生じた振幅の歪み

図6. アンダサンプリングによって生じた振幅の歪み

クロックジッタは、2つの点で顕在化する可能性があります。位相誤差がランダムな分布を示す場合にノイズフロアが上昇します。また、ジッタが周期的な場合に歪み(THD)が悪化します。ジッタは、時間の品質(たとえばpsピーク/ピークやRMS)として規定されています。一定の信号純度を得るためには、どの程度の大きさのジッタであれば許されるのでしょうか?調査(参照資料1)によると、16ビットのシステムでは、1つのnspp (ピーク/ピーク)のクロックジッタは、SNRを98dBから91dBまで減少します。このシステムでジッタの影響を0.5dBに制限するには、ジッタを400pspp以下にする必要があります。

このようなクロック信号は、8psRMSを備えたSaRonix NTH5 (53pspp)などの、市販のクロック発振器を用いて簡単に生成することができます。このソリューションのマイナス面は、1つの信号周波数に限られてしまうということです。大部分のシステムには、ADCやµCなどの他の部品が存在し、これらにもクロックを供給する必要があります。これらのクロックを追加の発振器で生成した場合、クロックはすべて非同期になり、あらゆる種類の問題を引き起こすことになります。MAX7375やDS1085などのICは、すべてが互いに同期した複数のクロックを生成することが可能で、そのジッタは、90dBを超える信号純度を実現することができるだけの値となります(それぞれ160psと300ps)。これらのデバイスを使用してクロックを生成するもう1つの長所は、いろいろな周波数に合わせてデバイスをプログラミング可能であるという事実です。つまり、ソフトウェアを介してアナログフィルタの周波数の動作をプログラミング可能であるということです。これによって、極めて柔軟性のあるシステムを構築することができます。

図7は、上述の制限に基づいた、データ収集システムの実装状態を示しています。14ビットの分解能と200kspsの最大サンプリングレートを持つADC (MAX1067ファミリ)を使用しています。このデバイスは、1つの変換当り少なくとも24のクロックを必要とします。アンチエイリアシングフィルタには、MAX7418~21ファミリのメンバを使用します。このファミリ内で、ベッセル、バターワース、または楕円など、いろいろ違った種類のさまざまなフィルタ近似を使用することができます。コーナー周波数は、1/100fClkに設定されます。DSPがコンバータのサンプリングを制御することを考慮すれば(この機能には1つのタイマだけを使用)、フィルタとADCの両方に同じクロックを使用することが可能で、完全な同期が実現されます。クロックは、DS1085を使用して生成されます。DS1085は、2つのクロックを生成することができます。2つ目のクロックは、DSP用に使用することができます。DS1085は、2線式インタフェースを介してプログラミング可能で、システムの稼動中にさまざまなサンプリングレートを再プログラミングすることが可能になり、また、1枚のPCBのみでさまざまな機能を一度だけ実現することができます。

図7. データ収集システムを実現する回路図

図7. データ収集システムを実現する回路図

図7に示す回路図は、互いにデバイスを連動させて設計されています。コストと複雑性は、許容範囲内にあります。付加的な利点はプログラミング可能であるということであり、これによって極めて高度な柔軟性が得られ、設計コストと物流コストのどちらをも節約します。