chipscopy.sysmon

class chipscopy.api.sysmon.Sysmon(sysmon_tcf_node)[source]

Sysmon is the top level API for accessing System Monitor in Versal.

refresh_property_group(groups, done=None)[source]
Parameters
  • groups (List[str]) – list of property group names. For SysMon the groups are control, status, sensor, temp, and vccint.

  • done (Optional[DoneHWCommand]) – Optional command callback that will be invoked when the response is received.

Return type

List[str]

Returns

Property name/value pairs from the requested group(s).

initialize_sensors(done=None)[source]

Initializes all of the server side constructs for sysmon, required for most subsequent APIs.

Parameters

done (Optional[DoneHWCommand]) – Optional command callback that will be invoked when the response is received.

Returns

No data is returned directly from this method.

refresh_measurement_schedule(done=None)[source]

Dynamically scans the SysMon to determine the sensors scheduled into the system.

This list will serve as the set from which elements may be chosen for runtime performance analysis.

Parameters

done (Optional[DoneHWCommand]) – Optional command callback that will be invoked when the response is received.

Return type

List[str]

Returns

Returns a list of active NMU, NSU/DDRMC_NOC, and NPS elements. Unrouted, disabled elements are not returned and cannot be monitored.

get_supported_sensors(done=None)[source]

Returns the list of customer sensors for the device. Not to be confused with the measurement schedule. This is the list of all customer sensors that can be configured.

Returns

A list of strings representing all customer sensors for the connected device.

get_all_sensors(done=None)[source]

This function is identical to get_supported_sensors in customer releases. For VnC teams this API offers internal sensors. For information on how to use this API please contact @dkopelov or #chipscope.

Parameters

done (Optional[DoneHWCommand]) – Optional command callback that will be invoked when the response is received.

Return type

dict

Returns

A list of strings representing all sensors for the connected device.

stream_sensor_data(interval, done=None)[source]

This API configures polling in hw_server to stream the data from the measurement schedule (including device temps) at the specified interval.

To process the incoming data, a dm.NodeListener must be declared and registered on this node.

node_listener = dm.NodeListener(sysmon)

session.chipscope_view.add_node_listener(node_listener)

Parameters
  • interval (int) – poll period (in ms)

  • done (Optional[DoneHWCommand]) – Optional command callback that will be invoked when the response is received.

Return type

None