
6-18
G2 PowerPC Core Reference Manual
For More Information On This Product,
Go to: www.freescale.com
MOTOROLA
MMU Features
Table 6-6 summarizes the registers that the operating system uses to program the G2 core
MMUs. These registers are accessible to supervisor-level software only. These registers are
described in Chapter 2, “Register Set,” in the
Programming Environments Manual.
For G2
core-specific registers, see Chapter 2, “Register Model,” of this book.
tlbli
(implementation
-specific)
Load Instruction TLB Entry
Loads the contents of the ICMP and RPA registers into the ITLB.
tlbld
(implementation
-specific)
Load Data TLB Entry
Loads the contents of the DCMP and RPA registers into the DTLB.
1
These instructions are defined by the PowerPC architecture, but are optional.
Table 6-6. MMU Registers
Register
Description
Segment registers
(SR0–SR15)
The sixteen 32-bit segment registers are present only in 32-bit implementations of the
PowerPC architecture. The fields in the segment register are interpreted differently
depending on the value of bit 0. The segment registers are accessed by the
mtsr
,
mtsrin
,
mfsr
, and
mfsrin
instructions.
BAT registers
G2 core: (IBAT0U–IBAT3U,
IBAT0L–IBAT3L,
DBAT0U–DBAT3U, and
DBAT0L–DBAT3L)
G2_LE core:
(IBAT0U–IBAT7U,
IBAT0L–IBAT7L,
DBAT0U–DBAT7U, and
DBAT0L–DBAT7L)
The G2 core has 16 BAT registers, organized as 4 pairs of instruction BAT registers
(IBAT0U–IBAT3U paired with IBAT0L–IBAT3L) and 4 pairs of data BAT registers
(DBAT0U–DBAT3U paired with DBAT0L–DBAT3L).
The G2_LE core has 32 BAT registers, organized as 8 pairs of instruction BAT registers
(IBAT0U–IBAT7U paired with IBAT0L–IBAT7L) and 8 pairs of data BAT registers
(DBAT0U–DBAT7U paired with DBAT0L–DBAT7L).
The BAT registers are defined as 32-bit registers in 32-bit implementations. These are
special-purpose registers that are accessed by the
mtspr
and
mfspr
instructions,
regardless of the setting of HID2[13].
SDR1
The SDR1 register specifies the variable used in accessing the page tables in memory.
SDR1 is defined as a 32-bit register for 32-bit implementations. This is a
special-purpose register that is accessed by the
mtspr
and
mfspr
instructions.
Instruction TLB miss address
and data TLB miss address
registers (IMISS and DMISS)
When a TLB miss exception occurs, the IMISS or DMISS register contains the 32-bit
effective address of the instruction or data access, respectively, that caused the miss.
Note that the G2 core always loads a big-endian address into the DMISS register.
These registers are implementation-specific.
Primary and secondary hash
address registers (HASH1
and HASH2)
The HASH1 and HASH2 registers contain the primary and secondary PTEG addresses
that correspond to the address causing a TLB miss. These PTEG addresses are
automatically derived by the core by performing the primary and secondary hashing
function on the contents of IMISS or DMISS, for an ITLB or DTLB miss exception,
respectively.
These registers are implementation-specific.
Table 6-5. Instruction Summary—MMU Control (continued)
Instruction
Description
F
Freescale Semiconductor, Inc.
n
.