System Monitor - 2023.2 English

Vivado Design Suite User Guide: Programming and Debugging (UG908)

Document ID
Release Date
2023.2 English

The System Monitor (SYSMON) Analog-to-Digital Converter (ADC) measures die temperature and voltage on the hardware device. The SYSMON monitors the physical environment via on-chip temperature and supply sensors. The ADC provides a high-precision analog interface for a range of applications. Refer to the following for more information on specific device architecture.

  • UltraScale Architecture System Monitor User Guide (UG580)
  • 7 Series FPGAs and Zynq 7000 SoC XADC Dual 12-Bit 1 MSPS Analog-to-Digital Converter User Guide (UG480)
  • Versal Adaptive SoC System Monitor Architecture Manual (AM006)
Figure 1. System Monitor

The hw_sysmon data is stored in dedicated registers called status registers accessible through the hw_sysmon_reg object. You can get the contents of the System Monitor registers by using the get_hw_sysmon_reg command.

Every device that supports the System Monitor automatically has one or more hw_sysmon objects created when refresh_hw_device is called. When the hw_sysmon object is created, it is assigned a property for all the temperature and voltage registers, and the control registers. On the hw_sysmon object, the values assigned to the temperature and voltage registers are already translated to Celsius/Fahrenheit and Volts.

Although you can use the get_hw_sysmon_reg command to access the hex values stored in registers of a System Monitor, you can also retrieve values of certain registers as formatted properties of the hw_sysmon object. For example, the following code retrieves the TEMPERATURE property of the specified hw_sysmon object rather than directly accessing the hex value of the register:

set opTemp [get_property TEMPERATURE [lindex [get_hw_sysmons] 0]

Complete list of all the System Monitor commands can be found in Description of hw_sysmon Tcl Commands.