Copyright
c
2016, SiFive Inc. All rights reserved.
35
Address
Name
Description
0x000
value
pin value
0x004
input en
∗
pin input enable
0x008
output en
∗
pin output enable
0x00C
port
output port value
0x010
pue
∗
internal pull-up enable
0x014
ds
Pin Drive Strength
0x018
rise ie
rise interrupt enable
0x01C
rise ip
rise interrupt pending
0x020
fall ie
fall interrupt enable
0x024
fall ip
fall interrupt pending
0x028
high ie
high interrupt enable
0x02C
high ip
high interrupt pending
0x030
low ie
low interrupt enable
0x034
low ip
low interrupt pending
0x038
iof en
∗
HW I/O Function enable
0x03C
iof sel
HW I/O Function select
0x040
out xor
Output XOR (invert)
Table 11.1: SiFive GPIO Register Offsets. Only naturally aligned 32-bit memory accesses are
supported. Registers marked with an
∗
are asynchronously reset to 0. All other registers are
synchronously reset to 0.
Once the interrupt is pending, it will remain set until a 1 is written to the
* ip
register at that bit.
The interrupt pins may be routed to the PLIC, or directly to local interrupts.
Internal Pull-Ups
When configured as inputs, each pin has an internal pull-up which can be enabled by software. At
reset, all pins are set as inputs and pull-ups are disabled.
Drive Strength
When configured as output, each pin has a SW-controllable Drive Strength.
Output Inversion
When configured as an output (either SW or IOF controlled), the SW-writable
out xor
register is
combined with the output to invert it.
HW I/O Functions (IOF)
Each GPIO pin can implement up to 2 HW-Driven functions (IOF) enabled with the
iof en
register.
Which IOF is used is selected with the
iof sel
register.
When a pin is set to perform an IOF, it is possible that the software registers
port
,
output en
,
pullup
,
ds
,
input en
may not be used to control the pin directly. Rather, the pins may be con-
trolled by hardware driving the IOF. Which functionalities are controlled by the IOF and which are
Summary of Contents for E300
Page 1: ...SiFive E300 Platform Reference Manual Version 1 0 1 c SiFive Inc ...
Page 2: ...2 SiFive E300 Platform Reference Manual Version 1 0 1 ...
Page 4: ...ii SiFive E300 Platform Reference Manual Version 1 0 1 ...
Page 12: ...4 SiFive E300 Platform Reference Manual Version 1 0 1 ...
Page 14: ...6 SiFive E300 Platform Reference Manual Version 1 0 1 ...
Page 22: ...14 SiFive E300 Platform Reference Manual Version 1 0 1 ...
Page 32: ...24 SiFive E300 Platform Reference Manual Version 1 0 1 ...
Page 40: ...32 SiFive E300 Platform Reference Manual Version 1 0 1 ...
Page 56: ...48 SiFive E300 Platform Reference Manual Version 1 0 1 ...
Page 60: ...52 SiFive E300 Platform Reference Manual Version 1 0 1 ...