antenna_buffer

Overview

store a large snapshot of ADC data in the DDR memory.

Python Class & Methods Index

class pyfabil.plugins.tpm.antenna_buffer.AntennaBuffer(board, samples_per_frame=864, **kwargs)[source]

AntennaBuffer plugin

check_ddr_errors(show_result=True)[source]

Check there are no DDR read or write erros

Returns:

False if there are any errors, True if no erros

Type:

bool

clean_up()[source]

Perform cleanup :return: Success

configure_ddr_write_length(ddr_start_byte_address, write_byte_size)[source]

Configures the amount of DDR to use for Writing. Alternatively, the buffer size can be configured using the method configure_nof_ddr_timestamps()

configure_nof_ddr_timestamps(ddr_start_byte_address, nof_timestamp)[source]

Configures the DDR write memory from the timestamp duration to capture. Alternatively, the buffer size can be configured using the method configure_ddr_write_length()

property ddr_write_busy

Checks if antenna buffer is currently writing to DDR and checks if DDR is ready for read access

Returns:

True if DDR still busy and False when DDR is ready for read access

Type:

bool

initialise()[source]

Initialise AntennaBuffer

one_shot(start_time=-1, delay=256)[source]

Method that will run the DDR write and read antenna buffer operations one after another for 1 timestamp worth of data. Mainly used for debugging the Plugin DDR write & read methods

read_ddr()[source]

Reads AntennaBuffer data from DDR and configures AntennaBuffer timestamp header

select_nof_antenna(antennas)[source]

Selects the number of antenna to calculate the DDR byte size per timestamp and to assign the antenna IDs

Param:

nof_antenna

Type:

integer list

set_download(mode='SDN', payload_length=8192)[source]

Selects the Tx mode and payload length

status_check()[source]

Perform status check :return: Status

stop_now()[source]

Method to stop the antenna buffer from writing. This must be used to stop the antenna buffer when it runs in continuous mode

wait_for_ddr_read_access()[source]

Waits until DDR is ready for read access

write_ddr(start_time=-1, delay=256, continuous_mode=False)[source]

Method to write antenna buffer data into the DDR

pyfabil.plugins.tpm.antenna_buffer.antenna_buffer_implemented(func)[source]

Checks if the antenna buffer is implemented in the firmware. This is called as a decorator from tile methods

Returns:

True if antenna buffer is implemented, else raise Exception error