この技術資料では、RFディスクストリーミングシステムに必要ないくつかの基本技術について解説します。
計測器にデジタル技術が導入されて以来、計測器が集録/生成できる波形の容量はオンボードメモリの容量によって制限されており、通常、数百メガバイト程度にとどまっていました。 しかし、計測器の技術の革新により、波形ストレージの新たなメカニズムが確立され、波形ストレージの容量を飛躍的に増やすことが可能になりました。 計測器とハードディスク間のデータ転送では、バス速度が従来のボトルネックでした。 これまでは、バス速度が集録レートよりも遅いことが一般的でした。 そうした状況を一変させたのが、PCベースのPXI計測器です。 PCIやPCI Expressといった高速データバスと、高速RAID構成のハードディスクを組み合わせることで、格納できる波形データの容量を数テラバイト以上に増やすことが可能になりました。 これは、「ストリーミング技術」または「ディスクストリーミング技術」と呼ばれています。 ここでの「ストリーミング」は、次のように定義できます。
ストリーミング – 動詞
1. 信号を連続的に集録/生成するために十分な速度で、計測器との間でデータをやりとりする行為。
このドキュメントでは、ディスストリーミング技術のメリットを活用するアプリケーションをいくつか簡単に説明します。 また、RFディスクストリーミングシステムを可能にする複数の技術について詳しく説明します。
ディスクストリーミング技術は幅広いアプリケーションを可能にしますが、特に次の2つのアプリケーションがこの機能から最大のメリットを得ています。 これらのアプリケーションは次のとおりです。1) シグナルインテリジェンス/スペクトラム監視 2) 受信機の検証と妥当性確認用のRF信号の記録と再生
シグナルインテリジェンスアプリケーションでは、計測器は長時間にわたってRF帯域をキャプチャする必要があります。 ディスクストリーミング技術を活用することで、PXIシステムは最大20 MHzのリアルタイム帯域幅を数時間にわたってキャプチャすることができます。 この長時間の記録から膨大なデータを得ることができるため、干渉信号を簡単に特定できます。 干渉信号の一般的なタイプには、既存の通信インフラストラクチャを使用しようとする「ピギーバック」信号や、通信リンクを妨害しようとする「ジャミング」信号などがあります。 いずれの信号も、周期的に発生する傾向があります。 このため、干渉信号の特定には、長時間にわたる集録と、ガボールスペクトログラムなどの時間/周波数共同領域解析 (JTFA) の両方を実行する必要があります。 シギントアプリケーションのポスト解析テクニックについては、以下をご覧ください。シギント戦略: アンテナから解析まで
RFディスクストリーミングシステムの2つ目のアプリケーションは、無線受信機の設計検証で、RF記録/再生用ハードウェアとして活用します。 従来、受信機は、加法的白色ガウス雑音 (AWGN) やマルチパスチャンネルのフェージングなどのパラメータをシミュレートする「ダーティトランスミッタ」波形を使用して非常に精巧にテストされるのが一般的でした。 しかし、RF環境をシミュレーションするための高精度モデルは作成が難しいため、RF記録/再生システムを用いて実環境をシミュレーションする方法が普及しました。 つまり、シミュレーションモデルの代わりに、ベクトル信号アナライザで記録した「完璧な」シミュレーションが利用されます。
ベクトル信号発生器やベクトル信号アナライザなどの従来のRF計測器は、波形データを標準的なRAM (ランダムアクセスメモリ) に格納します。 このため、こうしたRF計測器が生成/集録できる波形データの容量は、最大でも数百メガバイト程度にとどまっています。
しかし、高速データバスとRAID技術を組み合わせることで、より長い集録レートが可能になります。 さらに、RFアナログフロントエンドと各種デジタル信号処理技術を駆使することで、スーパーヘテロダイン方式の周波数変換 (アップコンバージョン/ダウンコンバージョン) を用いた効率的なRF信号生成/集録が可能になります。 以下は、一般的なシステムの高レベルのシステム構成図を示します。
図1: 複数のコア技術がRFディスクストリーミングを可能にします。
これらの各コンポーネントを駆使することで、計測器の内蔵メモリを高速RAID (Random Array of Inexpensive Disks) ハードドライブ構成で補うことが可能になります。 このシナリオでは、計測器からハードディスクへ、集録レートを上回る速度でデータを転送できます。 したがって、波形データの最大容量は、オンボードメモリのサイズではなく、使用可能なハードディスク容量によって制限されます。 外付けRAIDハードドライブ構成を使用することで、波形データの容量を最大で数テラバイトまで拡張できます。
RAID (Redundant Array of Inexpensive Disks) は、複数のハードディスクを使用することで、ハードディスクの読み取り/書き込み速度を向上させる大容量ストレージ技術です。 複数のディスクへの読み取りと書き込みを並行して行うことで、ディスク全体の速度が大幅に向上します。 RF計測器アプリケーションでは、RAIDシステムを導入すると波形を高速で格納することができます。
RAIDにはさまざまな構成 (RAID 1~RAID 5) がありますが、転送レートを最大限にするために、通常RAID 0システムが使用されます。 RAID構成を選択する場合、データの冗長性とデータのスループットのトレードオフを考慮する必要があります。
この構成を使用すると、データはフラグメントに分割され、複数のディスクに均等に分散されます。 RAID 0システムでは、理論上、読み取り/書き込み速度はシステム内のハードドライブ数を掛け合わせた値まで高まります。 RAID 0ハードドライブ構成が最もよく利用されているのは、ハードディスクの実行速度を劇的に高めることができるためです。 ただし、長時間にわたって保存する用途ではデメリットもあります。 最も注意すべきことは、個々のディスク間にパリティがないため、1台のドライブに障害が発生しただけでも、データセット全体が失われることです。 以下はRAID 0システムの図です。
図2: RAID 0ストライピング
図が示すように、4台のドライブを備えたシステムでは、4台のドライブ間で読み取りと書き込みの負荷を共有することで、ディスク速度を向上させることができます。 さらに、4つのデータセットを同時に書き込むことができるため、4ドライブRAID 0構成では、速度を通常の4倍近くまで向上できます。
この構成では、各データセットがシステム内の各ハードドライブにコピーされます。 RAID 1構成の最大のメリットは高い信頼性を確保できることで、1台のドライブが動作している限り、データの復元が可能です。 RAID 1構成では、データをファイルに書き込む際に、同じデータを並列に2回書き込む必要があるため、ディスクへの実際の書き込み速度は、シングルディスク構成の書き込み速度よりも遅くなります。 一方で、RAID 1構成ではディスクの読み取り速度が速まります。 ディスクからの読み取りには特定のデータセットを検索する必要があり、複数のディスクで並行して検索することで、所要時間の短縮が可能になるためです。
RAID 2構成では、ディスクはコントローラによって同期され、完全に連携して動作するため、極めて高速なデータ転送が可能になります。当初定義されたRAIDレベルの中で、RAID 2だけは現在使用されていません。 RAID 2システムでは、誤り訂正符号を使用して、いずれかのドライブで障害が発生した場合にエラーを訂正することができます。 ただし、複数のハードディスクを同期させることが難しいため、実装は困難です。 また、ディスク速度の向上は、ほかの実用性が高い構成でも得ることができます。 そのため、RAID 2は通常、RFディスクストリーミングシステムでは使用されません。
RAID 3システムとRAID 4システムは、機能面ではRAID 0に似ていますが、大きな違いが1つあります。 これらのシステムでは、ビットパリティ用に専用のハードドライブを使用して故障耐性を高めています。 1つのドライブに障害が発生した場合でも、パリティ専用ドライブが故障しない限り、通常はデータを復元できます。 したがって、RAID 3およびRAID 4システムでは、ディスク障害によるデータ損失のリスクを低減しながら、複数のディスクを並列に使用して高速化を実現することができます。 これら2つのシステムの唯一の相違点は、RAID 3はビットレベルのパリティを使用し、RAID 4はブロックレベルのパリティを使用することです。
このシステムはRAID 3およびRAID 4に似ていますが、異なる点が1つあります。 RAID 5システムでは、パリティをシステム内のすべてのディスク間に分散させて記録します。 そのため、1つのディスクで障害が発生しても、全体のデータセットを再構築することができます。 全体的なパフォーマンスの向上はRAID 0 (パリティなし) より若干劣りますが、故障耐性ではRAID 5システムの方がはるかに優れています。 その結果、RAID 5は波形ストレージにおいて、高性能と高冗長性の両方を提供できます。
RAIDシステムを構成する場合のトレードオフの概要を説明してきましたが、通常、この高レベルの技術的な詳細をユーザが意識する必要はありません。 通常、RAIDシステムの構成は一度だけで、ほとんどのRAIDドライバはRAID 0またはRAID 5のオプションを提供しています。構成後は、オペレーティングシステムでそのRAIDシステム全体を単一のハードドライブとして使用できるようになります。 論理ドライブとして構成すると、LabVIEWからファイル読み取り/書き込みコマンドを使用してRAIDドライバにアクセスすることが可能です。 したがって、RAIDシステムを構成する際 (インストール時) は、スループットと冗長性の要件に応じて、RAID 0またはRAID 5を選択する必要があります。 たとえば、一般的なPXI ExpressのRAID 0構成では、600 MB/s以上の連続ディスク読み取り/書き込み速度を実現できます。
RFストリーミングアプリケーションに必要な2つ目の重要な技術は、高速データバスです。 従来のRF計測では、PCと計測器間のデータバスは通常、GPIB、USB、またはイーサネットを使用しています。 従来型バスの持続スループットは2~10 MB/sであるため、バス速度がデータ転送のボトルネックとなり、PCへのデータストリーミングは実用的ではありませんでした。
現在のPXI (計測器用PCI拡張機能) およびPXI Express RF計測器では、データ転送のパラダイムが変わりました。 PXIおよびPXIe計測器はいずれも高速・低レイテンシデータバスを装備しており、計測器の最大データレートで計測器のオンボードメモリからハードディスクへのデータのストリーミングを可能にします。 以下の図は、PXIとPXI Expressのスループットとレイテンシを比較したものです。
図3: データバスの帯域幅とレイテンシ
PXI計測器は、PCで一般的に使用されているCompactPCIバスをベースにしています。 PCIはパラレル方式のバスで、実装は若干異なります。 PXI計測器に搭載されるPCIバスは、バス幅が32ビットで、動作クロックは33 MHzです。 理論上の最大帯域幅は132 MB/sで、標準のレイテンシは1µs未満です。 実際のアプリケーションでは、LabVIEW PXI計測器ドライバはダイレクトメモリアクセス(DMA)と最適化されたパケット転送を使用して、特定の計測器に応じて110~120 MB/sの持続的なデータスループットを実現します。
PCIバスは「パラレルバス」であるため、バス上のすべてのデバイスが総帯域幅を共有することに注意してください。 したがって、バス帯域幅を継続的に必要とする計測器を追加すると、各計測器で利用可能な帯域幅が減少します。
PCI ExpressはPCIバスの進化版で、PXI Express計測器で使用されています。 PCIとの完全なソフトウェア互換性を維持しますが、代わりに高速シリアルバスを利用します。 PCI Expressでは、データはレーンと呼ばれる差動信号ペアを介して送信されます。 各レーンは、レーンあたり1方向につき250 MB/s (理論上) の帯域幅を提供します。複数のレーンをグループ化して、標準のリンク幅であるx1 (「バイワン」と発音)、x4、x8、x16でリンクを形成することができます。x16リンクでは、1方向につき4 GB/sの帯域幅を提供します。
さらに、バス上の全デバイスと帯域幅を共有するPCIとは異なり、各PCI Expressデバイスには専用帯域幅が割り当てられています。PXI Express規格では、最大6 GB/sの総システム帯域幅 (コントローラからバックプレーンまで) と、スロットあたり最大2 GB/sの専用帯域幅 (バックプレーンからモジュールまで) をサポートします。 たとえば、PXIベクトル信号発生器を使用して、40 MS/sでRF信号を生成する場合を考えてみましょう。 このサンプリングレートでは、160 MB/sの最大スループット (複素サンプルあたり4バイト) を維持する必要があります。 このデータレートでは、計測器の最大サンプリングレートでもバスの最大帯域幅には遠く及びません。
PXIやPXI Expressなどの高速データバスは、高帯域データの計測器からハードディスクへの転送を可能にします。 この速度は通常、計測器のデータレートを上回るため、RAIDハードドライブ構成を使用して計測器のオンボードメモリを補うことができます。 つまり、512 MBのオンボードメモリを搭載した一般的なRF計測器では、最大数テラバイトのデータを連続的に集録することができます。 たとえば、PXI RFベクトル信号アナライザを2 TBのRAIDドライブに接続すると、20 MHzのRF帯域幅を最大で5時間以上集録できます。 現在のPXI計測器では、高速バスと高帯域幅ディスク構成を組み合わせることで、PXI RF計測器のオンボードメモリをメガバイトからテラバイトまで効果的に拡張できます。
高速デジタイザや任意波形発生器などの計測器では、アナログフロントエンドを高速データバスに追加するだけで、ディスクストリーミングシステムを実装できます。 ただし、RF計測器では、追加のデジタル信号処理技術が必要になる場合もあります。
一般的に、RF計測器はアップコンバージョンとダウンコンバージョンの2つの基本的な方法のいずれかを使用して実装できます。 これらの2つの方法とは、ホモダイン (ダイレクトとも呼ばれる) 方式とスーパーヘテロダイン (IFベース) 方式で、アプリケーションによってさまざまなトレードオフがあります。 たとえば、スペクトルの監視/記録/再生アプリケーションでは、ダイレクトダウンコンバージョンによりイメージが生じる可能性があるため、ヘテロダイン方式のダウンコンバージョンが必要です。 もう1つの例として、RF信号生成がありますが、それにはさらに課題があります。 デジタルアナログ変換器はサンプリングレートの倍数で周波数領域にイメージを生成するため、信号帯域幅の数倍の速度でベースバンド信号をサンプリングすることが重要です。
いずれのケースでも、ホモダイン方式とスーパーヘテロダイン方式のアップコンバージョン/ダウンコンバージョンでは、アナログ信号を損なわずにデータレートを下げることができるデジタル信号処理技術が必要となります。 RFディスクストリーミングアプリケーションでは、DSP技術を使用することで、帯域幅が広くなり持続的な集録が可能になります。
たとえば、20 MHzのRF信号帯域幅を連続して集録するには、25 MHzのIF搬送波を使用する場合、100 MS/sのサンプリングレートが必要です。 データに関してこれを換算すると、200 MB/sになります。 ただし、デジタルダウンコンバージョンを使用すると、このデータをIFの代わりにベースバンドのIおよびQ信号として集録できます。 25 MS/sのベースバンドサンプルでは、データレートが100 MB/s (Iが2バイト、Qが2バイト) まで低下します。 したがって、スーパーヘテロダイン方式のアップコンバージョンとダウンコンバージョンを使用する計測器では、デジタル信号処理技術によって必要なデータレートを引き下げることができます。 その結果、RAIDシステムなどの波形ストレージメディアをより有効に活用することができます。
デジタルアップコンバージョンは、位相、ゲイン、またはオフセット誤差を生じさせることなく、ベースバンドのIおよびQ信号を中間周波数に変換できます。 以下は、デジタルアップコンバージョンの一般的なブロック図です。
図4: デジタルアップコンバージョンのブロック図
ブロック図が示すように、デジタルアップコンバージョンでは、ベースバンド波形の補間によって、デジタルのI相またはQ相搬送波を混合できるようになります。 さらに、デジタル信号処理によって、バス上のデータレートを上げることなく、パルス整形補間フィルタ (二乗余弦、平方根二乗余弦など) を使用することもできます。
ベクトル信号アナライザでは、同様にオンボード信号処理技術を使用して、IF信号をベースバンドにデジタル的にダウンコンバートします。 デジタルダウンコンバージョンを行うと、集録するデータから不要な情報を除去しながら、IF信号のオーバーサンプリングを実行できます。 デジタルアップコンバージョンのように、デジタルダウンコンバージョンはデジタル数値制御発振器 (NCO) を使用して、デジタルIF搬送波のデジタルI相およびQ相成分を生成します。 結果として得られるベースバンドI信号およびQ信号は、希望するシンボルレートにデシメートできます。
ベースバンド信号のデシメーションは、不要なサンプルを削除するだけの簡単な処理ではありません。 サンプル数が少なくなるだけでエイリアシングが生じてしまうため、信号品質を確保するには、ローパスフィルタ処理とサンプル除去の両方を実行する必要があります。
NIのオンボード信号処理機能を備えたRF計測器では、ベースバンドおよびIF信号のデジタルアップコンバージョンとデジタルダウンコンバージョンを実行できます。 この機能は、フィールドプログラマブルゲートアレイ (FPGA) でハードウェアに実装されています。 FPGAは、最大40 MHzの帯域幅を必要とする信号に対して、デジタルアップコンバージョンおよびダウンコンバージョンをリアルタイムで実行できます。 デジタル信号処理はDUCやDDCを使用してリアルタイムで行われるため、ベースバンド波形をハードディスクとの間でストリーミングすることができます。
RFディスクストリーミングシステムの最終段階は、RFアナログフロントエンドです。のベクトル信号発生器/アナライザは、最大2.7 GHzの周波数を使用してディスク間で最大20 MHzのRF帯域幅のストリーミングが可能です。 これらの計測器はいずれも、RFへの周波数変換にスーパーヘテロダイン方式を採用しています。
RFアナログフロントエンドは、いろいろな意味で、RFディスクストリーミングシステムで使用されている最もシンプルな技術の1つです。 ただし、周波数変換にダイレクト方式とスーパーヘテロダイン方式のどちらを選択するかについて、必ず考慮しなければならないトレードオフがあります。 一般的に、ダイレクト方式のアップコンバージョンでは、位相ノイズおよびダイナミックレンジの性能が向上します。 しかし、この方式のアップコンバージョンとダウンコンバージョンでは、周波数領域にイメージが発生します。 これを示したのが以下の図です。
図5: ダイレクト方式のアップコンバージョンとダウンコンバージョンでは、不要なイメージが生じやすい
これらのイメージは、アナログI信号とQ信号間のゲイン不均衡や位相ミスマッチによって発生します。
RFディスクストリーミングシステムでダイレクト方式のコンバージョンを使用する場合は、高速デジタイザや任意波形発生器と組み合わせて使用するダイレクトアップコンバータとダウンコンバータを構成する必要があります。 さらに、NIのベースバンド計測器は、NI-TClkと呼ばれる特許申請中の技術を使用して、同期誤差を最小限に抑えます。
スペクトルモニタリングアプリケーションにおいて、周波数領域の低レベルピークの特定は正確な計測を行うための重要な要素となります。 このため、これらのアプリケーションでは、スーパーヘテロダイン方式のダウンコンバージョンを実装するベクトル信号アナライザを使用することが重要です。 スーパーヘテロダイン方式を使用すると、IFからベースバンドへのダウンコンバージョンをデジタル的に実行します。 したがって、ダイレクト方式のコンバージョンで生じるイメージの問題は回避できます。
RFディスクストリーミングアプリケーションを実現する最後の技術は、LabVIEWなどのマルチスレッドプログラミング言語です。 LabVIEWでは、LabVIEWコンパイラによって並列処理が自動的にプロセッサスレッドに割り当てられます。 このため、並列プログラミング方式を使用するだけで、RFディスクストリーミングプログラムを最適化できます。 推奨されるプログラミング方式は、以下の図に示すように、生産者/消費者ループストラクチャです。
図6: キュー構造を使用した生産者/消費者ループアーキテクチャ
上述の例では、上のループ (生産者) がベクトル信号アナライザからベースバンドIおよびQデータを集録し、そのデータをキューストラクチャ (LabVIEW FIFO) に渡します。 キュー構造は、LabVIEW内の複数のループ間でデータを渡すことができるため、下のループ (消費者) はデータをディスクに書き込むことができます。 生産者/消費者ループストラクチャでは、消費者ループがデータをディスクに書き込んでいる間も生産者ループがデータの集録を続行できるため、ディスクストリーミングアプリケーションで最高のパフォーマンスを発揮できます。
LabVIEWは本質的に並列性とマルチスレッド性を備えているため、RFディスクストリーミングアプリケーションに最適なプログラミング環境を提供します。 このため、並列処理を個々のコアに割り当てることができるマルチコアプロセッサでは、より優れたパフォーマンスを実現できます。
一般的なディスクストリーミングシステムは、PXIベクトル信号アナライザ、PXIシャーシおよびコントローラ、RAIDハードディスクで構成されています。 RFディスクストリーミングシステムには、いくつかのハードディスクオプションがあります。 PXIベースのシステムでは、PCIバスの持続スループットが110 MB/s程度にとどまるため、それが制限の要因となります。 ストリーミングアプリケーションに対応するため、NIはNI-RFSAおよびNI-RFSGドライバを大幅に最適化しています。 そのため、他社製のPXIベクトル信号アナライザでは、同程度のストリーミングレートは保証されません。
推奨されるアーキテクチャは、eSATA (ExpressCard External SATA) モジュールを介して外付けハードドライブアレイを組み合わせる構成です。ExpressCardモジュールには、RAID 0コントローラが搭載されており、x1 PCI Expressリンクを使用して、ハードドライブアレイとのストリーミングレートを110 MB/s以上に維持します。ハードドライブアレイは数テラバイトのストレージ容量に対応し、最大レートで数時間の連続ストリーミングを可能にします。 典型的なシステムを下図に示します。
図7: RFディスクストリーミングの一般的なシステム構成
上に示したようなハードドライブ構成を使用すると、計測器の全即時帯域幅 (20 MHz) で、入出力用のRF信号のストリーミングが可能です。 RF信号は複素データとして集録されるため、IサンプルとQサンプルがそれぞれ2バイトで、複素サンプル1つあたり4バイトが必要です。 データ変換は次のように求められます。
データレート = サンプリングレート x 4バイト/サンプル
上記の式を使用すると、2テラバイトのAddonics社製RAIDハードドライブ構成を使用した場合、RFストリーミングの総帯域幅と総集録時間を計算できます。 以下の表は、IQサンプリングレートごとのRF総帯域幅とレコード長を示しています。
サンプリングレート | RF帯域幅 | ハードドライブサイズ | レコード長 |
---|---|---|---|
8.33 MS/s (IQ) | 6.66 MHz | 2テラバイト | 16時間以上 |
10 MS/s (IQ) | 8 MHz | 2テラバイト | 13時間以上 |
12.5 MS/s (IQ) | 10 MHz | 2テラバイト | 11時間以上 |
16.66 MS/s (IQ) | 13.33 MHz | 2テラバイト | 8時間以上 |
25 MS/s (IQ) | 20 MHz | 2テラバイト | 5時間以上 |
図8:RFストリーミングの集録レートと集録時間の標準的なベンチマーク
上に示すストリーミングレートは、生成と集録の両方に適用されます。 ただし、PXI Express計測器を使用すると、上記の数値を上回るストリーミングレートが可能になります。 PXI Express計測器では、複数のチャンネルで同時にストリーミングを行うため、最大600 MB/sの合計データスループットを実現できます。
RFディスクストリーミング技術は、PXIおよびPXI Expressプラットフォームでしか利用できない高度なコア技術のセットを必要とします。 RFディスクストリーミングシステムを実現するには、RAID構成のハードディスク技術と、デジタル信号処理技術、高速データバス、RFアナログフロントエンド、および高性能なLabVIEWプログラミング言語のすべてを組み合わせる必要があります。 さらに、RFディスクストリーミングシステムの進化により、数多くの新しいアプリケーションへの対応が可能になりました。 ディスクストリーミングシステムではRF信号の集録サイズが大幅に増加するため、エンジニアはこれらのシステムを使用して、シグナルインテリジェンスや、ワイヤレス受信機の検証、通信パケットスニッフィングなどのアプリケーションで連続生成や集録を実行できます。
PXIのRFディスクストリーミングシステムに関する詳細は、以下のリンクを参照してください。