09.12.2012 Views

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

EN b<br />

Table 3-96 shows the results of attempted access for each mode.<br />

To access the EVTSEL Register, read or write CP15 with:<br />

MRC p15, 0, , c9, c13, 1 ; Read EVTSEL Register<br />

MCR p15, 0, , c9, c13, 1 ; Write EVTSEL Register<br />

System Control Coprocessor<br />

Table 3-96 Results of access to the Event Selection Register a<br />

Secure privileged Nonsecure privileged Secure User Nonsecure User<br />

Read Write Read Write Read Write Read Write<br />

0 Data Data Data Data Undefined Undefined Undefined Undefined<br />

1 Data Data Data Data Data Data Data Data<br />

a. An entry of Undefined in the table means that the access gives an Undefined Instruction exception when the coprocessor<br />

instruction is executed.<br />

b. The EN bit in c9, User Enable Register on page 3-89 enables User mode access of the Performance Monitor Registers.<br />

Value Description<br />

Table 3-97 shows the range values for predefined events that you can monitor using the<br />

EVTSEL Register.<br />

Table 3-97 Values for predefined events<br />

0x00 Software increment. The register is incremented only on writes to the Software Increment Register. See c9,<br />

Software Increment Register on page 3-81.<br />

0x01 Instruction fetch that causes a refill at the lowest level of instruction or unified cache. Each instruction fetch<br />

from normal cacheable memory that causes a refill from outside of the cache is counted. Accesses that do<br />

not cause a new cache refill, but are satisfied from refilling data of a previous miss are not counted. Where<br />

instruction fetches consist of multiple instructions, these accesses count as single events. CP15 cache<br />

maintenance operations do not count as events. This counter increments for speculative instruction fetches<br />

and for fetches of instructions that reach execution.<br />

0x02 Instruction fetch that causes a TLB refill at the lowest level of TLB. Each instruction fetch that causes a<br />

translation table walk or an access to another level of TLB caching is counted. CP15 TLB maintenance<br />

operations do not count as events. This counter increments for speculative instruction fetches and for fetches<br />

of instructions that reach execution.<br />

0x03 Data read or write operation that causes a refill at the lowest level of data or unified cache. Each data read<br />

from or write to normal cacheable memory that causes a refill from outside of the cache is counted. Accesses<br />

that do not cause a new cache refill, but are satisfied from refilling data of a previous miss are not counted.<br />

Each access to a cache line to normal cacheable memory that causes a new linefill is counted, including the<br />

multiple transaction of instructions such as LDM or STM, PUSH and POP. Write-through writes that hit in<br />

the cache do not cause a linefill and so are not counted. CP15 cache maintenance operations do not count as<br />

events. This counter increments for speculative data accesses and for data accesses that are explicitly made<br />

by instructions.<br />

0x04 Data read or write operation that causes a cache access at the lowest level of data or unified cache. Each<br />

access to a cache line to normal cacheable memory is counted including the multiple transaction of<br />

instructions such as LDM or STM. CP15 cache maintenance operations do not count as events. This counter<br />

increments for speculative data accesses and for data accesses that are explicitly made by instructions.<br />

0x05 Data read or write operation that causes a TLB refill at the lowest level of TLB. Each data read or write<br />

operation that causes a translation table walk or an access to another level of TLB caching is counted. CP15<br />

TLB maintenance operations do not count as events. This counter increments for speculative data accesses<br />

and for data accesses that are explicitly made by instructions.<br />

<strong>ARM</strong> DDI 0344K Copyright © 2006-2010 <strong>ARM</strong> Limited. All rights reserved. 3-85<br />

ID060510 Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!