dsp56800 Freescale Semiconductor, Inc, dsp56800 Datasheet - Page 176

no-image

dsp56800

Manufacturer Part Number
dsp56800
Description
16-bit Digital Signal Controllers
Manufacturer
Freescale Semiconductor, Inc
Datasheet
Interrupts and the Processing States
This interrupt can be used as a diagnostic tool to allow the programmer to examine the stack and locate the
illegal instruction, or the application program can be restarted with the hope that the failure was a soft
error. The ILLEGAL instruction, found in Appendix A, “Instruction Set Details,“ is useful for testing the
illegal interrupt service routine to verify that it can recover correctly from an illegal instruction. Note that
the illegal instruction trap does not fire for all invalid opcodes.
7.3.6
Interrupt arbitration and control, which occurs concurrently with the fetch-decode-execute cycle, takes two
instruction cycles. External interrupts are internally synchronized with the processor clock before their
interrupt-pending flags are set. Each external and internal interrupt has its own flag. After each instruction
is executed, the DSC arbitrates all interrupts. During arbitration, each pending interrupt’s IPL is compared
with the interrupt mask in the SR, and the interrupt is either allowed or disallowed. The remaining pending
7-12
i = Interrupt
ii = Interrupt Instruction Word
II = Illegal Instruction
n = Normal Instruction Word
Interrupt Control Cycle 1
Interrupt Control Cycle 2
Fetch
Decode
Execute
Instruction Cycle Count
Interrupt Arbitration
Program
No Fetch
No Fetch
Fetches
II (NOP)
Main
n6
Figure 7-4. Illegal Instruction Interrupt Servicing
1
(a) Instruction Fetches from Memory
n1
(b) Program Controller Pipeline
2
n2
n1
3
DSP56800 Family Manual
n3
n2
n1
4
n4
n3
n2
5
n4
n3
II
6
Illegal Instruction Interrupt
Recognized as Pending
n6
n4
II
7
NOP
8
i
Service Routine
Interrupt
Fetches
9
i
ii1
ii2
ii3
ii4
ii5
10
ii1
ii2
ii1
11
Freescale Semiconductor
12
ii3
ii2
ii1
13
ii4
ii3
ii2
AA0059
ii5
ii4
ii3
14

Related parts for dsp56800