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
Jan 22, 2021
Amidst an ongoing worldwide pandemic, Samtec continues to connect with our communities. As a digital technology company, we understand the challenges and how uncertain times have been for everyone. In early 2020, Samtec Cares suspended its normal grant cycle and concentrated ...
Jan 22, 2021
I was recently introduced to the concept of a tray that quickly and easily attaches to your car'€™s steering wheel (not while you are driving, of course). What a good idea!...
Jan 22, 2021
This is my second post about this year's CES. The first was Consumer Electronics Show 2021: GM, Intel . AMD The second day of CES opened with Lisa Su, AMD's CEO, presenting. AMD announced new... [[ Click on the title to access the full blog on the Cadence Community...
Jan 20, 2021
Explore how EDA tools & proven IP accelerate the automotive design process and ensure compliance with Automotive Safety Integrity Levels & ISO requirements. The post How EDA Tools and IP Support Automotive Functional Safety Compliance appeared first on From Silicon...

featured paper

Overcoming Signal Integrity Challenges of 112G Connections on PCB

Sponsored by Cadence Design Systems

One big challenge with 112G SerDes is handling signal integrity (SI) issues. By the time the signal winds its way from the transmitter on one chip to packages, across traces on PCBs, through connectors or cables, and arrives at the receiver, the signal is very distorted, making it a challenge to recover the clock and data-bits of the information being transferred. Learn how to handle SI issues and ensure that data is faithfully transmitted with a very low bit error rate (BER).

Click here to download the whitepaper

Featured Chalk Talk

RX23W Bluetooth

Sponsored by Mouser Electronics and Renesas

Adding Bluetooth to your embedded design can be tricky for IoT developers. Bluetooth 5 brings a host of new capabilities that make Bluetooth integration more compelling than ever. In this episode of Chalk Talk, Amelia Dalton chats with Michael Sarpa from Renesas about the cool capabilities of Bluetooth 5, and how you can easily integrate them into your next project.

More information about Renesas Electronics RX23W 32-bit Microcontrollers