Chapter 3. L1 and L2 Cache Operation
3-61
L2 Cache Interface
selects the last tap of the delay line and risks rolling over to the Trst tap while trying to keep
in sync. Such a condition is improper operation for the DLL, and while this condition is not
expected, L2DRO allows detection for added security. Setting L2DRO causes a checkstop
when a potential rollover (or actual rollover) condition occurs. L2DRO may be set when
the DLL is Trst enabled (set with the L2CLK bits) to detect rollover during initial
synchronization. It may also be set when the L2 cache is enabled (with L2E bit) after the
DLL has achieved initial lock.
3.7.3.10 L2 Cache Power Management and Test Controls
The L2CR[L2CTL] parameter enables/disables automatic operation of the L2 low-power
mode signal, L2ZZ, for cache RAMs that support the ZZ function. When L2CTL is set, the
MPC7400 automatically asserts L2ZZ when entering nap or sleep mode, and automatically
negates L2ZZ when exiting nap or sleep. L2CTL should not be set when the MPC7400 is
in nap mode and dynamic snooping is being performed through negation of QACK. The
relatively long recovery time from ZZ negation that many SRAM vendors require may only
allow use of this function for deep-sleep operation.
The L2CR[L2CLKSTP] parameter controls automatic stopping of the L2 clock output
signals for cache RAMs that support this function. When L2CLKSTP is set, the L2 clock
output signals automatically stop when the MPC7400 enters nap or sleep mode, and
automatically restart when the MPC7400 exits nap or sleep.
The L2CR[L2TS] parameter is provided to support L2 cache testing. See Section 3.7.7, òL2
Cache Testing,ó for more information.
3.7.4 L2 Cache Initialization
Following a power-on or hard reset, the L2 cache and the L2 cache DLL are disabled
initially. Before enabling the L2 cache, the L2 cache DLL must Trst be conTgured through
the L2CR register, and the DLL must be allowed 640 L2 cache clock periods to achieve
phase lock. Before enabling the L2 cache, other conTguration parameters must be set in the
L2CR, and the L2 cache tags must be globally invalidated. The L2 cache should be
initialized during system start-up.
The sequence for initializing the L2 cache is as follows:
1. Power-on reset (automatically performed by the assertion of HRESET).
2. Disable L2 cache by clearing L2CR[L2E].
3. Set the L2CR[L2CLK] bits to the desired clock divider setting. Setting a nonzero
value automatically enables the DLL. All other L2 cache conTguration bits should
be set to properly conTgure the L2 cache interface for the SRAM type, size, and
interface timing required.