FPGAおよびホスト間でデータを転送する
- 更新日2025-03-06
- 2分で読める
FPGA VIとホストVI間でプログラム的にデータを転送するには、以下の方法のいずれかを使用できます。
- プログラムフロントパネル通信
- ダイレクトメモリアクセス (DMA)
- ユーザ定義I/O変数
以下の表は、これらの方法の概要と比較を示しています。
| データの転送方法 | ホストOS | スループットレート | 呼び出しオーバーヘッド | ホストCPU使用率 | タイミングモデル | 同期 |
|---|---|---|---|---|---|---|
| プログラムフロントパネル通信 | Windows、RT | 低 | 低 | 高 | ユーザ定義 | ユーザ定義 |
| ダイレクトメモリアクセス | Windows、RT | 高 | 高 | 低 | ユーザ定義 | 自動 |
| ユーザ定義I/O変数 | NI スキャンエンジン機能を装備したRT | 低 | 低 | 低 | NI スキャンエンジン | 自動 |
通常、小規模の頻繁なデータ転送の場合はプログラムフロントパネル通信、一度に大量のデータのストリームを行う場合はDMAを使用します。コヒーレントなFPGA I/OデータセットをRTホストVIとの間で転送するには、ユーザ定義I/O変数を使用します。以下の表は、各転送方法を使用する一般的な理由を比較しています。
| データの転送方法 | 一般的用途 |
|---|---|
| プログラムフロントパネル通信 |
|
| ダイレクトメモリアクセス |
|
| ユーザ定義I/O変数 |
|