05.02.2013 Views

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

Protected Memory System <strong>Architecture</strong> (PMSA)<br />

Figure B4-9 shows the CP15 c7 cache <strong>and</strong> branch predictor maintenance operations.<br />

CRn opc1 CRm opc2<br />

c7 0 c1 0 ICIALLUIS, Invalidate all instruction caches to PoU Inner Shareable ‡<br />

6 BPIALLIS, Invalidate entire branch predictor array Inner Shareable ‡<br />

c5 0 ICIALLU, Invalidate all instruction caches to PoU<br />

1 ICIMVAU, Invalidate instruction caches by MVA to PoU<br />

6 BPIALL, Invalidate entire branch predictor array<br />

7 BPIMVA, Invalidate MVA from branch predictor array<br />

c6 1 DCIMVAC, Invalidate data† cache line by MVA to PoC<br />

2 DCISW, Invalidate data† cache line by set/way<br />

c10 1 DCCMVAC, Clean data† cache line by MVA to PoC<br />

2 DCCSW, Clean data† cache line by set/way<br />

c11 1 DCCMVAU, Clean data† cache line by MVA to PoU<br />

c14 1 DCCIMVAC, Clean <strong>and</strong> invalidate data† cache line by MVA to PoC<br />

2 DCCISW, Clean <strong>and</strong> invalidate data† cache line by set/way<br />

Read-only Read/Write Write-only † data or unified PoU: Point of Unification<br />

PoC: Point of Coherency<br />

‡ Part of the Multiprocessing Extensions<br />

Figure B4-9 CP15 c7 Cache <strong>and</strong> branch predictor maintenance operations<br />

The CP15 c7 cache <strong>and</strong> branch predictor maintenance operations are all write-only operations that can be<br />

executed only in privileged modes. They are listed in Table B4-19.<br />

For more information about the terms used in this section see Terms used in describing cache operations on<br />

page B2-10. The Multiprocessing Extensions changes the set of caches affected by these operations, see<br />

Multiprocessor effects on cache maintenance operations on page B2-23.<br />

In Table B4-19, the Rt data column specifies what data is required in the register Rt specified by the MCR<br />

instruction used to perform the operation. For more information about the possible data formats see Data<br />

formats for the cache <strong>and</strong> branch predictor operations on page B4-70.<br />

Table B4-19 CP15 c7 cache <strong>and</strong> branch predictor maintenance operations<br />

CRm opc2 Mnemonic Function a Rt data<br />

c1 0 ICIALLUIS Invalidate all instruction caches to PoU Inner Shareable. Also<br />

flushes branch target cache. b<br />

Ignored<br />

c1 1 BPIALLIS Invalidate entire branch predictor array Inner Shareable. Ignored<br />

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

cache. c<br />

Ignored<br />

c5 1 ICIMVAU Invalidate instruction cache line by address to PoU. b, d Address<br />

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

<strong>ARM</strong> DDI 0406B Copyright © 1996-1998, 2000, 2004-2008 <strong>ARM</strong> Limited. All rights reserved. B4-69

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

Saved successfully!

Ooh no, something went wrong!