Aspiring electrical engineers, digital designers, or anyone else for that matter, can have some fun while gaining some insight into what it takes to create a CPU with Nand Game — a browser-based application that walks you through each step needed to design a simple processor.
No, you won’t design the next Threadripper or a Core i7, although you will learn the fundamentals on what’s needed to build the hardware, which requires knowledge of its Logic gates or HDL (Hardware Description Language). The game is based on the Nand to Tetris courses that teach you how to build a general-purpose computer system from the ground up.
As mentioned earlier, the Nand Game requires you to progress through a series of tasks to create a functioning CPU, with the first being to design an inverter using a single Nand gate, which is simple enough as each step is outlined with documentation, and the tools necessary on the left-hand sidebar.
From there on, your toolbox will grow exponentially larger for each step with a myriad of other tools, including ANDs, Ors, Xors, adders, Registers, ALUs, Control Unit, and program engine, culminating in a finished processor. Each step brings a new level of complexity as you learn how each part functions, and if you become stuck on any level, the game supplies you with Wiki articles that feature small connection diagrams.
The Nand Game site is still under development, and judging by the sparse information that’s provided by the time you hit the upper tiers of the design, it must be the lack of knowledge that’s still being refined. With that said, the game is free and is an excellent way to learn how a processor is designed, and it’s pretty accurate (but not wholly- no 1 or 0 Logic, unpractical feedback loops, etc.) as I made it as far as the ALU level after a few hours.