ユニットのスループットが重要な新しいテストシステムを設計しています。GPIB、USB、イーサネット、またはPCI/PXI Express (PXIe) を使用する複数の計測器を評価しています。どの計測器バスが十分なシステム性能を得られるかを判断するにはどうすればよいですか。各バスオプションの理論上の帯域幅は、パフォーマンスの評価を開始するには最適な場所ですが、多くの場合、さらに深く評価する必要があります。このホワイトペーパーでは、計測器バスの選択に影響する4つの主要な要因(バス帯域幅、レイテンシ、ベンダ固有のドライバ実装、およびアプリケーション)について説明します。
テストシステムの簡略化モデル (図1を参照) でも、バス性能に影響を与える可能性のあるハードウェアおよびソフトウェアコンポーネントが多数あります。ホストでは、ソフトウェアアプリケーション、オペレーティングシステム、CPU/RAMの組み合わせ、リアルタイムOSのサポート、マルチコアCPUの最適化、ソフトウェアスタック、ドライバ、およびハードウェアインタフェースがバス性能に影響します。計測器側では、I/Oハードウェアとファームウェア、CPUとRAMの組み合わせ、および測定速度がバス性能に影響します。これらのコンポーネントのいずれかを変更すると、バスのパフォーマンスが変化する可能性があります。これは、あるバスから別のバスに変更すると、システム全体のパフォーマンスに影響が出るのと同様です。これらすべてのコンポーネントは、バス性能に影響する4つの主な要因の1つに分類できます。多くのバス性能比較では、実際のバス性能に影響する他のハードウェアおよびソフトウェアコンポーネントは無視され、バス帯域幅のみが重視されます。システム設計者は、バスの理論上の性能だけでなく、そのバス上の特定のデバイスがシステム全体でどのように動作するかを評価する必要があります。
前述したように、バス性能に影響する主な要因は、バス帯域幅、レイテンシ、ベンダ固有のドライバ/ファームウェア実装、およびアプリケーションの4つです。帯域幅はデータレートです。これは通常、1秒あたりのビット数(Mbit/s)で測定されます。レイテンシは転送時間です。これは通常、秒単位で測定されます。たとえば、イーサネット転送ではデータの大きなブロックが小さなセグメントに分割され、複数のパケットの形で送信されます。これらのパケットの1つを転送するのにかかる時間がレイテンシです。システムは、バスのレイテンシよりも速くデータに応答できません。バスドライバソフトウェア、ファームウェア、およびハードウェアの実装は、その性能に影響を与えます。
すべての計測器は同じではありません。マルチコアプロセッサまたはリアルタイムオペレーティングシステム (RTOS) を搭載し、より多くのRAMを搭載したPCは、低速のプロセッサを搭載し、より少ないRAMを搭載したPCよりもパフォーマンスが高くなります。計測器でも同様です。PXIeモジュール式計測器か従来型計測器かに関わらず、計測器設計者が行う実装のトレードオフは計測器の性能に影響します。PXI Express計測器の主な利点の1つは、エンドユーザが最適な実装のトレードオフを決定できるように、ソフトウェアで定義されることです。また、プログラム可能なFPGAアーキテクチャを持つものもあり、より確定的なパフォーマンスと、他のシステムリソースに影響を与えずに計測器でカスタマイズされた処理を実行するオプションを提供します。
バス性能に影響を与える最後の主要な要素は、アプリケーションまたは計測器の使用方法です。アプリケーションによっては、測定サブシステムがボトルネックになる場合もあれば、プロセッササブシステムがボトルネックになる場合もあります。どのサブシステムがボトルネックであるかを理解することで、パフォーマンスを向上させることができます。重要な点は、特定のバスが十分なパフォーマンスを得るには、アプリケーション要件を満たすか、それを上回る必要があることです。各主要な要素をより詳細に検討することで、ユーザはトレードオフをよりよく理解することができます。
図2.メインストリームT&Mバスの理論上の帯域幅とレイテンシ
前述したように、レイテンシはデータ転送のサイズによってバス性能に大きな影響を与えます。主流の計測器制御バスの理論上の帯域幅とレイテンシ(図2を参照)は、バス性能と転送サイズの関係に関する指針となります。たとえば、2つの通信バスを見てみましょう。ファストイーサネット (100Mイーサネット) の帯域幅は100 Mbit/sで、これは高速GPIBの64 Mbit/s帯域幅よりも大きいものです。しかし、ファストイーサネットのレイテンシは、数十マイクロ秒の高速GPIBレイテンシよりもミリ秒単位でははるかに遅くなります。図3は、同じ計測器上の複数のバスの実際の転送レートであるバス性能を示しています。8 Kバイト未満のデータ転送では、高速GPIBの方がパフォーマンスに優れています。ただし、8 Kバイトを超える転送サイズでは、イーサネットの方がパフォーマンスが優れています。
多くのエンジニアは、GPIBまたは古いイーサネットインタフェースを持つ老朽化した計測器に依存しており、その性能特性を理解することは既存のシステムを維持する上で重要です。しかし、PXIのような最新のプラットフォームでは、スループットが大幅に向上し、レイテンシが減少し、進化するアーキテクチャや要件との統合が簡素化されます。また、これらのアップグレードは、テクノロジが進化を続け、長期的なメンテナンスの複雑さを軽減するテストシステムのサポートにも役立ちます。
帯域幅とレイテンシの両方がバス性能に影響する原理は、通信バスとシステムバスを比較する場合にも当てはまります。GPIB、USB、LANなどの通信バスは、通常、周辺機器を接続するためにPCの外部で使用され、レイテンシが長く、帯域幅も低くなります。PCIやPCI Expressなどのシステムバスは、通常PC内で使用され、レイテンシが低く、帯域幅が高いため、転送サイズが小さい場合でも大きい場合でも最高のパフォーマンスを提供します。これは、複数の通信バスからのデータが、ホストCPUで処理するためにシステムバスに集約されるためです。
別の見方をすれば、通信バスの主な価値はパフォーマンスではなく、他の要素にあるということです。たとえば、USBは外部デバイスを簡単に接続でき、LANは長距離の測定を分散するのに優れています。しかし、これらのバスは両方とも、PCI Expressなどの高帯域幅および低レイテンシのシステムバスによってCPUおよびRAMにブリッジされます。
実装は、バス性能に影響する3つ目の重要な要素です。たとえば、バスインタフェースチップの選択、計測器ファームウェアまたは計測器ドライバのコーディング、CPUとRAMのサイズ設定は、バス性能に影響します。2つの異なるベンダーのスコープでGPIBバスとイーサネットバスを標準実装した場合を考えてみます。図4の結果は、実装の選択がバス性能に与える影響を示しています。最初のスコープは、標準GPIBおよびイーサネットの両方のほとんどの転送サイズで優れたパフォーマンスを提供します。このベンチマークでは、同じGPIBケーブルを使用する同じPCでSCPIコマンドを使用しました。唯一の違いは、GPIBインタフェースの計測器実装です。(これらの比較は経年計測に基づいており、同じバスタイプを使用する場合でも実装の違いがスループットに与える影響を説明する上で役立ちます。)
ほとんどの計測器ベンダは計測器のバス性能を指定していないため、この影響は特に問題となります。さらに、計測器プロセッサのタイプと速度、メモリ深度、オペレーティングシステム、ファームウェア、およびユーザインタフェースソフトウェアはすべて、バス性能に影響します。これは、特に旧式システムを使用する場合やスループット仕様が明確でない場合に、システム設計者が最終的な計測器の選択が完了する前にバス性能のベンチマークを行う必要があることを意味します。
バス性能に対するもう1つの大きな実装の影響は、計測器ドライバに必要なホストオーバーヘッドです。PCI/PXI、PCI Express/PXI Expressなどのシステムバスを使用する計測器は、ダイレクトメモリアクセス (DMA) を使用して、ホストCPUの介入を最小限に抑えながら、データをシステムメモリに直接移動することができます。このような場合、CPUの役割は、ほとんどの場合、データストリームとその予約メモリの構成にあります。これとは対照的に、通信バスを使用する計測器ドライバでは、メモリの入出力のたびにホストCPUによる集中的な管理が必要になることがよくあります。これらのドライバソフトウェアスタックは、余分な処理が必要でオペレーティングシステムの優先度に依存するため、データ転送タイミングに遅延とジッタを追加します。必要なスループットによっては、ドライバソフトウェアスタックがプロセッサ容量の大部分を消費し、データストリームのボトルネックになる可能性があります。
バスを高性能にするための最後の重要な要素は、システム内の計測器のアプリケーションです。FFTの計算や大きな波形の転送など、多くのデータ処理を必要とするアプリケーションもあれば、最小値や最大値の検索など、処理の必要性が低いアプリケーションもあります。ただし、他のシステムでは、測定終了後にオフラインで処理が行われるため、処理のニーズにまったく敏感ではない場合があります。アプリケーションの計算負荷が高く、レイテンシの影響を受けやすいほど、プロセッサがボトルネックになる可能性があります。
これらのアプリケーションでは、PCI/PXIおよびPCI Express/PXI Expressなどのシステムバスベースの計測器は、DMAベースの転送をサポートし、低レイテンシと高帯域幅を提供するため、より優れたソリューションを提供します(図3を参照)。一方、低スループットでレイテンシに耐性のあるアプリケーションでは、どのバスでも使用できます。そのような場合、計測器の選択は、測定速度、確度、精度、距離、コスト、耐久性、サイズなどの他の基準に基づく場合があります。
バス帯域幅、バスレイテンシ、ベンダ固有の実装、およびアプリケーションという、パフォーマンスに影響する4つの主要な要因の分析から、考慮すべきシステム設計の推奨事項がいくつかあります。まず、パフォーマンスを最大限に高めるには、測定をCPUにできるだけ近づけるか、PXIでシステムの一部として維持します。これにより、DMAとシステムバスの低レイテンシを備えた高性能ドライバを活用しながら、測定タイミングの余分な遅延とプロセッサへの負荷を軽減できます。最後に、同じバス内で同じ測定タイプでも、計測器とそのドライバによってスループット性能とCPU使用率が異なることに注目してください。そのため、明確な仕様が見つからない場合は、最終的な選択を行う前に、潜在的な計測器のバス性能のベンチマークを行う必要がある場合があります。
バス性能が重要な場合、PXI Expressはクラス最高の帯域幅、低レイテンシ、ソフトウェアの透過性と拡張性を兼ね備えているため、テストシステム全体を再設計することなく、要件の変化に応じてパフォーマンスをアップグレードし、機能を追加することができます。