DMON's GUI provides a schematic display of the functional units on the SOC. One or more of these can be selected for detailed examination with register values updated in real-time.
Drill down to register bit level
Register contents may be displayed along with the interpretation of the different bits. These may be updated in real-time depending on the register.
DMON can act as a server with a remote DMON client connected over the Internet. The server is connected directly to the target. The client-server link is secured with SSL.
The user on the client can request that a session be kept alive, then close the client and reconnect to the session later from any computer using the session-id.
The client can load files onto the target directly, or transfer them to the server and load them from there.
Proprietary hardware support
The target system to which DMON is connected may include special purpose devices developed by the user. An example is an SOC implemented on an FPGA, which is likely to contain user defined devices. Using standard DMON commands the user can interact with these devices, and can provide support for them by creating batch files of DMON commands or scripts in TCL or Python. Alternatively a user can add support for a user defined device to DMON itself, extending DMON’s built-in commands and other features.
Target data graphing and storage
DMON allows the user to monitor addresses on the board by periodically sampling them. The user can configure a start condition, a stop condition and a number of addresses to poll, and choose one of several possible display formats. The data can also be stored in a file.
TCL and Python scripting
DMON can process scripts involving its own commands, TCL or Python.
Scripts can be triggered by a change in a target memory location. When the change occurs, the actions in the script are carried out, and typically the trigger is reset.