What makes me most proud is that something like this probably never existed before under these constraints. Maybe being a bit crazy made it possible.
A Linux capable RISC V SoC with an Sv32 MMU implemented as a real ASIC on
@tinytapeout (8×4 tiles) using the IHP Leibniz Institute for High Performance Microelectronics PDK, capable of running xv6, µLinux (noMMU), and booting mainline Linux including Linux 7.0.
External BootROM over a shared SPI bus also used for an SD card, Ethernet controller with IPv4 and IPv6, and other SPI devices. Runs from external PSRAM in full clock mode with two 512 line caches for instructions and data plus TLBs. Performance roughly comparable to Unix workstations from the late 80s and early 90s.
The chip was built in a 130 nm process on 1.7 mm × 0.7 mm of silicon with more than two meters of wiring. CPU core and SoC were designed completely from scratch. ASIC integration was done independently during one vacation week based on my own design.
I work professionally as an embedded/Linux developer and have pursued logic design as a hobby for about five years. Some ASICs even got taped out.
Thanks to
@UriShaked for help with ASIC integration, Leo Moser for advice on ASIC-related questions, and
@matthewvenn for making this possible through TinyTapeout.