Class Name: EE/CS 10a (Introduction to Digital Logic and Embedded Systems)
Institution: Caltech (Undergrad)
Project Duration: January-March 2023
Project Description: Design and simulate a simple CPU out of logic gates
Full CPU here, in ABEL hardware description language.
CPU overal structure and functionality. Courtesy Prof. Glen George
ALU Unit design: Performs addition, subtraction, shift, and logical operations
DMAU: Generates data addresses, responsible for updating X and S registers
PMAU: Generates program memory addresses, updates program counter (PC)
Control Unit: Interprits instruction register to generate control signals for ALU, PMAU, and DMAU. Also generates RD and WR signals. This PDF only details how the CPU handles single clock instructions.
Control Unit finite state machine (For dealing with CALL and RTS instructions, which take multiple clocks)
ABEL programming language
Finite state machines
Karnaugh maps
CPU system architecture