
MOTOROLA
SYSTEM INTEGRATION MODULE
MC68336/376
5-50
USER’S MANUAL
5.7.9 Reset Processing Summary
To prevent write cycles in progress from being corrupted, a reset is recognized at the
end of a bus cycle instead of at an instruction boundary. Any processing in progress
at the time a reset occurs is aborted. After SIM reset control logic has synchronized an
internal or external reset request, the MSTRST signal is asserted.
The following events take place when MSTRST is asserted:
A. Instruction execution is aborted.
B. The status register is initialized.
1. The T0 and T1 bits are cleared to disable tracing.
2. The S bit is set to establish supervisor privilege level.
3. The interrupt priority mask is set to $7, disabling all interrupts below
priority 7.
C. The vector base register is initialized to $000000.
The following events take place when MSTRST is negated after assertion.
A. The CPU32 samples the BKPT input.
B. The CPU32 fetches the reset vector:
1. The first long word of the vector is loaded into the interrupt stack pointer.
2. The second long word of the vector is loaded into the program counter.
3. Vectors can be fetched from external ROM enabled by the CSBOOT signal.
C. The CPU32 fetches and begins decoding the first instruction to be executed.
5.7.10 Reset Status Register
The reset status register (RSR) contains a bit for each reset source in the MCU. When
a reset occurs, a bit corresponding to the reset type is set. When multiple causes of
reset occur at the same time, only one bit in RSR may be set. The reset status register
is updated by the reset control logic when the RESET signal is released. Refer to D.2.4
Reset Status Register for more information.
5.8 Interrupts
Interrupt recognition and servicing involve complex interaction between the SIM, the
CPU32, and a device or module requesting interrupt service.
The following paragraphs provide an overview of the entire interrupt process. Chip-
select logic can also be used to terminate the IACK cycle with either AVEC or DSACK.
5.8.1 Interrupt Exception Processing
The CPU32 processes interrupts as a type of asynchronous exception. An exception
is an event that preempts normal processing. Each exception has an assigned vector
in an exception vector table that points to an associated handler routine. The CPU32
uses vector numbers to calculate displacement into the table. During exception pro-
cessing, the CPU fetches the appropriate vector and executes the exception handler
routine to which the vector points.