デジタル・ダウンコンバータを理解する【Part2】

本稿の Part 1では、より高いRF周波数帯に対してより高い周波数でサンプリングを行おうとする業界の動きについて説明しました。また、そのための無線アーキテクチャをデジタル・ダウンコンバータ(DDC)によってどのように実現するのかを解説しました。いくつかの技術的な側面については、アナログ・デバイセズのA/Dコンバータ(ADC)製品ファミリー「AD9680」が内蔵するDDCを例にとって説明しました。特に、ADCに対する入力信号の帯域幅を拡張し、より高い周波数で直接サンプリングを行って入力信号を直接ベースバンド信号に変換する無線アーキテクチャに焦点を当てました。DDCは、RF周波数でサンプリングを行ったADCが、データのスループットを大きく犠牲にすることなく、周波数の高い信号をデジタル化できるようにします。DDCが備えるチューニング機能やデシメーション・フィルタの機能を利用すれば、入力帯域のチューニング、不要な周波数成分のフィルタリングを行うことができます。このPart2では、Part1で使用したのと同じ例を使用して、デシメーション・フィルタの処理を詳しく見ていきます。さらに、「ADIsimADC」のエンジンを組み込んで改良した新たなソフトウェア・シミュレーション・ツール「Virtual Eval」についても言及します。同ツールを使用したのは、AD9680を使用した実測結果とシミュレーション結果を比較するためです。

Part 1 では、NCO(数値制御型発振器) とデシメーション・フィルタを使用する例を示しました。それにより、DDCを使用した場合の周波数シフトの処理と折返しによる影響について確認しました。Part2では、デシメーション・フィルタとADCのエイリアシングが同フィルタの応答に与える影響について詳しく見ていきます。ここでもAD9680を例にとることにします。デシメーション・フィルタの応答は、目で見て理解しやすく、各速度グレードに適応できるように正規化して示します。つまり、デシメーション・フィルタの応答は、単純にサンプリング・レートに応じてスケーリングされます。本稿で示すフィルタの応答のプロットは、特定の周波数に対する挿入損失を正確に示してはいません。ただし、フィルタの応答の概略はわかるようになっています。各例は、デシメーション・フィルタの通過帯域と阻止帯域の位置を大まかに把握できるようにするためのものです。

AD9680は、図1に示したように、NCO、カスケード接続された最大4個のハーフバンド・フィルタ(デシメーション・フィルタとして使用される)、6dBのゲイン・ブロック(オプション)、複素/実変換ブロック(オプション)で構成されるDDCを4個備えています。Part1で述べたように、まず入力信号がNCOを通過することで周波数のシフトが実行されます。その後、信号はデシメーション・ブロック、オプションのゲイン・ブロック、オプションの複素/実変換ブロックを順次通過します。

Figure 1
図1 . AD9680 が備えるDDCの信号処理ブロック

まず、AD9680において複素/実変換ブロックがイネーブルの時のDDCの動作を見ていきます。つまり、DDCに実信号が入力され、実信号を出力するように設定されている時の動作です。AD9680では、入力周波数は複素/実変換によって自動的に上側にf s/4だけシフトされます。図2は、HB1( ハーフバンド・フィルタ1) のローパス応答を示したものであり、実領域と複素領域の応答がプロットされています。フィルタの実際の動作を理解するには、まず基本的なフィルタの応答を実領域と複素領域で確認し、ローパス応答について把握することが重要です。HB1の実領域では、ナイキスト・ゾーンの38.5%が通過帯域になっています。また、ナイキスト・ゾーンの38.5%が阻止帯域、残りの23%が遷移帯域です。複素領域についても同様に、通過帯域と阻止帯域はそれぞれナイキスト・ゾーンの38.5%(計77%)、遷移帯域は残りの23%です。図2に示すように、フィルタの実領域と複素領域は左右対称になります。

Figure 2
図2 . HB1の応答(実領域と複素領域の応答)

DDCの複素/実変換ブロックをイネーブルにすると、実モードにした時に何が起こるのかを確認することができます。複素/実変換をイネーブルにするということは、図3のように周波数領域においてfs/4のシフトを実施するということです。図3では、周波数のシフトとその結果を含めたフィルタの応答を確認することができます。フィルタ応答の実線と点線に注目してください。実線と灰色の網掛けで表された部分は、周波数がf s/4シフトした後の新たなフィルタ応答です(フィルタ応答がナイキスト境界を越えることはありません)。一方の点線は、ナイキスト境界が仮に存在しないとした場合のフィルタの応答に相当します。

Figure 3
図3. HB1の応答
(DDCの複素/ 実変換をイネーブルにした実モード)

HB1の帯域幅は、図2と図3で変わらないことに注目してください。両者の違いは、周波数がf s/4シフトしていること、中心周波数が第1ナイキスト・ゾーン内に移動していることです。ただ、図2では、信号の実部に対してナイキストの38.5%、信号の複素部に対してナイキストの38.5%が通過帯域として存在しています。これに対し、図3(複素/実変換ブロックはイネーブル)では、実信号に対してナイキストの77%が通過帯域となり、複素領域は削除されています。フィルタの応答は、周波数がf s/4シフトしていること以外は変わっていません。また、この変換の結果、デシメーション・レートは1になっていることに注目してください。有効なサンプル・レートはf sのままですが、利用できる帯域幅はナイキスト・ゾーン全体ではなく、ナイキスト・ゾーンの77%のみです。これは、HB1と複素/実変換ブロックをイネーブルにすることで、デシメーション・レートが1になるということを意味します(詳細についてはAD9680のデータシートを参照してください)。

次に、異なるデシメーション・レート(複数のハーフバンド・フィルタをイネーブルにする) のフィルタ応答と、ADCの入力周波数のエイリアシングが、デシメーション・フィルタの応答に及ぼす影響について見ていきます。図4の青色の実線は、HB1の実際の周波数応答を表しています。一方、青色の点線は、ADCのエイリアシングによって折返されたHB1の応答を表しています。第2ナイキスト・ゾーン、第3ナイキスト・ゾーン、第4ナイキスト・ゾーン、……の入力周波数は、ADCの第1ナイキスト・ゾーンに折返されます。逆に、HB1の応答はこれらのナイキスト・ゾーンに折返されます。例えば、3fs/4にある信号は第1ナイキスト・ゾーンのfs/4の位置に折返されます。HB1の応答は第1ナイキスト・ゾーンのみにあり、他のナイキスト・ゾーンに折返されて現れているHB1の応答は、ADCのエイリアシングであることを理解する必要があります。

Figure 4
図4 . ADCのエイリアシングによってHB1の応答が折返される

続いて、HB1とHB2をイネーブル(HB1+HB2)にした場合を見てみましょう。この場合、デシメーション・レシオは2になります。図5では、HB1+HB2による実際の周波数応答を青色の実線で示しています。フィルタの通過帯域では、中心周波数はfs/4のままです。HB1とHB2の両方をイネーブルにすることで、利用できる帯域幅はナイキスト・ゾーンの38.5%になります。この場合も、ADCのエイリアシングによる効果とそれがHB1+HB2に与える影響に注目する必要があります。7fs/8に現れる信号は、第1ナイキスト・ゾーンのfs/8の位置に折返されます。同様に5fs/8の信号は、第1ナイキスト・ゾーンの3fs/8の位置に折返されます。複素/実変換ブロックをイネーブルにしたこれらの例は、HB1+HB2に、HB3とHB4のうち1つまたは両方を加えるように容易に拡張できます。なお、HB2、HB3 、HB4はオプションでイネーブルにできますが、HB1はDDCがイネーブルの時はバイパスできないことに注意してください。

Figure 5
図5 . ADCのエイリアシングによってHB1+HB2の
応答が折返される(デシメーション・レートは2)

ここまで、デシメーション・フィルタをイネーブルにした場合の実モードの動作を見てきました。次にDDCを使用した複素モードの動作を見ていきます。引き続き、AD9680を例にとります。DDCの実モードの動作と同様に、デシメーション・フィルタの応答は正規化して示します。ここで示すフィルタの応答のプロットは、特定の周波数に対する挿入損失を正確に示してはいません。ただし、フィルタの応答の概略はわかるようになっています。フィルタの応答がADCのエイリアシングによって受ける影響を大まかに把握できるようにするためです。

複素モードのDDCを使用すれば、一般にIとQで表される実周波数領域と複素周波数領域から成る複素出力を扱うように構成することができます。図2に示したように、HB1の応答は、実ナイキスト・ゾーンの38.5%が通過帯域となるローパス特性でした。また、実ナイキスト・ゾーンの38.5%が阻止帯域、残りの23% が遷移帯域でした。同様に、複素領域においても、通過帯域と阻止帯域がそれぞれ複素ナイキスト・ゾーンの38.5%(計77%)、遷移領域が23%を占めます。

DDCにおいてHB1をイネーブルとして複素出力モードで動作させた場合、デシメーション・レシオは2になります。その結果、出力サンプル・レートは入力サンプル・クロック・レートの1/2になります。図6は、ADCのエイリアシングの影響を示すために図2のプロットを拡張したものです。青色の実線は実際のフィルタ応答です。一方、青色の点線はADCのエイリアシングの効果によって折返されたフィルタ応答を表します。7fs/8の位置の入力信号は、第1ナイキスト・ゾーンにおいてHB1の通過帯域内に当たるfs/8の位置に折返されます。同じ信号の複素イメージは-7fs/8にあり、HB1の複素領域の通過帯域内に当たる-fs/8の位置に折返されます。

Figure 6
図6 .ADCのエイリアシングによってHB1の応答が折返される
(複素モード、デシメーション・レートは2)

次に、HB1とHB2がイネーブル(HB1+HB2)の場合を見てみます(図7)。この設定では、I信号とQ信号に対するデシメーション・レシオが4になります。図7において、青色の実線がHB1+HB2の実際の周波数応答です。HB1とHB2の両方をイネーブルにすることで、利用できる帯域は、実領域と複素領域のそれぞれにおいてデシメート後のナイキスト・ゾーンの38.5%になります(fs/4の38.5%、fsは入力サンプル・クロック)。ADCのエイリアシングによる効果と、それがHB1+HB2に及ぼす影響に注目してください。15fs/16に現れる信号は、第1ナイキスト・ゾーンのfs/16の位置に折返されます。この信号は複素領域の-15fs/16の位置に複素イメージを持っており、複素領域の第1ナイキスト・ゾーンの-fs/16の位置に折返されます。この例に対しては、HB3とHB4をイネーブルにするという拡張を行うことができます。本稿ではそれについては触れませんが、図7に示したHB1+HB2の応答に基づいて容易に推測できるでしょう。

Figure 7
図7. ADCのエイリアシングによってHB1+HB2の応答が折返される
(複素モード、デシメーション・レートは4)

ここまでデシメーション・フィルタの応答について見てきた中で、「なぜ、デシメーションを行うのか?」、または「デシメーションにはどのようなメリットがあるのか?」といった疑問を感じたかもしれません。アプリケーションによって要件はさまざまです。要件の中には、ADCの出力データをデシメートすることでメリットが得られるものがあります。デシメーションを行う動機の1つとして、RF領域の狭い周波数帯におけるS/N比を向上できるということが挙げられます。また、処理の対象となる帯域幅を抑えられることから、JESD204Bに対応するインターフェースの出力レーンにおいてレートを下げることができます。これもデシメーションを行う1つの動機になります。結果として、インターフェースに使用するFPGAのコストを削減できるからです。さらに、4つのデシメーション・フィルタを全て使用することで、DDCによる処理のゲインを高め、S/N比を最大10dB向上することができます。表1に、DDCを実モード/複素モードで動作させた時、デシメーション・フィルタの組み合わせ方により理想的にはS/N比がどれだけ向上するのかを示しました。利用可能な帯域幅、デシメーション・レシオ、出力サンプル・レートもまとめてあります。

DDCの動作に関するここまでの説明により、AD9680が備えるデシメーション・フィルタの実モード/複素モードの動作についてご理解いただけたと思います。

表1. AD9680のDDCの仕様

デシメーション・フィルタの構成 複素出力 実出力 エイリアスから保護される帯域幅 S/N比の理想的な向上幅
デシメーション・レシオ 出力サンプル・レート デシメーション・レシオ 出力サンプル・レート
HB1 2 0.5 × fS 1 fS 0.385 × fS 1
HB1 + HB2 4 0.25 × fS 2 0.5 × fS 0.1925 × fS 4
HB1 + HB2 + HB3 8 0.125 × fS 4 0.25 × fS 0.09625 × fS 7
HB1 + HB2 + HB3 + HB4 16 0.0625 × fS 8 0.125 × fS 0.048125 × fS 10

デシメーション・フィルタを利用することにはいくつかのメリットがあります。DDCは実モードでも複素モードでも動作するので、ユーザーは個々のアプリケーションのニーズに応じてレシーバのトポロジーを選択できます。本稿のPart1とPart2で説明した事柄は、AD9680を実際に利用するうえで非常に役に立つはずです。以下では、実測データとVirtual Evalによるシミュレーション・データの比較を交えながら説明を進めていきます。

図8は、Part1で使用したのと同じ条件でデシメーション・フィルタの役割を示したものです。入力サンプル・レートは491.52MSPS、入力信号の周波数は150.1MHzです。NCOのチューニング周波数は155MHz(NCOの分解能の関係で、正確には154.94MHz)、デシメーション・レートは4であり、出力サンプル・レートは122.88MSPSとなります。DDCは複素ミキサー処理を実行するので、解析には複素周波数領域が含まれます。図8の深紫色の線はデシメーション・フィルタの応答が加わる様子を表しています。

Figure 8
図8 . DDCの信号処理ブロックを通る時の信号
(デシメーション・フィルタの処理)

【NCOブロックでシフトした後のスペクトル】

  1. 基本周波数は150.1MHzから-4.94MHzにシフトする
  2. 基本周波数の折返しイメージは-150.1MHzからシフトして186.48MHzに現れる
  3. 2次高調波は191.32MHzから36.38MHzにシフトする
  4. 3次高調波は41.22MHzから-113.72MHzにシフトする

【1/2にデシメーションした後のスペクトル】:

  1. 基本周波数は-4.94MHzのまま変わらない
  2. 基本周波数の折返しイメージは-59.28MHzに移動するとともに、HB1によって減衰する
  3. 2次高調波は36.38MHzのまま変わらない
  4. 3次高調波はHB2によって減衰する

【1/4にデシメーションした後のスペクトル】:

  1. 基本周波数は-4.94MHzのまま変わらない
  2. 基本周波数の折返しイメージは-59.28MHzのままだが、HB1によって減衰する
  3. 2次高調波は36.38MHzのままだが、HB1によって減衰する
  4. 3次高調波はHB1のフィルタ処理により事実上、除去される

図9 に、「AD9680-500」の実際の測定結果を示しました。基本周波数は-4.94MHzです。基本周波数の折返しイメージは-59.28 MHzの位置にあり、その振幅は-67.112dBFSです。これは、折返しイメージが約 66dB減衰したということを意味します。2次高調波は36.38MHzの位置にあり、10~15dBほど減衰しています。3次高調波は十分にフィルタで除去されており、ノイズフロアより上には現れていません。

Figure 9
図9 . DDCの複素出力信号のFFT 結果
(NCOは155MHz、1/4 のデシメーション)

Virtual Evalを使用すれば、実測結果とシミュレーション結果を比較することができます。シミュレーションの流れをごく簡単に説明すると、まずウェブ・サイトでツールを開き、ADCを選択してシミュレーションを実行します(図10)。使用するツールは、アナログ・デバイセズのウェブ・サイトで提供されているVirtual Evalです。Virtual Evalに用意されたAD9680のモデルは、ユーザーが異なる速度グレードのADCをシミュレーションできるように開発された新機能に対応しています。ここではAD9680-500を使用しているため、その機能が鍵になります。Virtual Evalがロードされた後、最初の表示で製品のカテゴリと品番を選択します。Virtual Evalは、高速ADCだけでなく、高精度ADC、高速D/Aコンバータ、統合型のコンバータ、特殊用途向けのコンバータといった製品カテゴリにも対応しています。

Figure 10
図10. Virtual Eval における製品カテゴリと品番の選択

ここでは、品番として「AD9680」を選択します。そうすると、AD9680のシミュレーションを実施するためのメインのページが開きます。Vi r tual Evalに用意されたAD9680のモデルには、ADCのアナログ機能やデジタル機能を示すブロック図が含まれています。このブロック図は、AD9680のデータシートに掲載されているのと同じものです。このページの左側のドロップダウン・メニューから、希望する速度グレードを選択します。ここでは、図11に示すように速度グレードとして「500 MHz」を選択します。

Figure 11
図11. Virtual EvalにおけるAD9680のブロック図
(左のメニューで速度グレードを選択している)

次に、FFTベースのシミュレーションを実行するために、入力条件を設定します(図12)。この例では、「Clock Rate(クロック・レート)」を「491.52M」Hz、「Frequency(入力信号の周波数)」を「150M」Hzに設定しています。また、「DDC」は「Enabled(イネーブル)」、「NCO Frequency(NCOの周波数)」は「155MHz」、「ADC Input(ADCの入力)」は「Real(実信号)」、「C2R( 複素/実変換) 」は「Disabled( ディスエーブル)」、「DDC Decimation(デシメーション・レート)」は「4」、「DDC Gain(ゲイン)」は「6」dBに設定しています。つまり、DDCについては、実信号入力、複素信号出力、デシメーション・レートは4という設定を行ったわけです。また、DDCのゲインは、DDCのミキサー処理による6dBの損失を補償するために6dBに設定しました。Virtual Evalがページの左側に一度に表示できるのはノイズと歪みの結果のうちいずれかのみです。図12ではノイズに関する結果、図13では歪みに関する結果を表示しています。

Figure 12
図12. Virtual EvalによるAD9680のFFTシミュレーション
(ノイズに関する結果を表示)
Figure 13
図13. Virtual EvalによるAD9680のFFTシミュレーション
(歪みに関する結果を表示)

Virtual Evalでは、多くの性能パラメータが表示されます。同ツールにおいては、高調波の位置のほか、基本イメージの位置も表示されるので、周波数計画を策定する際には非常に役立ちます。基本イメージや高調波が、出力スペクトルにおいて想定どおりの位置に現れるかどうかを確認できるからです。Virtual Evalによるシミュレーションでは、S/N比は71.953dBFS、SFDRは69.165dBcという結果になります。しかし、基本イメージは通常は出力スペクトルに現れません。また、スプリアスを除去すればSFDRは89.978dB(-1dBFsの入力電力を含めると88.978dBc)になるはずです。

Figure 14
図14. AD9680の実測値のFFT結果

Virtual Eval では、S/N比を算出する際、基本イメージは含めていません。正確なS/N比を求めるために、「Virtual Analog TM」の設定では測定値の基本イメージを無視するように調整されていることに注意してください。この考え方を周波数計画に適用すれば、帯域内に基本イメージが存在する状態を想定する必要はなくなります。測定結果のS/N比は71.602dBFSであり、Virtual Evalによるシミュレーション結果の71.953dBFSと極めて近い値になります。同様に、SFDRの測定値は91.831dBcであり、シミュレーション結果の88.978dBcと非常に近い値が得られています。

Virtual Evalはハードウェアの振る舞いを正確に予測できる非常に優れたツールです。座り心地の良い椅子で美味しいコーヒーや紅茶を飲みながら、デバイスの振る舞いを予測できるのです。特に、AD9680のようにDDCを内蔵したADCの場合、Virtual Evalを使えばイメージや高調波を含む性能をシミュレーションできることが大きなメリットになります。ユーザーは、不要な信号を周波数帯から排除するように周波数計画を策定できます。現在は、キャリア・アグリゲーションやRF信号のダイレクト・サンプリングの普及が進んでいる状況にあります。これらの技術を採用する場合、Virtual Evalのようなツールがあると非常に役に立ちます。ADCの性能を正確に予測して周波数計画を適切に策定できることは、システム設計者が、通信システムや航空宇宙/軍事用のレーダー・システムなどを含む多種多様なアプリケーションを設計する際の助けになります。アナログ・デバイセズの最新世代のADCが提供するデジタル信号処理機能をぜひ活用してください。また、次期設計に関する計画を行ったり、予測される性能について前もって知識を得ようとしたりする際には、Virtual Evalを利用することをお勧めします。



著者

Jonathan Harris

Jonathan Harris

Jonathan Harrisは、アナログ・デバイセズのプロダクト・アプリケーション・エンジニアです。米ノースカロライナ州グリーンズボロにある航空製品部門に所属しています。RF製品を担当するアプリケーション・エンジニアとして10年以上の業務経験を持ちます。ノースカロライナ大学シャーロット校で学士号、オーバーン大学で修士号を取得しています。休日には家族との時間を大事にするとともに、オートバイやフットボール、モバイル・オーディオなども楽しんでいます。