SKA PST RECV Applications

ska-pst-recv builds applications for development and testing of the data interface between the Correlator Beam Former (CBF) and Puslar Timing (PST) products. The primary application (ska_pst_recv_udpdb) implements the RECV.CORE component of the PST and the other applications provides mechanisms for testing the data interface.

ska_pst_recv_info

This application simply prints the version of ska-pst-recv to stdout.

ska_pst_recv_info

ska_pst_recv_udprecv

This application receives the data streams from the CBF and reports the data acqusition statistics of the received data stream to stdout.

ska_pst_recv_udprecv [options] config
Use UDP sockets to receive a data stream from ska_pst_recv_udpgen
and report the UDP capture statistics. Quit with CTRL+C.

    config      ascii file containing observation configuration
    -h          print this help text
    -i          use Infiniband Verbs for socket receive [default UDP socket]
    -v          verbose output

ska_pst_recv_udpdb

This application provides the full implementation of the RECV.CORE component in the PST product. In production, it must be launched with a control port (-c option) that specifies is used by the PST TANGO devices for all control and monitoring functions. For testing, a configuration file (-f option) can be provided to run this application in a standalone mode which then will immediately perform data acquisition.

Usage: ska_pst_recv_udpdb [options]
Use UDP sockets to receive a data stream that matches the format, writing the data
samples PSRDADA ring buffers for the data (data_key) and weights (weights_key).
Quit with CTRL+C.

    -c port     port on which to accept control commands
    -f config   ascii file containing observation configuration
    -h          print this help text
    -i          use Infiniband Verbs for socket receive [default UDP socket]
    -s          Use the first data received to configure the scan
    -v          verbose output

ska_pst_recv_udpgen

This application generates UDP packet sequences streams that simluate the data streams generated by the Low and Mid Correlator Beam Formers. This provides a mechanism to generate the packet sequences with correct meta-data. The application can also generate data-samples that contains deterministic test vectors which provide mechanisms for testing the signal chain and data processing.

The application is configured via config file, provided on the command line which contains key/value configuration parameters. The command line usage for the application is described below.

Usage: ska_pst_recv_udpgen [options] config
Use UDP socket to send a data stream and report the UDP transmission statistics.
Quit with CTRL+C.

config      ascii file containing observation configuration
-d host     Override the destination host for the data stream [default DATA_HOST]
-e idx:err  Induce an packet generation error (see below) at the specified index (idx)
-h          print this help text
-r rate     Data transmission rate in Gb/s [default 0.5]
-p port     Override the destination port for the data stream [default DATA_PORT]
-t length   Length of data transmission in seconds [default 10]
-v          verbose output

Packet generation errors: MagicWord, PacketSize, Transmit, MisorderedPSN, ScanID, ChannelNumber, Timestamp, DataRate

The configuration option that will enable the test-vectors is the DATA_GENERATOR keyword, which may be configured with Random, Sine, GaussianNoise or SquareWave values. Some of the Data Generators can be further configured with the following options:

Random:
  • No configuration options

Sine:
  • SINUSOID_FREQ frequency at which a single tone should be injected into the data, in MHz.

GaussianNoise:
  • NORMAL_DIST_MEAN Mean of the normally distributed data.

  • NORMAL_DIST_STDDEV Standard deviation of the normally distributed data.

  • NORMAL_DIST_RED_STDDEV Standard deviation of a red-noise process that adjusts the Standard Deviation.

SquareWave:
  • CAL_OFF_INTENSITY off-pulse intensity for all polarizations and frequency channels

  • CAL_ON_INTENSITY on-pulse intensity for all polarizations and frequency channels

  • CAL_ON_POL_0_INTENSITY on-pulse intensity for polarization 0 and all frequency channels

  • CAL_ON_CHAN_N_INTENSITY on-pulse intensity for all polarizations at the number of frequency channels

  • CAL_ON_POL_0_CHAN_0_INTENSITY on-pulse intensity for polarization 0 at frequency channel zero

  • CAL_ON_POL_0_CHAN_N_INTENSITY on-pulse intensity for polarization 0 at the number of frequency channels

  • CAL_ON_POL_1_CHAN_0_INTENSITY on-pulse intensity for polarization 1 at frequency channel zero

  • CAL_ON_POL_1_CHAN_N_INTENSITY on-pulse intensity for polarization 1 at the number of frequency channels