{ "cells": [ { "cell_type": "markdown", "id": "99c0dd55", "metadata": {}, "source": [ "Continuous waveform mode\n", "========================\n", "In this tutorial, we will showcase continuous waveform mode (see [Continuous waveform mode](https://qblox-qblox-instruments.readthedocs-hosted.com/en/main/cluster/q1_sequence_processor.html#continuous-waveform-mode)) by observing the output on an oscilloscope to illustrate the results.\n", "\n", "This tutorial is meant for a Cluster QCM, but can be applied also to a QRM module with the opportune modifications." ] }, { "cell_type": "markdown", "id": "5bd7a924", "metadata": {}, "source": [ "Setup\n", "-----\n", "\n", "First, we are going to import the required packages." ] }, { "cell_type": "code", "execution_count": 1, "id": "dc1c35bc", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:05.398551Z", "iopub.status.busy": "2024-10-17T13:13:05.398359Z", "iopub.status.idle": "2024-10-17T13:13:06.266705Z", "shell.execute_reply": "2024-10-17T13:13:06.265714Z" } }, "outputs": [], "source": [ "from __future__ import annotations\n", "\n", "import json\n", "import math\n", "from typing import TYPE_CHECKING, Callable\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import scipy.signal\n", "from qcodes.instrument import find_or_create_instrument\n", "\n", "from qblox_instruments import Cluster, ClusterType\n", "\n", "if TYPE_CHECKING:\n", " from qblox_instruments.qcodes_drivers.module import Module" ] }, { "cell_type": "markdown", "id": "6eb92bf3", "metadata": {}, "source": [ "### Scan For Clusters\n", "\n", "We scan for the available devices connected via ethernet using the Plug & Play functionality of the Qblox Instruments package (see [Plug & Play](https://qblox-qblox-instruments.readthedocs-hosted.com/en/main/api_reference/tools.html#api-pnp) for more info)." ] }, { "cell_type": "markdown", "id": "69eb8f40", "metadata": {}, "source": [ "`!qblox-pnp list`" ] }, { "cell_type": "code", "execution_count": 2, "id": "9abe9766", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:06.269854Z", "iopub.status.busy": "2024-10-17T13:13:06.269569Z", "iopub.status.idle": "2024-10-17T13:13:06.273705Z", "shell.execute_reply": "2024-10-17T13:13:06.272923Z" } }, "outputs": [], "source": [ "cluster_ip = \"10.10.200.42\"\n", "cluster_name = \"cluster0\"" ] }, { "cell_type": "markdown", "id": "347e1ea2", "metadata": {}, "source": [ "### Connect to Cluster\n", "\n", "We now make a connection with the Cluster." ] }, { "cell_type": "code", "execution_count": 3, "id": "e4392b4d", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:06.276088Z", "iopub.status.busy": "2024-10-17T13:13:06.275823Z", "iopub.status.idle": "2024-10-17T13:13:07.074255Z", "shell.execute_reply": "2024-10-17T13:13:07.073380Z" }, "lines_to_next_cell": 2 }, "outputs": [], "source": [ "cluster = find_or_create_instrument(\n", " Cluster,\n", " recreate=True,\n", " name=cluster_name,\n", " identifier=cluster_ip,\n", " dummy_cfg=(\n", " {\n", " 2: ClusterType.CLUSTER_QCM,\n", " 4: ClusterType.CLUSTER_QRM,\n", " 6: ClusterType.CLUSTER_QCM_RF,\n", " 8: ClusterType.CLUSTER_QRM_RF,\n", " }\n", " if cluster_ip is None\n", " else None\n", " ),\n", ")" ] }, { "cell_type": "markdown", "id": "74ef1df4", "metadata": { "lines_to_next_cell": 2 }, "source": [ "#### Get connected modules" ] }, { "cell_type": "code", "execution_count": 4, "id": "4f068054", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:07.076709Z", "iopub.status.busy": "2024-10-17T13:13:07.076491Z", "iopub.status.idle": "2024-10-17T13:13:07.081081Z", "shell.execute_reply": "2024-10-17T13:13:07.080289Z" } }, "outputs": [], "source": [ "def get_connected_modules(cluster: Cluster, filter_fn: Callable | None = None) -> dict[int, Module]:\n", " def checked_filter_fn(mod: ClusterType) -> bool:\n", " if filter_fn is not None:\n", " return filter_fn(mod)\n", " return True\n", "\n", " return {\n", " mod.slot_idx: mod for mod in cluster.modules if mod.present() and checked_filter_fn(mod)\n", " }" ] }, { "cell_type": "code", "execution_count": 5, "id": "e2bf049a", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:07.083799Z", "iopub.status.busy": "2024-10-17T13:13:07.083138Z", "iopub.status.idle": "2024-10-17T13:13:07.109805Z", "shell.execute_reply": "2024-10-17T13:13:07.108864Z" } }, "outputs": [ { "data": { "text/plain": [ "{2: ,\n", " 4: ,\n", " 17: }" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# QCM or QRM baseband modules\n", "modules = get_connected_modules(cluster, lambda mod: not mod.is_rf_type)\n", "modules" ] }, { "cell_type": "code", "execution_count": 6, "id": "24826161", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:07.112073Z", "iopub.status.busy": "2024-10-17T13:13:07.111767Z", "iopub.status.idle": "2024-10-17T13:13:07.115543Z", "shell.execute_reply": "2024-10-17T13:13:07.114688Z" } }, "outputs": [], "source": [ "module = modules[4]" ] }, { "cell_type": "markdown", "id": "5fb4cb7f", "metadata": {}, "source": [ "### Reset the Cluster\n", "\n", "We reset the Cluster to enter a well-defined state. Note that resetting will clear all stored parameters, so resetting between experiments is usually not desirable." ] }, { "cell_type": "code", "execution_count": 7, "id": "cf147367", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:07.117803Z", "iopub.status.busy": "2024-10-17T13:13:07.117501Z", "iopub.status.idle": "2024-10-17T13:13:09.564029Z", "shell.execute_reply": "2024-10-17T13:13:09.562162Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, Flags: NONE, Slot flags: NONE\n" ] } ], "source": [ "cluster.reset()\n", "print(cluster.get_system_status())" ] }, { "cell_type": "markdown", "id": "d6956249", "metadata": { "tags": [] }, "source": [ "Generate waveforms\n", "------------------\n", "\n", "Next, we are going to generate a couple of waveforms that we are going to upload to the instrument in the next step." ] }, { "cell_type": "code", "execution_count": 8, "id": "c24330f7", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:09.568557Z", "iopub.status.busy": "2024-10-17T13:13:09.568135Z", "iopub.status.idle": "2024-10-17T13:13:09.576799Z", "shell.execute_reply": "2024-10-17T13:13:09.575977Z" } }, "outputs": [], "source": [ "# Waveform parameters\n", "waveform_length = 120 # nanoseconds (needs to be a minimum of 4 ns)\n", "\n", "# Waveform dictionary (data will hold the samples and index will be used to select the waveforms in the instrument).\n", "waveforms = {\n", " \"gaussian\": {\n", " \"data\": scipy.signal.windows.gaussian(waveform_length, std=0.12 * waveform_length).tolist(),\n", " \"index\": 0,\n", " },\n", " \"sine\": {\n", " \"data\": [math.sin((2 * math.pi / waveform_length) * i) for i in range(0, waveform_length)],\n", " \"index\": 1,\n", " },\n", " \"sawtooth\": {\n", " \"data\": [(1.0 / (waveform_length)) * i for i in range(0, waveform_length)],\n", " \"index\": 2,\n", " },\n", " \"block\": {\"data\": [1.0 for i in range(0, waveform_length)], \"index\": 3},\n", "}" ] }, { "cell_type": "markdown", "id": "10f62905", "metadata": {}, "source": [ "Let's plot the waveforms to see what we have created." ] }, { "cell_type": "code", "execution_count": 9, "id": "c0ba7e4b", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:09.579144Z", "iopub.status.busy": "2024-10-17T13:13:09.578905Z", "iopub.status.idle": "2024-10-17T13:13:09.799640Z", "shell.execute_reply": "2024-10-17T13:13:09.798696Z" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "time = np.arange(0, max([len(d[\"data\"]) for d in waveforms.values()]), 1)\n", "fig, ax = plt.subplots(1, 1)\n", "\n", "for wf, d in waveforms.items():\n", " ax.plot(time[: len(d[\"data\"])], d[\"data\"], label=wf)\n", "\n", "ax.legend()\n", "ax.grid(alpha=1 / 10)\n", "ax.set_ylabel(\"Waveform primitive amplitude\")\n", "ax.set_xlabel(\"Time (ns)\")\n", "\n", "plt.draw()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "0feaa01e", "metadata": {}, "source": [ "Upload waveforms\n", "----------------\n", "\n", "Now that we know that the waveforms are what we expect them to be, let's upload them to the instrument.\n", "To do this we need to store the waveforms in a JSON file together with a Q1ASM program for the sequence\n", "processor. Since we are going to use continuous waveform mode, the sequence processor will be bypassed\n", "and the Q1ASM program can be trivial (i.e. `stop`)." ] }, { "cell_type": "code", "execution_count": 10, "id": "470844a3", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:09.802144Z", "iopub.status.busy": "2024-10-17T13:13:09.801875Z", "iopub.status.idle": "2024-10-17T13:13:09.835210Z", "shell.execute_reply": "2024-10-17T13:13:09.834263Z" } }, "outputs": [], "source": [ "# Sequence program.\n", "seq_prog = \"stop\"\n", "\n", "# Check waveform length.\n", "for name in waveforms:\n", " assert (\n", " len(waveforms[name][\"data\"]) % 4\n", " ) == 0, \"In continuous waveform mode the length of a waveform must be a multiple of 4!\"\n", "\n", "# Add sequence program and waveforms to single dictionary and write to JSON file.\n", "sequence = {\n", " \"waveforms\": waveforms,\n", " \"weights\": {},\n", " \"acquisitions\": {},\n", " \"program\": seq_prog,\n", "}\n", "with open(\"cont_wave_mode_sequence.json\", \"w\", encoding=\"utf-8\") as file:\n", " json.dump(sequence, file, indent=4)\n", " file.close()" ] }, { "cell_type": "markdown", "id": "f0e3ac5b", "metadata": {}, "source": [ "Let's write the JSON file to the instruments. We will use sequencer 0 and 1, which will drive outputs $\\text{O}^{[1-2]}$ and $\\text{O}^{[3-4]}$ respectively." ] }, { "cell_type": "code", "execution_count": 11, "id": "47ab2d81", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:09.837528Z", "iopub.status.busy": "2024-10-17T13:13:09.837339Z", "iopub.status.idle": "2024-10-17T13:13:09.942172Z", "shell.execute_reply": "2024-10-17T13:13:09.938278Z" } }, "outputs": [], "source": [ "# Upload sequence.\n", "module.sequencer0.sequence(\"cont_wave_mode_sequence.json\")\n", "module.sequencer1.sequence(\"cont_wave_mode_sequence.json\")" ] }, { "cell_type": "markdown", "id": "61a5224e", "metadata": {}, "source": [ "Play waveforms\n", "--------------\n", "\n", "The waveforms have been uploaded to the instrument. Now we need to configure the instrument to run in continuous waveform mode. We\n", "do this by setting the following parameters of the sequencers." ] }, { "cell_type": "code", "execution_count": 12, "id": "4ab78a1a", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:09.952448Z", "iopub.status.busy": "2024-10-17T13:13:09.951490Z", "iopub.status.idle": "2024-10-17T13:13:10.100483Z", "shell.execute_reply": "2024-10-17T13:13:10.096275Z" } }, "outputs": [], "source": [ "# Configure the sequencers to run in continuous waveform mode.\n", "for sequencer in [module.sequencer0, module.sequencer1]:\n", " sequencer.cont_mode_en_awg_path0(True)\n", " sequencer.cont_mode_en_awg_path1(True)\n", "\n", "# Map sequencers to specific outputs (but first disable all sequencer connections).\n", "module.disconnect_outputs()\n", "\n", "# If it is a QRM, we only map sequencer 0 to the outputs.\n", "module.sequencer0.connect_sequencer(\"out0_1\")\n", "if module.is_qcm_type:\n", " module.sequencer1.connect_sequencer(\"out2_3\")\n", "\n", "# Set specific waveform to specific output.\n", "module.sequencer0.cont_mode_waveform_idx_awg_path0(0) # Gaussian on O1\n", "module.sequencer0.cont_mode_waveform_idx_awg_path1(1) # Sine on O2\n", "module.sequencer1.cont_mode_waveform_idx_awg_path0(2) # Sawtooth on 03\n", "module.sequencer1.cont_mode_waveform_idx_awg_path1(3) # DC on O4" ] }, { "cell_type": "markdown", "id": "f771b713", "metadata": {}, "source": [ "Now let's start playback." ] }, { "cell_type": "code", "execution_count": 13, "id": "e3b87772", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:10.110392Z", "iopub.status.busy": "2024-10-17T13:13:10.109494Z", "iopub.status.idle": "2024-10-17T13:13:10.144860Z", "shell.execute_reply": "2024-10-17T13:13:10.141208Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, State: STOPPED, Info Flags: NONE, Warning Flags: NONE, Error Flags: NONE, Log: []\n", "Status: OKAY, State: STOPPED, Info Flags: NONE, Warning Flags: NONE, Error Flags: NONE, Log: []\n" ] } ], "source": [ "# Arm and start both sequencers.\n", "module.arm_sequencer(0)\n", "module.arm_sequencer(1)\n", "module.start_sequencer()\n", "\n", "# Print status of both sequencers (should now say Q1 stopped, because of the stop instruction).\n", "print(module.get_sequencer_status(0))\n", "print(module.get_sequencer_status(1))" ] }, { "cell_type": "markdown", "id": "8bbeba72", "metadata": {}, "source": [ "Check waveforms\n", "---------------\n", "\n", "The instrument is now running in continuous waveform mode. Now let's connect an oscilloscope and check the outputs.\n", "We connect all output channels of the QXM to two/four channels of an oscilloscope.\n", "On the scope we are able to see that all waveforms are being generated correctly:\n", "\n", "[![continuous waveform mode scope image](cont_waveform_scope.png)](cont_waveform_scope.png)\n", "\n", "Outputs: Yellow=$\\text{O}^{1}$, Blue=$\\text{O}^{2}$, Purple=$\\text{O}^{3}$ and Green=$\\text{O}^{4}$" ] }, { "cell_type": "markdown", "id": "be288faf", "metadata": {}, "source": [ "Stop\n", "----\n", "\n", "Finally, let's stop the sequencers if they haven't already and close the instrument connection. One can also display a detailed snapshot containing the instrument parameters before\n", "closing the connection by uncommenting the corresponding lines." ] }, { "cell_type": "code", "execution_count": 14, "id": "05c302f1", "metadata": { "execution": { "iopub.execute_input": "2024-10-17T13:13:10.152858Z", "iopub.status.busy": "2024-10-17T13:13:10.152214Z", "iopub.status.idle": "2024-10-17T13:13:17.766461Z", "shell.execute_reply": "2024-10-17T13:13:17.765527Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, State: STOPPED, Info Flags: FORCED_STOP, Warning Flags: NONE, Error Flags: NONE, Log: []\n", "Snapshot:\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "in0_gain :\t-6 (dB)\n", "in0_offset :\t0 (V)\n", "in1_gain :\t-6 (dB)\n", "in1_offset :\t0 (V)\n", "marker0_exp0_config :\tbypassed \n", "marker0_exp1_config :\tbypassed \n", "marker0_exp2_config :\tbypassed \n", "marker0_exp3_config :\tbypassed \n", "marker0_fir_config :\tbypassed \n", "marker0_inv_en :\tFalse \n", "marker1_exp0_config :\tbypassed \n", "marker1_exp1_config :\tbypassed \n", "marker1_exp2_config :\tbypassed \n", "marker1_exp3_config :\tbypassed \n", "marker1_fir_config :\tbypassed \n", "marker1_inv_en :\tFalse \n", "marker2_exp0_config :\tbypassed \n", "marker2_exp1_config :\tbypassed \n", "marker2_exp2_config :\tbypassed \n", "marker2_exp3_config :\tbypassed \n", "marker2_fir_config :\tbypassed \n", "marker2_inv_en :\tFalse \n", "marker3_exp0_config :\tbypassed \n", "marker3_exp1_config :\tbypassed \n", "marker3_exp2_config :\tbypassed \n", "marker3_exp3_config :\tbypassed \n", "marker3_fir_config :\tbypassed \n", "marker3_inv_en :\tFalse \n", "out0_exp0_config :\tbypassed \n", "out0_exp1_config :\tbypassed \n", "out0_exp2_config :\tbypassed \n", "out0_exp3_config :\tbypassed \n", "out0_fir_config :\tbypassed \n", "out0_latency :\t0 (s)\n", "out0_offset :\t0 (V)\n", "out1_exp0_config :\tbypassed \n", "out1_exp1_config :\tbypassed \n", "out1_exp2_config :\tbypassed \n", "out1_exp3_config :\tbypassed \n", "out1_fir_config :\tbypassed \n", "out1_latency :\t0 (s)\n", "out1_offset :\t0 (V)\n", "present :\tTrue \n", "scope_acq_avg_mode_en_path0 :\tFalse \n", "scope_acq_avg_mode_en_path1 :\tFalse \n", "scope_acq_sequencer_select :\t0 \n", "scope_acq_trigger_level_path0 :\t0 \n", "scope_acq_trigger_level_path1 :\t0 \n", "scope_acq_trigger_mode_path0 :\tsequencer \n", "scope_acq_trigger_mode_path1 :\tsequencer \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer0:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\tin0 \n", "connect_acq_Q :\tin1 \n", "connect_out0 :\tI \n", "connect_out1 :\tQ \n", "cont_mode_en_awg_path0 :\tTrue \n", "cont_mode_en_awg_path1 :\tTrue \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t1 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer1:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\tin0 \n", "connect_acq_Q :\tin1 \n", "connect_out0 :\toff \n", "connect_out1 :\toff \n", "cont_mode_en_awg_path0 :\tTrue \n", "cont_mode_en_awg_path1 :\tTrue \n", "cont_mode_waveform_idx_awg_path0 :\t2 \n", "cont_mode_waveform_idx_awg_path1 :\t3 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer2:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\tin0 \n", "connect_acq_Q :\tin1 \n", "connect_out0 :\toff \n", "connect_out1 :\toff \n", "cont_mode_en_awg_path0 :\tFalse \n", "cont_mode_en_awg_path1 :\tFalse \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t0 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer3:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\tin0 \n", "connect_acq_Q :\tin1 \n", "connect_out0 :\toff \n", "connect_out1 :\toff \n", "cont_mode_en_awg_path0 :\tFalse \n", "cont_mode_en_awg_path1 :\tFalse \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t0 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer4:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\tin0 \n", "connect_acq_Q :\tin1 \n", "connect_out0 :\toff \n", "connect_out1 :\toff \n", "cont_mode_en_awg_path0 :\tFalse \n", "cont_mode_en_awg_path1 :\tFalse \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t0 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "cluster0_module4_sequencer5:\n", "\tparameter value\n", "--------------------------------------------------------------------------------\n", "connect_acq_I :\tin0 \n", "connect_acq_Q :\tin1 \n", "connect_out0 :\toff \n", "connect_out1 :\toff \n", "cont_mode_en_awg_path0 :\tFalse \n", "cont_mode_en_awg_path1 :\tFalse \n", "cont_mode_waveform_idx_awg_path0 :\t0 \n", "cont_mode_waveform_idx_awg_path1 :\t0 \n", "demod_en_acq :\tFalse \n", "gain_awg_path0 :\t1 \n", "gain_awg_path1 :\t1 \n", "integration_length_acq :\t1024 \n", "marker_ovr_en :\tFalse \n", "marker_ovr_value :\t0 \n", "mixer_corr_gain_ratio :\t1 \n", "mixer_corr_phase_offset_degree :\t-0 \n", "mod_en_awg :\tFalse \n", "nco_freq :\t0 (Hz)\n", "nco_freq_cal_type_default :\toff (Hz)\n", "nco_phase_offs :\t0 (Degrees)\n", "nco_prop_delay_comp :\t0 (ns)\n", "nco_prop_delay_comp_en :\tFalse (ns)\n", "offset_awg_path0 :\t0 \n", "offset_awg_path1 :\t0 \n", "sync_en :\tFalse \n", "thresholded_acq_marker_address :\t1 \n", "thresholded_acq_marker_en :\tFalse \n", "thresholded_acq_marker_invert :\tFalse \n", "thresholded_acq_rotation :\t0 (Degrees)\n", "thresholded_acq_threshold :\t0 \n", "thresholded_acq_trigger_address :\t1 \n", "thresholded_acq_trigger_en :\tFalse \n", "thresholded_acq_trigger_invert :\tFalse \n", "trigger10_count_threshold :\t1 \n", "trigger10_threshold_invert :\tFalse \n", "trigger11_count_threshold :\t1 \n", "trigger11_threshold_invert :\tFalse \n", "trigger12_count_threshold :\t1 \n", "trigger12_threshold_invert :\tFalse \n", "trigger13_count_threshold :\t1 \n", "trigger13_threshold_invert :\tFalse \n", "trigger14_count_threshold :\t1 \n", "trigger14_threshold_invert :\tFalse \n", "trigger15_count_threshold :\t1 \n", "trigger15_threshold_invert :\tFalse \n", "trigger1_count_threshold :\t1 \n", "trigger1_threshold_invert :\tFalse \n", "trigger2_count_threshold :\t1 \n", "trigger2_threshold_invert :\tFalse \n", "trigger3_count_threshold :\t1 \n", "trigger3_threshold_invert :\tFalse \n", "trigger4_count_threshold :\t1 \n", "trigger4_threshold_invert :\tFalse \n", "trigger5_count_threshold :\t1 \n", "trigger5_threshold_invert :\tFalse \n", "trigger6_count_threshold :\t1 \n", "trigger6_threshold_invert :\tFalse \n", "trigger7_count_threshold :\t1 \n", "trigger7_threshold_invert :\tFalse \n", "trigger8_count_threshold :\t1 \n", "trigger8_threshold_invert :\tFalse \n", "trigger9_count_threshold :\t1 \n", "trigger9_threshold_invert :\tFalse \n", "ttl_acq_auto_bin_incr_en :\tFalse \n", "ttl_acq_input_select :\t0 \n", "ttl_acq_threshold :\t0 \n", "upsample_rate_awg_path0 :\t0 \n", "upsample_rate_awg_path1 :\t0 \n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "Status: OKAY, Flags: NONE, Slot flags: NONE\n" ] } ], "source": [ "# Stop both sequencers.\n", "module.stop_sequencer()\n", "\n", "# Print status of both sequencers (should now say it is stopped).\n", "print(module.get_sequencer_status(0))\n", "\n", "# Uncomment the following to print an overview of the instrument parameters.\n", "print(\"Snapshot:\")\n", "module.print_readable_snapshot(update=True)\n", "\n", "# Reset the cluster\n", "cluster.reset()\n", "print(cluster.get_system_status())" ] } ], "metadata": { "files_to_bundle_in_zip_file": [ "cont_waveform_scope.png" ], "jupytext": { "main_language": "python", "notebook_metadata_filter": "files_to_bundle_in_zip_file" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.20" } }, "nbformat": 4, "nbformat_minor": 5 }