![](http://datasheet.mmic.net.cn/120000/MC68349FT16_datasheet_3559370/MC68349FT16_186.png)
MOTOROLA
MC68349 USER’S MANUAL
5- 31
The general form of the exception stack frame is illustrated in Figure 5-14. Although some
formats are peculiar to a particular M68000 family processor, format 0000 is always legal
and always indicates that only the first four words of a frame are present. See 5.6.4
CPU32+ Stack Frames for a complete discussion of exception stack frames.
STATUS REGISTER
PROGRAM COUNTER LOW
FORMAT
VECTOR OFFSET
OTHER PROCESSOR STATE INFORMATION,
DEPENDING ON EXCEPTION
(0, 2, OR 8 WORDS)
PROGRAM COUNTER HIGH
HIGHER
ADDRESSES
SP
STACKING
ORDER
0
15
Figure 5-14. Exception Stack Frame
5.6.1.4 MULTIPLE EXCEPTIONS. Each exception has been assigned a priority based on
its relative importance to system operation. Priority assignments are shown in Table 5-6.
Group 0 exceptions have the highest priorities; group 4 exceptions have the lowest
priorities. Exception processing for exceptions that occur simultaneously is done by
priority, from highest to lowest.
It is important to be aware of the difference between exception processing mode and
execution of an exception handler. Each exception has an assigned vector that points to
an associated handler routine. Exception processing includes steps described in 5.6.1.2
Exception Processing Sequence, but does not include execution of handler routines,
which is done in normal mode.
When the CPU32+ completes exception processing, it is ready to begin either exception
processing for a pending exception or execution of a handler routine. Priority assignment
governs the order in which exception processing occurs, not the order in which exception
handlers are executed.
As a general rule, when simultaneous exceptions occur, the handler routines for lower
priority exceptions are executed before the handler routines for higher priority exceptions.
For example, consider the arrival of an interrupt during execution of a TRAP instruction
while tracing is enabled. Trap exception processing (2) is done first, followed immediately
by exception processing for the trace (4.1), and then by exception processing for the
interrupt (4.3). Each exception places a new context on the stack. When the processor
resumes normal instruction execution, it is vectored to the interrupt handler, which returns
to the trace handler that returns to the trap handler.