1.6 Peripheral Interrupt Expansion (PIE)
The peripheral interrupt expansion (PIE) block multiplexes numerous interrupt sources into a smaller set of
interrupt inputs. The PIE block can support 96 individual interrupts that are grouped into blocks of eight. Each
group is fed into one of 12 core interrupt lines (INT1 to INT12). Each of the 96 interrupts is supported by
its own vector stored in a dedicated RAM block that you can modify. The CPU, upon servicing the interrupt,
automatically fetches the appropriate interrupt vector. It takes nine CPU clock cycles to fetch the vector and save
critical CPU registers. Therefore, the CPU can respond quickly to interrupt events. Prioritization of interrupts is
controlled in hardware and software. Each individual interrupt can be enabled/disabled within the PIE block.
1.6.1 Overview of the PIE Controller
The 28x CPU supports one nonmaskable interrupt (NMI) and 16 maskable prioritized interrupt requests (INT1-
INT14, RTOSINT, and DLOGINT) at the CPU level. The 28x devices have many peripherals and each peripheral
is capable of generating one or more interrupts in response to many events at the peripheral level. Because the
CPU does not have sufficient capacity to handle all peripheral interrupt requests at the CPU level, a centralized
peripheral interrupt expansion (PIE) controller is required to arbitrate the interrupt requests from various sources
such as peripherals and other external pins.
The PIE vector table is used to store the address (vector) of each interrupt service routine (ISR) within the
system. There is one vector per interrupt source including all MUXed and nonMUXed interrupts. You populate
the vector table during device initialization and you can update it during operation.
1.6.1.1 Interrupt Operation Sequence
shows an overview of the interrupt operation sequence for all multiplexed PIE interrupts. Interrupt
sources that are not multiplexed are fed directly to the CPU.
INT12
MUX
INT11
INT2
INT1
CPU
(Enable)
(Flag)
INTx
INTx.8
PIEIERx(8:1)
PIEIFRx(8:1)
MUX
INTx.7
INTx.6
INTx.5
INTx.4
INTx.3
INTx.2
INTx.1
From
Peripherals or
External
Interrupts
(Enable)
(Flag)
IER(12:1)
IFR(12:1)
Global
Enable
INTM
1
0
PIEACKx
(Enable/Flag)
Figure 1-93. Overview: Multiplexing of Interrupts Using the PIE Block
System Control and Interrupts
SPRUH18I – JANUARY 2011 – REVISED JUNE 2022
TMS320x2806x Microcontrollers
167
Copyright © 2022 Texas Instruments Incorporated
Содержание TMS320 2806 Series
Страница 2: ......