Signal Generators

cancel
Showing results for 
Search instead for 
Did you mean: 

NI 5411 slow cpu to device memory transfer

The NI 5411 Arb Waveform generator's download time from computer to source listed on page 304 of the 2002 catalog states 0.028 sec for 16,000 samples (0.57 M/sec) and 8.77 sec for 8,000,000 samples (0.9 M/sec). These seem very slow for a PCI device. The catalog also says the waveform was type double. Does that mean floating point voltages are loaded and not the binary 12 bit representation ?
0 Kudos
Message 1 of 4
(7,780 Views)
Hi Steve

Actually, the 16 bit equivalent to the double voltage is loaded to the board. The data type is I16, so +1.0 corresponds to 32767 and -1.0 to -32768. The NI 5411's software driver ( IE the processor ) converts the values before downloading the numbers. So, the faster the computer, the faster the download times, the converse is also true.

Waveform arrays of binary I16 load faster than floating point doubles.

I hope this helps.

Jerry
0 Kudos
Message 2 of 4
(7,780 Views)
Isn't this a 12 bit DAC output and thus +10V=2047 and --10V=-2048. The remaining 4 bits are just available as digital I/O. In any case, it's hard to imagine that it takes 1 second for a processor to scale 1 M floating double points to 16 bit integer.

NIDAQ has the WFM_Load operation to load as 16 bit integers.
0 Kudos
Message 3 of 4
(7,780 Views)
Yes, that is correct, it is a 12 bit DAQ, and +10V=2047 and --10V=-2048 ( into a hi impedance load, into a 50 ohm load, replace the 10s with 5 volts?. ), at the DAC.

But the 12 bits are the high 12 bits of a 16 bit number. Creating waveforms with binary I16 values is easier for me to associate +1.0 volts with 32767. ( I usually think of my waveforms as -1.0 to +1.0 volts, it?s easier to calculate my gain setting, essentially the voltage level I want out. ) Or +5.0 volts ( 50 ohm load ) with 32767.

The catalog doesn't specify what type of computer that was tested on, but it will be faster on faster computers. I have a 700 MHz computer, and it takes less than half a second to download double type waveforms, less than a quarter second for binary
I16 waveforms.

I almost always use I16 waveforms because doubles are 4 times as large in memory, not a big issue for small waveforms, but for large waveforms, it is a significant difference.

I have never used NIDAQ to program the NI 5411, but NIFgen has niFgen Create Binary 16 Arbitrary Waveform.vi for downloading binary numbers. ( niFgen_CreateBinary16ArbWaveform operation for text based programming )

Jerry
0 Kudos
Message 4 of 4
(7,780 Views)