SKA SDP Realtime Receive Modules

The package provides the package and components to facilitate the reception of data into the SDP from the LOW and MID CBF.

The receiver code mainly consists on four different sections:

  • Receivers that listen to data from the network and unpack it for further usage. Only one receiver, the realtime.receive.modules.receivers.spead2_receivers.receiver is implemented.

  • A data aggregation layer where individual blocks of data received from the network are first split by beam ID. For each beam, the data blocks are then put together before handing them over to the next step.

  • Consumers that receive the aggregated blocks of data. A few built-in consumers are implemented in this package, but users can bring their own.

  • Plasma Processors (actually not part of this repository, but in the SDP Receive Processors project) that receive data via the plasma store. These only make sense when using the plasma_writer consumer.

_images/realtime-receive-modules.drawio.svg

Users can also find here the API Reference, plus a number of historical documents under Appendix.

Historically this package was part of the CBF-SDP Emulator project, which now contains only code for the CBF emulator (i.e., a payload sender). The two still share some common code (e.g., the ICD SPEAD Item definitions), which can be found in the SDP Realtime Receive Core project.