ESM
ADC
LIN
SPI
DCAN
NHET
Peripherals
- Generate Interrupt Requests
INT_REQ0 INT_REQ1
INT_REQ126
VIM
VBUSP
CPU
RTI
GCM
CAPEVT[1:0] Wakeup_INT
INT
Table
IRQ
Index
FIQ
Index
IRQ
Vector
FIQ
Vector
IRQ
FIQ
IRQ
Vector
VIC Port
- Interrupt Priority
- Interrupt Mapping
- Interrupt Enable
- Interrupt Generation
Configuration Register RegisterRegister Register Request Requestt
(Direct
Hardware
Vector)
Special Interrupts
CPU Interrupts
Device Level Interrupt Management
665
SPNU563A – March 2018
Copyright © 2018, Texas Instruments Incorporated
Vectored Interrupt Manager (VIM) Module
19.3 Device Level Interrupt Management
A block diagram of device level interrupt handling is shown in
. When an event occurs within a
peripheral, the peripheral makes an interrupt request to the VIM. Then, VIM prioritizes the requests from
peripherals and provides the address of the highest interrupt service routine (ISR) to the CPU. Finally,
CPU starts executing the ISR instructions from that address in the ISR.
through
provide additional details about these three steps.
Figure 19-2. Device Level Interrupt Block Diagram
19.3.1 Interrupt Generation at the Peripheral
Interrupt generation begins when an event occurs within a peripheral module. Some examples of interrupt-
capable events are expiration of a counter within a timer module, receipt of a character in a
communications module, and completion of a conversion in an analog-to-digital converter (ADC) module.
Some device peripherals are capable of requesting interrupts on more than one interrupt request line.
Interrupts are not always generated when an event occurs; the peripheral must make an interrupt request
to the VIM based on the event occurrence. Typically, the peripheral contains:
•
An interrupt flag bit for each event to signify the event occurrence.
•
An interrupt enable bit to control whether the event occurrence causes an interrupt request to the VIM.