Table 21:
PLIC Interrupt Source Mapping
Source Start
Source End
Source
4
4
UART1
5
5
QSPI0
6
6
QSPI1
7
7
QSPI2
8
39
GPIO
40
51
PWM
10.3
Interrupt Priorities
Each PLIC interrupt source can be assigned a priority by writing to its 32-bit memory-mapped
priority
register. The FE310-G000 supports 7 levels of priority. A priority value of 0 is
reserved to mean "never interrupt" and effectively disables the interrupt. Priority 1 is the lowest
active priority, and priority 7 is the highest. Ties between global interrupts of the same priority
are broken by the Interrupt ID; interrupts with the lowest ID have the highest effective priority.
See Table 22 for the detailed register description.
Table 22:
PLIC Interrupt Priority Registers
PLIC Interrupt Priority Register (
priority
)
Base Address
0x0C0 4 × Interrupt ID
Bits
Field Name
Attr.
Rst.
Description
[2:0]
Priority
RW
X
Sets the priority for a given global inter-
rupt.
[31:3]
Reserved
RO
0
10.4
Interrupt Pending Bits
The current status of the interrupt source pending bits in the PLIC core can be read from the
pending array, organized as 2 words of 32 bits. The pending bit for interrupt ID
is stored in bit
of word
. As such, the FE310-G000 has 2 interrupt pending registers. Bit
0 of word 0, which represents the non-existent interrupt source 0, is hardwired to zero.
A pending bit in the PLIC core can be cleared by setting the associated enable bit then perform-
ing a claim as described in Section 10.7.
Chapter 10 Platform-Level Interrupt Controller (PLIC)
SiFive FE310-G000 Manual: v3p2
© SiFive, Inc.
Page 44