はじめに
電子機器業界分野では、広いダイナミック・レンジの信号計測がごく一般的に要求されますが、現在の技術では実際のシステム条件を満足させることができない場合が多々あります。重量計測システムでは、普通は最大フルスケール出力が1mV~2mVのロードセルのブリッジ・センサーを使用しています。このようなシステムでは100万倍の分解能が要求され、2mVの入力を基準にすると、高性能、低ノイズ、高ゲインのアンプとシグマ・デルタ(ΣΔ)モジュレータによるソリューションが必要です。また、医療用の化学分析や血液分析ではフォトダイオード・モニターがよく使用されていますが、この場合も微小電流を高精度で測定しなければなりません(図1を参照)。一般に低ノイズのトランスインピーダンス・アンプが使用されていますが、ゲインや後段処理に複数段の回路が必要です。
実際のセンサーは一般に入力信号レンジのごく一部のデータしか使用しませんが、システムは通常計測状態、障害状態いずれにも対処できるように設計しなければなりません。したがって、広ダイナミック・レンジ、小信号入力でも高性能、急激な信号変化に即座に反応することなどが重要な条件となります。振動監視システムなどの一部のアプリケーションではAC信号情報とDC信号情報の両方を扱うため、小信号と大信号を同時に正確に監視する能力がますます重要になっています。
これらの要求に対応できるのは、低入力ノイズ、比較的高ゲイン、そして性能を損なわずに入力レベルの変化に応じてゲインを動的に変更する能力があり、しかも広いダイナミック・レンジを有する、柔軟なシグナル・コンディショニング・ブロックです。既存のΣΔ技術でも多くのアプリケーションに必要なダイナミック・レンジを提供できますが、引き換えにアップデート・レートを犠牲にしなければなりません。この記事では、高速の逐次比較型サンプリングA/Dコンバータ(ADC)とオートレンジPGA(プログラマブル・ゲイン・アンプ)のフロントエンドを組み合わせたもう一つの解決方法をご紹介します。アナログ入力値に基づいてゲインを自動的に変更し、オーバーサンプリングによってシステムのダイナミック・レンジを126dB以上まで拡大することができます。
テクノロジー
ADCアプリケーションの場合、ダイナミック・レンジはRMSノイズに対するフルスケールのRMS値の比になりますが、これはアナログ入力を短絡して測定します。一般に、この比はデシベル値(dBV=20×log10電圧比)で表され、ADCの分解能で対応できる信号振幅の範囲を指します。ダイナミック・レンジが60dBのADCは1000:1の範囲で信号振幅に対する分解能を有しています。NビットADCとすると、ダイナミック・レンジ(DR)は次のように計算することができます。
DR = 6.021N + 1.763 dB
AD7767などのΣΔ ADCは、ΣΔモジュレータとデジタル・ポストプロセッサを組み合わせることで優れたダイナミック・レンジを実現します。コンバータの後段のデジタル・フィルタによって帯域外の量子化ノイズを除去しますが、そのかわりフィルタの入力部でfMCLKのデータレートを、デジタル出力部でfMCLK/8、fMCLK/16、またはfMCLK/32に低減します(低減値は、使用するデバイスのモデルによって異なります)。ダイナミック・レンジを増やすために、低ノイズPGAを追加し、微小入力信号を増幅処理してフルスケール・レベルを拡張することができます。システムのノイズ・フロアの大部分はフロントエンドPGAの入力ノイズによるものであり、これはゲインの設定に左右されます。信号が大きすぎるとADCの入力範囲を越え、信号が小さすぎるとコンバータの量子化ノイズによって信号が埋もれて失われてしまいます。システムのアップデート・レートが低くても良いアプリケーションでは、ΣΔ ADCがよく使用されます。
オーバーサンプリング逐次比較型ADCでダイナミック・レンジを改善
逐次比較型ADCでダイナミック・レンジを拡大する一つの方法として、オーバーサンプリングを利用することができます。ナイキスト周波数よりかなり高いレートで入力信号をサンプリングする方法です。一般に、サンプリング周波数が2倍になるとノイズ性能が約3dB改善されます(図2)。オーバーサンプリング後の処理は、ポストプロセッシング技術を用いてデジタルで実現できます。AD7606などのADCではオーバーサンプリング・レートをプログラム設定できるため、エンドユーザが適切なオーバーサンプリング比を選ぶことができます。
PGA機能とオーバーサンプリングの組み合わせ
最大のダイナミック・レンジを実現するには、フロントエンドにPGA段を追加し、すべての微小信号入力の実効信号対ノイズ比(S/N比)を高めることで可能になります。仮にシステムのダイナミック・レンジ条件が126dBを上回るとしましょう。まず、このダイナミック・レンジを保証できる最小RMSノイズを計算します。たとえば、3V入力レンジ(6Vp-p)ではフルスケールRMS値が2.12V(6/2√2 )となります。許容可能なシステムの最大ノイズは次のように計算します。
126 dB = 20 log (2.12 V/rms noise)
したがって、RMSノイズ=約1μVrms
今度はシステムのアップデート・レートについて考えてみましょう。アップデート・レートによって、システムで許容できるオーバーサンプリング比と入力換算(RTI)の最大ノイズ量とが決まります。たとえば、16ビット、2.5MSPS PulSAR®ADCのAD7985の場合、サンプリング速度を600kSPS(11mWの消費電力)、オーバーサンプリング比を72とすると、入力信号は約4kHz の帯域幅に制限されます。総RMSノイズはノイズ密度(ND)に帯域周波数fのルート(√ f )を掛けた値なので、許容可能な最大入力スペクトル・ノイズ密度(ND)は次のように計算することができます。
1 μV rms = ND × √4 kHz
すなわち、 ND = 15.5 nV/√Hz
入力換算(RTI)システム・ノイズの性能指数から、十分なアナログ・フロントエンド・ゲイン(オーバーサンプリング機能を備えたADCのS/N比に加算)を設定でき、必要な126dBを実現できる適切な計装アンプを選択することができます。AD7985の場合、代表的なS/N比は89dBであり、72倍のオーバーサンプリングでさらに約18dB改善されます(72は約26であり、2倍するごとに3dBの増加)。126dBのダイナミック・レンジを実現するにはまだ20dB以上高める必要がありますが、これはアナログPGA段のゲインによって実現します。計装アンプはゲイン20以上を確保する(あるいは、ノイズ密度が15.5nV/√Hzの規定値を超えない値にする)必要があります。このようなアンプとしては、10MHz、20V/μs、G=1、10、100、1000のiCMOS®プログラマブル・ゲイン計装アンプAD8253などが考えられます。AD8253には、図3に示すようにゲイン100で必要な帯域幅を実現でき、10nV/√Hzの低入力ノイズ特性を有する入力段があります。
フロントエンドPGAゲインとADCオーバーサンプリングを実現するシステム・レベルのソリューションを図4に示します。AD8021は、AD7985を駆動できる低ノイズ(2.1nV/√Hz)の高速OPアンプです。AD8253の出力に対してオフセット機能と減衰機能を追加します。AD8253とAD8021には外部の同相電圧設定用バイアス電圧が接続され、これらの電圧が信号に加算されてADC入力の同相電圧を維持します。
システム全体に要求される入力換算(RTI)ノイズ・バジェットは15nV/√Hz(max)であるため、各ブロックの主要ノイズ源を計算して15nV/√Hz のハードリミットを上回らないようにすることが賢明です。AD8021の入力換算ノイズの仕様は<3nV/√Hz であり、ゲイン100のAD8253の入力段を基準にすると無視できる程度の大きさです。AD7985のS/N比の仕様は89dBで、4.5Vの外部リファレンスを使用すると、45μVrms 未満のノイズ性能になります。ADCのナイキスト帯域幅が300kHz だとすると、その帯域幅で約83nV/√Hzのノイズが加算されます。AD7985の入力を基準にすると、1nV/√Hz 未満のノイズレベルは2乗和平方根の計算(RSS)で入力換算ノイズ源の合計を求めるシステムでは、無視できる値とみなせます。
AD8253を使用する利点はほかにもあります。デジタル・ゲイン制御機能を備えているため、入力の変化に応じてシステム・ゲインを動的に変更できることです。これは、システムのデジタル信号処理機能によってインテリジェントに実行できます。
このアプリケーションにおけるデジタル処理の主な役割は、AD7985による16ビット変換結果をもとに、より高分解能な出力を得ることです。このために、入力振幅に応じて、データのデシメーション(間引き)とアナログ入力ゲインの自動切替えを行います。このオーバーサンプリングによって出力データレートはADCのサンプルレートより遅くなりますが、ダイナミック・レンジは大幅に増大します。
このアプリケーションのデジタル側をプロトタイプ化するために、フィールド・プログラマブル・ゲート・アレイ(FPGA)をデジタル制御コアとして使用しました。また、システムを迅速にデバッグするために、アナログ回路とFPGAを一枚のボードに構成しました(図5を参照)。システム・デモンストレーション・プラットフォーム(SDP)のコネクタ標準を採用しているため、PCへのUSB接続が簡単にできます。SDPは他用途に再利用可能なハードウェアとソフトウェアを組み合わせたものですが、これによって一般的に使用されている部品インターフェースを使用してハードウェアの制御やデータ取得を簡単に行うことができます。
基本的な制御フローは以下のようになります。
- パワーアップ後に、ゼロ調整を実行します。AD8253のアナログ入力をグラウンドに短絡し、各ゲイン設定でAD7985の変換を実行します。ADCのデジタル出力値は、後で使用できるようにメモリーに保存します。
- 校正の後に、FPGAはあらかじめ決められたレート(この場合は、約600kSPS)で変換開始信号をAD7985に周期的に加えます。FPGAはADCの変換結果をすべて読み出し、デシメーション・ブロックとゲイン・ブロックの両方に送ります。
- ゲイン・ブロックは現在のADC変換結果、前のADC変換結果、それに現在のゲイン設定に基づいて次のADC変換に最も適したゲイン設定を決定します(このプロセスの詳細は後の記述を参照)。
- デシメーション・ブロックは各ADCサンプル値、当該サンプルに対する現在のPGAゲイン設定、更には先の処理で保存した校正値を取り込みます。72個のADCサンプルを受信した後の23ビットの出力結果は72サンプルの平均値です。オフセットとゲインも考慮されています。
- 23ビットの結果は2の補数コードに変換され、Blackfinのシリアル・ポート(SPORT)の互換フォーマットでFPGAから受け取り、SDP-Bが取得します。このプロセスを72個のADCサンプルごとに新しいワードで繰り返し実行します。
FPGAに実装される2つの主要モジュールはデシメータとゲイン・カリキュレータです。以下、それぞれのブロックについて詳しく説明します。
デシメータ
このブロックには、連続したデータ処理手順を管理する内部ステート・マシンがあります。
AD7985の各サンプルは、同じスケールで正規化されます。たとえば、4.5Vのリファレンスを使用するAD7985は、4mVの入力の時G=1でコード(4mV/4.5V×65535)=58を生成します。G=100では、入力電圧を400mVとして出力コード5825を生成します。アナログ・フロントエンド(AFE)のゲインが1のときに取得したADCサンプルは、AFEのゲインが100のときのスケーリングの影響を防ぐためにそのサンプル値を100倍する必要があります。この方法により、AFEのゲイン設定に関係なく、これらのサンプルの平均化とデシメーションが正しく行われます。
デシメータの機能ができれば、アナログ入力の初期テストを行うことができます。
入力を短絡すれば、高ゲインDCモードでシステムをテストできます(図6を参照)。
テストの結果、6ビットp-pノイズと0.84LSB@16ビット=0.654μVrms の優れたRMSノイズ特性が得られました。2.12Vrms のフルスケール・レンジでは、ダイナミック・レンジを次の式で求めることができます。
DR = 20 log10(FS/rms noise) = ~130 dB
このように、このシステムはノイズに関するダイナミック・レンジの目標値を容易に達成することができます。50mVp-pのACアナログ入力でテストしたときは、周波数領域に大きな歪みが現れました(図7を参照)。この特異な入力振幅の応答からシステム特性のワーストケースの条件がわかります。すなわち、AC入力振幅がゲイン=100のモードで処理されるレンジをわずかに上回り、システムが2つのモード間で定期的に切り替わる場合です。このレンジの切替えの影響は、下記に示すようにゲイン・スレッショールドの選択によってはさらに悪化するかもしれません。算出された出力コードが各レンジのオフセット間の差の分跳ね上がるため、各ゲイン・モードのオフセット間のミスマッチは全高調波歪みとして現れます。
しかし各ゲイン・レンジのゼロ・オフセットを校正で補正するだけで、信号の歪みを大幅に軽減することができます。実際、校正するだけで高調波を約50dB低減することができます(図8)。ワースト時の入力トーンの場合でも、高調波は対フルスケール・レベルの-110dBにまで低減します。
校正したオフセットは正規化サンプルから除去されます。しかし校正は2つのゲイン設定の両方で実行するため、ADCのサンプル取得時の設定ゲインによって補正されるオフセット・レベルは異なります。
正規化されてオフセット補正されたサンプルは、アキュムレータのレジスタに加算されます。レジスタはパワーアップ時と72 個のサンプル受信後にリセットされます。72 個のサンプルを受信し、アキュムレータに加算が終わると、その合計がデバイダに送られます。デバイダはアキュムレータ内の値を72 で割って、23 ビットの平均化されたデータを出力します。この時に出力フラグが設定され、割算が終了して新しい結果を出す準備ができたことを通知します。
ゲインの設定
このモジュールは、現在のゲイン設定、ADCの2つの生サンプル・データ、いくつかのハードコーディングされたスレッショールドに基づいて新しいゲイン設定を出力します。システムでは4つのスレッショールドを使用しています。システムのアナログ入力レンジを最大化してG=100モードで信号レンジをできるだけ広い範囲で使用できるようにすると同時に、ADC入力のオーバーレンジを防ぐには、3つのスレッショールドの選択が非常に重要です。このゲイン・ブロックは正規化されたデータではなく、ADCの生データの各結果に基づいて動作しますので注意してください。この点を考慮に入れたうえで、このようなシステム(ミッドスケールがゼロのバイポーラ・システムを想定)で使用できるスレッショールドの例を示します。
T1 (正の下限スレッショールド): +162 (ミッドスケールより162コード大きい)
T2 (負の下限スレッショールド): –162 (ミッドスケールより162コード小さい)
T3 (正の上限スレッショールド): +32,507 (正のフルスケールより260コード小さい)
T4 (負の上限スレッショールド): –32,508 (負のフルスケールより260コード大きい)
G=1のモードでは、内部限界値のT1とT2を使用します。実際のADC変換結果がT1からT2までの範囲内にあれば、G=100のモードに切り替わります。これによって、ADCが受信するアナログ入力電圧は可能な限り短時間で増幅・最大値化します。
G=100のモードでは、外部限界値のT3とT4を使用します。ADCの変換結果がT3を上回るかT4を下回ると予想される場合は、ADC入力のオーバーレンジを防ぐためにG=1のモードに切り替わります(図9を参照)。
G=100のモードのとき、アルゴリズム(初歩的な線形予測法を使用)により、次のADC変換サンプルが外部限界値を越えて+32,510以上のADC変換結果になると予想される場合、ゲインはG=1モードに切り替えられ、次のADC結果は+32,510ではなく+325となります。
このようなシステムでは、チャタリング(スレッショールド近辺の急激なゲイン切替えの繰り返し)を防止するために、正しいスレッショールド限界値を判断するときのヒステリシス(100→1と1→100の切替えレベルの分離)が重要になります。この例で使用した実際の限界値の計算では、大きなヒステリシスを組み込みました。システムが高ゲイン(G=100)モードから低ゲイン(G=1)モードに切り替わる場合、システムのアナログ入力電圧がほぼ50%低減しないと高ゲイン・モードに戻ることができません。
システム全体の性能
ゲインおよびデシメーション・アルゴリズムの最適化が終わったら、システム全体をテストすることができます。図10に、1kHz の-0.5dBFS大信号入力トーンに対するシステム応答を示します。PGAのゲインを100とすると、実現されるダイナミック・レンジは127dBとなります。
同様に、-46.5dBFSで70Hzの入力トーンの小信号入力についてテストすると(図11)、最大129dBのダイナミック・レンジを実現しています。この測定中にはゲイン・レンジのアクティブな切替えが行われないため、小さい入力トーンでの性能の改善が期待できます。
結論
システムの性能は、ゲインを動的(ダイナミック)に切り替える小信号と大信号の両方に対応する変換能力に依存します。ΣΔ技術は優れたダイナミック・レンジを提供し、SARベースのソリューションは入力信号に基づいてフロントエンド・ゲインを動的に変更する方法を用い、システムの性能面で妥協する必要はありません。このソリューションでは、小信号と大信号のAC信号入力とDC信号入力をリアルタイムで測定でき、システムのセトリング時間を待つ必要はなく、ゲイン変更の遅れによって大きなグリッチが発生することもありません。
このシステムにとって最も重要なのは、ADCオーバーサンプリング技術と予測方式のゲイン設定アルゴリズムです。ゲイン設定アルゴリズムでは、入力信号のスルーレートをどのように扱うかが重要です。入力スルーレートが高い場合は、ADCの信号入力範囲を越えようとする信号に短時間で反応できるようにゲイン設定を高速でカスタマイズしなければなりません。そのためには、使用するスレッショールドを狭くするか、あるいはこの例に示すように2個のみのサンプルだけではなく、もっと多くのサンプルを使って入力信号をより複合的に予測分析する必要があります。逆に入力スルーレートが非常に低いシステムの場合は、スレッショールドを広げてADC入力範囲を越えずに高ゲイン・モードを利用できるようにします。
この記事でご紹介したADCはAD7985でしたが、使用した方法はアナログ・デバイセズ社のほかの高速コンバータにも適用できます。サンプリング・レートがもっと速いADCを使えば、入力帯域幅や出力データレートを上げる代わりにオーバーサンプリング・レートを上げてダイナミック・レンジを広げることもできます。
G=1やG=100の代わりに可変ゲイン・アンプAD8253によって得られるゲイン・レンジを利用すれば、ゲイン変更の影響をさらに小さくすることができます。現在の例では、ゲインを切り替えると小さな歪みが生じます。しかし、校正ポイントを追加して3ステップのゲインに対しG=10のレンジを使用すれば、システムのTHD仕様はさらに優れたものになるでしょう。