
CHAPTER 5 MEMORY MANAGEMENT SYSTEM
121
5.2.4 Operating Modes
The processor has three operating modes that function in both 32- and 64-bit operations:
User mode
Supervisor mode
Kernel mode
User and Kernel modes are common to all V
R
-Series processors. Generally, Kernel mode is used to executing
the operating system, while User mode is used to run application programs. The V
R
4000 series processors have a
third mode, which is called Supervisor mode and categorized in between User and Kernel modes. This mode is
used to configure a high-security system.
When an exception occurs, the CPU enters Kernel mode, and remains in this mode until an exception return
instruction (ERET) is executed. The ERET instruction brings back the processor to the mode in which it was just
before the exception occurs.
These modes are described in the next three sections.
5.2.5 User Mode Virtual Addressing
During the single user mode, a 2-Gbyte (2
In the 64-bit mode, a 1-Tbyte (2
As shown in Tables 5-2 and 5-3, each virtual address is extended independently as another virtual address by
setting an 8-bit address space ID area (ASID), to support user processes of up to 256. The contents of TLB can be
retained after context switching by allocating each process by ASID. useg and xuseg can be referenced via TLB.
Whether a cache is used or not is determined for each page by the TLB entry (depending on the C bit setting in the
TLB entry).
The User segment starts at address 0 and the current active user process resides in either useg (in 32-bit mode)
or xuseg (in 64-bit mode). The TLB identically maps all references to useg/xuseg from all modes, and controls
cache accessibility.
The processor operates in User mode when the Status register contains the following bit-values:
31
bytes) virtual address space (useg) can be used in the 32-bit mode.
40
bytes) virtual address space (xuseg) can be used.
KSU = 10
EXL = 0
ERL = 0
In conjunction with these bits, the UX bit in the Status register selects 32- or 64-bit User mode addressing as
follows:
When UX = 0, 32-bit useg space is selected.
When UX = 1, 64-bit xuseg space is selected.
Table 5-1 lists the characteristics of each user segment (useg and xuseg).