HP 68302 User Manual page 114

Hide thumbs Also See for 68302:
Table of Contents

Advertisement

Chapter 4: Plugging the Emulator into Target Systems
Configuring the Emulator for In-Circuit Operation
In the worst case scenario, where you should, but do not interlock DTACKs,
reads or writes to your target memory will fail. This can happen if your target
system DTACK circuitry gets confused when the emulator fails to "wait" for
your target system to assert DTACK.
Step 9. If emulator status shows HALTED
Most users will encounter an emulator status of 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 HALTED emulator status, you should initiate an
analyzer trace before you run or step. Choose the Trace→Until Halt (ALT, T,
U) command. 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 halting the trace with the Trace→Halt (ALT, T, H)
command, you will be able to unload the trace 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 emulator status.
Here is an example where a Trace→Until Halt (ALT, T, U) command was
used to find the cause of a double-bus fault:
XDEF
ORG
114
CS_INIT,GIMR_INIT
$0

Advertisement

Table of Contents
loading

Table of Contents