RefApp7による連続データ転送機能

PCとボード間で、長時間・連続したデータを転送できる機能を利用できます。

RefApp7.exeのメモリ操作タブには「分割メモリ転送」チェックボックスがあります。ここをチェックすると、メモリ転送時、PC←→ボード間のメモリ転送が高速かつ連続したデータの転送が可能になります。

「分割メモリ転送」をチェックし、80000000hexのデータ量(2GB)を転送しています。

「分割メモリ転送」をチェックしないと、左図のようにPCのメインメモリに一旦データを蓄えるので、メインメモリの空き容量がデータ転送できる限界です。

「分割メモリ転送」をチェックすると、左図のようにPCのHDDとボード間でデータ転送します(メインメモリに2MBのバッファを設けてデータ転送を行います)。 このため、データ転送の限界はHDDの空き容量になります(最大設定値:2^64-512バイト=18EB,エクサバイト)。

分割メモリ転送のメリットは、大規模なデータを連続して取り扱うことができる点です。 数MB程度のデータでは、分割メモリ転送を適用すると、データ転送速度が低下する場合もありますので、ご注意ください。

分割メモリ転送の場合は、Smart-USB Plus/Sigmaぞれぞれに用意したBulk関数を使用します。

Smart-USB Plus:
SUPlv_Data_Read = SUPlv_Mem_Cmd+SUPlv_Bulk_Read+SUPlv_Mem_Cmd
SUPlv_Data_Write = SUPlv_Mem_Cmd+SUPlv_Bulk_Write+SUPlv_Mem_Cmd

Smart-USB Sigma:
SUSlv_Data_Read = SUSlv_Mem_Cmd+SUSlv_Bulk_Read+SUSlv_Mem_Cmd
SUSlv_Data_Write = SUSlv_Mem_Cmd+SUSlv_Bulk_Write+SUSlv_Mem_Cmd

それぞれ、xxx_Mem_Cmdに挟まれた、xxx_Bulk_yyy 関数を繰り返し実行します。1回だけならxxx_Data_Readとい同じ機能です。RefApp7の分割メモリ転送では、xxx_Bulk_yyy 関数を複数回実行しています。 ※yyy=WriteまたはRead

Smart-USB Plus/Sigma製品を大規模データ・ロガーとして構成し、USBを利用した計測システムを構築することができます。