Ensuring good ETM Trace quality

Technical Note 200304

Targets:
Arm

Component:
Debugger

Updated:
3/11/2020 12:25 PM

Introduction

To ensure that your ETM trace hardware is configured for optimal performance, follow the instructions in this Technical Note.

Discussion

General hints

For good trace performance, you need:

  • good GND
  • short/equal length for signal cables
  • reliable, external power for the board

ETM trace quality

In some cases, you might see the following message in the Debug Log window:

Trace validation FAILED. Reason: Incorrect trace ID

Check trace pin configuration

In most cases, the reason for the above is that the ETM trace pins are configured as GPIO pins by the application running in the MCU. On many MCUs, the ETM trace pins can be configured as other functions (SPI, GPIO etc.), and this will stop the ETM trace from working.

Check trace line length

Another reason for this error might be ETM trace connection lines of bad quality, for example, different length jumper cables soldered in place temporarily.

Since high-speed ETM trace means high frequency signals, the signal lines need to be short and of equal length. Check that all lines that should be connected to GND are connected to good GND.

Check power source

We have seen cases where powering the board via the debug probe works at first when the MCU clock speed is low. But then, increasing the MCU clock speed leads to increased power usage, which may cause trouble for ETM tracing. Powering the board with external power solves this.

ETM trace pin connections

In some cases, you might also see the following message in the Debug Log window:

Trace: Calibration failed - capture will not start

Check board schematics

Investigate the board schematics. Check that all four ETM trace lines are physically connected from the MCU to the debug connector.

Check trace pin enabling

Investigate that ETM trace pins are enabled and configured for ETM trace usage. This configuration is normally done by C-SPY debugger macros.

For example, for ST STM32F4x devices, the Debug Log window should show that the arm\config\debugger\ST\STM32F4xx.dmac macro file is loaded.

Open the dmac file corresponding to your MCU device in an editor to see which MCU pins are configured for ETM trace. See also Technical Note 190507.

Conclusion

To ensure good ETM trace performance, follow the recommendations above.

 

All product names are trademarks or registered trademarks of their respective owners.

 

© IAR Systems 1995-2020 - All rights reserved.

We use cookies on this website to provide you with a better experience. You need to accept cookies to continue using this site. Cookies