Aborting Interrupts With the ABORTI Instruction
7-15
Emulation Features
7.5 Aborting Interrupts With the ABORTI Instruction
Generally, a program uses the IRET instruction to return from an interrupt. The
IRET instruction restores all the values that were saved to the stack during the
automatic context save. In restoring status register ST1 and the debug status
register (DBGSTAT), IRET restores the debug context that was present be-
fore the interrupt.
In some target applications, you might have interrupts that must not be re-
turned from by the IRET instruction. Not using IRET can cause a problem for
the emulation logic, because the emulation logic assumes the original debug
context will be restored. The abort interrupt (ABORTI) instruction is provided
as a means to indicate that the debug context will not be restored and the de-
bug logic needs to be reset to its default state. As part of its operation, the
ABORTI instruction:
-
Sets the DBGM bit in ST1. This disables debug events.
-
Modifies select bits in DBGSTAT. The effect is a resetting of the debug
context. If the CPU was in the debug-halt state before the interrupt oc-
curred, the CPU does not halt when the interrupt is aborted. Teh CPU au-
tomatically switches to the run state. If you want to abort an interrupt, but
keep the CPU halted, insert a breakpoint after the ABORTI instruction.
The ABORTI instruction does not modify the DBGIER, the IER, the INTM bit,
or any analysis registers (for example, registers used for breakpoints, watch-
points, and data logging).
Содержание TMS320C28x
Страница 30: ...1 12...
Страница 80: ...This page intentionally left blank 2 50 This page intentionally left blank...
Страница 269: ...IN loc16 PA 6 112 MOV AL 0 AL 0 UOUT IORegC AL IOspace IORegC AL 10...
Страница 308: ...MAXCUL P loc32 6 151 Saturate MOVL Var64 2 ACC Store result into Var64 MOVL Var64 P...
Страница 509: ...SUBL ACC P PM 6 352 SUBL ACC P PM ACC S B 11 M X 4 MOVH Y ACC 5 Store Q15 result into Y...
Страница 585: ...This page intentionally left blank 7 32 This page intentionally left blank...