![](http://datasheet.mmic.net.cn/290000/XPC801ZP25_datasheet_16187868/XPC801ZP25_179.png)
Memory Management Unit
11-4
MPC801 USER’S MANUAL
MOTOROLA
11
11.4 STORAGE ATTRIBUTES
11.4.1 Reference and Change Bit Updates
The MPC801 does not generate an exception for an R bit update because there is no entry
for an R bit in the TLB. The C bit updates are implemented by the software, but the hardware
treats the C bit as a write-protect attribute. Therefore, if a write is attempted to a page
marked unmodified, that entry is invalidated and an implementation specific data TLB error
interrupt is generated.
11.4.2 Storage Control
Each page can have different storage control attributes. The MPC801 supports CI, WT, and
G attributes, but not the M attribute. A page that needs to be memory coherent must be
programmed cache-inhibited. Refer to the definition of these attributes in the
Microprocessor Family: The Programming Environment
WT attributes in the MPC801 are described in
Section 9 Instruction Cache
is used to map I/O devices that are sensitive to speculative accesses. An attempt to access
a page marked guarded forces the access to stall until the access is nonspeculative or
canceled by the core. Fetching from a guarded storage is prohibited and attempting to do
so generates an implementation specific instruction storage interrupt. When MSR
MSR
DR
for instruction or data address translation are negated, default attributes are used.
See Tables 11-6 and 11-7 for details.
PowerPC
manual. The effects of the CI and
. The G attribute
IR
or
11.5 TRANSLATION TABLE STRUCTURE
The MPC801 memory management unit includes special hardware to assist in a two-level
software tablewalk. Other table structures are not precluded. Figures 11-2 and 11-3
illustrate the two levels of translation table structures supported by MPC860 special
hardware. When MD_CTR
TWAM
= 1, the tablewalk begins at the level one base address in
the M_TWB register. The level one table is indexed by the ten most-significant bits
(bits 0–9) of the effective address to get the level one page descriptor. For 8M pages, there
must be two identical entries in the level one table for either Bit 9 = 0 or Bit 9 =1. See
Table 11-2 for more information. The level two base address from the level one descriptor
is indexed by the next ten least-significant bits (bits 0–9) to find the level two page descriptor.
For pages larger than 4K, the entry in the level two table must be duplicated according to
the page size. See Table 11-3 for more information.
During address translation by the memory management unit, the most-significant bits of the
missed effective address are replaced by the real page address bits from the level two page
descriptor. The number of replaced bits depends on the page size. The rest of the real
address bits are taken directly from the effective address. When MD_CTR
tablewalk begins at the level one base address placed in the M_TWB register. The level one
table is indexed by the 12 most-significant bits (bits 0–11) of the effective address to get the
level one page descriptor. For 8M pages, there must be eight identical entries in the level
one table for bits 9–11 of the effective address. The level two base address from the level
one descriptor is indexed by the next ten least-significant bits (bits 12–21) to find the level
two page descriptor. For pages larger than 1K, the entry in the level two table must be
duplicated according to the page size.
TWAM
= 0, the