Build an 8-bit Computer from Scratch

Advanced Lecture (9 CP)

In this lecture, you will learn some basics of computer architecture by doing. We will design and build an 8-bit CPU from scratch using mostly 74xx series TTL-logic chips.

More specifically, you will:

The ultimate goal is to have a fully working machine that can run simple programs by the end of the course. To this end, we will layout, order, and solder PCBs!

A previous instance of this course ran as a seminar in the summer term 2022 and the participants created the fabulous SaarCPU!

Attention!

This course is for people who are passionate about building stuff and getting it to work. It will require time, dedication, and perseverance!

Format

The number of participants is limited to 16. There will be four teams with four members each. More details will follow.

Prerequisites

Disclaimer

The limited space on a few breadboards requires that the machine has a simple microarchitecture that was state-of-the art in the 70s and 80s (simple functional units driven by microcode). We also cannot build much more in the short time available.

Nevertheless you will definitely get a deeper understanding how computers work, what the trade-offs are in a hardware design. You will also better understand why more modern techniques like pipelining, out-of-order execution, superscalar execution were invented, what problems they solve, and how complex they are.

You will also understand the origins of CISC-like instruction sets like x86 and see why they made sense in their historical context and why and how we do things a bit differently today.

Resources