Systems 1: Hardware Architecture and Design鈥擣rom circuits to machine code

CS2114.01
Course System Home Terms Fall 2025 Systems 1: Hardware Architecture and Design鈥擣rom circuits to machine code

Course Description

Summary

Have you ever wondered what a computer is and how it actually works?  In this course, we鈥檒l answer the hardware half of this question.

Working from the ground up, we will start with basic circuits and develop elementary logic gates.  Taking these gates as our building blocks, we will construct the core components of a modern computer: the central processing unit, registers, and memory chips.  We will then follow the principles of modern hardware architecture to integrate these components into a general-purpose computer.  Our journey will culminate in using machine code to control the computer we have designed.

By the end of this course, you will understand what a computer is and how it actually works, from the perspective of hardware.  You will be able to explain how to go from basic circuits, to a working machine that responds to code you write.  You will also have completed the prerequisite for Systems 2, which explores the software architecture and design of a modern computer.

No previous experience in Computer Science is necessary to take this course, and you do not need any familiarity with programming.  However, your learning will be well-supported by experience in a course that emphasizes symbolic thinking.  You are encouraged to have completed (or be simultaneously enrolled in) a Computer Science or Mathematics course; but this is not a requirement for Systems 1.

Topics include: electronic circuits, combinatorial logic, sequential logic, chip design, hardware architecture, machine code, assembly language.

Evaluation will be based on active engagement, a midterm, and a comprehensive final examination.

Learning Outcomes

  • Understand Basic Electronics and Circuitry: By the end of the course, you will be able to describe the principles of electronic circuits and identify key components that allow for the flow and control of electricity.
  • Design Elementary Logic Gates: You will be able to design and implement basic combinatorial and sequential logic gates, and explain their role in computer hardware operations.
  • Construct Core Computer Components: Using elementary logic gates as building blocks, you will be able to design and explain the function of a central processing unit, registers, and memory chips.
  • Integrate Hardware Components into a Functional Computer System: You will gain experience integrating the core components of a computer using principles of modern hardware architecture to create a general-purpose machine.
  • Write Machine Code: You will showcase your ability to write simple machine code instructions and demonstrate how those instructions control and manipulate the computer system you鈥檝e built.

Cross List

  • Education

Instructor

  • Darcy Otto

Day and Time

TU,FR 10:30am-12:20pm

Delivery Method

Fully in-person

Length of Course

Full Term

Academic Term

Fall 2025

Area of Study

Credits

4

Course Level

2000

Maximum Enrollment

30

Course Frequency

Every 2-3 years