PowerTrace System

PowerTrace System Overview | Lauterbach
OVERVIEW

See your Code in Action

Imagine you have full insights of what your embedded system is doing without impacting its real-time performance in any way, creating a record of each step along the way. You could determine the performance of your application and coverage data for certifying your safety critical application. You could bring your embedded designs to market faster and more reliably than ever, while creating a safer and more stable product. This is what trace-based debugging gives you.

Lauterbach’s selection of PowerTrace extension collect information while the system under examination is running normally, without interruption. You can instantly start examining the data, as it is translated and displayed, using the same TRACE32 PowerView GUI you already know from debugging. With this comes all of the control and scriptable actions you are used to from Lauterbach TRACE32 tools.

ABOUT TRACE

Why Real-Time Tracing

Traditional debugging is like taking snapshots of a car race as the cars speed past you: you miss most of what happens during the race. Trace based debugging is like having access to the car’s on-board telemetry, track conditions, and driver actions. Each action and its time is recorded.

Program flow data provided by our PowerTrace extensions shows you exactly which instructions have been executed and how long it took to execute them. By using real-time tracing, you can:

  • Locate hard-to-find bugs that only occur at run-time.
  • Find timing bottlenecks in your code.
  • Ensure that your application meets all timing requirements.
  • Create code coverage reports for certification.

Many embedded processors are capable of providing this level of detail about the software being executed, without interfering with the application being tested. All you need are the right tools to collect any available information and to analyze it: Our PowerTrace.

real-time-trace
BENEFITS

Features Made to Meet All Your Requirements

Tap into over 40 years of trusted experience in capturing and analyzing trace data from Lauterbach’s long history. Continuous improvements, alongside close industry contacts, have allowed Lauterbach to create the best available tools for the embedded industry. Whatever your situation, TRACE32® tools have been optimized to meet your need.

Capture everything

Record those ‘one in a million’ events and discover why they happen. Save ultra long-term test data (hours, days or even weeks of run-time) by streaming the trace data to your local PC, providing almost unlimited sample lengths.

Watch your entire system

Simultaneously inspect any or all of: the hypervisor; all guest operating systems, including their device drivers, interrupt service routines, and middleware; and the application software running on any or all cores.

Homogenous and heterogenous multicore tracing

Record trace from several cores at the same time via the same trace port using a mix of heterogenous or homogenous processor architectures using a single trace tool.

Highest performance trace recording

Never miss a moment with buffer sizes of up to 8 GB and trace port bandwidths of up to 100 GBit/s. PowerTrace provides you with the fastest trace tools, supporting the most trace protocols available today.

COMPONENTS

Extend your PowerDebug X50 with a PowerTrace

The PowerTrace extensions are part of our modular TRACE32 PowerDebug System. PowerTraces connect to the side of your PowerDebug X50 module, which provides the connection to your host PC either via USB 3 or Gigabit Ethernet. The older PowerDebug PRO and PowerDebug II will also benefit from a PowerTrace extension.

Similar to the debug probe plugged to the PowerDebug X50, you need a platform-specific connecting device between your PowerTrace and your target’s trace port – because trace ports come in all shapes and sizes. That connecting device is either a trace probe (aka. trace preprocessor) or – with PowerTrace Serial – it could be just a flex-cable or passive trace adapter.

In case your target board has a combined connector for debugging and tracing, you can connect the Debug Probe to your Lauterbach trace hardware, passing the debug signals through the trace connection.

powertrace-system-block-diagram
PowerTrace Lite II  Lauterbach

PowerTrace II Lite

Cost effective parallel trace extension:

  • 1 GByte memory
  • Parallel trace with up to 36 signals
  • 450 Mbit/s per signal for up to 17 signals
  • 100 MByte/s streaming

PowerTrace III

High-performance parallel trace extension:

  • Up to 8 GByte memory
  • Parallel trace with up to 36 signals
  • 600+ Mbit/s per signal for up to 17 signals
  • 400 MByte/s streaming
lauterbach-powertrace-serial-2

PowerTrace Serial 2

High-performance serial trace extension:

  • Up to 8 GByte memory
  • Serial trace via Aurora or PCIe with up to 8 lanes
  • 22.5 Gbit/s per lane on up to 4 lanes
  • 400 MByte/s streaming
SUPPORTED TRACE PROTOCOLS

Decoding Whatever Trace Protocol Your Target Uses

Trace data emitted by embedded devices follow certain encoding formats, or trace protocols. TRACE32 understands a wide variety of standard and proprietary trace protocols for both system-level and program-flow traces. Below is an introduction to the most common protocols supported by TRACE32.

Embedded Trace Macrocell

The Embedded Trace Macrocell (ETM) provides real-time traces of the program-flow and data-accesses. It is primarily used in Arm processors, but also with Hexagon, Ceva-X and Teak cores.

There are currently 4 versions: ETMv1, ETMv3, PFT and ETMv4.

MIPI Trace Wrapper aka Arm CoreSight Trace

The MIPI Trace Wrapper Protocol (TWP) was designed to combine the trace streams of multiple CPU cores to send them off-chip in a single trace stream. While it was originally designed for Arm's CoreSight debug and trace infrastructure it allows today the simulations tracing of Arm Cortex (ETM), Xtensa (TRAX), ARC (RTT) and many other architectures. Also, further trace sources like ITM/STM are supported.

Nexus 5001

Nexus trace (or IEEE-ISTO 5001) provides real-time traces of program-flow, data-accesses, and bus-activity. It is used with PowerPC, ARC (RTT), Xtensa (TRAX), RH850, and RISC-V.

For many years, Lauterbach has been a major contributor in the defining and shaping of the Nexus standard.

MIPI System Trace

The System Trace Protocol (STP) is designed to analyze the dynamic behaviour of a real-time application on a higher level. System trace messages are either generated by an instrumentation in the software running on a processor or by components monitoring activities outside the processor. STP can support multiple trace streams and emit them directly via an off-chip port or STP can be wrapped in another protocol (TWP). Arm’s System Trace Macrocell (STM) implements such a system trace.

Tessent Embedded Analytics

Tessent Embedded Analytics provides a complete suite of silicon IP for many purposes, including IP for monitoring all major CPUs. It is also used to gather real-time trace information of RISC-V cores.

Trace can be exported over USB, Aurora protocol, or can be embedded into an Arm CoreSight trace.

Infineon Multi-Core Debug Solution

The Multi-Core Debug Solution (MCDS) is an on-chip trigger and trace solution from Infineon, often found in TriCore devices. Trace data can be stored on-chip or exported off-chip using the Aurora Gigabit Trace protocol (AGBT) or DAP streaming.