Chapter 3. L1 and L2 Cache Operation
3-11
Memory and Cache Coherency
Note that any state not shown in Table 3-2 is not allowed. Also note that any valid line with
either the C or D bit set is cast out from the data cache when it is selected for replacement.
3.4.2.1 AltiVec Transient Hint Support
The C status bit in the data cache tags may be cleared if a transient type access hits in the
data cache. In addition, the C bit is not set upon reload from the BIU if the miss is a transient
type access. The
dstt
,
dststt
,
lvxl
, and
stvxl
instructions are considered to be transient.
3.4.3 Coherency Protocols
When conTgured for either MPX bus or 60x bus modes, the MPC7400 can be conTgured
to support a four-state MESI protocol (similar to the MPC604-family microprocessors) or
a three-state MEI protocol (similar to the MPC603- and 750-family microprocessors).
When conTgured for MPX bus mode, the MPC7400 supports an additional Tve-state cache
coherency protocol, referred to as the MERSI protocol. The additional state in this protocol
is the recent state. This state is used for shared data intervention. It indicates that a cache
block is shared and is the most recently read version of the data. A cache block is placed in
the R state when it is loaded after a shared snoop response was detected. The cache block
is downgraded to the S state when another snoop read access for this line is performed. The
cache block in the recent state is the one used to supply intervention data. This ensures that
only one processor supplies data for intervention. The MERSI coherency protocol together
with the MPX bus protocol allows for data-only intervention between caches.
The MESI or MEI coherency protocol is selected by the MSSCR0[SHDEN] parameter.
SHDEN = 0b1 indicates that the MPC7400 uses the shared state and follows the MESI
protocol. SHDEN = 0b0 indicates that MPC7400 does not use the shared state and follows
the MEI protocol. The MERSI protocol is a superset of the MESI protocol requiring
SHDEN = 1. The MERSI coherency protocol is selected by enabling full L1 intervention
in MSSCR0 (L1_INTVEN = 0b111) when SHDEN = 0b1.
Table 3-3 summarizes the coherency protocols and intervention supported in 60x bus mode
(MSSCR0[EMODE] = 0b0). The intervention types are described in Table 3-6.
Note that L1_INTVEN is only recognized when the MPC7400 is conTgured for MPX bus
mode.
Table 3-3. Coherency Protocols in 60x Bus Mode
Coherency
Protocol
SHDEN
Intervention Type
1
1
See Section 3.4.3.2, òIntervention,ó for information about Intervention types.
L1_INTVEN
MEI
0
Window-of-opportunity for hits on modiTed
N/A
MESI
1
Window-of-opportunity for hits on modiTed
N/A