Chapter 2. Registers
For More Information On This Product,
Go to: www.freescale.com
2-9
Supervisor Programming Model
2.3.2 Vector Base Register (VBR)
The VBR holds the base address of the exception vector table in memory. The displacement
of an exception vector is added to the value in this register to access the vector table.
VBR[19–0] are not implemented and are assumed to be zero, forcing the vector table to be
aligned on a 0-modulo-1-Mbyte boundary.
2.3.3 Supervisor/User Stack Pointers (A7 and OTHER_A7)
The CF4e architecture supports two independent stack pointer (A7) registers—the
supervisor stack pointer (SSP) and the user stack pointer (USP). This support provides the
required isolation between operating modes as dictated by the virtual memory management
scheme provided by the memory management unit (MMU).
The hardware implementation of these two programmable-visible 32-bit registers does not
uniquely identify one as the SSP and the other as the USP. Rather, the hardware uses one
32-bit register as the currently-active A7 and the other as OTHER_A7. Thus, the register
contents are a function of the processor operating mode, as shown in the following:
if SR[S] = 1
then
A7 = Supervisor Stack Pointer
other_A7 = User Stack Pointer
A7 = User Stack Pointer
other_A7 = Supervisor Stack Pointer
The BDM programming model supports reads and writes to A7 and OTHER_A7 directly.
It is the responsibility of the external development system to determine the mapping of (A7
and OTHER_A7) to the two program-visible definitions (SSP and USP), based on the
setting of SR[S]. This functionality is enabled by setting by the dual stack pointer enable
bit CACR[DSPE]. If this bit is cleared, only the stack pointer, A7, defined for previous
ColdFire versions is available. DSPE is zero at reset.
else
10–8
I
Interrupt priority mask. Defines the current interrupt priority. Interrupt requests are inhibited for all
priority levels less than or equal to the current priority, except the edge-sensitive level-7 request,
which cannot be masked.
7–0
CCR
Condition code register. See Table 2-3.
31
20 19
0
Field
Exception vector table base address
—
Reset
All zeros
R/W Written from a BDM serial command or from the CPU using the MOVEC instruction. VBR can be read from
the debug module only. The upper 12 bits are returned, the low-order 20 bits are undefined.
Rc
0x801
Figure 2-8. Vector Base Register (VBR)
Table 2-2. Status Field Descriptions (Continued)
Bits
Name
Description
F
Freescale Semiconductor, Inc.
n
.