3.2.46. c9, Software Increment Register

The purpose of the Software INCRement (SWINCR) Register is to increment the count of a performance monitor count register.

When writing this register, a value of 1 increments the counter, and a value of 0 does nothing.

The SWINCR Register is:

Figure 3.42 shows the bit arrangement of the SWINCR Register.

Figure 3.42. Software Increment Register format


Table 3.90 shows how the bit values correspond with the SWINCR Register functions.

Table 3.90. Software Increment Register bit functions

BitsFieldFunction

[31:4]

-

Reserved. RAZ, SBZP

[3]

P3

Increment Counter 3

[2]

P2

Increment Counter 2

[1]

P1

Increment Counter 1

[0]

P0

Increment Counter 0


The SWINCR Register only has effect when counter event is set to 0x00.

Table 3.91 shows the results of attempted access for each mode.

Table 3.91. Results of access to the Software Increment Register[37]

 

Secure privileged

Nonsecure privileged

Secure User

Nonsecure User

EN[1]ReadWriteReadWriteReadWriteReadWrite
0

0

Data

0

Data

Undefined

Undefined

Undefined

Undefined

10Data0Data0Data0Data

[37] An entry of Undefined in the table means that the access gives an Undefined Instruction exception when the coprocessor instruction is executed.

[1] The EN bit in c9, User Enable Register enables User mode access of the Performance Monitor Registers.


To access the SWINCR Register, read or write CP15 with:

MRC p15, 0, <Rd>, c9, c12, 4 ; Read SWINCR Register
MCR p15, 0, <Rd>, c9, c12, 4 ; Write SWINCR Register
Copyright © 2006-2009 ARM Limited. All rights reserved.ARM DDI 0344I
Non-Confidential