Understanding Caravel GPIO
When I was first testing my designs inside Caravel, I was quite confused about all the GPIO options.
- Each pin has a range of options that can be configured by firmware running on the RISCV processor.
- Each pin can be driven from the processor or your custom design.
- The outputs have separate output enable lines for bi-directional signalling.
I put together an experiment where I tried the most important options and checked the results in a simulation. You can watch the video here:
- Supporting documentation
- The github repository is here: https://github.com/mattvenn/caravel_gpio