ska_oso_pdm.entities.csp
The csp module models SB entities concerned with CSP (Central Signal Processing) beam former and correlator configuration. The contents of the module are presented in the diagram below.
An example serialisation of SKA-Mid CSP to JSON is shown below.
# JSON modelled specifically by csp_configuration
...
"csp_configurations": [{
"config_id": "csp-mvp01-20220329-00001",
"subarray": {"subarray_name": "science period 23"},
"common": {
"subarray_id": 1,
"band_5_tuning": [5.85,7.25]
},
"cbf": {
"fsp": [{
"fsp_id": 1,
"function_mode": "CORR",
"frequency_slice_id": 1,
"integration_factor": 1,
"zoom_factor": 0,
"channel_averaging_map": [[0,2],[744,0]],
"channel_offset": 0,
"output_link_map": [[0,0],[200,1]]
},
{
"fsp_id": 2,
"function_mode": "CORR",
"frequency_slice_id": 2,
"integration_factor": 1,
"zoom_factor": 1,
"zoom_window_tuning": 650000
}]
}
}],
...
An example serialisation of SKA-Low CSP to JSON is shown below.
# JSON modelled specifically by csp_configuration
...
"csp_configurations": [{
"config_id": "csp-mvp01-20220329-00001",
"lowcbf": {
"stations": {
"stns": [
[1, 1], [2, 1], [3, 1], [4, 1], [5, 1], [6, 1]
],
"stn_beams": [{
"stn_beam_id": 1,
"freq_ids": [400]
}]
},
"vis": {
"fsp": {
"function_mode": "vis",
"fsp_ids": [1]
},
"stn_beams": [{
"stn_beam_id": 1,
"host": [{
"sdp_channel": 0,
"ip_addr": "192.168.1.100"
}],
"port": [{
"sdp_channel": 0,
"udp_port": 9000,
"stride": 1
}],
"mac": [{
"sdp_channel": 0,
"server_mac": "02-03-04-0a-0b-0c"
}],
"integration_ms": 849
}]
}
}
}],
...
The entities.csp.csp_configuration module defines a simple Python representation of CSP configurations.
- class CSPConfiguration(config_id: str | None = None, subarray_config: SubarrayConfiguration | None = None, common_config: CommonConfiguration | None = None, cbf_config: CBFConfiguration | None = None, lowcbf_config: LowCBFConfiguration | None = None, pst_config: PSTConfiguration | None = None, pss_config: PSSConfiguration | None = None)[source]
Class to hold all CSP configuration.
- The entities.csp.common module defines a Python representation of the
CSP Common configuration specification
- class CommonConfiguration(subarray_id: int | None = None, band_5_tuning: List[float] | None = None)[source]
Class to hold the CSP sub-elements.
The entities.csp.cbf module defines a Python representation of CSP and FSP configurations.
- class CBFConfiguration(fsp_configs: List[FSPConfiguration], vlbi_config: VLBIConfiguration | None = None)[source]
Class to hold all FSP and VLBI configurations.
- class FSPConfiguration(fsp_id: int, function_mode: FSPFunctionMode, frequency_slice_id: int, integration_factor: int, zoom_factor: int, channel_averaging_map: List[Tuple] | None = None, output_link_map: List[Tuple] | None = None, channel_offset: int | None = None, zoom_window_tuning: int | None = None)[source]
FSPConfiguration defines the configuration for a CSP Frequency Slice Processor.
The entities.csp.lowcbf module defines a Python representation of the LOW CBF configuration
- class LowCBFConfiguration(stations: StationConfiguration, vis: VisConfiguration)[source]
Class to hold the LOW CBF configuration specification
- class StationBeamConfiguration(*, stn_beam_id: int, freq_ids: List[int])[source]
StationBeamConfiguration defines the LOW.CBF station beam description.
- class StationBeamHost(*, sdp_channel: int, ip_addr: str)[source]
Class to hold the SDP channel & IP address for a station beam definition.
- class StationBeamMac(*, sdp_channel: int, server_mac: str)[source]
Class to hold SDP channel & server MAC for station beam definitions.
- class StationBeamPort(*, sdp_channel: int, udp_port: int, stride: int)[source]
Class to hold SDP channel, UDP port and stride for station beam definitions.
- class StationConfiguration(*, stns: List[List[int]], stn_beams: List[StationBeamConfiguration])[source]
Class to hold LOW.CBF station configuration.
- class VisConfiguration(fsp: VisFSPConfiguration, stn_beams: List[VisStationBeamConfiguration])[source]
Class to hold the Visibility Configuration.
- class VisFSPConfiguration(function_mode: str, fsp_ids: List[int])[source]
Class to hold the FSPs used for correlation
- class VisStationBeamConfiguration(*, stn_beam_id: int, integration_ms: timedelta, host: List[StationBeamHost], port: List[StationBeamPort], mac: List[StationBeamMac] | None = None)[source]
VisStationBeamConfiguration defines LOW CBF station beams from which to calculate visibilities.
The entities.csp.subarray module defines a Python representation of the Subarray configuration
- class SubarrayConfiguration(subarray_name: str)[source]
Class to hold the parameters relevant only for the current sub-array device.
The entities.csp.pst module defines a Python representation of a PST Configuration.
The entities.csp.pss module defines a Python representation of a PSS configurations.