quantify_scheduler.backends.qblox.operation_handling.virtual
Classes for handling operations that are neither pulses nor acquisitions.
Module Contents
Classes
Defines the behavior for an operation that does not produce any output. |
|
Strategy for operation that does not produce any output, but rather applies a |
|
Strategy for operation that does not produce any output, but rather resets |
|
Strategy for operation that does not produce any output, but rather sets |
|
Strategy for compiling a DC voltage offset instruction. The generated Q1ASM contains |
|
Strategy for compiling an "update parameters" real-time instruction. |
- class IdleStrategy(operation_info: quantify_scheduler.backends.types.qblox.OpInfo)[source]
Bases:
quantify_scheduler.backends.qblox.operation_handling.base.IOperationStrategy
Defines the behavior for an operation that does not produce any output.
- Parameters
operation_info (quantify_scheduler.backends.types.qblox.OpInfo) – The operation info that corresponds to this operation.
- property operation_info: quantify_scheduler.backends.types.qblox.OpInfo[source]
Property for retrieving the operation info.
- generate_data(wf_dict: Dict[str, Any])[source]
Returns None as no waveforms are generated in this strategy.
- insert_qasm(qasm_program: quantify_scheduler.backends.qblox.qasm_program.QASMProgram)[source]
Add the assembly instructions for the Q1 sequence processor that corresponds to this operation.
Not an abstractmethod, since it is allowed to use the IdleStrategy directly (e.g. for IdlePulses), but can be overridden in subclass to add some assembly instructions despite not outputting any data.
- Parameters
qasm_program – The QASMProgram to add the assembly instructions to.
- class NcoPhaseShiftStrategy(operation_info: quantify_scheduler.backends.types.qblox.OpInfo)[source]
Bases:
IdleStrategy
Strategy for operation that does not produce any output, but rather applies a phase shift to the NCO.
- Parameters
operation_info (quantify_scheduler.backends.types.qblox.OpInfo) – The operation info that corresponds to this operation.
- insert_qasm(qasm_program: quantify_scheduler.backends.qblox.qasm_program.QASMProgram)[source]
Inserts the instructions needed to shift the NCO phase by a specific amount.
- Parameters
qasm_program – The QASMProgram to add the assembly instructions to.
- class NcoResetClockPhaseStrategy(operation_info: quantify_scheduler.backends.types.qblox.OpInfo)[source]
Bases:
IdleStrategy
Strategy for operation that does not produce any output, but rather resets the phase of the NCO.
- Parameters
operation_info (quantify_scheduler.backends.types.qblox.OpInfo) – The operation info that corresponds to this operation.
- insert_qasm(qasm_program: quantify_scheduler.backends.qblox.qasm_program.QASMProgram)[source]
Inserts the instructions needed to reset the NCO phase.
- Parameters
qasm_program – The QASMProgram to add the assembly instructions to.
- class NcoSetClockFrequencyStrategy(operation_info: quantify_scheduler.backends.types.qblox.OpInfo)[source]
Bases:
IdleStrategy
Strategy for operation that does not produce any output, but rather sets the frequency of the NCO. Implemented as set_freq and an upd_param of 8 ns, leading to a total duration of 8 ns before the next command can be issued.
- Parameters
operation_info (quantify_scheduler.backends.types.qblox.OpInfo) – The operation info that corresponds to this operation.
- insert_qasm(qasm_program: quantify_scheduler.backends.qblox.qasm_program.QASMProgram)[source]
Inserts the instructions needed to set the NCO frequency.
- Parameters
qasm_program – The QASMProgram to add the assembly instructions to.
- class AwgOffsetStrategy(operation_info: quantify_scheduler.backends.types.qblox.OpInfo)[source]
Bases:
IdleStrategy
Strategy for compiling a DC voltage offset instruction. The generated Q1ASM contains only the
set_awg_offs
instruction and noupd_param
instruction.- Parameters
operation_info (quantify_scheduler.backends.types.qblox.OpInfo) – The operation info that corresponds to this operation.
- insert_qasm(qasm_program: quantify_scheduler.backends.qblox.qasm_program.QASMProgram)[source]
Add the Q1ASM instruction for a DC voltage offset.
- Parameters
qasm_program (QASMProgram) – The QASMProgram to add the assembly instructions to.
- class UpdateParameterStrategy(operation_info: quantify_scheduler.backends.types.qblox.OpInfo)[source]
Bases:
IdleStrategy
Strategy for compiling an “update parameters” real-time instruction.
- Parameters
operation_info (quantify_scheduler.backends.types.qblox.OpInfo) – The operation info that corresponds to this operation.
- insert_qasm(qasm_program: quantify_scheduler.backends.qblox.qasm_program.QASMProgram)[source]
Add the
upd_param
assembly instruction for the Q1 sequence processor.- Parameters
qasm_program (QASMProgram) – The QASMProgram to add the assembly instructions to.