A rite of passage for a digital designer is to build a CPU. That may seem a formidable task and if you are thinking of building a modern CPU like the one in your PC, it is. However, a simple CPU is well within the reach of anyone who can sling some logic gates or HDL. We’ve even seen CPUs built in Minecraft. Now you can play nandgame and build a CPU step-by-step in your browser.
The game is based on the popular From NAND to Tetris site. True to the name you start out with a single NAND gate as a tool. From there you build an inverter, an AND gate, adders, flip flops, registers, and the like. You get a little help from the accompanying text and there are some blacked out hints if you get stuck.
The site notes that it is not complete yet, and we presume it means there should be more explanatory text. By the time you are building the ALU and instruction units, the text is a little sparse. However, it is a great way to experiment with how a CPU works internally and it is sort of fun, too.
We only had one real complaint. There are a few things that are made unnecessarily difficult because there is no way to get a solid logic 1 or 0 into the design — something that would not be true in real life. In addition, the feedback loops used to build flip flops isn’t very practical either, but at least it doesn’t make the game more difficult than real life. But it would be nice if they noted that in real life you’d have trouble doing as they suggest.
A lot of the custom CPUs we’ve seen on FPGAs are just toys. But two come to mind that are not. [Robert Baruch] has a custom CPU that can play Zork. We were very impressed with [F4HDK’s] A2Z computer which not only sports a powerful custom CPU, but also has an OS, a file system, and a set of utilities.