Agilex™ 5 ES Device Errata and User Guidelines

ID 825514
Date 12/09/2024
Public
Document Table of Contents

3.3.4. 1456966: TPIU stops accepting trace when the trigger counter is written

Description

This erratum affects the following components:

  • Trace Port Interface Unit (TPIU)
    • css600_tpiu
    • Component Revisions: r0p0, r1p0

With this erratum the TPIU stalls the ATB slave interface indefinitely.

Conditions

  • The TPIU register FFCR.EnFCont is 1, which enables Continuous Formatting Mode.
  • The TPIU register TCVR was written with the value 1 or higher, which enabled trigger byte counting.
  • The TPIU register bit STMR.TrgRun is 1. The trigger byte counter was loaded with the TCVR value and the trigger byte counter decrements depending on the trace traffic on the ATB slave interface.
  • The TPIU register bit FFCR.StopTrig is 0.
  • The TPIU register bit FFCR.StopFl is 1 or 0.
  • The generation of upstream flush requests is enabled by having set at least one of the TPIU register bits FFCR.FonMan, FFCR.FonTrig, or FFCR.FOnFlIn, and an upstream flush is initiated by one of these mechanisms.
  • The upstream flush is subsequently acknowledged by the system and the TPIU proceeds to drain internal buffers.
  • The TPIU register TCVR is written with the value zero before the TPIU has drained its internal buffers.

Impact

The following implications persist until the TPIU is reset:

  • The ATB slave interface is stalled, accepting no more trace.
  • The TPIU does not stop, and FFSR.FtStopped is never set to 1.
  • FFSR.FlInProg remains at the value 1.

Workaround

Debug tools must not write to TCVR while the TPIU is not stopped, and must only change TCVR when FFSR.FtStopped==1.

Category

Category C