Chapter 9. System Interface Operation
9-3
MPC7400 System Interface Overview
¥
Support for third cache Tve-state coherency protocol, ModiTed, Exclusive,
Reserved, Shared, Invalid (MERSI), where the new R state allows shared
intervention
Improved electrical timings (for example, programmable option for keeping address
bus driven)
¥
9.1.2 Overview of System Interface Accesses
The system interface includes address register queues, prioritization logic, and a bus control
unit. The system interface latches snoop addresses for snooping in the L1 and L2 data
caches, in the memory hierarchy address register queues, and the reservation controlled by
the Load Word and Reserve Indexed (
lwarx
) and Store Word Conditional Indexed (
stwcx.
)
instructions. Accesses are prioritized with load operations preceding store operations.
Instructions are automatically fetched from the memory system into the instruction unit
where they are dispatched to the execution units at a peak rate of two instructions per clock.
Conversely, load and store instructions explicitly specify the movement of operands to and
from the integer, oating-point, and AltiVec register Tles and the memory system.
When the MPC7400 encounters an instruction or data access, it calculates the effective
address and uses the low-order address bits to check for a hit in the on-chip, 32-Kbyte L1
instruction and data caches. During L1 cache lookup, the instruction and data memory
management units (MMUs) use the higher-order address bits to calculate the virtual
address, from which they calculate the physical address (real address in the architecture
speciTcation). The physical address bits are then compared with the corresponding cache
tag bits to determine if a cache hit occurred in the L1 instruction or data cache. If the access
misses in the corresponding cache, the physical address is used to access the L2 cache tags
(if the L2 cache is enabled). If no match is found in the L2 cache tags, the physical address
is used to access system memory.
In addition to the loads, stores, and instruction fetches, the MPC7400 performs hardware
table search operations following TLB misses, L2 cache castout operations when
least-recently used cache lines are written to memory after a cache miss, and cache-line
snoop push-out operations when a modiTed cache line detects a snoop hit from another bus
master.
Figure 9-1 shows a block diagram of the MPC7400, including the address path from the
execution units and instruction fetcher, through the translation logic to the caches and
system interface logic.
The MPC7400 uses separate address and data buses and a variety of control and status
signals for performing external reads and writes. The address bus is 32 bits wide and the
data bus is 64 bits wide. The interface is synchronousall MPC7400 inputs are sampled at
and all outputs are driven from the rising edge of the bus clock. The processor runs at a
multiple of the bus-clock speed.