Technical data

FIRE Emulator for H8S and H8/300H 30 Breakpoints
©1989-2014 Lauterbach GmbH
Breakpoints
For a basic description of the breakpoint system please refer to FIRE User’s Guide.
Breakpoint Realization Modes
This chapter describes the different realization modes and shows their availability for the logical breakpoints
types.
Software
Breakpoints
Synchronous Breakpoints:
The user application code is patched with a special break-instruction of the
bondout CPU (opcode 0x5770) before jumping into the user program. After
executing this instruction, the CPU stops the user program and jumps into
the emulator debug monitor.
NOTE: A synchronous software breakpoint in the onchip DTC-RAM area
can’t be set while the application is running.
Asynchronous Breakpoints:
These breakpoints are used as address selectors for the trigger unit (see
FIRE User’s Guide).
Hardware
Breakpoints
Synchronous Breakpoints:
The user application is stopped before the instruction is executed. For this,
the bondout break opcode is switched to the CPU data-bus instead of the
user application opcode via hardware. This type of breakpoint is useful if
you would like to set a breakpoint in a target memory where no code can
be patched (e.g. EPROM or Flash).
NOTE: This breakpoint type doesn’t work in the onchip ROM and RAM
area. There are only synchronous software breakpoints available.
Asynchronous Breakpoints: See FIRE User’s Guide).
Onchip
Breakpoints
The bondout CPU has an onchip trigger-unit with two independent
channels.
Synchronous Breakpoints:
They can be used if you would like to set a breakpoint in a target memory
where no code can be patched (e.g. EPROM, Flash or BurstROM).
NOTE: The breakpoint is a “break after make”, and not a “break before
make”.
Asynchronous Breakpoints:
They work only on data read or write cycles, not on instruction fetches.
The information, that a breakpoint has occurred is switched from the
bondout break controller to the emulator trigger unit, so that the trigger unit
for example can start the analyzer (with special keywords).
There is a fixed connection between the breakpoint types and the
channels:
’Alpha’ corresponds to channel A
’Beta’ corresponds to channel B