Support for Alexei's 80MHz Circular Buffer firmware
Make modifications to CMTFInterlocksADC to support Alexei's circular buffer firmware.
#1 Updated by John Diamond over 4 years ago
- % Done changed from 0 to 70
Removed support for the "Number of Triggers" register - this register was deprecated in the new firmware.
Removed support for the "Samples Count" register - this register was also deprecated in the new firmware. The new firmware does not tell you how many samples it digitized during the last trigger - it is safe to assume that it is the same number of samples that you requested.The previous firmware supported a half-dozen operating modes. The new firmware only supports two -
- PULSE - pulse mode digitizes n number of samples and then stops until the user re-arms by calling run()
- CYCLE - cycle mode continuously digitizes n samples. While running a single point for each channel is available and is updated at 720Hz. When a fault signal is present (either externally or via a register) n number of samples are available for read-out.
Updated Z:CIAMOD to enumerate the new operating modes.Created the following devices for plotting the circular buffer data with FTP:
- Z:CIACH0 (digitizer 0, channel 0)
- Z:CIACH1 (digitizer 0, channel 1)
- Z:CIBCH0 (digitizer 1, channel 0)
- Z:CIBCH1 (digitizer 1, channel 1)
Note: while in pulse mode these devices will return an error
Added a command to Z:CIACTL that can be used to freeze (fault) the circular buffer.
Updated Doxygen pages.
Right now the firmware interrupts you every time n samples are digitized while in Cycle mode. Alexei is working on making this interrupt occur in a different vector than the interrupt which occurs after digitizing in Pulse mode.
There is support in the new firmware for reducing the sampling rate from 80MHz. I will be implementing ACNET support for this next...
#2 Updated by John Diamond over 4 years ago
- % Done changed from 70 to 80
Implemented support for controlling the sample rate register. Set CMTFInterlocksADC::sampleRateGet() and ..Set(..) (updated Doxygen as well). Implemented ACNET support for setting the sample rate and created an ACNET device for the test stand - Z:CIASRT.
#4 Updated by John Diamond over 4 years ago
- % Done changed from 80 to 90
Traced a problem with the external trigger to the fact that the "DSP External Sync Enabled" register is set to "Disabled" (0) by default. Added code that enables this whenever the user selects "External" for the sync source mode.