dsp56800e Freescale Semiconductor, Inc, dsp56800e Datasheet - Page 273

no-image

dsp56800e

Manufacturer Part Number
dsp56800e
Description
16-bit Digital Signal Controller Core
Manufacturer
Freescale Semiconductor, Inc
Datasheet
Execution of the fast interrupt handling routine then continues with the execution of the instruction in the
interrupt’s vector. The code for a fast interrupt routine might be contained entirely in the interrupt vector
table or might reside outside the table at a user-determined location. If it is located in the vector table, note
that the code for the handling routine may overlap the locations of other vectors, rendering them unusable.
It is more practical to have the interrupt vector for a fast interrupt handler to point to a location outside the
main portion of the interrupt vector table, to avoid the overlap problem of a fast interrupt service routine
with more than 2 words.
A fast interrupt handling routine is terminated with the FRTID instruction, a delayed return from a fast
interrupt. This instruction performs the following:
Note that fast interrupt handlers, like interrupt handlers that are executed in normal interrupt processing
mode, can be interrupted by a higher-priority interrupt.
The execution of a fast interrupt service routine always conforms to the following rules:
Freescale Semiconductor
4. The Y register is pushed onto the stack, and the stack pointer is advanced to an empty 32-bit
5. The R0, R1, N, and M01 registers are swapped with their shadows.
1. Swaps the R0, R1, N, and M01 registers back to their original values
2. Decrements the SP by two
3. Pops the Y register off the stack and restores the stack pointer to its original value
4. Restores the SR and the NL bit in the OMR from the FISR register
5. Sets the PC to the value in the FIRA register, returning control to the interrupted program
1. The first instruction in the interrupt vector table is the first instruction of the level 2 interrupt
2. The following instructions are not allowed in the first four instructions of a fast interrupt
location.
service routine for its associated interrupt source.
service routine:
– JSR, BSR, RTS, RTSD, RTI, RTID
– BRA, BRAD, Bcc, JMP, JMPD
Program
Main
n1
n2
Figure 9-3. Control Flow in Fast Interrupt Processing
Fast Interrupt
Return From
(FRTID)
Processing States
Explicit
Vector Table
Interrupt
FRTID
di0
di1
ii0
ii1
ii2
ii3
Exception Processing State
Fast Interrupt
Subroutine
PC Resumes
Operation
9-7

Related parts for dsp56800e