pic32mx320f064h Microchip Technology Inc., pic32mx320f064h Datasheet - Page 192

no-image

pic32mx320f064h

Manufacturer Part Number
pic32mx320f064h
Description
64/100-pin General Purpose, 32-bit Flash Microcontrollers
Manufacturer
Microchip Technology Inc.
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
pic32mx320f064h-40I/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
pic32mx320f064h-40I/PT
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
pic32mx320f064h-40V/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
pic32mx320f064h-80I/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
pic32mx320f064h-80V/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
pic32mx320f064hT-40I/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
PIC32MX FAMILY
9.2
The interrupt controller is responsible for pre-
processing Interrupt Requests (IRQ) from a number of
on-chip peripherals and presenting them in the appro-
priate order to the processor.
Figure 9-2 depicts the process within the interrupt con-
troller module. The interrupt controller is designed to
receive up to 96 IRQs from the processor core and
from on-chip peripherals capable of generating inter-
rupts. All IRQs are sampled on the rising edge of the
SYSCLK and latched in associated IFSx registers. A
pending IRQ is indicated by the flag bit being equal to
‘1’ in an IFSx register. The pending IRQ will not cause
further processing if the corresponding bit in the Inter-
rupt Enable (IECx) register is clear. The IECx bits act to
gate the interrupt flag. If the interrupt is enabled, all
IRQs are encoded into a 5-bit wide vector number. The
5-bit vector results in 0 to 63 unique interrupt vector
numbers. Since there are more IRQs than available
vector numbers, some IRQs share common vector
numbers. Each vector number is assigned an interrupt
priority level and shadow set number. The priority level
is determined by the IPCx register setting of the asso-
ciated vector. In Multi-Vector mode, all priority level 7
interrupts use a dedicated register set, while in Single
Vector mode, all interrupts may receive a dedicated
shadow set. The interrupt controller selects the highest
priority IRQ among all pending IRQs and presents the
associated vector number, priority level and shadow
set number to the processor core.
The processor core samples the presented vector
information between the ‘E’ and ‘M’ stage of the pipe-
line. If the vector’s priority level presented to the core is
greater than the current priority indicated by the CPU
Interrupt Priority bits IPLx (Status<15:10>), the inter-
rupt is serviced; otherwise, it will remain pending until
the current priority is less than the interrupt’s priority.
When servicing an interrupt, the processor core pushes
the program counter into the Exception Program
Counter (EPC) register in the CPU and sets Exception
Level bit EXL (Status<1>) in the CPU. The EXL bit dis-
ables further interrupts until the application explicitly re-
enables them by clearing the EXL bit. Next, it branches
to the vector address calculated from the presented
vector number.
DS61143A-page 190
Operation
Advance Information
The INTSTAT register contains the Interrupt Vector
Number bits, VEC (INTSTAT<5:0>), and Requested
Interrupt Priority bits, RIPLx (INTSTAT<10:8>), of the
current pending interrupt. This may not be the same as
the interrupt which caused the core to diverge from nor-
mal execution.
The processor returns to the previous state when the
ERET (Exception Return) instruction is executed. ERET
clears the EXL bit, restores the program counter and
reverts the current shadow set to the previous one.
The PIC32MX Family interrupt controller can be config-
ured to operate in one of two modes:
• Single Vector mode – all interrupt requests will be
• Multi-Vector mode – interrupt requests will be
serviced at one vector address (mode out of
Reset).
serviced at the calculated vector address.
Notes: While the user can, during run time,
reconfigure the interrupt controller from
Single Vector to Multi-Vector mode (or
vice versa), such action is strongly dis-
couraged. Changing interrupt controller
modes after initialization may result in
undefined behavior.
The M4K core supports several different
interrupt processing modes. The interrupt
controller is designed to work in External
Interrupt Controller mode.
© 2007 Microchip Technology Inc.

Related parts for pic32mx320f064h