Source code for qblox_scheduler.backends.qblox.q1asm_instructions

# Repository: https://gitlab.com/qblox/packages/software/qblox-scheduler
# Licensed according to the LICENSE file on the main branch
#
# Copyright 2020-2025, Quantify Consortium
# Copyright 2025, Qblox B.V.
"""
Module that holds all the string literals that are valid instructions that can be
executed by the sequencer in Qblox hardware.
"""

# Control
[docs] ILLEGAL = "illegal"
[docs] STOP = "stop"
[docs] NOP = "nop"
[docs] NEW_LINE = ""
# Jumps
[docs] JUMP = "jmp"
[docs] LOOP = "loop"
[docs] JUMP_GREATER_EQUALS = "jge"
[docs] JUMP_LESS_THAN = "jlt"
# Arithmetic
[docs] MOVE = "move"
[docs] NOT = "not"
[docs] ADD = "add"
[docs] SUB = "sub"
[docs] AND = "and"
[docs] OR = "or"
[docs] XOR = "xor"
[docs] ARITHMETIC_SHIFT_LEFT = "asl"
[docs] ARITHMETIC_SHIFT_RIGHT = "asr"
# Parameter operations
[docs] SET_MARKER = "set_mrk"
[docs] SET_FREQUENCY = "set_freq"
[docs] RESET_PHASE = "reset_ph"
[docs] SET_NCO_PHASE_OFFSET = "set_ph"
[docs] INCR_NCO_PHASE_OFFSET = "set_ph_delta"
[docs] SET_AWG_GAIN = "set_awg_gain"
[docs] SET_AWG_OFFSET = "set_awg_offs"
[docs] SET_DIGITAL = "set_digital"
[docs] SET_TIME_REF = "set_time_ref"
[docs] SET_SCOPE_EN = "set_scope_en"
# Real-time pipeline instructions
[docs] PLAY = "play"
[docs] ACQUIRE = "acquire"
[docs] ACQUIRE_WEIGHED = "acquire_weighed"
[docs] ACQUIRE_TTL = "acquire_ttl"
[docs] WAIT = "wait"
[docs] WAIT_SYNC = "wait_sync"
[docs] WAIT_TRIGGER = "wait_trigger"
[docs] UPDATE_PARAMETERS = "upd_param"
[docs] FEEDBACK_SET_COND = "set_cond"
[docs] FEEDBACK_TRIGGER_EN = "set_latch_en"
[docs] FEEDBACK_TRIGGERS_RST = "latch_rst"
[docs] PLAY_PULSE = "play_pulse"
[docs] ACQUIRE_TIMETAGS = "acquire_timetags"
[docs] ACQUIRE_DIGITAL = "acquire_digital"
[docs] UPD_THRES = "upd_thres"