Boards ====== Although PyFABIL supported other FPGA boards such as the UniBoard, ROACH and TPM 1.2, currently the TPM (TPM >= v1.5) is the only board supported by this repository and used in the SKA-Low telescope. FPGABoard --------- This describes a base class for a software representation of an FPGA board which manages plugin loading, memory map interface and protocol interface. All other board classes implement board-specific functionality by adding or overriding FPGA Board functions, using FPGA board as a parent class. .. automodule:: ska_low_sps_tpm_api.boards.fpgaboard TPMGeneric ---------- This describes a generic TPM class which is solely used to determine the version of the TPM at connection. This allows an exception to be raised if the library is used with unsupported TPM hardware (TPM < v1.5). Probably this could be refactored and merged with the TPM board description. .. automodule:: ska_low_sps_tpm_api.boards.tpm_generic TPM --- This provides a software representation of the Tile Processing Module. This provides board level methods which do not fall under the remit of :doc:`plugins`. .. automodule:: ska_low_sps_tpm_api.boards.tpm .. automodule:: ska_low_sps_tpm_api.boards.tpm_hw_definitions