5-16
MPC7400 RISC Microprocessor Users Manual
MMU Overview
If SR[T] = 0, page address translation is selected. The information in the segment descriptor
is then used to generate the 52-bit virtual address. The virtual address is then used to
identify the page address translation information (stored as page table entries (PTEs) in a
page table in memory). For increased performance, the MPC7400 has two on-chip TLBs to
cache recently-used translations on-chip.
If an access hits in the appropriate TLB, page translation succeeds and the physical address
bits are forwarded to the memory subsystem. If the required translation is not resident, the
MMU performs a search of the page table. If the required PTE is found, a TLB entry is
allocated and the page translation is attempted again. This time, the TLB is guaranteed to
hit. When the translation is located, the access is qualiTed with the appropriate protection
bits. If the access causes a protection violation, either an ISI or DSI exception is generated.
If the PTE is not found by the table search operation, a page fault condition exists, and an
ISI or DSI exception occurs so software can handle the page fault.
5.1.7 MMU Exceptions Summary
To complete any memory access, the effective address must be translated to a physical
address. As speciTed by the architecture, an MMU exception condition occurs if this
translation fails for one of the following reasons:
¥
Page faultThere is no valid entry in the page table for the page speciTed by the
effective address (and segment descriptor) and there is no valid BAT translation.
¥
An address translation is found but the access is not allowed by the memory
protection mechanism.
The translation exception conditions deTned by the OEA for 32-bit implementations cause
either the ISI or the DSI exception to be taken as shown in Table 5-3.
The state saved by the processor for each of these exceptions contains information that
identiTes the address of the failing instruction. Refer to Chapter 4, òExceptions,ó for a more
detailed description of exception processing.
Table 5-3. Translation Exception Conditions
Condition
Description
Exception
Page fault (no PTE found)
No matching PTE found in page tables (and no
matching BAT array entry)
I access: ISI exception
SRR1[1] = 1
D access: DSI exception
DSISR[1] =1
Block protection violation
Conditions described for block in òBlock
Memory Protectionó in Chapter 7, òMemory
Management,ó in
The Programming
Environments Manual.
ò
I access: ISI exception
SRR1[4] = 1
D access: DSI exception
DSISR[4] =1