spinqick.core.readout_v2 ======================== .. py:module:: spinqick.core.readout_v2 .. autoapi-nested-parse:: Module to implement dot charge sensor readout with qick, and pauli spin blockade spin-to-charge conversion. Attributes ---------- .. autoapisummary:: spinqick.core.readout_v2.MAX_GAIN spinqick.core.readout_v2.DEFAULT_SPAM_NAMES Functions --------- .. autoapisummary:: spinqick.core.readout_v2.init_dcs spinqick.core.readout_v2.readout_dcs spinqick.core.readout_v2.program_spam_step_waveforms spinqick.core.readout_v2.program_spam_waveforms spinqick.core.readout_v2.play_spam_step spinqick.core.readout_v2.setup_spam_gens spinqick.core.readout_v2.init_spam_point_sweep spinqick.core.readout_v2.init_point_multisweep spinqick.core.readout_v2.init_psb spinqick.core.readout_v2.psb_fm spinqick.core.readout_v2.psb_f11 spinqick.core.readout_v2.psb_fe spinqick.core.readout_v2.psb_em Module Contents --------------- .. py:data:: MAX_GAIN :value: 32765 .. py:data:: DEFAULT_SPAM_NAMES :value: ['flush', 'idle', 'entry_20', 'entry_11', 'exit_11', 'meas'] .. py:function:: init_dcs(prog, cfg, mode = 'sd_chop') Initialize DCS generator and readout channel. .. py:function:: readout_dcs(prog, cfg, mode = 'sd_chop') Basic dcs readout. Plays an AC signal and triggers the ADC to read out the signal. .. py:function:: program_spam_step_waveforms(prog, cfg, step) Program waveforms for a given spam step. .. py:function:: program_spam_waveforms(prog, cfg) Iterate through each spam step and program waveforms. .. py:function:: play_spam_step(prog, cfg, step, pause = True) Iterate through spam gates and play pulse. .. py:function:: setup_spam_gens(prog, cfg) Declare all generators in the spam sequence. .. py:function:: init_spam_point_sweep(prog, cfg, sweep_step, gx_gen, gy_gen, x_sweep, y_sweep) Declares generators and program waveforms for a 2D sweep of a spam point. The user can specify a sweep over any two gates which are defined in their spam sequence for that point. :param sweep_step: the name of the spam step which will be swept. :param gx_gen: the generator whose voltage is being swept on the x-axis :param gy_gen: the generator whose voltage is being swept on the y-axis :param x_sweep: QickParam object describing the x-axis sweep :param y_sweep: QickParam object describing the y-axis sweep .. py:function:: init_point_multisweep(prog, cfg, sweep_step, gx_gens, gy_gens, x_sweeps, y_sweeps, pulse_length = None) Declare generators and program waveforms for a 2D sweep of a spam point. This is used for the measurement window scan code, as it allows you to sweep more than one spamstep. :param sweep_step: the name of the spam step which will be swept. :param gx_gens: the generators whose voltages are being swept on the x-axis :param gy_gens: the generators whose voltages are being swept on the y-axis :param x_sweeps: QickParam objects describing the x-axis sweeps :param y_sweeps: QickParam objects describing the y-axis sweeps :param pulse_length: specify a pulse duration to store the whole pulse in waveform memory. Otherwise, plays a pulse and waits until the user pulses to idle. .. py:function:: init_psb(prog, cfg) Initialize pauli spin blockade readout in a qickprogram. .. py:function:: psb_fm(prog, spam_cfg, dcs_cfg) Plays flush and measure spam steps. .. py:function:: psb_f11(prog, spam_cfg) Plays flush, entry_20 and exit_11 steps. .. py:function:: psb_fe(prog, spam_cfg) Plays flush, entry_20 and exit_11 steps, then pulse to idle. .. py:function:: psb_em(prog, spam_cfg, dcs_cfg) Plays entry_11 and measurement coordinates. Then plays readout_dcs, and waits for the readout to end.