We design circuits for you, visit our main site

8 Bit Breadboard Computer
I built a programmable 8-bit computer from scratch on breadboards using only simple logic gates. The main objective of building this was to learn the working of microprocessor, this uses the SAP architecture.


I made it all on my own in my 3rd semester of engineering. It took me around 4 weeks to complete this project. It was also awarded the best project in my college's techfest; 


There are various modules used in this project:

(Detailed discription in their seperate posts)

1. Clock Module

The computer’s clock is used to synchronize all operations. The clock we’re building is based on the popular 555 timer IC.Our clock is adjustable-speed (from less than 1Hz to a few hundred Hz). The clock can also be put into a manual mode where you push a button to advance each clock cycle. This was really useful feature for debugging the computer. 

I also created a PCB design for this module on double layer PCB.

2. Registers

Most CPUs have a number of registers which store small amounts of data that the CPU is processing. In simple breadboard CPU, I built three 8-bit registers: A, B, and IR. The A and B registers are general-purpose registers. IR (the instruction register) works similarly, but I only used it for storing the current instruction that’s being executed.

3. Arithmetic logic unit (ALU)

The arithmetic logic unit (ALU) part of a CPU is usually capable of performing various arithmetic, bitwise, and comparison operations on binary numbers. In simple breadboard CPU, the ALU is just able to add and subtract. It’s connected to the A and B registers and outputs either the sum of A+B or the difference of A-B.

4. Random access memory (RAM) module

The random-access memory (RAM) stores the program the computer is executing as well as any data the program needs. Our breadboard computer uses 4-bit addresses which means it will only have 16 bytes of RAM, limiting the size and complexity of programs it can run. This is by far its biggest limitation.

5. Program counter


The program counter (PC) counts in binary to keep track of which instruction the computer is currently executing.

6. Output register

The output register is similar to any other register (like the A and B registers) except rather than displaying its contents in binary on 8 LEDs, it displays its contents in decimal on a 7-segment display. Doing that requires some complex logic; luckily there’s an easier way:

7. CPU control logic


The control logic is the heart of the CPU. It’s what defines the opcodes the processor recognizes and what happens when it executes each instruction.

Problems faced while building it:

1. Connecting it all together, Wires tend to mess up and a single error and you have to debug from ground up.

2. Providing sufficient power to all the modules using one power supply made by an old phone's charger.

3. Few ic's were not available so programmed the attiny ic's to work instead of them.

4. IC's getting hot sometimes due to connection or over usage, needed to replace or make sufficient area for heat decipation.

What I learned from this project:

1. Microprocessor's working, indepth.
2. Building of electronic circuits
3. Essentials of circuit designing.
4. Coding of IC's based only on their working
5. Effective reading of datasheets.
6. Importance of electronics
7. Hardware designing
8. managing of big projects.
9. a lot more


1 comment: