AWG === * Overview_ * Settings_ * Drivers_ Overview -------- An AWG represents the source that generates chirps in the FTMW spectrometer, whether or not the device is truly an Arbitrary Waveform Generator. When enabled, Blackchirp can :doc:`create and configure chirps ` that are stored alongside an experiment. The AWG is optional, but even if you generate chirps with another tool the virtual driver is recommended so that the chirp parameters are recorded with the data. The AWG abstraction is modeled on the Tektronix AWG7122B: one analog output channel plus a configurable number of digital marker outputs. Markers are typically used to drive a low-noise-amplifier protection switch and a TWT amplifier gate, but Blackchirp's marker model is general-purpose and supports additional roles such as digitizer triggers or fully custom signals. AWGs that have no markers can use a :doc:`pulse generator ` to produce analogous signals. Some AWGs have multiple analog outputs; Blackchirp uses only one. Settings -------- The frequency, sample-rate, and triggering settings are exposed in the device dialog with inline labels and tooltips; see the :doc:`hardware dialog ` page for conventions. A few items deserve special mention: * ``markerCount`` (int) reports the number of physical marker outputs that the driver drives. The chirp configuration widget exposes a Markers tab with one row per channel, where each marker is given a name, a role (Protection, Gate, Trigger, or Custom), and a timing window relative to each chirp. See the :doc:`chirp setup ` page for full details on the Markers tab and the safety validation associated with the Protection and Gate roles. * ``rampOnly`` (true/false) is set for direct digital synthesis devices (e.g., the AD9914) that can only emit a single linear ramp per trigger. With ``rampOnly`` enabled, the chirp is constrained to a single non-empty segment. * ``triggered`` (true/false) selects external triggering. When false, supported AWGs play their loaded waveform continuously; not every driver honors the untriggered mode. Sample-rate and ``maxSamples`` defaults are taken from the hardware specification of each device. Lowering them is acceptable for restricting the usable range; raising them past what the hardware supports will produce malformed waveforms or device errors. .. warning:: Setting the sample rate or ``maxSamples`` to values the hardware does not support may lead to incorrect chirps or device errors. Drivers ------- Virtual ....... A "read-only" driver that records the chirp settings in use without driving any AWG hardware. Useful when chirps are generated by another tool, or for exercising the marker UI; ``markerCount`` defaults to 4. Pairing it with a pulse generator that has channels in the Protection and Amplifier-gate roles lets Blackchirp generate analogous protection and gate signals. Tektronix AWG70002A ...................... The `AWG70002A `_ is a 16 GSa/s AWG with a 6.25 GHz maximum output and two marker outputs that map to physical outputs 1 and 2. Communication is over a TCP socket on port 4000 (TekVisa). The driver is hardcoded to be externally triggered with a rising edge on trigger A with the trigger mode set to synchronous to ensure phase coherence (assuming the trigger source is locked to the same external reference as the AWG). The chirp output is on channel 1. When an experiment begins, the chirp data and markers are written to the device, and Blackchirp maintains a list of waveforms that have been sent to the AWG. As long as the AWG has not been reset, reusing a chirp will reload the existing record rather than re-transferring the data. If this behavior causes problems, restart the AWG or delete the offending records to force a reload. Once the upload is complete the outputs are enabled and the device is set to run mode, producing an audible click from the internal relays. At the end of the experiment the outputs are disabled (another click) and the device is placed into standby. .. warning:: Some TekVISA firmware revisions error on transmitting chirp data when the binary stream contains a ``0x1d`` byte. If chirp uploads fail with this signature, switch to Tektronix's "Socket Server Plus" program (port 4001); contact Tektronix for details. Tektronix AWG7122B ............................. The `AWG7122B `_ is a 24 GSa/s AWG with a 12 GHz maximum output and two marker outputs that map to physical outputs 1 and 2. Communication is over a TCP socket on port 4000. It may be externally triggered or play waveforms continuously. When externally triggered, the trigger is a rising edge on trigger A and the device otherwise behaves like the AWG70002A described above; otherwise the AWG is placed into Run mode at the start of the experiment if it is not already running. .. note:: At the end of the experiment the AWG7122B will be left in Run mode if it is **not** externally triggered. One of the marker signals is typically used to trigger gas pulses, etc., and the outputs are left running so as not to interfere with any PID loops. Tektronix AWG5204 ........................... The Tektronix AWG5204 is a 10 GSa/s AWG with a 2.5 GHz bandwidth. The chirp output is hardcoded to channel 1 and all four marker outputs are exposed through the marker system. Because the AWG5204 has no dedicated digitizer-trigger output, the digitizer trigger is produced by assigning one of the four marker channels the Trigger role in the Markers tab of the :doc:`chirp setup ` page; a 0.1 µs lead time relative to the chirp is the typical setting for that trigger. Any of the channels can equally well be repurposed for other timing tasks. Analog Devices AD9914 .............................. The `AD9914 `_ is a direct digital synthesis chip that generates waveforms based on samples from an external clock. According to specs, the maximum external clock frequency is something like 3 GHz (but it seems to work still even at 4 GHz), and the maximum output frequency is half of the clock frequency. The AD9914 contains a built-in ramp generator that can be used to generate linear chirps. ``markerCount`` is zero; protection and gate signals must come from a pulse generator. .. warning:: Support for this device is experimental. Control goes through an Arduino driving the AD9914's parallel interface on a modified evaluation board, and several register combinations behave inconsistently with the AD9914 documentation. Prefer any other supported AWG when possible. Keysight M8195A ........................ The `M8195A `_ is a 4-channel 65 GSa/s AWG with a maximum frequency of 25 GHz. It exposes two marker outputs that map to physical outputs 1 and 2. The driver is hardcoded to lock to an external 10 MHz reference, and its chirp is output on channel 1. It may be optionally externally triggered by a rising edge on the trigger input. Unlike the AWG7122B, the outputs are disabled at the end of the experiment whether or not the device is triggered. .. warning:: There have been reports of errors when Blackchirp writes waveform data to the device, but there has not been enough information to debug the issue. Keysight M8190 ...................... The `M8190 `_ is a 1- or 2-channel 12 GSa/s AWG with a maximum frequency of 55 GHz. The driver is hardcoded to a 12-bit output on channel 1 at 9.375 GSa/s with markers unused.