Over 30 years ago I took a computer science course that had an awesome textbook. (I can't recall the title of the book, but when I find it I will update this.) The book had a section on CPUs and how they work and at the time I wanted to try to design my own CPU using discrete components. I got as far as sketching out preliminary designs on paper and some proof-of-concept test modules, but a quick tally of the components required for a full build meant that the project would have been prohibitively expensive for me at the time. But I always wanted to return to this project... One day...
Sometime in mid 2018 I stumbled across a series of YouTube videos by Ben Eater where he shows how to design and build a CPU using 74xx TTL chips. Electronic components and chips are so much cheaper these days that such a computer is within reach of my (limited) budget. Finally I could do something approaching my original CPU idea.
My plans for this project are to build Ben's design (reasonably faithfully) on breadboards, then transfer the design to PCBs. I have already stockpiled most of the components (I need some more breadboards, as some of my stock was appropriated for some Arduino projects) and have the clock and two registers built. I will document what I have done so far in the next project log.
As I complete each module, I plan to create a PCB and immortalise the design in silicon. I have some crude layouts already, but I need to think about how the busses will work and how the modules will connect together before I get the first batch of PCBs etched.
When I complete this project, I desperately want to revisit my original idea of a fully discrete CPU. Or maybe a hybrid - use discrete components for some of the CPU and 74xx logic for the rest? I dunno yet, but I want to design a CPU form scratch - something different to Ben's implementation of Malvino's SAP computer, and prolly not a microcode-based CPU. We'll see how far I get. ;^)