CNTSCR, Counter Scale Register
The CNTSCR characteristics are:
Purpose
Enables the counter, controls the counter frequency setting, and controls counter behavior during debug.
Configuration
The power domain of CNTSCR is IMPLEMENTATION DEFINED.
This register is present only when FEAT_CNTSC is implemented. Otherwise, direct accesses to CNTSCR are RES0.
For more information, see 'Power and reset domains for the system level implementation of the Generic Timer'.
Attributes
CNTSCR is a 32-bit register.
Field descriptions
The CNTSCR bit assignments are:
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
ScaleVal |
ScaleVal, bits [31:0]
Scale Value
When counter scaling is enabled, ScaleVal is the amount added to the counter value for every counter tick.
Counter tick is defined as one period of the current operating frequency of the Generic counter.
ScaleVal is expressed as an unsigned fixed point number with an 8-bit integer value and a 24-bit fractional value.
CNTSCR.ScaleVal can only be changed when CNTCR.EN == 0. If the value of this field is changed when CNTCR.EN == 1:
- The counter value becomes UNKNOWN.
- The counter value remains UNKNOWN on future ticks of the clock.
On a Warm reset, this field resets to an architecturally UNKNOWN value.
Accessing the CNTSCR
In a system that supports Secure and Non-secure memory maps the CNTControlBase frame, that includes this register, is implemented only in the Secure memory map.
CNTSCR can be accessed through the memory-mapped interfaces:
Component | Frame | Offset | Instance |
---|---|---|---|
Timer | CNTControlBase | 0x10 | CNTSCR |
Accesses on this interface are RW.