10-8
ColdFire CF4E Core User’s Manual
For More Information On This Product,
Go to: www.freescale.com
Virtual Memory Architecture Processor Support
10.4.1 Precise Faults
To support demand-paging, all memory references require precise, recoverable faults. The
ColdFire instruction restart mechanism ensures that a faulted instruction restarts from the
beginning of execution; that is, no internal state information is saved when an exception
occurs and none is restored when the handler ends. Given the PC address defined in the
exception stack frame, the processor reestablishes program execution by transferring
control to the given location as part of the RTE (return from exception) instruction.
For a detailed description, see Section 7.5, “Precise Faults.”
10.4.2 Supervisor/User Stack Pointers
To provide the required isolation between these operating modes as dictated by a virtual
memory management scheme, a user stack pointer (A7-USP) is added. The appropriate
stack pointer register (SSP, USP) is accessed as a function of the processor’s operating
mode. In addition, the following two privileged MC680x0 instructions to load/store the
USP are added to the ColdFire instruction set architecture:
mov.l
mov.l
Ay,USP
USP,Ax
# move to USP: opcode = 0x4E6{0-7}
# move from USP: opcode = 0x4E6{8–F}
The address register number is encoded in the low-order three bits of the opcode.
These instructions are described in detail in Section 10.7, “MMU Instructions.”
10.4.3 Access Error Stack Frame Additions
ColdFire exceptions generate a standard 2-longword stack frame, signaling the contents of
the SR and PC at the time of the exception, the exception type, and a 4-bit fault status field.
FS. The first longword contains the 16-bit format/vector word (F/V) and the 16-bit status
register. The second contains the 32-bit PC address of the faulted instruction.
Figure 10-2. Exception Stack Frame
The FS field is used for access and address errors. To optimize TLB miss exception
handling, new FS encodings (Table 10-2) allow quick error classification.
31
28
27
26
25
18
17
16
15
0
A7
→
Format
FS[3–2]
Vector[7–0]
FS[1–0]
Status Register
+ 0x04
Program Counter [31–0]
Table 10-2. Fault Status Encodings
FS
Definition
0000
Not an access or address error
0001, 001x
Reserved
F
Freescale Semiconductor, Inc.
n
.