CS 80E - Dissecting The Modern Computer - Autumn Quarter 2025
🔑
Class Times: Tuesday and Thursday 1:30-2:20PM in
Sequoia 200
🔑
Office Hours 2:20-2:50PM (right after class) in the classroom (more
TBD)
🔑
Instructor: Trip Master
🔑
Contact: trip@cs.stanford.edu
🔑
Enrollment Information: 2 units, Satisfactory/NC only
Course Information
CS80E is a survey course designed to give students a broad primer on computer hardware and architecture.
Students
will take a deep-dive into the software-hardware boundary by learning about the increasingly-popular RISC-V ISA.
Upon course completion, students will have a more thorough understanding of the computational abstraction stack,
offering them wider perspective of the computing landscape. The course is roughly divided into the following
topics:
Circuits: We'll spend a bit of time learning about the really low level
stuff: signals and circuits. This will follow into a discussion of combinational and sequential logic. By the
end of this unit, students should be able to examine a simple pipelined processor diagram.
Processors: We'll look at the simple pipelined processor and examine how it
laid the groundwork for today's computational powerhouses.
ISA: At the heart of the hardware-software boundary is the Instruction Set
Architecture. We'll use RISC-V to study how we can turn our code into actual hardware production!
Memory: We'll explore the memory hierarchy, from caches to Disk. We will
spend most of our time on caches.
Miscellaneous Topics: GPU's, hardware side-channel attacks, and potentially
a
class-picked topic!
What's with the Prereq?
CS106B or equivalent is a
required prerequisite for the course, but given
how much of the myth machines / unix we'll be using, CS107 is recommended.
As an important note, if you have taken classes like EE108, EE180, or CS149, you should not be enrolled in
CS80E, as those classes dive into some of these topics in more depth. Similarly, CS107E alums will see a lot
more overlap of material than CS107 students. I envision this class as more-oriented towards students who took
CS107 and look back and wish they could try and take CS107E.
Student Requirements to Receive Credit in CS80E
⭐ Attend all lectures + show up on-time! (see attendance for more info)
⭐ Receive passing scores on all assignments.
⭐ Make a good-faith effort to contribute to the learning experience for everyone!
Assignments
CS80E will have 5 homework assignments. Some will be purely written and will be administered via Canvas. Others
will be lab-like coding assignments.
Students must complete assignments
individually and must abide by the
University Honor
Code when completing work. For written assignments, while you may discuss strategies with classmates, you
may not share direct calculations or answers.
Make sure that, if you choose to use LLM's to assist your learning, that you do so responsibly. This is a 2-unit
C/NC class -- my hope is that you're here to learn something!
Exams
CS80E will not have exams :). In return, please give it your all on the homeworks and come to class!
Communication
Announcements: will be sent out on Edstem. Please make sure that you've
joined!
General public communication: Will also be on Edstem. Did I mention that you
should make sure that you've joined?
Individual meetings by request from the student.
Communication with instructor: Send me an email at
trip@cs.stanford.edu, and I'll usually respond within 24 hours. Please
bear in mind that my response times might be worse at off-peak times (weekends / late at night). If you don't
get a response within a reasonable time frame, please ping me again. Don't be shy!
Getting Help
Clarification questions about assignments: ask on Ed! Ed is the best place
to get clarification questions. Some of the homeworks are new, so I'm sure there will be places where I'll
need to make amendments. Keep your eyes peeled to Ed!
More private questions (attendance, grading, etc.): make a private Ed post!
Additionally, for more pressing issues, send Trip an email if you'd like to chat 1:1.
Office Hours: Trip will hold ~2 hours of office hours per week. Office hours
will be informal (no queue system), and students are encouraged to attend even if they don't have questions.
That being said, students with questions about course content will have priority if things end up getting too
crowded.
Attendance Policy
✔️ CS80E will meet twice a week, every week, for a total of
19 classes.
Students will be given
three "free" absences from lecture, excluding week 1
(which understanbly has schedule craziness). If my math is correct, this means that you must attend 15 of the
remaining 18 lectures to receive credit in the class.
✔️ Latness beyond 15 minutes will also count as an absence to class. I will probably try and keep attendance on
paper, so please be on time!
Auditors
CS80E does allow auditors, but auditors should not use finite class resources (i.e. Trip's bandwidth), so please
refrain from using office hours.
Accessibility
Students who may need academic accommodation based on the impact of a disability must initiate the request with
the Office of Accessible Education (OAE). Professional staff will evaluate the request, review appropriate
medical documentation, recommend reasonable accommodations, and prepare an Accommodation Letter for faculty. The
letter will indicate how long it is to be in effect. Students should contact the OAE as soon as possible since
timely notice is needed to coordinate accommodations. Students should also send your accommodation letter to
instructors as soon as possible. The OAE is located at 563 Salvatierra Walk (phone: 723-1066, URL:
http://oae.stanford.edu).