FAQs for ARM/Cortex Trace (parallel)

The embedded tools company

Search FAQs

PDF document ( 113KB / 27-Mar-2022 )

What are FIFOFULLs in the trace?
Ref: 0502

A FIFOFULL happens when the trace sources are producing more information than the trace infrastructure of the chip could handle. As a consequence, trace packets are lost.
There are two solutions to avoid FIFOFULLs

1. The trace infrastructure needs to run faster to increase the bandwidth. Check that the trace clock is running a the fastest supported rate and use the maximum port speed and width.

2. The trace sources need to send less trace information.
  • Disable all trace sources that are not required for the use case e.g. data trace or internal timing information.
  • Selective program and/or data trace by using filters (TraceEnable, TraceData, TraceON, TraceOFF)
  • STALL the CPU or suppress the output of the data flow information if a FIFO overflow is likely to happen depending on the ETM version.
Please refer for more information to the following documents

What can be the reason of "BAD TRACE PACKET" in the trace?
Ref: 0500

"BAD TRACE PACKET" generally means that invalid trace data was recorded. Invalid trace data appears due to wrong sampling points, voltage threshold, too high trace clock, electrical issues on the board (e.g. crosstalk) or a broken ETM implementation on the chip.

Please refer for more information to the "Diagnosis" chapter from the "AutoFocus User's Guide"

What does HARDERROR or FLOWERROR mean?
Ref: 0194

HARDERRORS means that the trace data is not valid. Possible reasons are:
  • Trace port multiplexed with other IO functions (no valid trace data)
  • Trace signal capturing failed (setup/hold time violations)
  • Wrong version of PowerTrace module
  • Target frequency too high
FLOWERRORS means that the traced data is not consistent with the code in the target memories. Possible reasons are:
  • Wrong trace data (as result of HARDERRORS)
  • Memory contents have changed (e.g. self modifying code)
Please refer for more information to the "Diagnosis" chapter from the "AutoFocus User's Guide"

What is different between pin 14 (VTref(JTAG)) and pin 12 (VTref(ETM)) on ETM MICTOR connector?
Ref: 0192

On the ETM MICTOR connector are both ETM trace and JTAG signals available, but VTref (pin12) is not splitted into JTAG and ETM by the ARM specification. Lauterbach has defined:
pin12 VTref(ETM)
pin14 VTref(JTAG)
On the TRACE32 preprocessor the VTref is routed to the ETM buffers and VCC is routed to JTAG buffers. Herewith it is possible to use different voltage levels on ETM and JTAG pins.

Which function does the EXTRIG on the ETM MICTOR connector have?
Ref: 0191

The function of EXTRIG is not exactly defined by ARM, it can be input or output. On TRACE32 side it can be used to trigger the TRACE32 hardware (input with 10 kOhm pull-down) on some trace hardware.

Which trace port bandwidth is supported with the different TRACE32 modules and ETM preprocessors?
Ref: 0281

Please refer to the "Diagnosis" chapter from the "AutoFocus User's Guide"

Copyright © 2023 Lauterbach GmbH, Altlaufstr.40, 85635 Höhenkirchen-Siegertsbrunn, Germany   Impressum     Privacy Policy
The information presented is intended to give overview information only.
Changes and technical enhancements or modifications can be made without notice. Report Errors
Last generated/modified: 02-Jan-2023