Software memory

There are two software memories for High performance analog input and for High performance analog output.

 

For high performance analog input

There is the software memory for high-performance analog input, which have the following merits.

In device buffer mode, API-AIO(WDM) driver secures a memory area for 256K data in the memory of the PC so that even a device with a small buffer memory can achieve stable sampling as much as possible. This memory area is called "software memory".

In the case of a device using a software memory, the driver automatically performs data transfer between the buffer memory and the software memory, and the application accesses the software memory from the application.
With this mechanism, applications can handle processing with a margin in timing or data volume.

Please refer to "AD Software memory List" topic to know whether or not the software memory and also the memory size for each device.

Example : When sampling for a long time under the following conditions on a device with a buffer memory of 1K (1024) data

 - Number of Channels  : 1Ch
 - Transfer Mode       : Device buffer mode
 - Internal Clock      : 1msec
 - Memory Type         : FIFO

 

If this device does not use software memory (*1)

Sampling with this setting, approximately 1 second (1024msec) after the start,
the buffer memory becomes full and an overflow occurs.

Therefore, in order to perform long time sampling with this setting,
the application must continue to acquire the data in the FIFO memory at a cycle earlier than about 1 second.

 

If this device uses software memory

Since the software memory can store data for 256K (262,144) data,
there is a time of about 262 seconds before the overflow occurs,
and the application can acquire data with a margin. (*2)

In addition, if the amount of data collected by this sampling is less than 256K,
it is possible to acquire the data all at once after the sampling is completed,
so compared to the process of continuously acquiring data during sampling,
the processing contents of application can be simplified.

 

(*1) Actually, the device with 1K buffer memory always uses the software memory,
  the above is for explanation only and describes what happens when not used.

(*2) During high-speed sampling, data transfer to the software memory may not be in time
  and overflow may occur on the buffer memory side.

 

For high performance analog output

There is the software memory for high-performance analog output, which have the following merits.

- If the amount of data fits in the software memory, there is no need to add data during output
- In the case of continuous output for a long time, there is a margin in the time (time to add the output data in time) until the operation ends after all the data is output.

Please refer to "DA Software memory List" topic to know whether or not the software memory and also the memory size for each device.

 

Related item

Buffer memory Overflow