Fujitsu SPARC64 V ユーザーズマニュアル

ページ / 255
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).