qat.experimental.system_data.hardware.qblox package
Public Qblox system-data model.
- class PortReference(*, kind, module_location, oscillator_id=None)
Bases:
objectMaterialised physical identity attached to a canonical port.
This target-specific extension gives the hardware view the stable identity needed to group canonical ports without interpreting legacy configuration payloads.
- Parameters:
kind¶ (
QbloxModuleKind) – Installed module kind.module_location¶ (
QbloxModuleLocation) – Physical instrument and module slot.oscillator_id¶ (
Optional[str]) – Canonical oscillator referenced by the source port, if any.
-
kind:
QbloxModuleKind
-
module_location:
QbloxModuleLocation
-
oscillator_id:
str|None
- class QbloxHardwareView(acquire_limit, modules=frozendict.frozendict({}))
Bases:
DerivedViewInterface[CanonicalSystemData]Installed modules and canonical bindings used by Q1 configuration resolution.
The view owns immutable records and does not retain its canonical parent. Its module- oriented shape is the stable input expected by later allocation and Q1 configuration layers.
- Parameters:
acquire_limit¶ (
int) – Canonical runtime acquisition limit.modules¶ (
Mapping[QbloxModuleLocation,QbloxModuleView]) – Installed modules indexed by physical location.
Create an immutable view from already-projected module records.
-
acquire_limit:
int
- property channel_bindings: Mapping[str, QbloxChannelBinding]
Return projected calibrated channels indexed by canonical identifier.
- classmethod derive(canonical_data, **kwargs)
Project typed Qblox extensions from validated canonical system data.
- Parameters:
canonical_data¶ (
CanonicalSystemData) – Canonical system data produced by a validating materialiser.kwargs¶ (
Any) – Unused derived-view compatibility arguments.
- Return type:
- Returns:
An immutable module-oriented projection.
-
modules:
frozendict[QbloxModuleLocation,QbloxModuleView]
- property oscillator_bindings: Mapping[str, QbloxOscillatorBinding]
Return projected local oscillators indexed by canonical identifier.
- property port_bindings: Mapping[str, QbloxPortBinding]
Return projected ports indexed by canonical identifier.
- class QbloxModuleKind(value)
Bases:
str,EnumQblox module kinds represented by canonical system data.
- classmethod from_qblox_identifier(value)
Parse a module kind embedded in a canonical Qblox identifier.
- Parameters:
value¶ (
str|None) – Canonical resource identifier.- Return type:
QbloxModuleKind|None- Returns:
The longest matching kind, or
None.
- classmethod from_qblox_name(value)
Parse an official Qblox module name.
- Parameters:
value¶ (
str) – Module name using hyphens or underscores in any case.- Return type:
- Returns:
The parsed module kind.
- qcm = 'qcm'
- qcm_rf = 'qcm_rf'
- qrc = 'qrc'
- qrm = 'qrm'
- qrm_rf = 'qrm_rf'
- class QbloxModuleLocation(instrument_id, slot)
Bases:
objectPhysical location of a module within a Qblox instrument.
- Parameters:
instrument_id¶ (
str) – Canonical identifier of the containing Cluster.slot¶ (
int) – One-based physical Cluster slot. Target-specific range validation is performed byQbloxTargetDescription.
-
instrument_id:
str
-
slot:
int
- class QbloxTargetDescription(q1asm, sequencer_specs, module_specs, min_module_slot=1, max_module_slot=20)
Bases:
objectImmutable Qblox target specification and typed query boundary.
- input_sequencers(kind, input_)
Return sequencers routable from a physical input channel.
- Return type:
tuple[int,...]
-
max_module_slot:
int
-
min_module_slot:
int
- module_spec(kind)
Return the target specification for
kind.- Return type:
-
module_specs:
frozendict[QbloxModuleKind,ModuleSpec]
- output_sequencers(kind, output)
Return sequencers routable to a physical output channel.
- Return type:
tuple[int,...]
- sequencer(kind, index)
Return the module-bound target view of a physical sequencer.
- Return type:
- sequencer_spec(type_)
Return the shared target specification for a Q1 sequencer type.
- Return type:
-
sequencer_specs:
frozendict[Q1SequencerType,Q1SequencerSpec]
- supports(kind, index, feature)
Return whether a physical sequencer provides
feature.- Return type:
bool
- validate_module_location(location)
Validate that a module location is representable by this target.
- Parameters:
location¶ (
QbloxModuleLocation) – Physical instrument and slot occupied by a module.- Raises:
ValueError – If the slot falls outside the target’s Cluster chassis.
- Return type:
None
Submodules
- qat.experimental.system_data.hardware.qblox.configuration module
AcquisitionPathConnectionOutputPathConnectionPortConnectionQBLOX_CONFIGURATION_ATTRIBUTEQbloxModuleConfigurationQbloxSequencerConfigurationQbloxSuppliedConfigurationSequencerConnectionSequencerConnection.acquisition_disabledSequencerConnection.acquisition_enabledSequencerConnection.acquisition_path_connectionsSequencerConnection.connectionsSequencerConnection.disabled_acquisition_pathsSequencerConnection.disabled_outputsSequencerConnection.input_idsSequencerConnection.output_idsSequencerConnection.output_path_connectionsSequencerConnection.uses_acquisition
immutable_config_value()supplied_configurations()
- qat.experimental.system_data.hardware.qblox.models module
DirectionKindPortReferenceQbloxChannelBindingQbloxChannelBinding.carrier_frequencyQbloxChannelBinding.channel_idQbloxChannelBinding.imbalanceQbloxChannelBinding.module_locationQbloxChannelBinding.oscillator_frequencyQbloxChannelBinding.oscillator_idQbloxChannelBinding.oscillator_resource_idQbloxChannelBinding.phase_offsetQbloxChannelBinding.port_idQbloxChannelBinding.port_resource_idQbloxChannelBinding.scale
QbloxModuleKindQbloxModuleLocationQbloxModuleViewQbloxOscillatorBindingQbloxPortBindingSignalPathconnection_input_ids()connection_output_ids()
- qat.experimental.system_data.hardware.qblox.target module
ModuleSpecModuleSpec.acquisition_memory_binsModuleSpec.input_channel_mapModuleSpec.input_countModuleSpec.is_rfModuleSpec.kindModuleSpec.marker_countModuleSpec.output_channel_mapModuleSpec.output_countModuleSpec.sequencer_countModuleSpec.sequencer_indices()ModuleSpec.sequencersModuleSpec.supports_mixer_correction
Q1AsmSpecQ1SequencerFeatureQ1SequencerSpecQ1SequencerSpec.clock_period_nsQ1SequencerSpec.featuresQ1SequencerSpec.instruction_capacityQ1SequencerSpec.nco_frequency_limit_stepsQ1SequencerSpec.nco_frequency_steps_per_hzQ1SequencerSpec.nco_max_frequency_hzQ1SequencerSpec.nco_min_frequency_hzQ1SequencerSpec.nco_phase_stepsQ1SequencerSpec.nco_phase_steps_per_degreeQ1SequencerSpec.readoutQ1SequencerSpec.register_countQ1SequencerSpec.sample_rate_hzQ1SequencerSpec.supports()Q1SequencerSpec.typeQ1SequencerSpec.waveform_sample_capacity
Q1SequencerTypeQbloxTargetDescriptionQbloxTargetDescription.input_sequencers()QbloxTargetDescription.max_module_slotQbloxTargetDescription.min_module_slotQbloxTargetDescription.module_spec()QbloxTargetDescription.module_specsQbloxTargetDescription.output_sequencers()QbloxTargetDescription.q1asmQbloxTargetDescription.sequencer()QbloxTargetDescription.sequencer_spec()QbloxTargetDescription.sequencer_specsQbloxTargetDescription.supports()QbloxTargetDescription.validate_module_location()
ReadoutSpecSequencerTarget
- qat.experimental.system_data.hardware.qblox.view module