Designs for a basic 16-Bit Calculator supporting basic operations and store/load from memory
This project essentially came about because for the past 6 years I've been unable to design a cpu using only discrete logic chips without the introduction of huge amounts of scope creep. I end up with most of a design then realise I can make it slightly more efficient by adding an extra pipeline stage, adding an extra set of instructions, adding a second layer of cache, etc.
So, I've imposed some restrictions for myself with this project so it actually has a chance of being completed:
- 16 bit signed integers only. No using two registers to store a i32, no floating point, nothing else at all
- The operations it can do are: add, subtract, multiply, divide, negate, store, load. Nothing else. At all.
- No instruction memory, no Program Counter, control logic and interrupts are what will be used (this probably makes it harder but, yeah).
- No pipelining, no cacheing, no MAR/MDR, nothing thats used to speed up normally slow operations
A second reason behind me doing this is I look at screens a tad too much, so I'm doing this with pencil and paper, using the internet sparingly. And I'm just jealous of cool looking engineering drawings for machining and I think these could look cool.
This however does mean that these will be in a horrible format for reading on a computer, I'll try to edit them to make them legible but I doubt that will be possible for everything. The reason I'm uploading them here is mainly so I know theyre backed up in case I lose the drawings or they get damaged somehow.
Once I finish the circuit design I will probably copy the design into logisim or kicad so that I can simulate it or order some PCBs, which I hope I will be able to do by the end of summer 2026.
I'm aware this is a very non-technical or informative readme but all the details I've written out and are on paper, in theory, somewhere.