
Interrupt Controller (INTC)
MPC5566 Microcontroller Reference Manual, Rev. 2
10-38
Freescale Semiconductor
OSEK uses the GetResource and ReleaseResource system services to manage access to a shared resource.
To prevent corrupting a coherent data block, use the following code to modify the PRI in INTC_CPR.
Interrupts must be enabled before executing the following GetResource code sequence:
GetResource:
raise PRI
mbar
isync
ReleaseResource:
mbar
lower PRI
10.5.6
Selecting Priorities According to Request Rates
and Deadlines
The selection of the priorities for the ISRs can be made using rate monotonic scheduling (RMS) or a
superset of it, deadline monotonic scheduling (DMS). In RMS, the ISRs which have higher request rates
have higher priorities. In DMS, if the deadline is before the next time the ISR is requested, then the ISR is
assigned a priority according to the time from the request for the ISR to the deadline, not from the time of
the request for the ISR to the next request for it.
For example, ISR1 executes every 100
μ
s, ISR2 executes every 200
μ
s, and ISR3 executes every 300
μ
s.
ISR1 has a higher priority than ISR2 which has a higher priority than ISR3. However, if ISR3 has a
deadline of 150
μ
s, then it has a higher priority than ISR2.
The INTC has 16 priorities, which can be much less than the number of ISRs. In this case, group the ISRs
with other ISRs that have similar deadlines. For example, when a priority is allocated for every time the
request rate doubles: ISRs with request rates around 1 ms share a priority; ISRs with request rates around
500
μ
s share a priority; ISRs with request rates around 250
μ
s share a priority, etc. With this approach, a
range of ISR request rates of 2
16
can be covered, regardless of the number of ISRs.
Reducing the number of priorities does reduce the processor's ability to meet its deadlines. However, it
also allows easier management of ISRs with similar deadlines that share a resource. They do not need to
use the PCP to access the shared resource.
10.5.7
Software Settable Interrupt Requests
The software settable interrupt requests can be used in two ways. They can be used to schedule a lower
priority portion of an ISR and for processors to interrupt other processors in a multiple processor system.
10.5.7.1
Scheduling a Lower Priority Portion of an ISR
A portion of an ISR needs to be executed at the PRI
n
value in INTC priority select registers
(INTC_PSR0–INTC_PSR329), which becomes the PRI value in INTC current priority register
(INTC_CPR) with the interrupt acknowledgement. The ISR, however, can have a portion of it which does
not need to be executed at this higher priority. Therefore, executing this later portion which does not need
to be executed at this higher priority can prevent the execution of ISRs which do not have a higher priority
Summary of Contents for MPC5566
Page 81: ...Introduction MPC5566 Microcontroller Reference Manual Rev 2 1 24 Freescale Semiconductor...
Page 135: ...Signal Description MPC5566 Microcontroller Reference Manual Rev 2 2 54 Freescale Semiconductor...
Page 189: ...Reset MPC5566 Microcontroller Reference Manual Rev 2 4 20 Freescale Semiconductor...
Page 603: ...Flash Memory MPC5566 Microcontroller Reference Manual Rev 2 13 38 Freescale Semiconductor...
Page 609: ...SRAM MPC5566 Microcontroller Reference Manual Rev 2 14 6 Freescale Semiconductor...
Page 1073: ...MPC5566 Microcontroller Reference Manual Rev 2 22 36 Freescale Semiconductor...
Page 1185: ...Nexus MPC5566 Microcontroller Reference Manual Rev 2 25 92 Freescale Semiconductor...