昨今の最新エレクトロニクス設計業界は、一つの製品に多様の機能が集積化され、アナログ技術とデジタル技術の機能性の集束される傾向があります。ビデオ、オーディオとデータが1つに集まった3Gワイヤレスハンドセット(FOMA)およびセットトップボックスはそのようなシステムが例として挙げられます。この様なシステムをテストするには共通のベースバンドサンプリングレート、ひずみ、タイミング特性を持つ緊密に統合されたアナログ/デジタル集録・生成ハードウェアが必要です。タイムベースが分散され、異なるアナログ特性を持つ単独型計測器を使用するのは非常に困難となります。さらに今日では生産工場が世界各地に分散されている場合が多く、テストシステムは様々な温度環境内で昼夜稼動されています。より信頼性とスループット(処理能力)が高いテストシステムを構築するには、広い温度範囲内で安定性および一貫性を保持可能な計測ハードウェアが不可欠です。
ナショナルインスツルメンツでは、多機能集積型デバイスをテストする際の難題に対処するために高速モジュール式計測器用の共通アーキテクチャとして、Synchronization and Memory Core(SMC)を設計しました。統合型ミックスドシグナルプロトタイプ作成・テストシステム作成に重要なSMCの主な機能には以下のようなものがあります。
1. 柔軟性に富んだ入力/出力データ転送コア
2. チャンネルにつき最大512 MBに拡張可能な高速の大容量オンボードメモリ
3. 高精度タイミングおよび同期エンジン
サンプリングレートと柔軟性の両方を備えた、SMCベースのミックスドシグナルテストシステムの構築に適した計測器には、以下の3製品があります。
SMCアーキテクチャの中核をなすのは、FPGA(field-programmable gate array)コントローラであるDSF(DataStream FPGA)で、計測器の"CPU"とも言われます。これはすべての指令を処理し、トリガを管理し、信号を外部にルーティングして、計測器とホストコンピュータ間の波形転送などを管理します。
DSFには、入力用と出力用の2つの主要なデータ転送コアが実装されています。入力コアは高速アナログ波形のデジタル化およびデジタル波形入力用に設計され、出力コアは高速アナログ波形生成およびデジタル波形出力用に設計されています。DSFのデータ転送コアは、データおよび指令の処理、イベントトリガの管理、トリガおよびマーカ信号のルーティング、波形バッファのリンキングとルーピング、デバイス間およびデバイス内での通信バスなどの処理を行います(図1)。
メモリサブシステムは2つのブロックからなり、それぞれを入力または出力バンクとして構成することができます。この構成では、高速2チャンネルデジタイザなどの2チャンネル入力デバイスで、両方のメモリバンクを使用してデータの集録を行います。単一チャンネルの任意波形発生器には、出力用に構成されたメモリブロックが1つ搭載されており、デジタル波形発生器/アナライザは1つのバンクを入力用に、もう1つを出力用に使用することができます。
各メモリブロックは最大で512MBの容量がありますので、計測器あたりの合計は1024 MBになります。各メモリブロックは64ビット・133MHzの通信バスに接続され、1GB/秒の持続データ転送が可能となります。メモリサブシステムはNI-MITE ASICを介してPCIバスに最高通信速度で接続され、ホストコンピュータとSMCの間での波形の高速ダウンロード/アップロードを可能にします。
図2、3、および4は、高分解能デジタイザ、任意波形発生器、およびデジタル波形発生器/アナライザの子カードの詳細を示しています。
DSF入力転送コアは、デジタル波形発生器/アナライザのデジタル波形入力や、高速デジタイザのADコンバータ(ADC)からの高速データ入力ストリームなどを処理します。各集録したデータは独立したレコードに保存され、単一のバッファから200万を超える小さなレコードまで対応でき、レコード間の再アーミング時間が2 µsという速さで連続集録が可能です。オンボードの大容量メモリは、通信テストシステムにおける転送パケットの集録、クロックジッタの計測、エラー診断テストなどで必要とされる大量のデータレコードを、簡単に処理することができます。DSFタイミングおよび同期エンジンの特殊カウンタのおかげで、すべてのレコードは元のソースに対し時間相関することができます。たとえば、外部トリガ信号を使用する時、DSFは各集録したレコードに対して、トリガ信号との時間差を10 nsの分解能でタイムスタンプすることが可能です。NI 5122デジタイザでは、タイムスタンプの分解能はTDC(デジタル変換必要時間)技術によって100 psにまで上げることができます。 大容量メモリ、メモリを複数レコードに分割化、100 psのタイムスタンプ分解能、高速再アーミングなどの機能により、高いサンプリングレートを保ちながらきわめて頻度の少ないイベントや散発性のイベント、又は急速に発生するイベントなどを集録することも可能です。そのような機能によって、キャプチャした波形間の時間コヒーレンスを失わずに関心領域のみを集録することで、有効メモリサイズを増やすことができます。
NI 5421任意波形発生器やNI 6552デジタル波形発生器/アナライザなどの出力デバイスの場合、シーケンス指令は波形データと同じ物理メモリに保存されます。従来の任意波形発生器に採用されてきたアーキテクチャでは、波形のシーケンス指令は波形データと異なる数キロバイトのSRAMメモリに保存されていたため、シーケンス可能な波形の数が著しく制限されていました。SMCではより柔軟性に優れた方法を採用し、シーケンス指令および波形データを同じ物理メモリに組み込むことが可能となり、メモリサイズによるシーケンス指令数の制約を受けることはありません。最大512 MBのメモリがボード上に搭載され、シーケンス指令に必要なメモリを好きなだけ自由に使うことができます。以下の表2~4は任意波形発生器のシーケンス仕様を記載しています。表より波形と指令間の共有メモリの柔軟性を確認することができます。
表1は従来の任意波形発生器(AWG)の波形メモリとシーケンス指令の構成例を記述しています。
従来のAWGには波形と指令のメモリ容量が固定され、上記のAWGはシーケンス内で4,096ステップを超えることはできません。8 MBの標準メモリを搭載したNI 5421任意波形発生器は、波形と指令のメモリの共有が可能なため、表2、3、4に示すような柔軟性の高い構成が可能です。
上の表に示す数値は、メモリを波形と指令で共有することにより達成可能な典型値です。共有メモリを使うと、短い波形で非常に長いシーケンス、非常に長い波形で短いシーケンス、あるいはその間を取るように、自由にメモリスペースを使用することができます。さらに、64MBおよび512MBの大容量メモリオプションにより、最大シーケンス仕様が向上するとともに波形メモリも増えます。従来のAWGに大容量メモリが搭載されていても、波形メモリが増えるのみでシーケンスステップや波形セグメントは増えません。大容量の波形メモリは長い波形を処理可能ですが、場合によっては大容量波形メモリだけでは要件の厳しいアプリケーションに対処することはできません。異なる波形セグメントの複雑なシーケンス指令により、アプリケーションが必要とメモリ要件を低減することができます。
たとえばビデオ信号には、水平および垂直同期パルス、カラーバースト、垂直帰線区間のブランキングラインなど、多くの反復セグメントが含まれています。SMC出力データ転送コアでは、各信号セグメントのコピーをメモリに保存することができ、セグメントの出力順番(リンキングとルーピング)をシーケンスに保存できます。そのようなアプリケーションの場合、大容量メモリバッファでも画像全体や複数の画像の保存には不十分かもしれませんが、画像の重要な部分とフレームの生成を指定するシーケンス指令リストを保存することにより対応可能になります。そのようなシーケンス指令が消費する容量は、従来のAWGで利用可能な数キロバイトのSRAM指令メモリを簡単に超えてしまいます。SMCアーキテクチャなら、必要なフレームのセグメントと長いシーケンス指令を共有の大容量メモリに保存することにより、そのような問題を解決することができます。
SMC出力エンジンは、表5に示すように複数のシーケンス指令を保存することができます。この機能と大容量メモリを組み合わせることで、異なるテストシーケンス指令を必要とする機能テストの中で1つのシーケンス指令から別のシーケンス指令へすばやく切り替えることが可能になるため、テストスループットを大幅に向上させることができます。例として、ビデオ機材のテストには複数ある業界標準のテストパターンを生成する必要がありますが、この機能でパターンの生成をより迅速および連続的にすることが可能となります。
ビデオから通信まで、多くのアプリケーションで求められるのが、長い波形の生成および集録機能です。AWGを使ったビデオテスト画像生成、デジタル波形発生器/アナライザを使ったADCのスパークルコードテスト、デジタイザを使ったベースバンド変調器/復調器のエラーベクトル振幅(EVM)計測などは、波形の集録と生成に大容量のメモリを要する数多くのアプリケーションの一部です。
SMCの入力および出力データ転送コアは、メモリバンクと計測器の入出力電子部品間の波形を200 MHzで転送することを目的として設計されたものです。SMCには、DSFとともにナショナルインスツルメンツのSCARABメモリコントローラが組み込まれています。SCARABメモリコントローラは、メモリバンク、DSF、およびスキャタ/ギャザベースのDMAコントローラである当社のMITEの間のインタフェースを提供するものです。SCARABは、波形と指令がメモリのどこに保存されているかを効率的に追跡し、DSFやMITEからの要求により適切なデータを取り出します。この機能によって、最大サンプリングレートで実行しても、メモリとの間で波形のストリーミングを損なうことなく行うことが可能になるため、大容量の波形の集録や生成に対応することができます。SMC入力コアは、大容量メモリを2ポートFIFOバッファとして扱い、デジタイザのADCまたはデジタル波形発生器/アナライザのデジタルラインからのデータを、200 MHzの最大サンプリングレートでメモリバンクに書き込みます。さらにPCIバスで使用可能な帯域幅を全て使い、データをホストPCのメモリに高速ストリーミングします。
SMC出力コアは、メモリが波形と指令で共有されているため、メモリの処理方法が入力に比べ多少複雑になっています。AWGのD/Aコンバータまたはデジタル波形発生器/アナライザのデジタルラインに最大サンプリングレートの200 MHzでデータをストリーミングしながら、出力波形のシーケンス指令を波形データのストリーミングに妨害しないように読み取る必要があります。数十万個の指令におよぶ大規模なシーケンスになる可能性があり、DSFの限られる内部メモリにすべてのシーケンシング指令を生成開始時にコンパイルすることは不可能です。そのため、SCARABは大容量メモリから200 MHzの最大サンプリングレートで波形を取り出さなければならないばかりでなく、リアルタイムで実行するシーケンス指令をDSFに提供することも必要です。
同期は、チャンネル拡張のために同じタイプの計測器を同期する場合(同種同期)や、2つの異なる計測器の入力や出力を緊密に相関する場合(異種同期)に重要な役割を果たします。定義上ミックスドシグナルテストシステムでは、図5に示すように3つの計測器(デジタイザ、任意波形発生器、デジタル波形発生器/アナライザ)のうち少なくとも2つ使用することが条件となっています。同期を必要とするその他のアプリケーションには、通信におけるベースバンドI/Q信号生成および集録、家庭電化製品におけるRGBビデオ信号生成および集録、24ビットADCおよびDACテスト用の24チャンネルデジタル波形生成および集録など、さまざまなものがあります。
同期の目的は、複数のSMC計測器間で波形を正確に同時生成および受信できるようにすることです。たとえば任意波形発生器を2つ使用する場合、同期を達成するには、2つのAWGが完全に整合して全く同一の波形を生成するか、または波形間の位相のズレを微調節することができなくてはなりません。3つのデバイスすべてのサンプリングレートが高速であるため、それらのデバイス間でのクロックとトリガの分配にはそれなりの注意が払われます。数十ピコ秒の分解能でのサンプルクロックスキュー調整、トリガ伝達遅延およびスキューキャリブレーション、全デバイス上のピコ秒レベルのクロックジッタ(実行値)などの機能により、ナノ秒以下のレベルにおいて、100~200MS/秒で3つのデバイスすべてを同期するのに求められる性能を実現します。
同期は、トリガとリファレンスクロックを複数のデバイス間で共有することによって実現します。リファレンスクロックは、指定のマスタデバイスあるいは専用の高精度クロックソースにより供給されます。各SMC計測器は、図6に示すように、電圧制御水晶発振器(VCXO)を搭載しPXI 10 MHzリファレンスクロックに位相ロックされています。さらにタイミング精度を高めるには、ルビジウムや恒温槽型発振器(OCXO)に基づいた周波数ソースなどのモジュールを利用する方法もあります。これらのデバイスの確度は±100 ppb(parts per billion)を上回る場合もあります。たとえば、±100 ppb確度を持つOCXOソースは、10 MHzのクロックを生成時の誤差は±1 Hzとなります。NI PXI-6653タイミングおよび同期コントローラは、そのようなアプリケーションに最適です。搭載しているOCXOクロックを、PXIバックプレーンクロックの代わりに10 MHzのリファレンスクロックをライン上で駆動することが可能です。そのため、VCXOを搭載している全ての計測器がその10 MHzにロックすると、すべてが±100 ppbの確度を備えることになります。
ミックスドシグナルテストでは、異なるサンプリングレートで実行している計測器も同期をとる必要があり、データは各計測器の正しいサンプルクロックエッジでサンプリングしなければなりません。各計測器のサンプルクロックが10 MHzリファレンスクロックの整数倍の場合、すべてのサンプルクロックの立ち上がりエッジは、10 MHzクロックエッジと同時に立ち上がります。したがって、すべての計測器のサンプルクロックが同期されたことになります。サンプルクロックが25 MHzなどのように整数倍でない場合は、10 MHzのリファレンスクロックに位相ロックしていたとしても、サンプルクロックが同調するという保証はありません(図7)。この問題を解決するには、位相ロックループ(PLL)をすべて同時にリセットして、同じ周波数のサンプルクロックを同調させるのが一般的な方法です(図8)。すべてのサンプルクロックはこの時点で同期していても、まだ完全ではありません。完全な同期とは、デバイス間で集録したデータが同じサンプルクロックサイクル内で集録したことを意味します。そのようにするには、マスタデバイスからスレーブデバイスにトリガを渡して、集録または生成の始まり時間を伝える必要があります。完全な同期を実現するには、サンプルクロックの調整とトリガの組み合わせが不可欠です。
複数のデバイス間でトリガ信号を分配するには、トリガ信号をサンプルクロックと関連付け、各デバイスが正しい時点でトリガ信号を感知させる必要があります。200 MS/秒のサンプルクロックレートの場合、トリガ伝播達遅延とスロット間スキューが正確なトリガの分配の妨げとなります。その場合他の分配チャンネルが必要です。トリガ信号は遅いクロック領域を介して確実に分配され、それが受信側の計測器の高速サンプルクロック領域に再度変換されます。論理的には、トリガ信号の分配を10 MHzのリファレンスクロックで同期するべきですが、この構成でも2つのボードが同じサンプルクロックサイクル内でトリガ信号の受付を保証することはできません。この問題点を説明するため、10 MHzのリファレンスクロック領域からサンプルクロック領域へのトリガ変換用の2つのボードの回路が、図9に示すようなシンプルなものであると仮定します。
ボードのサンプルクロックが同調していても、両デバイスの同じサンプルクロックサイクル内でトリガが発生しない場合がある理由を、図10のタイミングダイアグラムに示します。
最初のフリップフロップ回路の出力(cTrig)は、サンプルクロックの立ち上がりエッジに近すぎる可能性があるため、最後の出力のmTrigが不安定な状態に陥ることになります。各デバイスのフリップフロップ回路には異なる特性があるため、出力が安定するまで違う時間が必要となります。その安定するまでの時間差により、二つのデバイスでトリガが感知する瞬間がずれる可能性があります。
SMCでは、特許出願中の独自のデジタル同期スキームを採用し、もう1つのクロック領域信号を使用してトリガの駆動と受信を行っています。この信号はトリガクロック(TClk)と呼ばれ、サンプルクロックをベースにして生成した低周波数の信号です。トリガクロックの周波数はPXIトリガラインまたはRTSI(リアルタイムシステム統合バス)上でのトリガ転送をより高い信頼性を求められるように調節されています。このテクニックにより、サンプルクロックと10 MHzリファレンスクロックとの関係に左右されずに、計測器間での同期を実現することができます。
SMCとのインタフェースとして存在するドライバソフトウェアは、SMCの一部ではありませんが、柔軟性に富んだデータコア、大容量オンボードメモリ、タイミング/同期エンジンなどの利点を実現する上での重要なコンポーネントとなります。当社では、SMCとのインタフェースのために、新しいNI-DAQmxアーキテクチャに基づいた共通のドライバフレームワークを開発し、統合性と操作の効率性をさらに高めました。クロック処理、メモリ制御、信号ルーティング、PCIバスインタフェース、その他の機能面は、統一したソフトウェアにより、異なる製品ラインでも同じ機能を提供することができました。
NI-DAQmxアーキテクチャに基づいて開発された計測器ドライバには、デジタル波形発生器/アナライザ用のNI-HSDIO、高速デジタイザ用のNI-SCOPE、信号発生器用のNI-FGENがあります。これらのドライバは、PCIバス経由での波形のDMA転送の高速化や、オペレーティングシステムのカーネル遷移を最小限に抑えたマルチスレッドアーキテクチャによる並列実行など、多くの点で改良を加えることによって、高い計測スループットを実現しています。
SMCアーキテクチャの開発にあたって重要な条件となるのが、高い計測スループットです。製造テストと設計検証・確認は、テストスループットの継続的な向上を求められる分野です。SMCでは、PCIバス経由でデータ転送を行うために開発されたASICであるNI MITEを採用しています。すばやいバースト転送しかできない多くの市販PCIバスマスタリングチップと異なり、MITEはバーストだけでなく連続データ転送にも対応し、最適化されています。NI-DAQmxアーキテクチャを使用することにより、SMCベースの計測器はそれまでの性能を上回り、波形転送において10~17%の向上を実現することができました。図11は、ソフトウェアアーキテクチャの改良と最適化されたハードウェアによる性能の向上を示しています。グラフには3つの標準パルス測定が表示されています。最も高速なのはNI 5122で、GPIB制御のオシロスコープの47~210倍の速度を誇ります。また、ソフトウェアを改善することによって、ナショナルインスツルメンツの従来のデジタイザに比べ、計測速度がわずかですが明らかに向上しているのがわかります。
SMCという100~200MS/秒のミックスドシグナルテストテストシステム用の共通アーキテクチャを提供することによって、デジタル信号とアナログ信号が混合したシステムでもテストできるようになりました。緊密なタイミングと同期、柔軟性に富んだ大容量オンボードメモリ、完全にプログラム可能なデータ転送コアなどを特徴とするSMCは、ミックスドシグナルモジュール式計測テストプラットフォームとして、現在および将来でも優れたアーキテクチャです。