Please see attached waveforms.
For this measurement I connected an Agilent 33521A function generator to channel 0 as kind of a strobe trigger.
I used a pulse height of 100 mV, a duration of 100 microseconds and a rise- and fall time of 10 ns. The frequency was set at 1 Hz.
Channel 1 shows the waveform with nothing attached,i.e. terminated.
CH0.dat and CH1.dat both show waveforms that were taken when I am not accessing any gain settings on the NI5734. As you can see the noise in both channels looks uniform. I also don't see any weird spikes or ripples. I've taken several hunderd thousand waveforms using this setting and I've never encountered a problem so far.
CH0-Gain-Changed.dat and CH1-Gain-Changed.dat show the ripples and spikes that are being introduced into the waveform once I try to change the gain. Don't get me wrong, the gain IS indeed changed, it's just that I now encounter those ripples/spikes.
Spikes.dat shows you an extreme case of those spikes in channel 0. Whereas I tried to get the timing between two back-to-back ripples with Time-Between.dat. I measured it to be about 340 microseconds, i.e. a ripple frequency of about 3kHz.
Let me know if you need anything else.
Thank you very much!
Thank you for the providing these waveforms. I have also been looking at the other forum post referencing this question (http://forums.ni.com/t5/High-Speed-Digitizers/5734-noise/m-p/2952303#M4511) and wanted to ask a few more questions.
- Have you tried using another oscilloscope to read the data? If so, did you see these spikes?
- Does this also happen when you are reading a periodic signal and you adjust the gain?
I used two other oscilloscopes to look at the input signal and I don't see any spikes with them. Both scopes sample fast enough so that I should have seen the spikes if they were real..
It also seems to be a problem with the NI 5743 as I see those noise ripples even in a terminated channel. They are just not as 'sharp' as the big spikes in traces with a 'real' input signal.
It's especially interesting that the time between a noise ripple/ bunch in channel 0 and another noise ripple in channel 1 is always about 100 us, even if both are terminated. The same is true for the pairs of CH1,2, CH2,3 and CH3,0. I think this also suggests an internal cause of our problem, rather than an external.
I haven't tried a sine wave so far. I'll get to that tomorrow and let you know about it.
Thank you very much,
So I made some measurements today using a sine wave (1 kHz and 10 kHz with 100 mVpp)
Please see attached screenshots. I've also attached an example waveform for each indiviual setup.
Thank you for all of this information and all of your work to look in to this question! I have a few more questions as we continue to look in to the source of this noise:
- When do you start seeing this noise and when does the noise stop? Do you have to do a device reset and will that work without seeing the noise? Do you have to powercycle to get the noise to go away?
- How are you grounding your system? Is all of your hardware connected to the same power strip or the same ground?
- Currently your default gain is 0dB by default, but does writing 0dB to the gain setting cause the noise to start as well?
- Do just the SPI writes cause the noise? We can try to write to a different register that doesn't affect the gain and we can check to see if the noise occurs there also.
- Do you have a different device that you can reproduce this on or does it only occur on the NI 5734? Do you have a different FlexRIO device that you could test with? I am going to try and recreate this on our end as well and will let you know what I find.
- Lastly, I have attached a VI that will configure the ACD Gain for the 573x series devices. Does running this code help resolve the noise that you are seeing?
Please let me know if you have any additional questions!
Oops! Sorry about that. Here is the attachment.
Thanks for further looking into our problem. Regarding your questions:
Thanks again for your help!
With the question on SPI, bascially I was wondering if the noise starts if you configure any of the other properties, other than the gain settings. I'm wondering if just the act of writing values contained in the user command table are causing the noise issues.
In our analysis of your data, it appears that the "noise" is actually digital. The spikes appear one sample at a time, and appear to happen in discrete jumps. The following graph is generated point-by-point, subtracting one value by its previous. What this shows us is that the "noise" samples jump in power-of-2 increments. This phenomenon is known as "bit-flips" in the digital data streaming from the ADC, on its way to the FPGA.
The green horizontal line corresponds with the ADC code of 256, and the red corresponds to 128. These indicate that there is one bit in the ADC data that is being flipped.
This indicates that there is a problem with the timing closure between the FlexRIO and the FAM. This is not a typical failure, and may require the FAM to be repaired.