tpm_test_firmware
Overview
This is the class which contains methods for monitoring and control of FPGA firmware for SKA-Low TPM. These methods are the basis for all TPM versions.
Note
Inheritance means TPM 1.6 and higher can have additional or different methods if overloaded.
Python Class & Methods Index
Hardware functions for the TPM 1.2 hardware.
This is a transcript of the corresponding class from the pyaavs library, with code style modified for SKA coding conventions. It depends heavily on the pyfabil low level software and specific hardware module plugins.
- class pyaavs.plugins.tpm.tpm_test_firmware.TpmTestFirmware(board: Any, **kwargs: Any)[source]
FirmwareBlock tests class.
- check_ddr_user_reset_counter(show_result=True) int [source]
Return value of DDR user reset counter - increments each falling edge of the DDR generated user logic reset.
- check_ddr_voltage() None [source]
Check if DDR voltage regulator is enabled, if not enable it. TPM 1.2 only
- download_beamforming_weights(weights: list[float], antenna: int) None [source]
Apply beamforming weights.
- Parameters:
weights – Weights array
antenna – Antenna ID
- initialise_firmware() None [source]
Initialise firmware components.
- Raises:
BoardError – cannot configure JESD core
- send_channelised_data(number_of_samples: int = 128, first_channel: int = 0, last_channel: int = 511) None [source]
Send channelized data from the TPM.
- Parameters:
number_of_samples – contiguous time samples sent per channel
first_channel – First channel transmitted
last_channel – Last channel transmitted + 1 (python range convention)
- send_channelised_data_continuous(channel_id: int, number_of_samples: int = 128) None [source]
Continuously send channelised data from a single channel.
- Parameters:
channel_id – Channel ID
number_of_samples – contiguous time samples sent per channel
- send_channelised_data_narrowband(band_frequency: int, round_bits: int, number_of_samples: int = 128) None [source]
Continuously send channelised data from a single channel in narrowband mode.
- Parameters:
band_frequency – central frequency (in Hz) of narrowband
round_bits – number of bits rounded after filter
number_of_samples – samples per lmc packet