SlimLinkComponentManager Class
- class ska_mid_cbf_tdc_mcs.slim.slim_link_component_manager.SlimLinkComponentManager(*args: Any, **kwargs: Any)[source]
Bases:
CbfComponentManagerA component manager for a SLIM link, which is made up of a Tx and Rx device from the ds-slim-tx-rx HPS device server.
- property tx_device_name: str
The name of the HPS tx device that the link is associated with.
- Returns:
the tx device name.
- Return type:
- property rx_device_name: str
The name of the HPS rx device that the link is associated with.
- Returns:
the rx device name.
- Return type:
- property tx_idle_ctrl_word: int
The idle control word set in the tx device. Initially generated in the HPS by hashing the tx device’s FQDN.
- Returns:
the tx idle control word.
- Raises:
Tango exception – if the tx device is not set.
- Return type:
- property rx_idle_ctrl_word: int
The last idle control word received in the data stream by the HPS rx device.
- Returns:
the rx idle control word.
- Raises:
Tango exception – if the rx device is not set.
- Return type:
- property bit_error_rate: float
The bit-error rate in 66b-word-errors per second.
- Returns:
The bit error rate.
- Raises:
Tango exception – if the rx device is not set.
- Return type:
- property rx_debug_alignment_and_lock_status: list[bool]
An array holding the debug flag values from the HPS rx device, in the order: [0] 66b block alignment lost [1] 66b block aligned [2] Clock data recovery lock lost [3] Clock data recovery locked
Empty if rx_device_proxy is not connected or tango.DevFailed is caught when accessing rx_debug_alignment_and_lock_status
- property rx_link_occupancy: float
Retrieves and return the link occupancy of the rx device
- Returns:
Link Occupancy of the rx Device, defaults to -1.0 if not possible
- Raises:
Tango exception – if the rx device is not set.
- Return type:
- property tx_link_occupancy: float
Retrieves and return the link occupancy of the tx device
- Returns:
Link Occupancy of the tx Device, defaults to -1.0 if not possible
- Raises:
Tango exception – if the tx device is not set.
- Return type:
- read_counters() list[int][source]
An array holding the counter values from the HPS tx and rx devices in the order: [0] rx_word_count [1] rx_packet_count [2] rx_idle_word_count [3] rx_idle_error_count [4] rx_block_lost_count [5] rx_cdr_lost_count [6] tx_word_count [7] tx_packet_count [8] tx_idle_word_count
- ping_slim_tx_rx() None
Attempts to ping each of the HPS SLIM devices while incrementing a count of the attempts made.
- sync_idle_ctrl_words() None[source]
If IdleCtrlWord is not set in the Tx device, generate a new one and set it in both Tx and Rx devices. Otherwise set the Rx device’s IdleCtrlWord to the Tx device’s IdleCtrlWord.
- verify_connection() tuple[ska_control_model.result_code.ResultCode, str][source]
Performs a health check on the SLIM link. No check is done if the link is not active; instead, the health state is set to UNKNOWN.
- Returns:
A tuple containing a return code and a string message indicating status. The message is for information purpose only.
- Return type:
(ResultCode, str)
- clear_counters() tuple[ska_control_model.result_code.ResultCode, str][source]
Clears the HPS tx and rx device’s read counters.
- Returns:
A tuple containing a return code and a string message indicating status. The message is for information purpose only.
- Return type:
(ResultCode, str)