What Should I Do If I Encounter DMA FIFO Overflow?

Symptom

I receive a "DMA FIFO overflow" error message when using the USB-7845/7846 to acquire PCM signals.

Root Cause

The USB-7845/7846 has bus speed and bandwidth limitations.

Solution

Set the bit clock rate and the number of channels within limits. Use the following formulas to calculate the maximum bit clock rate and number of channels that apply in most cases:

Total number of channels in a task: N
Frame sync clock rate (sampling rate): Fs = Bit clock rate ÷ Frame length
N × Fs × 32 ≤ 200,000,000

The previous formulas use a rough estimate of the maximum DMA throughput from the USB-7845/7846 to the host system. To avoid overflow, you must also consider the number of samples to read for each channel and other system configurations that affect the DMA throughput. For example, if you want more samples at higher sampling rates, NI recommends you configure fewer channels per task.