PLS Programmierbare Logik and Systems’ UDE SimplyTrace functions offer users of its Universal Debug Engine UDE 2023 an extremely fast and simple accessibility to the trace system from different high-end microcontrollers and embedded processors.
Tracing has become a valuable debug technique to find mistakes, timing issues and bottlenecks in embedded software without altering their runtime behaviour when debugging. To make the most of tracing it is necessary that the microcontroller’s configuration must be properly configured which is usually lengthy and requires a an understanding of the trace system of the SoC.
Debugging using trace is a technique employed to find mistakes, timing issues or bottlenecks within software applications especially embedded systems by recording data about the application’s execution during time of execution – like functions or data values, as well as memory accesses. Then, analysing that data to understand its behavior and pinpoint potential reasons for any problems. It is particularly helpful for debugging software that can’t be interrupted to debug purposes because developers can analyze the program’s behavior without interruption; and to improve the performance of programs as it can reveal areas of software that run longer than they should in terms of time to execute.
UDE SimplyTrace functions help simplify this task by automatically linking trace functions that are common in instances to debugger view in a simple manner. For example, the recording of trace can be set in the window for source code to “trace from source code line” or “trace to source code line” and setup is simple as setting an appropriate breakpoint. Additionally, the trace configurations built by using UDE SimplyTrace functions may later be adapted or modified with regular UDE toolboxes for configuration.
Implementation of this feature depends on the development of layers of abstraction every layer containing the functions of trace components on chip in addition to software developers use case scenarios. This method allows for the expansion of the system to add new trace architectures or applications.
Hardware functions that are integrated into microcontrollers in order to observe the execution of programs on their chips, and provide data to debug, analyze performance and optimization. These components comprise trace buffers and trace ports as well as probes that gather information about the flow of instructions and data accesses, as well as program counters and other values when they are running on embedded systems. On-chip trace devices provide valuable information to understand complex applications that run within embedded devices.
UDE SimplyTrace currently implements some of the most popular programs trace functions as well as the most basic use cases for data trace like monitoring variable accesses. Other use cases, such as the register access data trace as well as live-time OS task trace, are being developed.
Expert developers who are familiar with the the tracing capabilities of their microcontroller can make use of UDE SimplyTrace settings as template, and then edit them with standard configuration tools within UDE like UDE’s Universal Emulation Configurator (UEC). This allows them to customize or expand the scope of their work depending on their particular requirements beyond the typical usage scenarios.
UDE SimplyTrace offers a method to make trace useable that operates regardless of the microcontroller is used and reduces training time while accelerating learning curves consequently the system dramatically speeds up and streamlines software testing running-time analysis, run-time testing, and optimization of the system.
Now available with UDE 2023 is UDE SimplyTrace support for Infineon AURIX devices, Arm Cortex MCUs with CoreSight debug and trace system and PowerArchitecture-based devices with NEXUS Class 3 trace capability.