Bus Operation
MOTOROLA
MC68307 USER’S MANUAL
3-31
3.4.4 Double Bus Fault
When a bus error exception occurs, the processor begins exception processing by stacking
information on the supervisor stack. If another bus error occurs during exception processing
(i.e., before execution of another instruction begins) the processor halts and asserts HALT.
This is called a double bus fault. Only an external reset operation or a software watchdog
timeout can restart a processor halted due to a double bus fault.
A double bus fault occurs during a reset operation when a bus error occurs while the pro-
cessor is reading the vector table (before the first instruction is executed). The reset opera-
tion is described in the following paragraphs.
3.5 RESET OPERATION
RESET can be asserted externally for the initial processor reset. Subsequently, the signal
can be asserted either externally or internally (executing a RESET instruction). For proper
external reset operation, HALT must also be asserted.
The RESET and HALT bidirectional pins represent the standard M68000 method of reset.
The MC68307 adds a master reset input (RSTIN) which resets the MC68307. RSTIN gen-
erates a RESET, causing external devices in the system to be reset; note that HALT is not
asserted.
At initial power-on, the MC68307’s power-on reset asserts RESET and HALT internally until
VDD reaches a minimum level. They are then held asserted for 32768 EXTAL clocks, to
ensure that the clock source has time to stabilize.
Subsequent assertions of RSTIN also incur a 32768 clock hold after the negating edge,
which equates to 2ms for a 16.667 MHz system clock. Because of this debouncing effect,
this input is often used in preference to RESET and HALT when a reset switch is required.
After the processor is reset, it reads the reset vector table entry (address $00000) and loads
the contents into the supervisor stack pointer (SSP). Next, the processor loads the contents
of address $00004 (vector table entry 1) into the program counter. Then the processor ini-
tializes the interrupt level in the status register to a value of seven. No other register is
affected by the reset sequence. Figure 3-29 shows the timing of the reset operation.