feature article
Subscribe Now

Visualizing Real-Time Issues

Swedish Company Gives Developers Better Insight

I had planned this piece some months ago, but suddenly it has become tied into a major breaking news story.

In the last ten or so years, the RTOS (Real-Time Operating System) has moved from being a relatively rare beast to becoming almost commonplace, as applications, particularly those built as embedded systems, have demanded communication and, particularly in the Internet of Things (IoT), have added sensing. To manage the complexities of such a system, the developer divides all the software running on the system into tasks: small blocks of code that include functions like managing the human machine interface, control, and communication. The key to success lies in understanding which task is to be run when. To help the RTOS make the decision, developers assign priorities to each task. At set intervals, the RTOS checks the tasks that are ready to run and runs the one with the highest priority – and, according to rules of priority, manages them. This multitasking makes it look as though the tasks are running independently and concurrently. Neat, but one can instantly see the opportunities for problems. Some tasks with low priorities may never get to run, and, if there are several tasks with high priority, which one should be executed? Tasks are not independent; one task may require input from another, or need to provide output to a third. They may need to share things, like a communication channel, or even areas of memory – and, in some cases, access may be blocked for a higher priority task by a lower priority one.

Such issues, and others, may cause the system to slow down, to produce incorrect results, or to crash. Finding out what is causing these problems is difficult, and this is why Percepio, a Swedish-based company, created Tracealyzer, which they describe as a trace visualisation tool. There are tools that take trace information from an executing system to discover how it is running and what problems it is encountering. Where Tracealyzer scores is that it provides over 25 different and interconnected graphical views of that information, which expose the run-time behaviour at system or application level. The developer can manipulate these views to understand the issues that the system is experiencing far faster than grappling with a simple trace report.

Tracealyzer is developed for 32-bit hardware, and it installs monitoring software on the target system for instrumentation, which the company claims offers minimal overhead. The information can be streamed over a JTAG or other debug probes, but it can also be accessed through a USB port or by TCP/IP for FreeRTOS, Micrium, and SafeRTOS systems, with others in development. There is a long list of current targets, including many processors based on Arm Cortex families as well as Renesas, Microchip, and Atmel families.

Supported RTOSs include FreeRTOS, SafeRTOS, Micrium µC/OS, ThreadX, Keil RTX5 and VxWorks. While Tracealyzer explicitly supports Eclipse-based IDEs and market leaders such as IAR Embedded Workbench, Keil µVision (MDK), Atmel Studio, and Microchip MPLAB X IDE, it can also be used with any IDE that allows you to save RAM contents to a host-side file.
Percepio say that, while Tracealyzer is primarily intended for use in development, it can also find a role when deployed systems have problems, and the company has customers who ship products with tracing enabled and have used it to resolve problems arising in the field.

The web site, Percepio.com, has a mass of supporting material, including white papers, tutorials and case studies, and it is perhaps one of the best I have seen for such support. You can also download a version for evaluation, which comes with demo trace for a wide range of visualisations.

Now the news angle.

Firstly, and a bit on the nerd news angle, is the announcement that Percepio and UltraSOC have announced a partnership. UltraSOC is a Cambridge, England based IP company supplying a monitoring and analytics platform for integration into complex ICs, including processors, ASICs and SOCs. Since I last wrote about them two years ago, UltraSOC has struck deals with a wide range of companies, including Arm, Imagination (plus a separate deal with MIPS), and Microsemi, and they are very active in the RISC V community. The IP, which puts little overhead on the chip’s real estate and its footprint, provides information to assist in development, debug, and optimisation of a device. By integrating this with Tracealyzer, the developer no longer has to mediate between the hardware team and the software team when each blames the other for a problem.

An announcement with potentially much wider implications came from Amazon Web Services (AWS). AWS made a series of major announcements at its annual conference in November. One of them was the launch of Amazon FreeRTOS. This is a new release (v10) of the existing FreeRTOS, with added libraries. Now, why is Amazon pushing an RTOS? Simple really – AWS is the dominant player in the public cloud business – with close to 80% of the market, according to Gartner. Despite the concentration on the “Things” at the periphery, a vital part of the IoT is the central data storage and analysis, and, in most cases, this is from resources rented from the public cloud providers. (Interestingly, IBM’s approach to the IoT is “Use Watson” – which is described as an AI platform.) AWS has a huge number of offerings for the IoT, including AI at the edge, and analytics, machine learning, etc. in the cloud. Clearly AWS want to make it easy for their users to design the edge devices, since, as well as announcing the Amazon FreeRTOS, they also announced that they are creating an ecosystem with the initial partners: Arm, Percepio IAR Systems (an embedded tools supplier) and Wittenstein high integrity systems, which offers the commercial versions of FreeRTOS, OpenRTOS, and SafeRTOS. SafeRTOS is a safety-certified version, being pre-certified to IEC 61508-3 SIL 3 and ISO 26262 ASIL D.

I would, as European editor, be remiss in not pointing out that all of these companies, plus UltraSOC, are based in Europe, even if Arm is no longer European owned.

One of the exciting things about writing about technology is seeing how, as things get more complicated, talented people come up with the tools to help manage that complexity. Tracealyzer is just such a tool.

featured blogs
Aug 1, 2021
https://youtu.be/I0AYf5V_irg Made in Long Ridge Open Space Preserve (camera Carey Guo) Monday: HOT CHIPS 2021 Preview Tuesday: Designed with Cadence Video Series Wednesday: July Update Thursday:... [[ Click on the title to access the full blog on the Cadence Community site. ...
Jul 30, 2021
You can't attack what you can't see, and cloaking technology for devices on Ethernet LANs is merely one of many protection layers implemented in Q-Net Security's Q-Box to protect networked devices and transaction between these devices from cyberattacks. Other security technol...
Jul 29, 2021
Learn why SoC emulation is the next frontier for power system optimization, helping chip designers shift power verification left in the SoC design flow. The post Why Wait Days for Results? The Next Frontier for Power Verification appeared first on From Silicon To Software....
Jul 28, 2021
Here's a sticky problem. What if the entire Earth was instantaneously replaced with an equal volume of closely packed, but uncompressed blueberries?...

featured video

Intelligent fall detection using TI mmWave radar sensors

Sponsored by Texas Instruments

Actively sense when a fall has occurred and take action such as sending out an alert in response. Our 60GHz antenna-on-package radar sensor (IWR6843AOP) is ideal for fall detection applications since it’s able to detect falls in large, indoor environments, can distinguish between a person sitting and falling, and utilizes a point cloud vs a person’s identifiable features, which allows the sensor to be used in areas where privacy is vital such as bathrooms and bedrooms.

Click here to explore the AOP evaluation module

featured paper

Configure the backup voltage in a reversible buck/boost regulator

Sponsored by Maxim Integrated

This application note looks at a reference circuit design using Maxim’s MAX38888, which provides a supercapacitor-based power backup in the absence of the system rail by discharging its stored charge. The backup voltage provided by the regulator from the super cap is 12.5% less than the system rail when the system rail is removed. This note explains how to maintain the backup voltage within 5% of the minimum SYS charge voltage.

Click to read more

featured chalk talk

Power Profiler II

Sponsored by Mouser Electronics and Nordic Semiconductor

If you are working on a low-power IoT design, you are going to face power issues that can get quite complicated. Addressing these issues earlier in your design process can save you a lot of time, effort, and frustration. In this episode of Chalk Talk, Amelia Dalton chats with Kristian Sæther from Nordic Semiconductor about the details of the new Nordic Power Profiler Kit II - including how it can measure actual current, help you configure the right design settings, and show you a visualized power profile for your next design.

Click here for more information about the Nordic Semiconductor Power Profiler Kit II (PPK2)