Continuously update gen buffer
Posted: Sat Dec 14, 2019 6:09 pm
Hi,
I have a fast arbitrary output signal that is larger than the 16k of the generator buffer.
Using the Python API, I tried to update the buffer while the generator is continuously running. I have the input buffer (osc) synchronized with gen - like in the Jupyter notebook exampes. I am using the osc pointer to see which half of the gen buffer is currently used (=where the pointer is) and write the new signal into the other "unused" half. This seems to work - after tweaking the Python API a bit - but when displaying the output on an ocilloscope, I see once in a while that the signal is shifted for a random number of samples by some offset.
The attached GIF illustrates the issue. The cyan trace should show a normal saw tooth. (Ignore the gaps in the traces, they are caused by the capturing of the oscilloscope)
Any idea what causes this?
What are the limitations in accessing the gen buffer while the generator is running?
Thanks
Thomas
I have a fast arbitrary output signal that is larger than the 16k of the generator buffer.
Using the Python API, I tried to update the buffer while the generator is continuously running. I have the input buffer (osc) synchronized with gen - like in the Jupyter notebook exampes. I am using the osc pointer to see which half of the gen buffer is currently used (=where the pointer is) and write the new signal into the other "unused" half. This seems to work - after tweaking the Python API a bit - but when displaying the output on an ocilloscope, I see once in a while that the signal is shifted for a random number of samples by some offset.
The attached GIF illustrates the issue. The cyan trace should show a normal saw tooth. (Ignore the gaps in the traces, they are caused by the capturing of the oscilloscope)
Any idea what causes this?
What are the limitations in accessing the gen buffer while the generator is running?
Thanks
Thomas