The image below shows a schematic, functional representation of one output channel of Vivace/Presto during
pulsed operation. The same configuration is then repeated independently on each of the 8/16 output channels.
This section provides a summary of how the methods of the
Pulsed class interact with
Each output has 16 slots to store output templates, divided in two groups of 8 templates each. Each template can be
programmed with up to 4088 arbitrary values at
get_fs('dac') sampling rate,
typically equivalent to 1022 ns (2 GS/s when using the outputs in direct mode). The vertical resolution is 16 bits.
Templates can be output directly, or be used as envelopes to modulate the two carrier generators. The first 8 templates
can modulate the first carrier generator (group 0), the last 8 templates can modulate the second carrier generator
(group 1). The method
setup_template is used to program the templates
into one of the groups and to choose whether they should be used as envelopes. The method also takes care of splitting
templates that are too long into shorter, concatenated templates. In the case of long but “flat” signals, the
setup_long_drive can be used to create arbitrarily
long pulses using as little as one template. Another advantage of a
that it can be resized with the
Templates can be output all together, or at different times, with
resolution (typically 2 ns) using the
Each carrier generator has 40 bits frequency and phase resolution, equivalent to 2 mHz and 6 prad, respectively.
They can each be programmed with up to 512 frequencies and phases with the method
setup_freq_lut. During the experiment, the generators can quickly step through the programmed
frequencies and phases with the methods
next_frequency. The change can be made with
get_clk_T resolution (typically 2 ns).
The output of all active pulses in each group is then summed, and there is a dedicated scale stage. The output scaler
has 17 bit resolution and can be programmed with up to 512 values (also negative) with the method
setup_scale_lut. During the experiment the scale can be changed with
get_clk_T resolution (typically 2 ns) with
The output of each group scaler is finally combined and sent to the output digital-to-analog converter (DAC) for further processing.