Finite Acquisition: The finite acquisition mode tells the FPGA to acquire a certain number of samples and then terminate the acquisition. In this acquisition mode, ConfigTiming.vi calls BufferConfig.vi and sets the host application's data buffer size equal to the number of points in the finite acquisition.
Finite Acquisition with Subset Reads: Again a finite acquisition allocates exactly enough memory to hold all of the requested samples per channel. Read(poly).vi has a control named Samps Read per Chan that you can use to specify the block size returned by each call, so you can read the finite acquisition in multiple subsets - a useful feature in many processing applications.
Finite Acquisition with Rearming Software Start Trigger: When a finite acquisition terminates, the FPGA automatically rearms itself for another acquisition. You simply need to call Start.vi to perform another finite acquisition.
Continuous Acquisition: The continuous acquisition mode tells the FPGA to acquire points indefinitely until a stop command is issued or until an error is encountered (FIFO overflow, module underflow, and so on). In this acquisition mode, use BufferCfg.vi to explicitly set the host application's data buffer to be many times larger than the read size. The examples use a 10X size by default. If the host application's data buffer fills, then the FPGA experiences a FIFO overflow causing the acquisition to stop.
Continuous Acquisition with Start/Stop or Pause Functionality: If a finite acquisition is too large for the amount of memory available on the host controller, then perform a continuous acquisition for a finite period of time via a state machine. When you call Stop.vi, the FPGA stops the acquisition and immediately rearms itself waiting for Start.vi to be called. The stop VI also flushes the host application's data buffer so subsequent acquisitions do not return old data.