The CPU is the part of a computer that runs programs. It repeatedly fetches an instruction from memory, works out what it means, and carries it out: the fetch decode execute cycle.
Nothing inside a CPU is new by the end of this course. It's built from parts you already know:
- Registers hold values between clock edges;
- an ALU adds, subtracts and does logic;
- Multiplexers choose which value goes where;
- a connection to memory reads and writes words;
- a finite state machine steps through each instruction, one state per clock cycle.
Those parts split into two halves: the datapath, which holds and transforms data, and the control unit, which tells the datapath what to do in each cycle.
A microprocessor is a whole CPU on one chip. Lab CPUs built in a simulator or on an FPGA, like the course's Tiny8, look much like a tiny version of a real one: a few registers, one memory, a small ALU and a control FSM.