Interrupts and Interrupt Controller (INTC)
Freescale Semiconductor
10-43
PXR40 Microcontroller Reference Manual, Rev. 1
After generating a software configurable interrupt request, the higher priority ISR completes. The lower
priority ISR is scheduled according to its priority. Execution of the higher priority ISR is not resumed after
the completion of the lower priority ISR.
10.5.7.2
Scheduling an ISR on Another Processor
Since the SET
n
bits in the INTC_SSCIR
n
are memory mapped, processors in multiple processor systems
can schedule ISRs on the other processors. One application is that one processor simply wants to command
another processor to perform a piece of work, and the initiating processor does not need to use the results
of that work. If the initiating processor is concerned that processor executing the software configurable
ISR has not completed the work before asking it to again execute that ISR, it can check if the
corresponding CLR
n
bit in INTC_SSCIR
n
is asserted before again writing a 1 to the SET
n
bit.
Another application is the sharing of a block of data. For example, a first processor has completed
accessing a block of data and wants a second processor to then access it. Furthermore, after the second
processor has completed accessing the block of data, the first processor again wants to access it. The
accesses to the block of data must be done coherently. The procedure is that the first processor writes a 1
to a SET
n
bit on the second processor. The second processor, after accessing the block of data, clears the
corresponding CLR
n
bit and then writes 1 to a SET
n
bit on the first processor, informing it that it now can
access the block of data.
10.5.8
Lowering Priority Within an ISR
In implementations without the software-configurable interrupt requests in the INTC software set/clear
interrupt registers (INTC_SSCIR0–INTC_SSCIR7), a way — besides scheduling a task through an RTOS
— to prevent preemptive scheduling inefficiencies with an ISR whose work spans multiple priorities (as
described in
Section 10.5.7.1, Scheduling a Lower Priority Portion of an ISR
) is to lower the current
priority. However, the INTC has a LIFO whose depth is determined by the number of priorities.
NOTE
Lowering the PRI value in INTC current priority register (INTC_CPR)
within an ISR to below the ISR’s corresponding PRI value in INTC priority
select registers (INTC_PSR0–INTC_PSR479) allows more preemptions
than the depth of the LIFO can support.
Therefore, through its use of the LIFO the INTC does not support lowering the current priority within an
ISR as a way to avoid preemptive scheduling inefficiencies.
10.5.9
Negating an Interrupt Request Outside of its ISR
10.5.9.1
Negating an Interrupt Request as a Side Effect of an ISR
Some peripherals have flag bits which can be cleared as a side effect of servicing a peripheral interrupt
request. For example, reading a specific register can clear the flag bits, and consequently their
corresponding interrupt requests too. This clearing as a side effect of servicing a peripheral interrupt
request can cause the negation of other peripheral interrupt requests besides the peripheral interrupt request
Summary of Contents for PXR4030
Page 1: ...PXR40 Microcontroller Reference Manual Devices Supported PXR4030 PXR4040 PXR40RM Rev 1 06 2011...
Page 30: ...PXR40 Microcontroller Reference Manual Rev 1 Freescale Semiconductor xxx...
Page 40: ...PXR40 Microcontroller Reference Manual Rev 1 xl Freescale Semiconductor...
Page 66: ...Memory Map PXR40 Microcontroller Reference Manual Rev 1 2 4 Freescale Semiconductor...
Page 120: ...Signal Descriptions 3 54 Freescale Semiconductor PXR40 Microcontroller Reference Manual Rev 1...
Page 860: ...FlexCAN Module 24 50 Freescale Semiconductor PXR40 Microcontroller Reference Manual Rev 1...
Page 1167: ...Decimation Filter Freescale Semiconductor 28 53 PXR40 Microcontroller Reference Manual Rev 1...
Page 1168: ...Decimation Filter 28 54 Freescale Semiconductor PXR40 Microcontroller Reference Manual Rev 1...