qat.experimental.conversion.pulse_to_q1.qblox_configuration.models module
Records describing how canonical channels occupy physical Qblox sequencers.
The records here carry the intermediate state of Qblox configuration resolution: the per-module join of supplied configuration fragments, the sequencer each canonical channel is allocated, and the Q1 attributes that allocation resolves to.
- class ReconciledModuleConfiguration(*, module_view, module_values=<factory>, sequencer_banks=<factory>)
Bases:
objectSupplied configuration of one physical module, joined across its ports.
A source may describe one module through several canonical ports. Reconciliation resolves shared-configuration references and verifies that repeated module-wide values agree before storing one copy. Sequencer banks stay port-specific because each port supplies the bank its channels may be allocated from, although ports sharing a module still contend for the same physical sequencers.
- Variables:
module_view – The hardware view of the physical module.
module_values – Agreed module-wide values keyed by source field name.
sequencer_banks – Supplied sequencer bank of each canonical port, keyed by physical sequencer index.
-
module_values:
frozendict[str,str|int|float|bool|tuple[ConfigValue,...] |frozendict[str, ConfigValue]]
-
module_view:
QbloxModuleView
-
sequencer_banks:
frozendict[str,frozendict[int,QbloxSequencerConfiguration]]
- class SequencerBinding(*, channel_id, port_id, module_location, sequencer_index, sequencer_config, module_config)
Bases:
objectResolved Q1 configuration of one canonical channel’s physical sequencer.
- Variables:
channel_id – Canonical channel identifier.
port_id – Canonical port the sequencer drives.
module_location – Physical instrument and slot of the allocated module.
sequencer_index – Allocated physical sequencer index.
sequencer_config – Resolved digital configuration and connections.
module_config – Resolved analogue configuration of the physical module.
-
channel_id:
str
-
module_config:
ModuleConfigAttr
-
module_location:
QbloxModuleLocation
-
port_id:
str
-
sequencer_config:
SequencerConfigAttr
-
sequencer_index:
int
- class SequencerPlacement(*, channel_id, port_id, module_location, sequencer_index, sequencer_configuration)
Bases:
objectThe physical sequencer one canonical channel is allocated.
- Variables:
channel_id – Canonical channel identifier.
port_id – Canonical port whose supplied bank the sequencer came from.
module_location – Physical instrument and slot of the allocated module.
sequencer_index – Allocated physical sequencer index.
sequencer_configuration – Configuration supplied for the selected sequencer.
-
channel_id:
str
-
module_location:
QbloxModuleLocation
-
port_id:
str
-
sequencer_configuration:
QbloxSequencerConfiguration
-
sequencer_index:
int