ska_oso_pdm.sb_definition.csp
The csp package models SB entities concerned with CSP (Central Signal Processing) beam former and correlator configuration. Package contents are presented in the diagram below.
An example serialisation of SKA-Mid CSP to JSON is shown below.
"csp_configurations": [
{
"config_id": "csp config 123",
"subarray": {
"subarray_name": "science period 23"
},
"common": {
"subarray_id": 1,
"band_5_tuning": [
5.85,
7.25
]
},
"cbf": {
"fsps": [
{
"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.
"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 ska_oso_pdm.sb_definition.csp.csp_configuration module defines a simple Python representation of CSP configurations.
- class CSPConfiguration(*, config_id: str | None = None, subarray: SubarrayConfiguration | None = None, common: CommonConfiguration | None = None, cbf: CBFConfiguration | None = None, lowcbf: LowCBFConfiguration | None = None, pst: PSTConfiguration | None = None, pss: PSSConfiguration | None = None)[source]
Class to hold all CSP configuration.
- Parameters:
config_id – an ID for CSP configuration
subarray_config – Sub-array configuration to set
common_config – the common CSP elements to set
cbf_config – the CBF configurations to set
lowcbf_config – the LowCBF configurations to set
pst_config – the PST configurations to set
pss_config – the PSS configurations to set
- The ska_oso_pdm.sb_definition.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)[source]
Class to hold the CSP sub-elements.
- Parameters:
subarray_id – an ID of sub-array device (optional)
band_5_tuning – list of integer (optional)
The ska_oso_pdm.sb_definition.csp.cbf module defines a Python representation of CSP and FSP configurations.
- class CBFConfiguration(*, fsps: List[FSPConfiguration] = None, vlbi: VLBIConfiguration | None = None)[source]
Class to hold all FSP and VLBI configurations.
- Parameters:
fsps – List of the FSP configurations to set
vlbi – the VLBI configuration to set (optional)
- class FSPConfiguration(*, fsp_id: int, function_mode: FSPFunctionMode, frequency_slice_id: int, integration_factor: int, zoom_factor: int, channel_averaging_map: list[tuple[int, int]] = None, output_link_map: list[tuple] = None, channel_offset: int | None = None, zoom_window_tuning: int | None = None)[source]
FSPConfiguration defines the configuration for a CSP Frequency Slice Processor.
Channel averaging map is an optional list of 20 x (int,int) tuples.
- Parameters:
fsp_id – FSP configuration ID [1..27]
function_mode – FSP function mode
frequency_slice_id – frequency slicer ID [1..26]
zoom_factor – zoom factor [0..6]
integration_factor – integer multiple of correlation integration time (140ms) [1..10]
channel_averaging_map – Optional channel averaging map
output_link_map – Optional output_link_map
channel_offset – Optional channel offset value in integer
zoom_window_tuning – Optional zoom window tuning value in integer
The ska_oso_pdm.sb_definition.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.
- Parameters:
stations – Subarray Stations and station beam descriptions
vis – Visibility output descriptions
- class StationBeamConfiguration(*, stn_beam_id: int, freq_ids: List[int])[source]
StationBeamConfiguration defines the LOW.CBF station beam description.
- Parameters:
stn_beam_id – Station beam ID
freq_ids – list of station beam frequency IDs
- class StationBeamHost(*, sdp_channel: int, ip_addr: str)[source]
Class to hold the SDP channel & IP address for a station beam definition.
- Parameters:
sdp_channel – SDP channel ID.
ip_addr – IP address of this channel
- class StationBeamMac(*, sdp_channel: int, server_mac: str)[source]
Class to hold SDP channel & server MAC for station beam definitions.
- Parameters:
sdp_channel – SDP channel
server_mac – server MAC
- class StationBeamPort(*, sdp_channel: int, udp_port: int, stride: int)[source]
Class to hold SDP channel, UDP port and stride for station beam definitions.
- Parameters:
sdp_channel – SDP channel number
udp_port – UDP port
stride – stride
- class StationConfiguration(*, stns: List[List[int]], stn_beams: List[StationBeamConfiguration])[source]
Class to hold LOW.CBF station configuration.
- Parameters:
stns – The subarray stations of this StationConfiguration.
stn_beams – The station beam descriptions of this StationConfiguration.
- class VisConfiguration(*, fsp: VisFSPConfiguration, stn_beams: List[VisStationBeamConfiguration])[source]
Class to hold the Visibility Configuration.
- Parameters:
fsp – The VisFSPConfiguration of this VisConfiguration.
stn_beams – The StationBeamConfiguration of this VisConfiguration.
- class VisFSPConfiguration(*, function_mode: str, fsp_ids: List[int])[source]
Class to hold the FSPs used for correlation.
- Parameters:
function_mode – Function mode name
fsp_ids – List of integer FSP IDs
- 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.
- Parameters:
stn_beam_id – station beam ID
host – SDP channel and IP address
port – SDP channel, UDP port, and stride
mac – SDP channel and server MAC
integration_ms – milliseconds integration
The ska_oso_pdm.sb_definition.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.
- Parameters:
sub-array_name – Name of the sub-array
The ska_oso_pdm.sb_definition.csp.pst module defines a Python representation of a PST Configuration.
The ska_oso_pdm.sb_definition.csp.pss module defines a Python representation of a PSS configurations.