DigitalDownConverter — Overview

Package Metadata

Field

Value

Name

dbbc

Version

1.0.0

Description

Processing for VLBI modes using the EDD backends

Authors

Niclas Esser nesser@mpifr.de, Tobias Winchen twinchen@mpifr.de

Entry Points

Command

Module

edd_ddc_processor

edd.dbbc.ddc_processor:main_cli

edd_vdif_packer

edd.dbbc.vdif_packer:main_cli

edd_field_system_interface

edd.dbbc.field_system.interface:main_cli

edd_fs_mock

edd.dbbc.field_system.fs_mock:main_cli

Dependencies

  • aiokatcp

  • setuptools_scm

  • edd-core

  • redis

  • numpy

  • scipy

  • matplotlib

Description

The DigitalDownConverter (DDC) is an EDD pipeline that receives wideband time-domain data from the MPIFR EDD Packetizer and performs GPU-accelerated digital down-conversion to extract narrow subbands. Each LO frequency produces a lower and upper sideband channel. The pipeline supports one or two polarisations by using one GPU per polarisation on separate NUMA nodes.

Processed subbands are published as SPEAD2 multicast streams in the DigitalDownConverter:1 format for consumption by a downstream VDIFPacker, or written directly to disk.

Responsibilities

  • Receive time-domain data via SPEAD2 (MPIFR_EDD_Packetizer:2 format)

  • Perform polyphase filtering and digital down-conversion on GPU

  • Publish per-channel subband streams via SPEAD2 multicast or write to disk

  • Expose a KATCP control interface for remote configuration and lifecycle management

  • Report output data rate via the output-rate sensor

Operational Context

Item

Value

Upstream

MPIFR Packetizer (4 Gsps ADC)

Downstream

VDIFPacker pipeline, or disk

Control interface

KATCP on --host / --port

GPU required

Yes — one per polarisation

NUMA sensitive

Yes — capture process pinned to input NIC NUMA node

Container image

edd_dbbc

Ansible role

roles/ddc_processor/