Skip to content

Python Toolkit API SHFSG

zhinst.toolkit.driver.devices.shfsg.SHFSG(serial, device_type, session)

Bases: BaseInstrument

High-level driver for the Zurich Instruments SHFSG.

sgchannels: t.Sequence[SGChannel] cached property

A Sequence of SG Channels.

Returns:

Type Description
Sequence[SGChannel]

A list of SG Channels or a single SG Channel node.

zhinst.toolkit.driver.devices.shfsg.SGChannel(device, session, tree)

Bases: Node

Signal Generator Channel for the SHFSG.

SGChannel implements basic functionality to configure SGChannel settings of the SHFSG instrument.

Parameters:

Name Type Description Default
device SHFSG

SHFQA device object.

required
session Session

Underlying session.

required
tree tuple[str, ...]

Node tree (node path as tuple) of the corresponding node.

required

awg: AWGCore cached property

AWG.

Returns:

Type Description
AWGCore

AWG node.

awg_modulation_freq: float property

Modulation frequency of the AWG.

Depends on the selected oscillator.

Returns:

Type Description
float

Modulation frequency of the AWG.

configure_channel(*, enable, output_range, center_frequency, rf_path)

Configures the RF input and output.

Parameters:

Name Type Description Default
enable bool

Flag if the signal output should be enabled.

required
output_range int

Maximal range of the signal output power in dBm

required
center_frequency float

Center frequency before modulation

required
rf_path bool

Flag if the RF(True) or LF(False) path should be configured.

required

configure_pulse_modulation(*, enable, osc_index=0, osc_frequency=100000000.0, phase=0.0, global_amp=0.5, gains=(1.0, -1.0, 1.0, 1.0), sine_generator_index=0)

Configure the pulse modulation.

Configures the sine generator to digitally modulate the AWG output, for generating single sideband AWG signals

Parameters:

Name Type Description Default
enable bool

Flag if the modulation should be enabled.

required
osc_index int

Selects which oscillator to use

0
osc_frequency float

Oscillator frequency used to modulate the AWG outputs. (default = 100e6)

100000000.0
phase float

Sets the oscillator phase. (default = 0.0)

0.0
global_amp float

Global scale factor for the AWG outputs. (default = 0.5)

0.5
gains tuple

Sets the four amplitudes used for single sideband generation. Default values correspond to upper sideband with a positive oscillator frequency. (default = (1.0, -1.0, 1.0, 1.0))

(1.0, -1.0, 1.0, 1.0)
sine_generator_index int

Selects which sine generator to use on a given channel.

0

configure_sine_generation(*, enable, osc_index=0, osc_frequency=100000000.0, phase=0.0, gains=(0.0, 1.0, 1.0, 0.0), sine_generator_index=0)

Configures the sine generator output.

Configures the sine generator output of a specified channel for generating continuous wave signals without the AWG.

Parameters:

Name Type Description Default
enable bool

Flag if the sine generator output should be enabled.

required
osc_index int

Selects which oscillator to use

0
osc_frequency float

Oscillator frequency used by the sine generator (default = 100e6)

100000000.0
phase float

Sets the oscillator phase. (default = 0.0)

0.0
gains tuple

Sets the four amplitudes used for single sideband generation. Default values correspond to upper sideband with a positive oscillator frequency. Gains are set in the following order I/sin, I/cos, Q/sin, Q/cos. (default = (0.0, 1.0, 1.0, 0.0))

(0.0, 1.0, 1.0, 0.0)
sine_generator_index int

Selects which sine generator to use on a given channel

0

zhinst.toolkit.driver.devices.shfsg.AWGCore(root, tree, serial, index, device_type, device_options)

Bases: AWG

AWG Core Node.

available_marker_outputs: list[str] property

List the available trigger marker outputs for the sequencer.

Returns:

Type Description
list[str]

List of available marker outputs.

available_trigger_inputs: list[str] property

List the available trigger sources for the sequencer.

Returns:

Type Description
list[str]

List of available trigger sources.

available_trigger_slopes: list[str] property

List the available trigger slopes for the sequencer.

Returns:

Type Description
list[str]

List of available trigger slopes.

configure_marker_and_trigger(*, trigger_in_source, trigger_in_slope, marker_out_source)

Configures the trigger inputs and marker outputs of the AWG.

Parameters:

Name Type Description Default
trigger_in_source str

Alias for the trigger input used by the sequencer. For a list of available values use: available_trigger_inputs

required
trigger_in_slope str

Alias for the slope of the input trigger used by sequencer. For a list of available values use available_trigger_inputs

required
marker_out_source str

Alias for the marker output source used by the sequencer. For a list of available values use available_trigger_slopes

required