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.

System Control Coprocessor<br />

Note<br />

• Reading from c7, except for reads from the Physical Address Register (PAR), causes an<br />

Undefined Instruction exception.<br />

• All accesses to c7 can only be executed in a privileged mode of operation, except Data<br />

Synchronization Barrier, Flush Prefetch Buffer, and Data Memory Barrier. These can be<br />

executed in User mode. Attempting to execute a privileged instruction in User mode<br />

results in an Undefined Instruction exception.<br />

• For information on the behavior of the invalidate, clean, and prefetch operations in the<br />

secure and nonsecure operations, see the <strong>ARM</strong> Architecture <strong>Reference</strong> <strong>Manual</strong>.<br />

Data formats for the cache operations<br />

The possible formats for the data supplied to the cache maintenance and prefetch buffer<br />

operations depend on the specific operation:<br />

• Set and way<br />

• MVA on page 3-70<br />

• SBZ on page 3-71.<br />

Table 3-73 shows the data value supplied to each cache maintenance and prefetch buffer<br />

operations, See also Coprocessor instructions on page 16-10 for the effect on these operations<br />

of the setting of bit [20] of the Auxiliary Control Register.<br />

Set and way<br />

Table 3-73 Register c7 cache and prefetch buffer maintenance operations<br />

CRm Opcode_2 Function Data<br />

c5 0 Invalidate all instruction caches to PoU. Also flushes branch target cache. a SBZ<br />

c5 1 Invalidate instruction cache line by MVA to PoC. MVA<br />

c5 4 Prefetch flush. The prefetch buffer is flushed. b SBZ<br />

c5 6 Invalidate entire branch predictor array. SBZ<br />

c5 7 Invalidate MVA from branch predictor array MVA<br />

c6 1 Invalidate Data or Unified cache line by MVA to PoC. MVA<br />

c6 2 Invalidate Data or Unified cache line by Set/Way. Set/Way<br />

c10 1 Clean Data or Unified cache line by MVA to PoC. MVA<br />

c10 2 Clean Data or Unified cache line by Set/Way. Set/Way<br />

c11 1 Clean Data or Unified cache line by MVA to PoU. MVA<br />

c14 1 Clean and Invalidate Data or Unified cache line by MVA to PoC. MVA<br />

c14 2 Clean and Invalidate Data or Unified cache line by Set/Way. Set/Way<br />

a. Only applies to separate instruction caches, does not apply to unified caches.<br />

b. Available in User mode.<br />

Figure 3-32 on page 3-70 shows the set and way format for invalidate and clean operations.<br />

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

ID060510 Non-Confidential

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

Saved successfully!

Ooh no, something went wrong!