TRCCCCTLR, Cycle Count Control Register
The TRCCCCTLR characteristics are:
Set the threshold value for cycle counting.
External register TRCCCCTLR bits [31:0] are architecturally mapped to AArch64 System register TRCCCCTLR[31:0] .
RW fields in this register reset to architecturally UNKNOWN values.
This register is present only when ETE is implemented and TRCIDR0.TRCCCI == 0b1. Otherwise, direct accesses to TRCCCCTLR are RES0.
TRCCCCTLR is a 32-bit register.
The TRCCCCTLR bit assignments are:
THRESHOLD, bits [11:0]
Sets the threshold value for instruction trace cycle counting.
The minimum threshold value that can be programmed into THRESHOLD is given in TRCIDR3.CCITMIN. If the THRESHOLD value is smaller than the value in TRCIDR3.CCITMIN then the behavior is CONSTRAINED UNPREDICTABLE. That is, cycle counts might or might not be included in the trace and the cycle count threshold is not known.
Writing a value of zero when TRCCONFIGR.CCI is set to enable instruction trace cycle counting, results in CONSTRAINED UNPREDICTABLE behavior. That is, cycle counts might or might not be included in the trace and the cycle count threshold is not known.
On a Trace unit reset, this field resets to an architecturally UNKNOWN value.
Accessing the TRCCCCTLR
Must be programmed if TRCCONFIGR.CCI == 0b1.
Writes are CONSTRAINED UNPREDICTABLE if the trace unit is not in the Idle state.
TRCCCCTLR can be accessed through the external debug interface:
This interface is accessible as follows:
- When !AllowExternalTraceAccess(), or OSLockStatus() or !IsTraceCorePowered() accesses to this register generate an error response.
- Otherwise accesses to this register are RW.