サンプリング定理

Mokuデバイスにおける、エイリアシングとアンチエイリアシング対策

2021年5月18日

信号のデジタル化は、デジタル信号処理(DSP)を可能にするために不可欠なステップです。
アナログ信号を離散時間の2進数に変換し、CPU、アプリケーション特有の統合型回路(ASIC)、現場プログラム可能なゲートアレイ(FPGA)などのデジタル論理回路で処理できるようにします。変換処理で信号の忠実度を最大限に保つためには、ナイキスト・シャノンのサンプリング定理により、最小サンプリング周波数が元の信号の最大周波数成分の少なくとも2倍でなければならないことが定められています。
この条件が満たされないと、エイリアシング・アーチファクトが発生し、サンプリングされた信号が劣化して歪んでしまいます。
本アプリケーションノートでは、エイリアシングの影響とMokuデバイスに実装されているアンチエイリアシング対策について説明します。


はじめに

デジタル信号処理(DSP)は、アナログ信号処理に比べ、かつてないほどの柔軟性を提供します。DSPベースのデバイスの場合、信号は通常、アナログ・デジタル・コンバータ(ADC)を介してアナログ・ドメインからデジタル・ドメインに変換されます。この信号は離散時間の2進数に変換された後、CPUやFPGA(Field-ProgrammableGateArray)などのデジタル論理回路で処理することができます多くの場合、DSPチップの動作は、ソフトウェアで簡単にプログラムしたり、再プログラムすることができます。一方、回路の完全な再設計には、アナログベースの信号処理デバイスのアルゴリズムの多少の変更が必要になる場合があります。

LiquidInstrumentsプラットフォームは、高性能なXilinxシステムのSoC(システム・オン・ア・チップ)とFPGAを搭載しています。このアーキテクチャにより、複数のDSPアルゴリズムを1つのデバイスに保存および展開し、数秒以内に再プログラムすることが可能になります。Mokuファミリーは現在、オシロスコープ、波形発生器、スペクトラムアナライザ、PIDコントローラーなど12種類の計測器をサポートしており、これらは単一のハードウェアデバイス上で数秒以内に配置、切り替えすることが可能です。このように、Mokuのプラットフォームは、一般的な電気工学のワークフローにとって非常に柔軟性の高い装置を提供しています。

アナログ領域からデジタル領域への変換を完全にロスなしで行うことはできませんが、信号の忠実度を最大限に高めるために考慮すべき重要な要素はいくつかあります。本アプリケーションノートでは、ナイキスト・シャノンのサンプリング定理について説明します。これは、最小サンプリング周波数が原信号の最大周波数成分の2倍以上でなければならないことを表しています。この条件が満たされないと、エイリアシング・アーチファクトが発生し、サンプリングされた信号が劣化して歪んでしまいます。サンプリング周波数が固定であれば、ADCはエイリアシングなしでは、そのサンプリング周波数の1/2以下の信号しかサンプリングすることができません。このアプリケーションノートでは、いくつかのプロットを使ってこの効果を示し、不十分なサンプリングレートによって誘発されるエイリアシング効果を示す実験を行っていきます。後ほど、Mokuデバイスが実施したエイリアシングの影響を最小限に抑えるための対策についてご紹介します。

図1: Liquid InstrumentsのFPGAベースのMoku:Go(左)とMoku:Lab(右)のテスト&測定プラットフォーム


サンプリング定理の図解

エイリアシングの影響を示すために、MATLABを用いてサンプリングレート200Sa/sのシステムのシミュレーションを行いました。サンプリング定理によると、このシステムがエイリアシングアーチファクトなしにデジタル化できる最大周波数は100Hz未満です。図2では、40、80、120、160Hzの正弦波信号を200Sa/sでサンプリングしています。グラフの青い実線は、真の基調信号を示しています。オレンジの点はサンプリングポイントを示しています。オレンジ色の点線は、(最小周波数の)純粋な正弦波入力を仮定して、サンプリングされた点から再構成された信号を表しています。40Hzと80Hzの入力で信号の再構成ができていることがわかります。しかし、120Hzと160Hzでの信号は、それぞれ80Hzと40Hzで間違って認識されました。つまり、サンプリングポイントだけに基づくと、システムは80Hzの入力信号と120Hzの入力信号を区別することができなかったことになります。このように、サンプリングレートの不足により、高い周波数の信号が低い周波数の信号として誤って認識される現象をエイリアシングといいます。エイリアシングの詳細な周波数ドメインの説明は、以下の書籍の第2章に掲載されています。

Li, Tan. Digital Signal Processing.Academic Press, 2008

図2 : サンプリングレート200Sa/sを持つシステムのMATLABシミュレーション。
40, 80, 120, 160 Hzの正弦波入力信号をそれぞれ(a), (b), (c), (d)に示した。

実験デモンストレーション

この実験では、Moku:Goオシロスコープを使って、2.001MHz(2MHz+1kHz)の信号を、1MSa/sと125MSa/sという2種類のサンプルレートで取り込みました。オシロスコープは「通常モード」で信号を取り込むように設定されました。これにより、Moku:Goでデジタルアンチエイリアス対策が無効化されます。数学チャネルは、入力1に対してFFTを行うように設定されています。1MSa/s(図2a)と125MSa/s(図2b)でキャプチャしたスクリーンショットを以下に示します。1MSa/sでは、〜1kHzの信号と誤って認識されました。正しい波形は、〜125MSa/sで回復されました。FFTの分解能の関係で、表示周波数は2.001MHzより若干高くなりました。

(a)

(b)

図3 : 2.001MHzの信号の1MSa/s、125MSa/sのサンプリングレートでの取り込み。 1MSa/sでは、入力信号が、〜1kHzの信号と誤って認識された。


Mokuデバイスのアンチエイリアス対策

アナログ ローパスフィルター

デジタルシステムのエイリアスアーチファクトを防ぐには、ADCの前にアナログローパスフィルターを配置する方法が一般的です。このフィルターは、ナイキスト周波数を超える周波数成分を減衰させ、エイリアシングを減衰します。Moku:LabのADCは500MSa/sのサンプリングレートを持っています。200MHzのローパスフィルターがアンチエイリアスフィルターをして使用されます。Moku:GoのADCは125MSa/sのサンプリングレートを持っています。35MHzのローパスフィルターを使用します。そこで、Moku:Goのオシロスコープを使って、1、5、10、20、30、40、50、60MHzの正弦波信号を測定してみました。内蔵の測定ツールを使って、入力の振幅を測定しました。図4(a)は,30MHz入力の測定例の画面です。図4(b)に、入力周波数の関数として入力の相対振幅の測定値(1MHzでの測定値と比較)をプロットしました。30MHzを超える信号がローパスフィルターで減衰しているのがわかります。

(a)

(b)

図4 : 入力周波数の関数として信号を入力した測定

オーバーサンプリング平均化フィルタ

特定の測定設定において、Moku:Go測定器の実効サンプリングレートが125MSa/s以下に低下することがあります。そのため、リサンプリングステップによってエイリアシングが発生する可能性があり、別のデジタルフィルターによって軽減する必要があります。このような条件下では、直接デシメーションする代わりに、複数のサンプルポイントをまとめて自動的に平均化し、平均化した結果を下流のDSPに渡すオプションがあります。これは「プレシジョンモード」と呼ばれ、この処理によってサンプリングレートとシステムの帯域幅が効果的に縮小されます。これはデジタルローパスフィルターとして考えることができます。ここでは、プレシジョンモード(自動平均化を有効にするオプション)を使用して、2.001MHz入力の図5のデータを再キャプチャしています。平均化フィルターを用いることで、エイリアシングアーチファクトを大幅に低減することができます。

(a)

(b)

図5 : 2.001 MHzの信号の平均化を無効(a)と有効(b)での取り込み。プレシジョンモードを有効にすると、エイリアシングの影響が大幅に軽減


結論

このアプリケーションノートでは、エイリアシング効果について説明しました。Mokuデバイスには、ADCのナイキスト周波数を超える信号を減衰させるためのアナログローパスフィルターが内蔵されています。さらに、リサンプリングプロセスによって引き起こされる追加のエイリアシングを防ぐために、デジタルフィルターリング技術が使用されています。アナログとデジタルのアンチエイリアス対策を組み合わせることで、サンプリング効果による信号の乱れや歪みを低減しています。

ページトップへ