NEORV32: A customizable RISC-V SoC
blog.adafruit.com
blog.adafruit.com
https://github.com/stnolting/neorv32
Also the Documentation
https://stnolting.github.io/neorv32/
This is absolutely one of the best documented free hardware projects that I have ever seen. Most company documentation is worse by far.
My personal favorite is Clash - it’s unusual in that it actually compiles the host language (a subset of Haskell) into VHDL/Verilog, rather than simply providing a library which you can use to create circuit objects. This means you can compile your hardware and run it like a normal program, or include it as a library, or whatever. Very nice for testing. You can also use arbitrary libraries as long as you don’t use anything that falls outside the compilable subset.
Does it really have only 32 GPIO? No DMA?
The base core has 32 GPIOs (32xinput + 32xoutput) and no DMA. If you need a DMA or more GPIOs you can attach them to the Wishbone/Axi interface.