beautypg.com

NEC Network Controller uPD98502 User Manual

Page 106

background image

CHAPTER 2 V

R

4120A

106

Preliminary User’s Manual S15543EJ1V0UM

2.4.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 execute 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.

2.4.2.5 User mode virtual addressing

In user mode, a single virtual address space labeled User segment is available; its size is

— 2-Gbyte (2

31

bytes) in 32-bit mode (useg)

— 1-Tbyte (2

40

bytes) in 64-bit mode (xuseg)

Figure 2-28. User Mode Address Space

64-bit mode

32-bit mode

Note

8000_ 0000H

FFFF_FFFFH

Address error

0000_0100_ 0000_ 0000H

FFFF_FFFF_FFFF_FFFFH

Address error

xuseg

useg

0000_0000H

7FFF_FFFFH

2 Gbytes with
TLB mapping

0000_0000_ 0000_ 0000H

0000_00FF_FFFF_FFFFH

1 Tbyte with
TLB mapping

Note

The V

R

4120A uses 64-bit addresses within it. When the processor is running in Kernel mode, it saves the

contents of each register or restores their previous contents to initialize them before switching the context.
For 32-bit mode addressing, bit 31 is sign-extended to bits 32 to 63, and the resulting 32 bits are used for
addressing. Usually, it is impossible for 32-bit mode programs to generate invalid addresses. If context
switching occurs and the processor enters Kernel mode, however, an attempt may be made to save an
address other than the sign-extended 32-bit address mentioned above to a 64-bit register. In this case,
user-mode programs are likely to generate an invalid address.