Generator#

class Generator(parent, tk_object, snapshot_cache=None, zi_node=None)[source]#

Bases: ZINode

Generator node.

Implements basic functionality of the generator allowing the user to write and upload their ‘.seqC’ code.

In contrast to other AWG Sequencers, e.g. from the HDAWG, SHFSG it does not provide writing access to the Waveform Memories and hence does not come with predefined waveforms such as gauss or ones. Therefore, all waveforms need to be defined in Python and uploaded to the device using upload_waveforms method.

Parameters:
  • root – Root of the nodetree

  • tree – Tree (node path as tuple) of the current node

  • daq_server – Instance of the ziDAQServer

  • serial – Serial of the device.

  • index – Index of the corresponding awg channel

  • max_qubits_per_channel – Max qubits per channel

Methods

compile_sequencer_program(sequencer_program, ...)

Compiles a sequencer program for the specific device.

configure_sequencer_triggering(*, aux_trigger)

Configure the sequencer triggering.

enable_sequencer(*, single)

Starts the sequencer of a specific channel.

load_sequencer_program(sequencer_program, ...)

Compiles the given sequencer program on the AWG Core.

read_from_waveform_memory([slots])

Read pulses from the waveform memory.

wait_done(*[, timeout, sleep_time])

Wait until the AWG is finished.

write_to_waveform_memory(pulses, *[, ...])

Writes pulses to the waveform memory.

Attributes

available_aux_trigger_inputs

List of available aux trigger sources for the generator.