What’s New in the SHFQA User Manual
Release 23.06
Release date: 30-Jun-2023
-
Device
-
Feature: Added option to load factory defaults in Device Tab.
-
-
In/Out
-
Feature: Added switchable signal path, RF (0.5 - 8.5 GHz) path and LF (DC - 800 MHz) path. Added nodes for switching between RF and LF paths of the QA channel input and output, respectively, as
/DEV…/QACHANNELS/n/INPUT/RFLFPATH
(default is 1, RF path) and/DEV…/QACHANNELS/n/OUTPUT/RFLFPATH
(default is 1, RF path). Furthermore, the node/DEV…/QACHANNELS/n/OUTPUT/RFLFINTERLOCK
(default is 0, output RF/LF path is configured independently) allows to enable an interlock , where the RF/LF path setting of the output is always configured according to the one of the input. -
Bugfix: Fixed a bug where an over-range condition for the input and output channels was reported during ADC calibration (during startup).
-
-
QA Setup
-
Bugfix: Fixed a bug where the spectroscopy delay node
/DEV…/QACHANNELS/n/SPECTROSCOPY/DELAY
didn’t accept 0 ns after it was set to 4 ns.
-
-
Generator
-
Feature: Added an optional synchronization check which ensures that all participants have reported their readiness before a program or internal triggers are executed.
-
Bugfix: Fixed a bug in the sequencer, where playZero commands got skipped when multiple successive playZero commands were used with large sample counts (e.g. 131056).
-
Release 23.02
Release date: 28-Feb-2023
-
In/Out
-
Node: Added node
/DEV…/QACHANNELS/n/INPUT/ADCOVERRANGECOUNT
, allowing to separately monitor ADC overrange conditions. -
Bugfix: Fixed a bug causing overrange conditions during the ADC calibration at startup.
-
-
QA Setup
-
Feature: Added power-spectral-density (PSD) measurement capability to the spectroscopy mode. The PSD measurement gets controlled via the node tree branch
/DEV…/QACHANNELS/n/SPECTROSCOPY/PSD
. -
API: Added a zhinst-toolkit example for PSD measurement in GitHub.
-
API: Added a parameter "wait_after_integration" in zhinst-utils ShfSweeper class, see Table 1 in the tutorial Continuous Resonator Spectroscopy.
-
API: Changed the default integration delay in zhinst-utils ShfSweeper class from 0 ns to 224 ns, see Table 1 in the tutorial Continuous Resonator Spectroscopy.
-
-
DIO
-
Feature: Added the internal trigger unit, which allows to generate a number of triggers with configurable hold-off time. The configuration is done via the nodes under
/DEV…/SYSTEM/INTERNALTRIGGER/
branch or the DIO tab in the GUI. The "Internal Trigger" can be selected as trigger source of the Scope, QA Readout Pulse Generator, and for Spectroscopy mode. -
Bugfix: Fixed a bug causing broken DIO interface when switching between LVCMOS and LVDS outputs.
-
-
Scope: Fixed a bug causing a wrong effective scope trigger delay at startup.
Release 22.08
Release date: 31-Aug-2022
-
In/Out
-
LabOne GUI: Fixed a bug, where the error "The sigin ADC reported unexpected dataconverter errors!" was issued during an over range condition at the QA channel inputs.
-
LabOne GUI: Added overload status display of the Input signal from the front panel and the Output signal before DAC.
-
-
QA Setup: Added support for real-time multistate discrimination, accessible through the new node branch:
/DEV…/QACHANNELS/n/READOUT/MULTISTATE/
. The feature allows to discriminate the states of up to 16 qubits, 8 qutrits or 5 ququads or of any combination of these in real-time through the command startQA in the sequencer. -
QA Result: Improved the maximal repetition rate, with which the QA readout can be started without missing triggers to 1/(440 ns).
-
DIO: Changed keyword arguments of node
/DEV…/DIOS/0/MODE
to enable control of DIO values by the sequencer fromchanNseq
orchannelN_sequencer
toqachanNseq
orqachannelN_sequencer
. -
Generator
-
LabOne GUI: Added Waveform Viewer sub-tab to display waveforms of readout and integration weights or spectroscopy envelope.
-
LabOne GUI: Removed one trigger selection
Sequencer n Trigger Out
from the Trigger sub-tab of Sequencer n. -
Node: Node
/DEV…/QACHANNELS/n/GENERATOR/ELF/DATA
accepts raw data as 8-, 16-, and 64-bit integer vectors in addition to 32-bit words.
-
-
User Manual: Changed the LabOne API used in the Tutorial Session from Zurich Instruments Python to Zurich Instruments Toolkit.
Release 22.02
Release date: 28-Feb-2022
-
In/Out: Added 2 recommendations to the user manual, warm up the instrument with inputs and outputs are both enabled for 2 hours, and do not change center frequency or input range while running the Python API ShfSweeper class.
-
QA Setup:
-
LabOne GUI: Fixed a bug such that readout waveforms and integration weights can always be uploaded after clearing all memory slots even when there is no change. (patch release)
-
LabOne GUI: Fixed a bug such that readout waveform and integration weights are parametrically generated based on sampling rate of 2.0 GSa/s instead of 1.8 GSa/s. (patch release)
-
LabOne GUI: Added CSV envelope waveform upload feature in Pulse Spectroscopy mode.
-
LabOne GUI: Added new phase parameters for Parametric generation of readout and integration weight waveforms in Readout mode.
-
LabOne GUI: Added waveform vectors clearing feature in Readout mode.
-
Node tree: Added new node
/DEV…/QACHANNELS/n/READOUT/INTEGRATION/CLEARWEIGHT
to clear all uploaded integration weight vectors.
-
-
QA Result:
-
LabOne GUI and API: Changed result vector of integration unit which was not triggered to "NaN" (Not a Number).
-
LabOne GUI and API: Fixed a bug such that the instrument can run continuously even result length of all channels are set to the maximum value. (patch release)
-
-
Scope:
-
LabOne GUI: Added Scope tab.
-
LabOne GUI and API: Added continuous mode. Scope gets automatically re-enabled after each acquired scope shot. The node
/DEV…/SCOPES/0/SINGLE
is used to switch between continuous mode (0, default) and single-shot (1). In addition, if/DEV…/SCOPES/0/TRIGGER/ENABLE
is set to 0 (default), the scope gets automatically re-triggered. -
LabOne API: Fixed the issue that samples were always scaled by the number of averages, even when the averaging was switched off.
-
-
DIO: LabOne GUI: Added Trigger and Marker sub-tabs.
-
Generator:
-
LabOne GUI: Added User Register.
-
LabOne GUI: Enabled Generator Sequencer Status display.
-
SeqC: Added commands resetOscPhase(), setUserReg(), getUserReg() configFreqSweep() and setSweepStep(). to the Sequencer.
-
SeqC: Enabled triggering of all individual integration units and its combination using the bit mask, for example by combining two constants "QA_INT_0 | QA_INT_1" using the bit-wise OR operator "|".
-
Node tree: Added new node
/DEV…/QACHANNELS/n/GENERATOR/CLEARWAVE
to clear all uploaded readout waveform vectors. -
Corrected rounding of uploaded waveform samples. This will make a change of the signal output by 1 least-significant bit, corresponding to a fraction \(2^{-17}\) of the full scale amplitude.
-
-
ShfSweeper Python class: LabOne API: Updated the ShfSweeper Python class in zhinst.utils.shf_sweeper to use the fast sequencer-based sweep by default. Users can set the use_sequencer attribute in the SweepConfig to False to return to the previous host-based approach.
Release 21.08
Release date: 27-Aug-2021
-
Sweeper: Added a feature to realize pulsed spectroscopy.
-
DIO: Enabled full DIO support. Added new node
/DEV…/DIOS/0/MODE
to select mode, and introduced the following SeqC commands: setDIO(), getDIO(), waitDIOTrigger(), and getDIOTriggered(). -
Sequencer: Modified the behaviour of the startQA() SeqC command: The "trigger" argument now controls the trigger signal instead of the marker output.
-
Firmware Update: Firmware can now be updated via USB.
-
User Manual: Added tutorials for spectroscopy and qubit readout measurement.
-
LabOne GUI: Added Readout Pulse Generator Sequencer tab.
-
LabOne GUI: Added Quantum Analyzer Result Logger tab.
-
LabOne API: Moved Python API examples to GitHub, https://github.com/zhinst/labone-api-examples.
-
LabOne API: Added EnvelopeConfig in zhinst.utils.shf_sweeper for configuring the envelope for pulsed spectroscopy.
-
LabOne API: Renamed pointwise to sequential, sweepwise to cyclic, dwell_time to integration_time and num_samples to num_averages in zhinst.utils.shf_sweeper.
-
Added new nodes to select either "cyclic" or "sequential" averaging of results:
/DEV…/QACHANNELS/n/READOUT/RESULT/MODE
and/DEV…/QACHANNELS/n/SPECTROSCOPY/RESULT/MODE
. -
LabOne API: Added a new node
/DEV…/SCOPES/0/SINGLE
to switch between single-shot and continuous mode, only single-shot is available in this release (patch release). -
LabOne API: Added new nodes
/DEV…/QACHANNELS/n/SPECTROSCOPY/ENVELOPE/
branch to enable multiplication of the oscillator signal with a complex envelope for pulsed spectroscopy. -
LabOne API: Renamed
/DEV…/QACHANNELS/n/READOUT/RESULT/
branch to/DEV…/QACHANNELS/n/SPECTROSCOPY/RESULT/
-
LabOne API: Renamed
/DEV…/RAW/QACHANNELS/n/SPECTROSCOPY/TRIGGER/CHANNEL
to
/DEV…/QACHANNELS/n/SPECTROSCOPY/TRIGGER/CHANNEL
. -
LabOne API: Renamed
/DEV…/SYSTEM/SWTRIGGER/
branch to
/DEV…/SYSTEM/SWTRIGGERS/
-
LabOne API: Removed SEQUENCER/ from
/DEV…/QACHANNELS/n/GENERATOR/SEQUENCER/{AUXTRIGGERS/, DIO/, ELF/, ENABLE, SINGLE, READY, RESET}
. -
LabOne API: Removed the node
/DEV…/QACHANNELS/n/READOUT/RESULT/RESET
. Instead, a running measurement can now be stopped by writing 0 to the node/DEV…/QACHANNELS/n/READOUT/RESULT/ENABLE
.