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
Sep 27, 2020
https://youtu.be/EUDdGqdmTUU Made in "the Alps" Monday: Complete RF Solution: Think Outside the Chip Tuesday: The First Decade of RISC-V: A Worldwide Phenomenon Wednesday: The European... [[ Click on the title to access the full blog on the Cadence Community site. ...
Sep 25, 2020
What do you think about earphone-style electroencephalography sensors that would allow your boss to monitor your brainwaves and collect your brain data while you are at work?...
Sep 25, 2020
Weird weather is one the things making 2020 memorable. As I look my home office window (WFH – yet another 2020 “thing”!), it feels like mid-summer in late September. In some places like Key West or Palm Springs, that is normal. In Pennsylvania, it is not. My...
Sep 25, 2020
[From the last episode: We looked at different ways of accessing a single bit in a memory, including the use of multiplexors.] Today we'€™re going to look more specifically at memory cells '€“ these things we'€™ve been calling bit cells. We mentioned that there are many...

Featured Video

Product Update: Family of DesignWare Ethernet IP for Time-Sensitive Networking

Sponsored by Synopsys

Hear John Swanson, our product expert, give an update on Synopsys’ DesignWare® Ethernet IP for Time-Sensitive Networking (TSN), which is compliant with IEEE standards and enables predictable guaranteed latency in automotive ADAS and industrial automation SoCs.

Click here for more information about DesignWare Ethernet Quality-of-Service Controller IP

Featured Paper

Helping physicians achieve faster, more accurate patient diagnoses with molecular test technology

Sponsored by Texas Instruments

Point-of-care molecular diagnostics (PoC) help physicians achieve faster, more accurate patient diagnoses and treatment decisions. This article breaks down how molecular test technology works and the building blocks for a PoC molecular diagnostics analyzer sensor front end system.

Read the Article

Featured Chalk Talk

Microchip PIC-IoT WG Development Board

Sponsored by Mouser Electronics and Microchip

In getting your IoT design to market, you need to consider scalability into manufacturing, ease of use, cloud connectivity, security, and a host of other critical issues. In this episode of Chalk Talk, Amelia Dalton sits down with Jule Ann Baker of Microchip to chat about these issues, and how the Microchip PIC-IoT WG development board can help you overcome them.

Click here for more information about Microchip Technology PIC-IoT WG Development Board (AC164164)