beautypg.com

1 red_state, 2 error_state, Red_state 36 error_state 36 – FUJITSU Implementation Supplement Fujitsu SPARC64 V User Manual

Page 47: Red_state trap table, Red_state execution environment

background image

36

SPARC JPS1 Implementation Supplement: Fujitsu SPARC64 V • Release 1.0, 1 July 2002

7.1.1

RED_state

RED_state Trap Table

The

RED_state

trap vector is located at an implementation-dependent address

referred to as

RSTVaddr

. The value of

RSTVaddr

is a constant within each

implementation; in SPARC64 V this virtual address is

FFFF FFFF F000 0000

16

,

which translates to physical address

0000 07FF F000 0000

16

in

RED_state

(impl.

dep. #114).

RED_state Execution Environment

In

RED_state

, the processor is forced to execute in a restricted environment by

overriding the values of some processor controls and state registers.

Note –

The values are overridden, not set, allowing them to be switched atomically.

SPARC64 V has the following implementation-dependent behavior in

RED_state

(impl. dep. #115):

While in

RED_state

, all internal ITLB-based translation functions are disabled.

DTLB-based translations are disabled upon entry but may be reenabled by
software while in

RED_state

. However, ASI-based access functions to the TLBs

are still available.

While mTLBs and uTLBs are disabled, all accesses are assumed to be
noncacheable and strongly ordered for data access.

XIR

errors are not masked and can cause a trap.

Note –

When

RED_state

is entered because of component failures, the handler

should attempt to recover from potentially catastrophic error conditions or to disable
the failing components. When

RED_state

is entered after a reset, the software

should create the environment necessary to restore the system to a running state.

7.1.2

error_state

The processor enters

error_state

when a trap occurs while the processor is

already at its maximum supported trap level (that is, when

TL

=

MAXTL

) (impl. dep.

#39).