Caches
3-12
Copyright © ARM Limited 2000. All rights reserved.
3.4
Cache lockdown
To provide predictable code behavior in embedded systems, a mechanism is provided
for locking code into the ICache and DCache respectively. For example, you can use
this feature to hold high-priority interrupt routines where there is a hard real-time
constraint, or to hold the coefficients of a DSP filter routine in order to reduce external
bus traffic.
You can lock down a region of the ICache or DCache by executing a short software
routine, taking note of these requirements:
•
the program must be held in a noncachable area of memory
•
the cache must be enabled and interrupts must be disabled
•
software must ensure that the code or data to be locked down is not already in
the cache
•
if the caches have been used after the last reset, the software must ensure that the
cache in question is cleaned, if appropriate, and then flushed.
You can carry out lockdown in the DCache using CP15 register 9. ICache lockdown
uses both CP15 registers 7 and 9.
As described in Cache architecture on page 3-2, the ARM946E-S ICache and DCache
each comprise four segments. You can perform lockdown with a granularity of one
segment. The smallest space that you can lock down is one segment (one quarter of
cache size). Lockdown starts at segment zero, and can continue until three of the four
segments are locked.
3.4.1
Locking down the caches
The procedures for locking down a segment in the ICache and DCache are slightly
different. In both cases you must:
1.
Put the cache into lockdown mode by programming register 9.
2.
Force a linefill.
3.
Lock the corresponding data in the cache.
Summary of Contents for ARM946E-S
Page 1: ...ARM DDI 0155A ARM946E S Technical Reference Manual ...
Page 6: ...vi Copyright ARM Limited 2000 All rights reserved ARM DDI 0155A 04 Limited Confidential ...
Page 54: ...Programmer s Model 2 34 Copyright ARM Limited 2000 All rights reserved ARM DDI 0155A ...
Page 70: ...Caches 3 16 Copyright ARM Limited 2000 All rights reserved ARM DDI 0155A ...
Page 78: ...Protection Unit 4 8 Copyright ARM Limited 2000 All rights reserved ARM DDI 0155A ...
Page 112: ...Coprocessor Interface 7 14 Copyright ARM Limited 2000 All rights reserved ARM DDI 0155A ...