07-13-2023 08:15 AM
Hello
I'm looking for a possibility to generate an arbitrary signal that is infinity-long with 20MS/s-100MS/s . Is this possible with NI arbitrary waveform generators?
I worked with NI waveform generators in 2005, and (I think) this was not possible that time. You could upload different signals to the NI-Waveform-generator, and configure the sequence the signals should be played (also periodic), but you could not update the individual signals in the sequence once you started the signal.
In case this is possible now: what is the maximum sampling speed supported? I think 800MS/s at 16bit are not possible, as this would exceed the bandwidth of PXI.
Thanks in advance.
07-13-2023 09:40 AM
It's unclear what you mean by "inifinity-long". Two guesses:
1. Repeat the same waveform indefinitely.
Yes, you can do this trivially.
2. Stream waveform data from the host PC as it plays out on the generator.
Yes, you can do this, but you are limited by how quickly you can produce the waveform data on your program and PCIe bandwidth. Exact figures depend heavily on your system configuration.
The PXIe-5433 is our fastest Arbitrary Waveform Generator, 16-bit at 800 MS/s.
07-13-2023 10:42 AM
Thanks for the quick reply. The second guess is right: The data is on the disc, but it would be in the length of minutes or hours, too much for the small memory on AWG-card. Data generation is not an issue.
I think the bandwidth should be sufficient, when I look at the MXI-bridges (Like PCIe-8398 / PXIe8399).
Do you know how this is technically realized? is it the way that you play different waveforms in a sequence, and you override the waveforms with the new data once it was payed, or is the new data just appended on the previous data (and the previous data is deleted in some way)?
I'm afraid that the signal update requires a start and stop of the data output. The data output must be continuously with 800MS/s
07-13-2023 11:31 AM
IIRC, you overwrite the on-device waveform as it is getting generated, and synchronize by using Marker Events. There is a LabVIEW example for it.
> The data is on the disc
Can you reliably read from disk at more than 1.6 GB/s (800 MS/s * 2 bytes)?
Yours sounds like a tricky application that will require some amount of trial/error/tuning to know for sure.
07-16-2023 11:36 AM
@kirsch wrote:
IIRC, you overwrite the on-device waveform as it is getting generated, and synchronize by using Marker Events. There is a LabVIEW example for it.
> The data is on the disc
Can you reliably read from disk at more than 1.6 GB/s (800 MS/s * 2 bytes)?
Yours sounds like a tricky application that will require some amount of trial/error/tuning to know for sure.
Reading from disk at 1.6GB/s, kind of a challenge as the typical SSD read speeds are 600MB/s (the M.2 versions could be a lot faster). Probably you need large RAM to be a temporary fast storage to stream data at such high speed.