silq.instrument_interfaces.Tektronix package

Submodules

silq.instrument_interfaces.Tektronix.AWG520_interface module

class silq.instrument_interfaces.Tektronix.AWG520_interface.AWG520Interface(instrument_name, **kwargs)[source]

Bases: silq.instrument_interfaces.interface.InstrumentInterface

Notes

  • Sets first point of each waveform to final voltage of previous waveform because this is the value used when the previous waveform ended and is waiting for triggers.

  • Amplitude significantly decreases above 400 MHz at 1 GHz sampling.

  • The interface receives a trigger at the end of the sequence, ignoring any final_delay. This means that the pulse sequence will already have restarted during any final delay, which may cause issues.

Todo

Check if only channel 2 can be programmed Add marker channels

get_additional_pulses(**kwargs)[source]

Additional pulses needed by instrument after targeting of main pulses

Parameters

connections – List of all connections in the layout

Returns

List of additional pulses, empty by default.

max_waveforms = 200
setup(**kwargs)[source]

Set up instrument after layout has been targeted by pulse sequence.

Needs to be implemented in subclass.

Parameters
  • samples – Number of acquisition samples. If None, it will use the previously set value.

  • input_connections – Input Connection list of instrument, needed by some interfaces to setup the instrument.

  • output_connections – Output Connection list of instrument, needed by some interfaces to setup the instrument.

  • repeat – Repeat the pulse sequence indefinitely. If False, calling Layout.start() will only run the pulse sequence once.

  • **kwargs – Additional interface-specific kwarg.

Returns

setup flags (see Layout.flags)

start()[source]

Start instrument

Note

Acquisition instruments usually don’t need to be started

stop()[source]

Stop instrument

class silq.instrument_interfaces.Tektronix.AWG520_interface.DCPulseImplementation(pulse_requirements=[])[source]

Bases: silq.pulses.pulse_modules.PulseImplementation

implement(t_list, **kwargs)[source]

Implements the DC pulses for the AWG520

Parameters
  • first_point_voltage – Voltage to set first point of waveform to. When the previous waveform ends, the voltage is set to the first point of the next voltage.

  • sampling_rate – AWG sampling rate

  • final_delay – Final part of waveform to skip. If this does not exist, the waveform may not have finished when next trigger arrives, in which case the trigger is ignored.

Return type

ndarray

Returns

waveform

pts = 256
pulse_class

alias of silq.pulses.pulse_types.DCPulse

class silq.instrument_interfaces.Tektronix.AWG520_interface.SinePulseImplementation(pulse_requirements=[])[source]

Bases: silq.pulses.pulse_modules.PulseImplementation

implement(t_list, sampling_rate, **kwargs)[source]

Implements Sine pulses for the AWG520

Parameters
  • first_point_voltage – Voltage to set first point of waveform to. When the previous waveform ends, the voltage is set to the first point of the next voltage.

  • sampling_rate (float) – AWG sampling rate

  • final_delay – Final part of waveform to skip. If this does not exist, the waveform may not have finished when next trigger arrives, in which case the trigger is ignored.

Return type

ndarray

Returns

Waveform array

pts = None
pulse_class

alias of silq.pulses.pulse_types.SinePulse

settings = {}

Module contents