Caravel is composed of the harness frame plus two wrappers for drop-in modules for the
management area
and
user project area
.
Harness Definition
The harness itself contains the clocking module, DLL, user ID,
housekeeping SPI, POR, and GPIO control.
GPIO handling moved out of management SoC and into SPI. SPI
gets a wishbone interface; the management SoC talks to the SPI
through wishbone, not by taking over the 4-pin SPI interface.
A new block like the ID has the mode at power-up for
each GPIO. Can be configured with a text file. SPI pins are
fixed for operation on startup.
On power-up, the SPI automatically configures the
GPIO. Manual load is possible from both the SPI and from the
wishbone bus.
All functions within the harness but outside the management SoC
are incorporated into one large module called “housekeeping”.
This includes a number of registers for all the included
functions, with a “front door” SPI interface connected to the
padframe through GPIO pins 1 to 4, and a “back door” wishbone
interface connected to the management SoC. The management Soc
reserves the memory block at 0x26000000 for the
housekeeping module. The housekeeping module exchanges data
with the management SoC via an interface that uses the byte-
wide SPI register data. A small state machine reads four
contiguous wishbone addresses and an address decoder determines
the corresponding SPI register. The state machine stalls the
SoC until all four bytes have been handled before returning the
acknowledge signal.
Management Area
The management area is a drop-in module implemented as a separate repo.
It typically includes a RISC-V based SoC that includes a number of peripherals like timers, uart, and gpio.
The management area runs firmware that can be used to:
Configure User Project I/O pads
Observe and control User Project signals (through on-chip logic
analyzer probes)
Control the User Project power supply
The management area implements SRAM for the management SoC.
The default instantiation for the management core can be found
here
.
See documentation of the management core for further details.