About 20 years ago, I started working on the design of a microprocessor. The goal was mostly to have fun building a small 32-bit RISC CPU, make it open source, and, most importantly, explain the process behind it. I abandoned the project roughly 18 years ago as I moved on to other things.
This year, I want to bring the project back. Processor design was something we used to learn in univerity at the time, but today it has become much more abstract. Even understanding what actually happens inside a processor is now often treated as a fairly distant concept.
That old work is a good foundation for explaining these ideas again. For that reason, I wanted to refresh the hardware I used years ago to build the processor, which was based on an FPGA that I will discuss in more detail later. Because this is relatively professional hardware, access to FPGA development kits is usually quite expensive. And while it was honestly worth the investment, Seeed Studio has since created a development kit looking like an Arduino, includes an ESP32, and remains much more accessible. It integrates a Xilinx Spartan FPGA. It is not one of the high-end models, but it is still roughly ten times larger than the one I was using around 20 years ago, which makes it a very good fit for this project.
Continue reading
