Caches
Copyright © ARM Limited 2000. All rights reserved.
3-13
DCache lockdown
For the DCache, the procedure is as follows:
1.
Write to CP15 register 9, setting DL=1 (DL is bit 31, the load bit) and Dindex=0
(Dindex are bits 1:0, the cache segment bits).
2.
Initialize the pointer to the first of the words to be locked into the cache.
3.
Execute an
LDR
from that location. This forces a linefill from that location and
the resulting eight words are captured in the cache.
4.
Increment the pointer by 32 (number of bytes in a cache line).
5.
Execute an
LDR
from that location. The resulting linefill is captured in the cache.
6.
Repeat steps 4 and 5 until all words are loaded in the cache, or one quarter of the
cache has been loaded.
7.
Write to CP15 register 9, setting DL=0 and Dindex=1.
If there is more data to lockdown, at the final step, the DL bit must be left HIGH and
the process repeated. The DL bit must only be set LOW when all the lockdown data has
been loaded. The Dindex bits must be set to the next available segment.
Note
The write to CP15 register 9 must not be executed until the linefill has completed. This
is achieved by aligning the
LDR
to the last address of the line.
ICache lockdown
For the ICache, the procedure is as follows:
1.
Write to CP15 register 9, setting IL=1 (the load bit) and Iindex=0 (the cache
segment bits).
2.
Initialize the pointer to the first of the words to be locked into the cache.
3.
Force a linefill from that location by writing to CP15 register 7 (ICache preload).
4.
Increment the pointer by 32 (number of bytes in a cache line).
5.
Force a linefill from that location by writing to CP15 register 7. The resulting
linefill is captured in the ICache.
6.
Repeat steps 4 and 5 until all words are loaded in the cache, or one quarter of the
cache has been loaded.
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 ...