
MOTOROLA
Chapter 6. Memory Management
6-17
MMU Features
6.1.8
MMU Instructions and Register Summary
The MMU instructions and registers provide the operating system with the ability to set up
the block address translation areas and the page tables in memory.
Note that because the implementation of TLBs is optional, the instructions that refer to
these structures are also optional. However, because these structures serve as caches of the
page table, the architecture specifies a software protocol for maintaining coherency
between these caches and the tables in memory whenever changes are made to the tables in
memory. When the tables in memory are changed, the operating system purges these caches
of the corresponding entries, allowing the translation caching mechanism to refetch from
the tables when the corresponding entries are required.
Note that the G2 core implements all TLB-related instructions except
tlbia
, which is treated
as an illegal instruction. The G2 core also uses some implementation-specific instructions
to load two on-chip TLBs.
Because the MMU specification for these processors is so flexible, it is recommended that
the software that uses these instructions and registers be encapsulated into subroutines to
minimize the impact of migrating across the family of implementations.
Table 6-5 summarizes G2 core instructions that specifically control the MMU. For more
detailed information about the instructions, refer to Chapter 3, “Instruction Set Model,” in
this book and Chapter 8, “Instruction Set,” in the
Programming Environments Manual.
Table 6-5. Instruction Summary—MMU Control
Instruction
Description
mtsr
SR
,r
S
Move to Segment Register
SR[SR#]
←
r
S
mtsrin
r
S
,r
B
Move to Segment Register Indirect
SR[
r
B[0–3]]
←
r
S
mfsr
r
D
,
SR
Move from Segment Register
r
D
←
SR[SR#]
mfsrin
r
D
,r
B
Move from Segment Register Indirect
r
D
←
SR[
r
B[0–3]]
tlbie r
B
1
TLB Invalidate Entry
For effective address specified by
r
B, TLB[V]
←
0
The
tlbie
instruction invalidates both TLB entries indexed by the EA, and operates on both the
instruction and data TLBs simultaneously invalidating four TLB entries. The index corresponds to
bits 15–19 of the EA.
Software must ensure that instruction fetches or memory references to the virtual pages specified
by the
tlbie
instruction have been completed prior to executing the
tlbie
instruction.
tlbsync
1
TLB Synchronize
Synchronizes the execution of all other
tlbie
instructions in the system. In the G2 core, when the
core_tlbisync signal is negated, instruction execution may continue or resume after the completion
of a
tlbsync
instruction. When the core_tlbisync signal is asserted, instruction execution stops after
the completion of a
tlbsync
instruction. For a complete description of the core_tlbisync signal, refer
to Section 8.3.11.5, “TLBI Sync (core_tlbisync)—Input.”
F
Freescale Semiconductor, Inc.
For More Information On This Product,
Go to: www.freescale.com
n
.