
MOTOROLA
Chapter 6. Memory Management
6-1
Chapter 6
Memory Management
This chapter describes the G2 core implementation of the memory management unit
(MMU) specifications provided by the PowerPC operating environment architecture
(OEA). The MMU implementation of the G2 core is the same as that of the MPC603e
microprocessor. However, the G2_LE core implements four additional IBAT entries and
four additional DBAT entries.
The primary function of the MMU in a processor of this family is the translation of logical
(effective) addresses to physical addresses (referred to as real addresses in the architecture
specification) for memory accesses, and I/O accesses (I/O accesses are assumed to be
memory-mapped). In addition, the MMU provides access protection on a segment, block,
or page basis. This chapter describes the specific hardware used to implement the MMU
model of the OEA in the core. Refer to Chapter 7, “Memory Management,” in the
Programming Environments Manual
for a complete description of the conceptual model.
Two general types of accesses generated by processors that implement the PowerPC
architecture require address translation—instruction accesses, and data accesses to memory
generated by load and store instructions. Generally, the address translation mechanism is
defined in terms of segment descriptors and page tables defined by the PowerPC
architecture for locating the effective-to-physical address mapping for instruction and data
accesses. The segment information translates the effective address to an interim virtual
address and the page table information translates the virtual address to a physical address.
The segment descriptors, used to generate the interim virtual addresses, are stored as
on-chip segment registers on 32-bit implementations (such as the G2 core). In addition, two
translation lookaside buffers (TLBs) are implemented on the core to keep recently-used
page address translations on-chip. Although the OEA describes one MMU (conceptually),
the G2 core hardware maintains separate TLBs and table search resources for instruction
and data accesses that can be accessed independently (and simultaneously). Therefore, the
core is described as having two MMUs, one for instruction accesses (IMMU) and one for
data accesses (DMMU).
The block address translation (BAT) mechanism is a software-controlled array that stores
the available block address translations on-chip. BAT array entries are implemented as
pairs of BAT registers that are accessible as supervisor-level special-purpose registers
F
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
.