CSP configurescan 1.0

JSON schema and example for CSP Mid configure

CSP config 1.0

Example JSON (TMC input)

{
    "interface": "https://schema.skatelescope.org/ska-csp-configure/1.0",
    "subarray": {
        "subarrayName": "science period 23"
    },
    "common": {
        "id": "sbi-mvp01-20200325-00001-science_A",
        "frequencyBand": "1",
        "subarrayID": 1
    },
    "cbf": {
        "fsp": [{
            "fspID": 1,
            "functionMode": "CORR",
            "frequencySliceID": 1,
            "integrationTime": 1400,
            "corrBandwidth": 0,
            "channelAveragingMap": [
                [0, 2],
                [744, 0]
            ],
            "fspChannelOffset": 0,
            "outputLinkMap": [
                [0, 0],
                [200, 1]
            ]
        }, {
            "fspID": 2,
            "functionMode": "CORR",
            "frequencySliceID": 2,
            "integrationTime": 1400,
            "corrBandwidth": 0,
            "channelAveragingMap": [
                [0, 2],
                [744, 0]
            ],
            "fspChannelOffset": 744,
            "outputLinkMap": [
                [0, 4],
                [200, 5]
            ]
        }],
        "vlbi": {}
    }
}

Example JSON (CSP configuration for science_a scan)

{
    "interface": "https://schema.skatelescope.org/ska-csp-configure/1.0",
    "subarray": {
        "subarrayName": "science period 23"
    },
    "common": {
        "id": "sbi-mvp01-20200325-00001-science_A",
        "frequencyBand": "1",
        "subarrayID": 1
    },
    "cbf": {
        "fsp": [{
            "fspID": 1,
            "functionMode": "CORR",
            "frequencySliceID": 1,
            "integrationTime": 1400,
            "corrBandwidth": 0,
            "channelAveragingMap": [
                [0, 2],
                [744, 0]
            ],
            "fspChannelOffset": 0,
            "outputLinkMap": [
                [0, 0],
                [200, 1]
            ],
            "outputHost": [
                [0, "192.168.0.1"],
                [400, "192.168.0.2"]
            ],
            "outputMac": [
                [0, "06-00-00-00-00-00"]
            ],
            "outputPort": [
                [0, 9000, 1],
                [400, 9000, 1]
            ]
        }, {
            "fspID": 2,
            "functionMode": "CORR",
            "frequencySliceID": 2,
            "integrationTime": 1400,
            "corrBandwidth": 0,
            "channelAveragingMap": [
                [0, 2],
                [744, 0]
            ],
            "fspChannelOffset": 744,
            "outputLinkMap": [
                [0, 4],
                [200, 5]
            ],
            "outputHost": [
                [0, "192.168.0.3"],
                [400, "192.168.0.4"]
            ],
            "outputMac": [
                [0, "06-00-00-00-00-01"]
            ],
            "outputPort": [
                [0, 9000, 1],
                [400, 9000, 1]
            ]
        }],
        "vlbi": {}
    }
}

Example JSON (CSP configuration for cal_a scan)

{
    "interface": "https://schema.skatelescope.org/ska-csp-configure/1.0",
    "subarray": {
        "subarrayName": "science period 23"
    },
    "common": {
        "id": "sbi-mvp01-20200325-00001-science_A",
        "frequencyBand": "1",
        "subarrayID": 1
    },
    "cbf": {
        "fsp": [{
            "fspID": 1,
            "functionMode": "CORR",
            "frequencySliceID": 1,
            "integrationTime": 1400,
            "corrBandwidth": 0,
            "channelAveragingMap": [
                [0, 2],
                [744, 0]
            ],
            "fspChannelOffset": 0,
            "outputLinkMap": [
                [0, 0],
                [200, 1]
            ],
            "outputHost": [
                [0, "192.168.1.1"]
            ],
            "outputPort": [
                [0, 9000, 1]
            ]
        }, {
            "fspID": 2,
            "functionMode": "CORR",
            "frequencySliceID": 2,
            "integrationTime": 1400,
            "corrBandwidth": 0,
            "channelAveragingMap": [
                [0, 2],
                [744, 0]
            ],
            "fspChannelOffset": 744,
            "outputLinkMap": [
                [0, 4],
                [200, 5]
            ],
            "outputHost": [
                [0, "192.168.1.1"]
            ],
            "outputPort": [
                [0, 9744, 1]
            ]
        }],
        "vlbi": {}
    }
}

https://schema.skatelescope.org/ska-csp-configure/1.0

type

object

properties

  • interface

type

string

  • subarray

subarray 1.0

subarray section, containing the parameters relevant only for the current sub-array device. This section is not forwarded to any subelement.

type

object

properties

  • subarrayName

Name and scope of current subarray the sub-array.

type

string

additionalProperties

True

  • pss

PSS configuration schema 0.0

type

object

properties

  • dummy_param

type

string

additionalProperties

True

  • common

Common section, containing the parameters and the sections belonging to all CSP subsystems. This section is forwarded to all sub-elements.

Common_configuration_schema_1.0

  • cbf

Correlator and Beamformer specific parameters. This section contains the parameters relevant only for CBF sub-element. This section is forwarded only to CBF subelement. Most of it to be borrowed from IICD

CBF_config_1.0

  • pst

PST configuration 1.0

PST specific parameters. To be borrowed from IICD

type

object

properties

  • dummy_param

type

string

additionalProperties

True

additionalProperties

True

Common_configuration_schema_1.0

Common section, containing the parameters and the sections belonging to all CSP subsystems. This section is forwarded to all sub-elements.

type

object

properties

  • id

type

string

  • eb_id

Execution block ID to associate scan configs to an observation.

This ID is used for associating generated data, especially data products, for a given observation. Multiple scans can be linked to one observation and this ID is used as metadata to associate the data products from all scans of the same observation.

This ID does not have to be unique for a scan configuration but should be unique for different observations.

For example, all the data and weights files will have an EB_ID header value populated with the value supplied in this field.

type

string

  • band5Tuning

Center frequency for the Band-of-Interest. Required if Band is 5a or 5b; not specified for other Bands (not configurable for Band 1 and 2).

Input for Band 5a and 5b consists of two 2.5 GHz streams; the center frequency can be independently tuned for each stream.

The following nomenclature is used to refer to Band 5a and 5b streams: 5a1, 5a2, 5b1, 5b2.

type

array

items

type

number

  • frequencyBand

Frequency band applies for all the receptors (VCCs) that belong to the sub-array.

type

string

  • subarrayID

Subarray number

type

integer

additionalProperties

True

CBF_config_1.0

Correlator and Beamformer specific parameters. This section contains the parameters relevant only for CBF sub-element. This section is forwarded only to CBF subelement. Most of it to be borrowed from IICD

type

object

properties

  • frequencyBandOffsetStream1

Optionally, an offset can be specified so that the entire observed band is shifted (to accommodate a Zoom Window that crosses a ‘natural’ Frequency Slice boundary). If specified, applies for all the receptors in the sub-array.

Bands 1 and 2: input from the receptor consists of a single data stream; the Frequency Band Offset (FBO) should be specified for Stream 1 only.

Bands 5a and 5b: input from the receptor consists of two data streams; the FBO can be specified for each stream independently. Note: For Band 5a and 5b the frequency shift is performed by the receptor (DISH).

Note: This is optional and does not need to be implemented in PI3, but would be great for demo; if Team Buttons is looking for opportunities to showcase interesting GUIs, Zoom Windows are perfect opportunity (would require TMC and CSP to support these two parameters, corrBandwidth values > 0 and zoom window tuning.)

type

integer

  • frequencyBandOffsetStream2

See frequencyBandOffsetStream1

type

integer

  • delayModelSubscriptionPoint

FQDN of TMC.DelayModel TANGO attribute which exposes delay values for all the dishes assigned to a Subarray in JSON format. Delay values are updated every 10 seconds.

type

string

  • dopplerPhaseCorrSubscriptionPoint

The same model applies for all receptors that belong to the subarray. Delivered by TMC using publish-subscribe mechanism (see ICD Section 3.8.8.5.3). The Doppler phase correction, by default, applies only to the CSP_Mid Processing Mode Correlation; optionally may apply to other Processing Modes as well.

type

string

  • rfiFlaggingMask

Specified as needed in advance of the scan start and/or during the scan. Delivered using publish-subscribe mechanism (see ICD Section 3.8.8.5.7).

type

object

properties

additionalProperties

True

  • fsp

type

array

items

FSP_config_1.0

  • vlbi

Very Long Baseline Interferometry specific parameters. To be borrowed from IICD This section contains the parameters relevant only for VLBI. This section is forwarded only to CSP subelement.

VLBI_config_1.0

  • search_window

type

array

items

Up to two 300 MHz Search Windows can be optionally configured and used as input for Transient Data Capture and/or Pulsar Search beam-forming.

Search_window_config_1.0

additionalProperties

True

FSP_config_1.0

type

object

properties

  • fspID

type

integer

  • functionMode

type

string

  • receptors

Optionally a subset of receptors to be correlated can be specified. If not specified, all receptors that belong to the subarray are cross-correlated (i.e. visibilities for all the baselines in the subarray are generated and transmitted to SDP).

Valid receptor IDs include: SKA dishes: “SKAnnn”, where nnn is a zero padded integer in the range of 001 to 133. MeerKAT dishes: “MKTnnn”, where nnn is a zero padded integer in the range of 000 to 063.

type

array

default

null

items

type

string

  • frequencySliceID

Frequency Slice to be processed on this FSP (valid range depends on the Frequency Band).

type

integer

  • corrBandwidth

Bandwidth to be correlated calculated as FSBW/2n, where n is in range [0..6].

When n=0 the full Frequency Slice bandwidth is correlated.

BW > 0 implies ‘Zoom Window’ configuration; the spectral Zoom Window tuning must be specified.

type

integer

  • zoomWindowTuning

The Zoom Window tuning provided in absolute terms as RF center frequency. Based on that, CSP_Mid calculates tuning within the data stream received from the receptor. Must be selected so that the entire Zoom Window is within the Frequency Slice. If partially out of the FS a warning is generated. If completely outside of the FS an exception is generated.

Step size <= 0.01MHz. The Frequency Band Offset can be used to shift the entire observed band in order to accommodate a Zoom Window that spans across a Frequency Slice boundary.

type

integer

default

null

  • integrationTime

Integration time for the correlation products, defines multiple of 140 milliseconds.

const

1400

  • outputMac

Output MAC address to send visibilities to for every channel, given as a list of start channel ID to IEEE 802 MAC addresses. Where no value is given for a concrete channel, the previous value should be used.

type

array

default

null

items

allOf

type

array

items

anyOf

type

integer

type

string

  • channelAveragingMap

Table of up to 20 x 2 integers. Each of entries contains:

  • Start channel ID, and

  • averaging factor.

Explanation: Each FSP produces 14880 (TBC) fine channels across the correlated bandwidth (Frequency Slice or Zoom Window). Channels are evenly spaced in frequency.

TM shall provide the table that for each FSP and each group of 744 channels (there are 20 groups per FSP) indicates the channel averaging factor. More precisely, for each group the TMC provided table specifies:

  • the channel ID (integer) of the first channel, and

  • the averaging factor, as follows:

  • 0 means do not send channels to SDP,

  • 1 means no averaging,

  • 2 means average two adjacent channels,

  • 3 means average three adjacent channels,

and so on.

If no entry is present for an FSP, the averaging settings of the previous FSP are still applicable.

type

array

default

null

items

allOf

type

array

items

type

integer

  • fspChannelOffset

Channel ID to use for visibilities of the first channel produced by this FSP. For example, if the channel offset is 5000 the first channel group would span IDs 5000-5743.

Note that this offset does not apply to channel maps in this structure (such as channelAveragingMap or outputHost).

type

integer

default

null

  • outputLinkMap

Output links to emit visibilities on for every channel, given as a list of start channel ID to link ID. Where no value is given for concrete channel, the previous value should be used.

type

array

default

null

items

allOf

type

array

items

anyOf

type

integer

type

string

  • outputHost

Output host to send visibilities to for every channel, given as a list of start channel ID to host IP addresses in dot-decimal notation. Where no value is given for a concrete channel, the previous value should be used.

type

array

default

null

items

allOf

type

array

items

anyOf

type

integer

type

string

  • outputPort

Output port to send visibilities to for every channel, given as a list of start channel ID to port number. Where no value is given for a concrete channel, the previous value should be used.

type

array

default

null

items

allOf

type

array

items

type

integer

additionalProperties

True

VLBI_config_1.0

Very Long Baseline Interferometry specific parameters. To be borrowed from IICD This section contains the parameters relevant only for VLBI. This section is forwarded only to CSP subelement.

type

object

properties

  • dummy_param

type

string

additionalProperties

True

Search_window_config_1.0

Up to two 300 MHz Search Windows can be optionally configured and used as input for Transient Data Capture and/or Pulsar Search beam-forming.

type

object

properties

  • searchWindowID

Identifier of the 300MHz Search Window. Unique within a sub-array.

type

integer

  • searchWindowTuning

The Search Window tuning is provided in absolute terms as RF center frequency. The Search Window must be placed within the observed band. If partially out of the observed Band a warning is generated. If completely outside of the observed Band an exception is generated.

type

integer

  • tdcEnable

Enable / disable Transient Data Capturefor the Search Window.

type

boolean

  • tdcNumBits

Number of bits per sample (for the Transient Data Capture). Required if TDC is enabled, otherwise not specified.

type

integer

default

null

  • tdcPeriodBeforeEpoch

Users can trade the period of time for which data are saved and transmitted for the sample bit-width and/or the number of Search Windows. The exact information regarding the memory capacity per receptor and supported range will be provided in construction.

The epoch is specified in the command that triggers TDC off-loading (transmission of data).

type

integer

default

null

  • tdcPeriodAfterEpoch

see tdcPeriodBeforeEpoch

type

integer

default

null

  • tdcDestinationAddress

Destination addresses (MAC, IP, port) for off-loading of the content of the Transient Data Capture Buffer, specified per receptor. The destination addresses for the content of the Transient Data Capture can be provided either as a part of the scan configuration or by the command that triggers transmission of the captured data. The latter, if provided, overrides previously set addresses.

Required if TDC is enabled, otherwise not specified.

type

array

default

null

items

anyOf

type

integer

type

string

additionalProperties

True