Chapter 2. Programming Model
2-13
The MPC7400 Processor Register Set
17
DCE
Data cache enable.
0 The data cache is neither accessed nor updated. All pages are accessed as if they were
marked cache-inhibited (WIM = x1x). Potential cache accesses from the bus (snoop and
cache operations) are ignored. In the disabled state for the L1 caches, the cache tag state
bits are ignored and all accesses are propagated to the L2 cache or bus as cache-inhibited.
For those transactions, CI is asserted regardless of address translation. ICE is zero at
power-up.
1 The data cache is enabled.
18
ILOCK
Instruction cache lock.
0 Normal operation.
1 Instruction cache is locked. A locked cache supplies data normally on a read hit. On a miss,
the bus request will be a 32-byte burst read, but the cache will not be loaded with data. The
data will be reloaded into the L2, unless the L2DO bit of the L2CR is set.
19
DLOCK
Data cache lock.
0 Normal operation.
1 Data cache is locked. A locked cache supplies data normally on a read hit but is treated as a
cache-inhibited transaction on a miss. On a miss, a load transaction still reads a full cache
line from the L2 or bus but does not reload that line into the dL1. Any store miss will be
treated like a write-through store and will show up on the bus with the WT signal asserted. A
snoop hit to a locked L1 data cache performs as if the cache were not locked. A cache block
invalidated by a snoop remains invalid until the cache is unlocked.
To prevent locking during a cache access, a
sync
instruction must precede the setting of
DLOCK.
20
ICFI
Instruction cache ash invalidate.
0 The instruction cache is not invalidated. The bit is cleared when the invalidation operation
begins (usually the next cycle after the write operation to the register). The instruction cache
must be enabled for the invalidation to occur.
1 An invalidate operation is issued that marks the state of each instruction cache block as
invalid. Cache access is blocked during this time. Setting ICFI clears all the valid bits of the
blocks and the PLRU bits to point to way L0 of each set. When the L1 ash invalidate bits are
set through an
mtspr
operation, hardware automatically resets these bits in the next cycle
(provided that the corresponding cache enable bits are set in HID0).
Note, in the MPC603 and MPC603e processors, the proper use of the ICFI and DCFI bits was
to set them and clear them in two consecutive
mtspr
operations. Software that already has
this sequence of operations does not need to be changed to run on the MPC7400.
21
DCFI
Data cache ash invalidate.
0 The data cache is not invalidated. The bit is cleared when the invalidation operation begins
(usually the next cycle after the write operation to the register). The data cache must be
enabled for the invalidation to occur.
1 An invalidate operation is issued that marks the state of each data cache block as invalid
without writing back modiTed cache blocks to memory. Cache access is blocked during this
time. Bus accesses to the cache are signaled as a miss during invalidate-all operations.
Setting DCFI clears all the valid bits of the blocks and the PLRU bits to point to way L0 of
each set. When the L1 ash invalidate bits are set through an
mtspr
operation, hardware
automatically resets these bits in the next cycle (provided that the corresponding cache
enable bits are set in HID0).
Setting this bit clears all the valid bits of the blocks and the PLRU bits to point to way L0 of
each set.
Note, In the MPC603 and MPC603e processors, the proper use of the ICFI and DCFI bits was
to set them and clear them in two consecutive
mtspr
operations. Software that already has
this sequence of operations does not need to be changed to run on the MPC7400.
22
SPD
Speculative data cache and instruction cache access disable.
0 Speculative bus accesses to nonguarded space (G = 0) from both the instruction and data
caches is enabled.
1 Speculative bus accesses to nonguarded space in both caches is disabled.
Table 2-4. HID0 Field Descriptions (Continued)
Bits
Name
Function