高機能アナログ入力用のソフトウェアメモリと、高機能アナログ出力用のソフトウェアメモリが存在します。
高機能アナログ入力用のソフトウェアメモリは、以下のようなメリットがあります。
デバイスバッファモードにおいて、API-AIO(WDM)ドライバは、バッファメモリが少ないデバイスでも
なるべく安定したサンプリングを実現できるように、PCまたはファームウェアのメモリに256Kデータ分のメモリ領域を確保しており、
このメモリ領域を「ソフトウェアメモリ」と呼びます。
ソフトウェアメモリを使用するデバイスの場合、バッファメモリとソフトウェアメモリ間のデータ転送はソフトウェアが自動的に行い、
アプリケーションからは、ソフトウェアメモリにアクセスする形になります。
この仕組みにより、アプリケーションではタイミングやデータ量に余裕を持って処理を行うことができます。
各デバイスのソフトウェアメモリ使用有無と、使用できるメモリサイズは、「ADソフトウェアメモリ一覧」トピックを参照ください。
例:バッファメモリが1K(1024)データ分のデバイスで、以下の条件で長時間のサンプリングを行う場合 ・チャネル数 :
1Ch
このデバイスがソフトウェアメモリを使用しない場合 (*1) この設定でサンプリングを行うと、開始からおよそ1秒(1024msec)後に そのため、この設定で長時間のサンプリングを行うためには、アプリケーションは
このデバイスがソフトウェアメモリを使用する場合 ソフトウェアメモリには256K(262,144)データ分のデータを格納することができますので、 また、このサンプリングで収集するデータ量が256K未満の場合、
(*1) 実際にはバッファメモリが1Kのデバイスは必ずソフトウェアメモリを使用しますが、 (*2) 高速サンプリング時には、ソフトウェアメモリへのデータの転送が間に合わず、 |
高機能アナログ出力用のソフトウェアメモリは、以下のようなメリットがあります。
・ソフトウェアメモリに収まるデータ量であれば、出力中にデータを継ぎ足す必要が無くなる
・長時間の連続出力をする場合に、全データを出力し終わって動作終了してしまうまでの時間
(出力データを継ぎ足すのが間に合う時間)に余裕ができる
各デバイスのソフトウェアメモリ使用有無と、使用できるメモリサイズは、「DAソフトウェアメモリ一覧」トピックを参照ください。
バッファメモリ オーバーフロー、ADソフトウェアメモリ一覧、DAソフトウェアメモリ一覧