Step 9. If Emulator Status Shows Halted - HP 64746 User Manual

Emulation/analysis
Table of Contents

Advertisement

Chapter 5: Plugging into a Target System
Configuring the Emulator for In-Circuit Operation

Step 9. If emulator status shows HALTED

Most users will encounter a status of "M68302--Halted" at one time or another.
This almost always is caused by a double-bus fault, although under rare conditions
it can be caused by the target asserting the "HALT" pin. Note that the 68302
emulator NEVER asserts the HALT pin itself.
A double-bus fault occurs if the 68302 encounters an exception while processing
another exception. For example, if a bus-error occurs and the 68302 begins to
process that bus error, then fetches an odd-address from the vector table location
08H, a double-bus fault will occur.
Most users will encounter a halted condition at least once. You can avoid this
problem by making sure you have a "good" stack (that includes making sure that
any needed chip-selects are programmed BEFORE any stack accesses occur) and
making sure that your bus error and address error exception vector table entries (at
08H and 0CH) point to valid addresses.
If you are encountering a "M68302--Halted" condition you should initiate an
analyzer trace before you run or step. Use the command:
trace on_halt <RETURN>
This trace command means "trace all cycles, but NEVER trigger" and is useful
because when the processor halts, the analyzer will have the last X states (based on
which type analyzer card and mode you are using) in its buffer. By simply
stopping or halting the trace manually, you will be able to unload this buffer and
see exactly what caused the double-bus fault.
The 68302 will halt itself if a double-bus fault occurs. Only a target system reset,
or emulator reset command will clear the "Halted" condition.
169

Advertisement

Table of Contents
loading

This manual is also suitable for:

68302

Table of Contents