Architecture

(2)Debug Breakpoint exception

Cause

A Debug Breakpoint exception is raised when an SDBBP instruction is executed.

Exception masking

The Breakpoint exception cannot be masked.

(Note : Its behavior during another debug exception is undefined.)

Instruction causing this exception

SDBBP

Processing

When this exception is raised, processing jumps to a special debug exception handler at 0xBFC0 0200. (In the R3900 Processor Core, the debug exception vector is located in an uncacheable address space.)

The DBp bit in the Debug register is set to 1.

The DEPC register points to the SDBBP instruction, unless that instruction is in the branch delay slot, in which case the DEPC register points to the branch instruction and the Debug register DBD bit is set to 1.

Servicing

The unused bits of the SDBBP instruction (bits 26 to 6) can be used for passing additional information to the exception handler. In order to allow these bits to be looked at, the user program should load the contents of the memory word containing this instruction, using the DEPC register. When Cause register BD bit is set to 1 (the SDBBP instruction is in the branch delay slot), you should add +4 to the value in EPC register.

91

Page 102
Image 102
Toshiba TX39 user manual Debug Breakpoint exception ∙ Cause, ∙ Instruction causing this exception