•
Peripheral Level
An interrupt-generating event occurs in a peripheral. The interrupt flag (IF) bit corresponding to that event is
set in a register for that particular peripheral.
If the corresponding interrupt enable (IE) bit is set, the peripheral generates an interrupt request to the PIE
controller. If the interrupt is not enabled at the peripheral level, then the IF remains set until cleared by
software. If the interrupt is enabled at a later time, and the interrupt flag is still set, the interrupt request is
asserted to the PIE.
Interrupt flags within the peripheral registers must be manually cleared. See the peripheral reference guide
for a specific peripheral for more information.
•
PIE Level
The PIE block multiplexes eight peripheral and external pin interrupts into one CPU interrupt. These
interrupts are divided into 12 groups: PIE group 1 - PIE group 12. The interrupts within a group are
multiplexed into one CPU interrupt. For example, PIE group 1 is multiplexed into CPU interrupt 1 (INT1)
while PIE group 12 is multiplexed into CPU interrupt 12 (INT12). Interrupt sources connected to the remaining
CPU interrupts are not multiplexed. For the non-multiplexed interrupts, the PIE passes the request directly to
the CPU.
For multiplexed interrupt sources, each interrupt group in the PIE block has an associated flag register
(PIEIFRx) and enable (PIEIERx) register (x = PIE group 1 - PIE group 12). Each bit, referred to as y,
corresponds to one of the 8 MUXed interrupts within the group. Thus PIEIFRx.y and PIEIERx.y correspond
to interrupt y (y = 1-8) in PIE group x (x = 1-12). In addition, there is one acknowledge bit (PIEACK) for
every PIE interrupt group referred to as PIEACKx (x = 1-12).
illustrates the behavior of the PIE
hardware under various PIEIFR and PIEIER register conditions.
Once the request is made to the PIE controller, the corresponding PIE interrupt flag (PIEIFRx.y) bit is
set. If the PIE interrupt enable (PIEIERx.y) bit is also set for the given interrupt then the PIE checks the
corresponding PIEACKx bit to determine if the CPU is ready for an interrupt from that group. If the PIEACKx
bit is clear for that group, then the PIE sends the interrupt request to the CPU. If PIEACKx is set, then the PIE
waits until it is cleared to send the request for INTx.
See Section 1.7.3 for details.
•
CPU Level
Once the request is sent to the CPU, the CPU level interrupt flag (IFR) bit corresponding to INTx is set. After
a flag has been latched in the IFR, the corresponding interrupt is not serviced until it is appropriately enabled
in the CPU interrupt enable (IER) register or the debug interrupt enable register (DBGIER) and the global
interrupt mask (INTM) bit.
System Control and Interrupts
168
TMS320x2806x Microcontrollers
SPRUH18I – JANUARY 2011 – REVISED JUNE 2022
Copyright © 2022 Texas Instruments Incorporated
Содержание TMS320 2806 Series
Страница 2: ......