Skip to main content

HARDERRORs, FIFOFULLs and FLOWERRORs in the trace - Knowledgebase / Tracing - Lauterbach Support

HARDERRORs, FIFOFULLs and FLOWERRORs in the trace

Authors list

This FAQ explains the three main error types encountered during trace recording and provides troubleshooting steps.

FIFOFULL

A FIFOFULL occurs when the trace sources produce data faster than the trace infrastructure (the chip/interface) can process it. This results in lost trace packets.

You can search for FIFOFULL errors in the trace recording using the following command:

Trace.Find FIFOFULL /ALL

To resolve a FIFOFULL, you must either increase the bandwidth or decrease the data volume:

1. Increase Bandwidth:

  • Ensure the trace clock is running at the maximum supported frequency.

  • Use the highest available port speed and bus width.

2. Decrease Data Volume:

  • Disable unused sources: Turn off trace sources not required for your current debug session (e.g., disable data trace if only instruction trace is needed).

  • Use Filters: Apply selective program and/or data trace by using trace filters (TraceEnable, TraceData, TraceON, TraceOFF). Refer for more information to the description of the command Break.Set in the General Commands Reference Guide B.

  • Some processor architectures allow stalling the CPU or suppress the output of the data flow information if a FIFO overflow is likely to happen.


HARDERROR

A HARDERROR indicates that the captured trace data is invalid or corrupted.

Common Causes & Troubleshooting:

  • Setup/hold time violations or signal capturing failures.

  • The trace port is multiplexed with other I/O functions, preventing valid data capture.

  • The target frequency is set too high for the current trace configuration.

  • An incorrect version of the PowerTrace module is being used.


FLOWERROR

A FLOWERROR indicates that the captured trace data is logically inconsistent with the current state of the target memory.

Common Causes:

  • The trace data itself is invalid (often a secondary effect of a HARDERROR).

  • Missing task switches in the trace in case of OS trace

  • Memory contents have changed (e.g. self modifying code)

You can search for FLOWERROR occurrences in the trace recording using the following command:

Trace.Find FLOWERROR /ALL


Helpful Unhelpful

10 of 10 people found this page helpful

Add a comment

ID-0
To prove you are a human, please tell us the text you see in the CAPTCHA image