Q: シグマ・デルタ方式のA/Dコンバータ(ΣΔ ADC)の採用を検討しています。ただ、これまでに使ってきたADCとはかなり異なる点があり、よく理解できていない部分があります。まず、アンチエイリアシング(折返し誤差防止)フィルタを設計する際には、どのような問題について考慮しなければならないのでしょう?
A: オーバーサンプリング方式を採用したADCには、いくつかの長所があります。なかでも、かなりシンプルなアンチエイリアシング・フィルタ(AAF)を使用できるという点は大きなメリットだと言えます。なぜそのようなことが可能なのか、どのような点に配慮しなければならないのかといったことを理解するためには、ΣΔ ADCで行われる基本的なデジタル信号処理について把握しておく必要があります。
AAFを設計する際には、ΣΔ ADCとは次のようなものだと考えるとよいでしょう。すなわち、通常のサンプリング周波数(ナイキスト周波数の2倍以上)よりもはるかに高い周波数でサンプリングを実施する高分解能の従来型ADCの後段に、デシメータの処理も担うデジタル・フィルタが配置されているというものです。つまり、AAFを設計する際には、ΣΔ変調器の伝達関数にはノイズシェーピングの効果があり、デジタル・フィルタに入力されるのは1ビットのシリアル・データであるといったことを意識する必要はありません。ΣΔ ADCの場合、入力信号は変調器の入力サンプリング・レートFmsでサンプリングされます。Fmsは、サンプリングの対象とする入力信号の本来の最高周波数(ナイキスト周波数)の2倍よりもはるかに高い値になります。以下に示す図は、デジタル・フィルタの周波数応答の例です。ご覧のように、fbとFms - fbの間の周波数成分が大きく減衰しています。このように、デジタル・フィルタは、対象となる帯域幅である[0, fb]を除く[0, Fms - fb]の範囲内のすべての周波数成分を除去する(減衰させる)ために使用します。但し、ADCは、入力にされる信号が[0, ±fb]の範囲内のものなのか、[kFms±fb](kは整数)の範囲内のものなのか区別することはできません。これらの範囲内にある信号(またはノイズ)は、サンプリング処理が行われることによって、すべて対象帯域幅である[0, fb]に折り返されます。つまり、スペクトル上に折り返しイメージが生じます。デジタル・フィルタは、A/D変換後のデジタル・データ(サンプル)だけに作用するものです。つまり、それらの信号に対しては何の効果ももたらしません。

そこで、ADCでサンプリングする前に、入力信号に含まれる[kFms ±fb]の入力ノイズ・エネルギーをAAFで除去する必要があります。
Q: 例えば、ダイナミック・レンジが90dBのADC「AD1877」の使用を検討しているとします。その場合、AAFは、Fms - fb(約3MHz)で90dBを優に上回る減衰特性を備えていなければならないということですか?
A: そんなことはありません。おそらく、そのように考えるのは、周波数が変調器のサンプリング・レートに近い値で、フルスケール振幅の信号がADCに入力されることを想定しているからでしょう。しかし、ほとんどのシステムではそのようなことは起きません。通常、折り返しの懸念がある入力信号は、ADCの上流に配置されたセンサーや回路からのノイズだけです。一般に、そうしたノイズのレベルは低いので、AAFとしてはシンプルなRCフィルタだけで十分です。
Q: 個々のアプリケーションにおいて、単極のRCフィルタで十分だということはどのようにすれば確認できますか? また、フィルタの時定数は、どのようにして決めればよいのでしょう?
A: 通常のアプリケーションでは、対象帯域内の入力信号に対する最大許容減衰量が規定されます。それにより、RCフィルタの3dBポイントの最小値が決まります。以下では、AD1877を使用する場合を例にとり、このことについて更に詳しく説明します。それを通して、単極フィルタによって十分なフィルタリングが行われることを確認する方法を示すことにします。
ここでは、次のようなアプリケーションについて考えます。まず、対象帯域幅は0Hz~20kHzです。この範囲の信号が0.1dB以上減衰されてはならないと仮定しましょう。0.1dBというのは、比率で言えば0.9886です。電圧の場合は20log10[比率]、電力の場合は10log10[比率]に相当します。単極フィルタの減衰量を表す式から、時定数(RC)については以下のような結果が得られます。

ここでは、各部品の許容誤差を考慮し、RC = 1.0〔マイクロ秒〕を選択するとします。その場合、-3dB周波数は159kHzになります。ここで、ベースバンドに折り返される周波数帯域kFms±fbにおけるこのフィルタの減衰量を計算してみます。まず、AD1877の変調器のサンプリング・レートは3.072MHz(出力サンプリング・レートは48kHz)であるとします。すると、1つ目の周波数帯域(k = 1)は3.052MHz~3.092MHzになります。この周波数帯域全体におけるRCフィルタの減衰量は約25.7dB(約0.052)です。続いて、2つ目の帯域(6.124MHz~6.164MHz)における減衰量を計算すると31.8dB(0.026)になります。これらの2つの帯域(とそれ以上のすべての帯域)のノイズのうち、フィルタをすり抜けてADCの入力に到達するものは、ベースバンド領域に折り返されます。そのRMS(Root Mean Square)値の二乗和平方根(RSS:Root Sum of Square)は、次のように計算します。

なお、付録に示す式を使えば、直接dB単位の結果が得られるので、比率を計算する中間的なステップは不要になります。
ホワイト・ノイズの場合、ノイズ・スペクトル密度は周波数の関数として一定になります。各周波数範囲の帯域幅は等しいので、各帯域がフィルタの入力に与えるノイズの量は等しくなります。したがって、異なる周波数帯域の減衰量をRSS方式で加算することで、RCフィルタの実効減衰量を求めることができます。例えば、最初の2つの帯域によるノイズの寄与分は、以下の減衰量に対応する単一の周波数帯域のノイズの寄与分と等しくなります。

これを計算すると0.058(24.7dB)となります。ここで、1つ目の帯域の減衰量は25.7dBでした。では、折り返しノイズの総計を算出するには、何番目の帯域まで考慮する必要があるのでしょうか。この例では、最初の3つ、4つ、5つ、6つの帯域のRSS和は、それぞれ-24.2dB、-24.0dB、-23.9dB、-23.8dBになります。つまり、1つ目の帯域がかなり支配的であることがわかります。その減衰量は、これらの計算値と比べても2dB未満の差しかありません。したがって、ノイズが異常に大きいか、ホワイト・ノイズとは異なるスペクトルでない限り、通常は1つ目の帯域だけ考慮すれば十分です。加えてADC自体も、高速ではあるものの帯域幅の面では限界があるので、高次の帯域は除去される傾向があります。
ここまでで、減衰量の値を明らかにすることができました。続いて、ノイズの大きさについて考察しましょう。ここでは、控えめな見積もりにより(約50%)、フィルタの実効減衰量は20dB(すなわち0.1V/V)であると仮定します。単極フィルタを使用する場合の最大許容ノイズ・スペクトル密度を計算するには、折り返しノイズによって性能が最大どれだけ低下するのかを見積もる必要があります。AD1877の動的仕様から、その内部のトータルのノイズ電力はフルスケール入力よりも90dB低い(フルスケール入力の32ppm)ことがわかります。例えば、システム全体をこの仕様の0.5dBの範囲内に収めるには、トータルの折り返しノイズ電力が-90dBと-89.5dBのRSSの差、すなわち-99.1dB(11.1×10-6)を超えてはなりません。この情報に加え、AD1877の入力フルスケールが3Vp-pであるということから、折り返しノイズは3/(2√2)V×11.1×10-6 = 11.8μV rmsを超えてはならないことがわかります。すべての折り返しノイズが1つの折り返し帯域に集中すると仮定すると、RMSノイズはノイズ・スペクトル密度(N.S.D.:Noise Spectral Density)と √BWを使って以下のように求められます。

これがフィルタを適用後の最大許容スペクトル密度です。フィルタを適用前の最大スペクトル密度(MPSD:Maximum Prefilter Spectral Density)は、先ほど仮定したフィルタの実効減衰量である20dB(つまりは×0.1)から、M.P.S.D. = 10×59nV/√Hz = 0.59μV/√Hzとなります。
このシステムの3/6/9/12MHzのノイズが非常に大きいということがなければ、シンプルなRCフィルタだけで十分だと言えるでしょう。但し、周辺のRF信号からの干渉を受けてしまうケースについては、常に注意を払う必要があります。
Q: ΣΔ ADCのノイズ・フロアは、やや不規則なものになる可能性があると聞いています。これについてはどのように考えればよいのでしょうか?
A: ΣほとんどのΣΔ ADCでは、ノイズ・フロアにアイドル・トーンと呼ばれるいくつかのスパイクが現れます。一般に、それらのスパイクのエネルギーは小さく、ADCのS/N比に大きな影響が及ぶことはありません。とはいえ、ホワイト・ノイズ(ノイズ・フロア)をはるかに上回るスパイクが周波数スペクトルに現れることを許容できないアプリケーションは数多く存在します。例えば、オーディオ・アプリケーションにおいて、システムの積分ノイズ(0Hz~20kHz)を大きく下回るレベルのトーンが存在したとします。その場合でも、大きな入力信号がない限り、人間の耳はそのトーンをはっきりと聞き取ってしまいます。Δ ADCのノイズ・フロアは、やや不規則なものになる可能性があると聞いています。これについてはどのように考えればよいのでしょうか?
アイドル・トーンの発生源は2つあります。それらのうちより一般的なのは、基準電圧による変調です。このメカニズムについて理解するには、ΣΔ ADCの基本を学ぶ必要があります。そこで、以下ではΣΔ ADCについてわずか数分で理解できるようにすることを目指した解説を行います。より詳しく学びたい方は、稿末に示した参考資料1をご覧ください。
以下のブロック図に示すように、基本的なΣΔ ADCは、オーバーサンプリング動作に対応する変調器と、それに続くデジタル・フィルタ(デシメーション処理も担う)で構成されます。変調器の出力は、2つの状態(ハイとロー、0と1、1と-1といった具合に、表現することができます)の間をスイングします。それらの平均出力は、入力信号の大きさに比例します。変調器の出力は、常にフルスケール(1ビット)でスイングするので、大きな量子化誤差が生じます。但し、変調器の働きにより、量子化ノイズの大半は、対象帯域幅の上限であるfbよりも上の周波数領域に追いやられます。

この処理のことをノイズシェーピングと呼びます。以下の図に示すように、fiとFms - fiのスペクトル(これらの縦の線は、単一周波数であることを表す)は、入力信号に対応しています。fbよりも高い領域の振幅が高まっているのは、量子化ノイズが対象とする帯域外に押しやられている(シェーピングされている)ことを表しています。

通常、デジタル・フィルタはnタップのFIR(Finite Impulse Response)フィルタとして構成されます(nは整数)。このフィルタには、高速で低分解能(1ビット)の変調器の出力が入力されます。それを受けて、同フィルタは求められる減衰特性に基づく形で変調器からのn個の出力の加重平均を計算します。フィルタからは高い分解能のワード・データが得られ、それらがADCの出力になります。デジタル・フィルタは、fbとFms -fbの間のすべての周波数成分を除去するように設計されます。ここで、Fmsは変調器のサンプリング・レートです。fbとFms -fbの間のすべてのノイズを一掃することにより、どのスペクトルにもオーバーラップ(すなわち、折り返し)が生じることはなくなります。同時に、サンプリング・レートをFmsと2fbの間の値に引き下げるということが行われます。この処理は、デジタル・フィルタの出力のうち、dの倍数番目のものだけをADCの出力として送出することだと考えることができます(すなわち、デシメーション)
ここで、dはデシメーション係数です。以下に示す図のうち上側は、デシメーションを行っていない状態のデジタル・フィルタの出力です。一方、下側の図は、デシメーション後のスペクトル出力、つまり最終的なADCの出力を表しています。デシメーションの処理により、スペクトルの間隔が縮まり、オーバーサンプリングを行わないタイプのADCと同様の出力が得られていることがわかります。
実際のADC製品では、設計と製造にかかるコストを削減するために、フィルタの処理とデシメーションの処理が密に統合された形でデジタル・フィルタが実現されます。ΣΔ ADCについて説明する上では、変調器からの高いサンプリング・レートの出力を処理して、ADC本来のサンプリング・レートの出力を生成するデジタル信号処理の話が欠かせません。その際には、デジタル・フィルタはデシメーションの機能も備えるという前提で説明されるケースも少なくありません。

ΣΔ ADCの動作についてひととおり説明したので、アイドル・トーンの話に戻りましょう。まずは、DC信号を入力に印加した場合の変調器の出力について考察します。DC入力のレベルが正確にミッドスケールである場合、変調器の出力がハイ(1)になる確率とロー(0)になる確率は等しくなります。つまり、パルスの密度は0.5で、ビット・ストリームのパターンは非常に高い確率で「010101」のようになります。この規則的なパターンによって、出力スペクトルのFms/2の位置にスパイクが現れます。つまり、以下に示す上側の図のような状態になるということです。ここで、DC入力のレベルがミッドスケールからごくわずかにずれたとします。すると、変調器の出力のビット・パターンもそれに応じて変化します。変調器の出力スペクトルには、Fms/2 - δFとFms/2 + δFの間に複数のスパイクが現れることになります(下側の図)。ここで、δFの値はミッドスケールからのずれに比例します。

デジタル・フィルタによって適切な処理を行っているはずなのに、なぜこのようなトーンがベースバンドに現れるのでしょうか。その原因になるのが、基準電圧の変動です。ADCのデジタル出力は、基準電圧に対するアナログ入力の大きさを比の形で表したものになります。基準電圧の値がx%変動すると、デジタル出力の大きさは-x%変化します。つまり、基準電圧の変動によってADCの出力振幅が変調されるということです。ADCの内部には(おそらく外部にも)、Fms/2で動作するクロックが存在します。それらのクロック・パルスのごく一部が基準電圧のラインに結合すると、基準電圧がわずかに変動します。それにより、Fms/2 - δFとFms/2 + δFにおけるトーンが事実上、変調されることになります。この変調によって生じる差分の周波数の1つがδFです。そして、これは明らかに対象帯域内に存在します。また、それ以外の非線形な要因によって、δFの倍数の位置にもトーンが生成される可能性があります。
Q: ここまでの説明からすると、ADCにAC信号を印加する場合には、アイドル・トーンについての心配は無用だということですか?
A: 一般的には、どのようなAC信号にも何らかの形でDC成分が伴います。変調器の出力にはそれが反映されるので、AC信号にも上記の説明が当てはまります。ただ、システムのトータルのDC入力オフセット(つまり、ADC内部のオフセットと外部のオフセットの和)が正確に0である場合には、アイドル・トーンはDC(0Hz)に現れることになります。
低次(3次未満)の変調器には、アイドル・トーンの発生源がもう1つあります。ここで、変調器の次数(積分回数)は、量子化ノイズのシェーピングがどれくらいのレベルで行われるのかということを表します。例えば、2次の変調器では、基準電圧の変動が生じていなくても、ベースバンドに直接現れるビット・パターンが発生することがあります。そのような問題があることから、アナログ・デバイセズは、ACアプリケーション向けのΣΔ ADCには高次(3次以上)のΣΔ変調器を採用しています。
Q: では、どうすればアイドル・トーンがA/D変換に干渉する可能性を最小限に抑えることができるのでしょう?
A: ADCのメーカーが推奨するレイアウトやバイパス方式に従ってください。基準電圧だけでなく、電源やグラウンドについても同じことが言えます。ADCの内部で生じる基準電圧の変動を最小限に抑えるのはメーカーの責任です。しかし、外部からの干渉を最小限に抑えるのはシステム設計者の責任だと言えます。ガイドラインに従うことによって、無視できるレベルまで干渉を抑制することができるはずです。適切な予防策を講じて設計したのにもかかわらず、依然としてアイドル・トーンが問題になったとします。その場合に適用できる手段がもう1つあります。上述したとおり、アイドル・トーンの周波数はDC入力の関数になります。つまり、ADCの入力に十分なDCオフセットを与えれば、対象帯域幅の外側のデジタル・フィルタで除去できる領域に、アイドル・トーンを移動させることができます。システムにおいて、加えたDCオフセットが邪魔になる場合には、ADCの出力データを処理するプロセッサによって、加えた分のオフセットを差し引くことで対応可能です。
Q: 信号処理用の回路から見て、ΣΔ ADCの入力はどのような性質の負荷になりますか?
A: それは、使用するADC製品によります。ΣΔ ADCの中には、入力部にバッファを備えているものがあります。その入力インピーダンスは非常に高いので、ADCの入力部は負荷としては無視できます。しかし、多くのADC製品では変調器に信号が直接入力されます。ほとんどの場合、ΣΔ変調器はスイッチド・キャパシタをベースとしており、以下の図に示すような回路が使われています。

この回路において、スイッチS1とS2は、クロックの2つの相によって制御され、交互に開閉します。S1が閉じている間、入力コンデンサCを使って入力電圧のサンプリングが行われます。S1が開くとS2が閉じ、コンデンサCが放電して、その電荷が積分器に供給されます。この場合の入力インピーダンスは、外部回路からCを介して注入される平均電荷量を計算することによって求められます。S1が開く前にCを入力電圧まで完全に充電することができれば、入力に対する平均電流は、入力とグラウンドの間に1/(FswC)Ωの抵抗が接続されているのと同じ状態だと考えることができます。ここで、Fswは入力コンデンサによって入力電圧がサンプリングされるレートです。その値は、ADCに印加されるクロックの周波数に正比例します。つまり、入力インピーダンスは、ADCの出力サンプル・レートに反比例します。
入力インピーダンスは、ゲインなどの要因によって変化することもあります。例えば、16/24ビットのADCを内蔵するアナログ・フロント・エンド製品「AD771Xファミリ」ではそのような変化が生じます。同ファミリで使われているADCの入力部では、1V/V~128V/Vの範囲でゲインをプログラムできるようになっています。ゲインの調整には、(ADCの出力サンプル・レートを一定に保ちつつ)Fswを実質的に高めて複数のサンプルからの電荷を結合する手法(特許取得済み)を採用しています。このファミリのADCの入力インピーダンスは、例えばデバイスの外部クロックが10MHzで入力ゲインが1の場合に2.3MΩとなります。ただ、入力ゲインを8に設定すると、入力インピーダンスは288kΩまで低下します。
上述したように、これらの入力インピーダンスはADCに流入する平均電流またはADCから流出する平均電流を表します。しかし、これらは、ADCの駆動用回路が許容できる最大出力インピーダンスを決める際に考慮すべきインピーダンスではありません。そうではなく、S1が閉じているときのコンデンサCの充電時間について考慮する必要があります。DCアプリケーションでは、駆動回路のインピーダンスは十分に低くなければなりません。S1が開く前に、コンデンサCが、求められる精度に応じた値まで充電されるようにする必要があるからです。そのインピーダンスは、S1が閉じている時間(サンプリング・レートに比例)、容量値C、入力と並列の容量CEXT(CEXT >> Cの場合を除く)の関数になります。以下に示す表は、「AD7710」に外付けする直列抵抗の値についてまとめたものです。fCLKINが10MHzの場合に、様々なゲインと外部容量の値に対して20ビットの1LSBに相当するゲイン誤差を回避することができる値を示しています。
外部容量〔pF〕 | ||||||
ゲイン | 0 | 50 | 100 | 100 | 500 | 5000 |
1 | 145 kΩ | 34.5 kΩ | 20.4 kΩ | 5.2 kΩ | 2.8 kΩ | 700 Ω |
2 | 70.5 kΩ | 16.9 kΩ | 10 kΩ | 2.5 kΩ | 1.4 kΩ | 350 Ω |
4 | 31.8 kΩ |
8.0 kΩ | 4.8 kΩ | 1.2 Ω | 670 Ω | 170 Ω |
8~128 | 13.4 kΩ |
3.6 kΩ | 2.2 kΩ | 550 Ω | 300 Ω | 80 Ω |
オーディオなどのACアプリケーションで64倍のオーバーサンプリングを使用する場合、変調器のサンプル・レートは約3MHzになります。そうすると、コンデンサが放電状態に切り替わる前に、ADCの分解能に応じてその電圧が必要な範囲内にセトリングするまでの時間を十分に確保できなくなる可能性があります。ただ、実際には、入力コンデンサの充電がRC回路の指数関数曲線に従っている限り、入力コンデンサの切り替えが早すぎることによって損なわれるのは、ゲインの精度だけであることが明らかになっています。
指数関数に従った充電が必要だということは、オペアンプによってスイッチド・キャパシタの入力を直接駆動することはできないということを意味します。容量性の負荷の接続先がオペアンプの出力に切り替えられる際には、振幅が瞬間的に低下します。オペアンプはその状況を是正すべく動作しますが、その過程でスルー・レートの限界(非線形応答)に達し、出力に過度のリンギングが生じる可能性があります。この状況を改善するには、以下の図に示すように、オペアンプとADCの入力部の間に時定数の小さいRCフィルタを挿入します。オペアンプは、(値の小さい)抵抗によってスイッチド・キャパシタから分離されます。また、入力部とグラウンドの間の容量によって、スイッチド・キャパシタの充電に必要な電荷の大半の供給/吸収が行われます。それにより、オペアンプに対し、負荷の過渡的な性質の影響が及ばないことが保証されます。なお、追加したフィルタは、AAFとしての機能も担うことができます。差動入力を備えるADCに対しては、以下の図に示すように、上の回路の差動バージョンを適用することが可能です。

この場合、グラウンドを基準とし、一方は正の入力、もう一方は負の入力になります。そのため、一方の入力(負入力)には負の電荷を供給しつつ、もう一方の入力によって、入力コンデンサが入力信号ラインに切り替えられる際の負の電荷を取り除く必要があります。2つの入力の間にコンデンサを接続すれば、一方の入力に必要な電荷の大半を他方の入力によって効果的に供給することができます。それにより、アナログ・グラウンドとの間の望ましくない電荷の移動は、最小限に抑えられます。

Part 1は、ここまでで終了です。Part 2では、多重化、クロック信号、ノイズ、ディザ、平均化、仕様などについて説明します。
付録
対数値のRSS加算 2つのRMS信号(S1とS2)のRSSは、√S12 + S22というRMS値として求められます。ただ、実際に検討を行う際には、2つの数値のRSS和を、所定の基準に対するdB単位の値で計算しなければならないケースが少なくありません。そのためには、真数を取り出して、RSS加算を行い、その結果をdB値に変換し直す必要があります。これら3つの処理は、1つの便利な式にまとめることができます。D1とD2がdB単位で表される比率(負または正の値)である場合、その和はdBを単位として次のように表せます。

同様に、2つのRMS値の差は、次の式で計算します。

その結果であるxは、dB単位で次のようにして計算することが可能です。

参考資料
1 J.C. Candy、G.C. Temes(編)「Oversampling Delta-Sigma Data Converters - Theory, Design, and Simulation(オーバーサンプリング型のΔΣデータ・コンバータ:理論、設計、シミュレーション)」IEEE Press、Piscataway、NJ、1991年
2 J. Vanderkooy、S.P. Lipshitz「Resolution Below the Least Significant Bit in Digital Systems with Dither(ディザを備えるデジタル・システムにおけるLSB未満の分解能)」J. Audio Eng.Soc.、vol. 32、pp. 106-113(1984年3月)。同改訂版、p.889(1984年11月)
3 A.H. Bowker、G.J. Lieberman「Engineering Statistics(エンジニアリング向けの統計学)」Prentice Hall、Englewood Cliffs、NJ、1972年