-
Jan David Mol authoredJan David Mol authored
SDP
The sdp == DeviceProxy("STAT/SDP/1")`
device controls the digital signal processing in SDP, performed by the firmware on the FPGAs on the Uniboards. Central to its operation is the mask (see also :ref:`attribute-masks`):
TR_fpga_mask_RW: |
Controls which FPGAs will actually be configured when attributes referring to FPGAs are written.
|
---|
Typically, N_fpgas == 16
.
See the following links for a full description of the SDP monitoring and control points:
- https://support.astron.nl/confluence/pages/viewpage.action?spaceKey=L2M&title=L2+STAT+Decision%3A+SC+-+SDP+OPC-UA+interface
- https://plm.astron.nl/polarion/#/project/LOFAR2System/wiki/L2%20Interface%20Control%20Documents/SC%20to%20SDP%20ICD
Basic configuration
The following points are significant for the operations of this device:
FPGA_processing_enable_R: |
Whether the FPGA is processing its input.
|
||
---|---|---|---|
TR_fpga_communication_error_R: |
Whether the FPGAs can be reached.
|
Data-quality information
The following fields describe the data quality:
FPGA_signal_input_mean_R: |
Mean value of the last second of input (in ADC quantisation units). Should be close to 0.
|
||
---|---|---|---|
FPGA_signal_input_rms_R: |
Root means square value of the last second of input (in ADC quantisation units).
|
Version Information
The following fields provide version information:
FPGA_firmware_version_R: |
The active firmware images.
|
||
---|---|---|---|
FPGA_hardware_version_R: |
The versions of the boards hosting the FPGAs.
|
||
TR_software_version_R: |
The version of the server providing the OPC-UA interface.
|
Waveform Generator
The antenna input of SDP can be replaced by an internal waveform generator for debugging and testing purposes. The generator is configured per antenna per FPGA:
Note
The Waveform Generator needs to be toggled off and on using FPGA_wg_enable_RW
for new settings to become active on the station.
FPGA_wg_enable_RW: |
Whether the waveform generator is enabled for each input.
|
||
---|---|---|---|
FPGA_wg_phase_RW: |
The phases of the generated waves (in degrees). The generator needs to be turned off and on if this is changed, in order to bring the generators in sync.
|
||
FPGA_wg_frequency_RW: |
The frequencies of the generated waves (in Hz). The frequency of a subband
|
||
FPGA_wg_amplitude_RW: |
The amplitudes of the generated waves. Useful is a value of
|
Usage example
For example, the following code inserts a wave on LBA subband 102 on FPGAs 8 - 11:
# configure FPGAs to control
sdp.TR_fpga_mask_RW = [False] * 8 + [True] * 4 + [False] * 4
# configure waveform generator
sdp.FPGA_wg_phase_RW = [[0] * 12] * 16
sdp.FPGA_wg_amplitude_RW = [[0.1] * 12] * 16
sdp.FPGA_wg_frequency_RW = [[102 * 200e6/1024] * 12] * 16
# toggle and enable waveform generator
sdp.FPGA_wg_enable_RW = [[False] * 12] * 16
sdp.FPGA_wg_enable_RW = [[True] * 12] * 16