3 ms·
It's a challenge but it's not out of the question, even for 13 years old. Designing a basic CPU with modern tools is not difficult if you understand how to do
by jlokier 6y ago
It's a challenge but it's not out of the question, even for 13 years old.
Designing a basic CPU with modern tools is not difficult if you understand how to do it, know the tools, and have a useful simulator. It's the hardware equivalent of a writing a bytecode interpreter in software.
(Tools are usually VHDL or Verilog, and Chisel is gaining traction in RISC-V academic circles. There are many other hardware languages too, but not as well known)
An experienced digital designer might rustle up a simple custom CPU in an afternoon or two. Not necessarily a great one, but good enough for some problems. They might do it as a side task during an existing logic design just because it takes a less area than the equivalent logic gates for some function that doesn't need to run at full speed. This is quite a common trick on FPGAs :-)
I've done this for a network packet processor. The assembler took longer to write than the CPU, and even that was a dirty Perl script. The whole thing took maybe 2 workdays. In that instance the motivation was to avoid having to do FPGA circuit synthesis when changing the network processing program: Assembling and loading a different program into the custom CPU took seconds, much faster than the several hours for FPGA circuit synthesis.