As part of my quest to learn how computers actually work, I'm attempting to design and build a "simple" 8-bit computer completely from scratch.
I will be designing this computer entirely with pen and paper (using Rhodia DotPad paper - the best for this type of thing).
While designing the computer, I will make heavy use of abstraction layering. I will start by designing the circuitry for each individual logic gate, then reference those abstractions when needed. I will repeat this process for each component by using the previous abstractions.
Transistors --> Logic gates --> Half adder --> Full adder --> etc.
Eventually I should end up with a very abstract computer design with a set of keys, which I can use to actually build the computer.
This computer will not be very fast and have almost no optimisations done, this one is focusing on simplicity of design and abstractions. However if I were to design another, I would try to make that one much faster.
I am yet to begin the design process, but I will update this page with future developments.