
Section 4   Exception Handling
4.1  Overview
4.1.1  Types of Exception Handling and Their Priority
As indicated in table 4-1 (a) and (b), exception handling can be initiated by a reset, address error,
trace, interrupt, or instruction.  An instruction initiates exception handling if the instruction is an
invalid instruction, a trap instruction, or a DIVXU instruction with zero divisor.  Exception
handling begins with a hardware exception-handling sequence which prepares for the execution of
a user-coded software exception-handling routine.
There is a priority order among the different types of exceptions, as shown in table 4-1 (a).  If two
or more exceptions occur simultaneously, they are handled in their order of priority.  An
instruction exception cannot occur simultaneously with other types of exceptions.
Table 4-1 (a)   Exceptions and Their Priority
Exception 
Type
Start of Exception-
Handling Sequence
Source
Detection Timing
High
Reset
External
RES Low-to-High transition
Immediately
Address error
Internal
Instruction fetch or data read/write 
bus cycle
End of instruction 
execution
Trace
Internal
End of instruction execution, if 
T = “1” in status register
End of instruction 
execution
Interrupt
External, 
internal
End of instruction execution or end 
of exception-handling sequence
End of instruction 
execution
Low
Table 4-1 (b)   Instruction Exceptions
Exception Type
Start of Exception-Handling Sequence
Invalid instruction
Attempted execution of instruction with undefined code
Trap instruction
Started by execution of trap instruction
Zero divide
Attempted execution of DIVXU instruction with zero divisor
81