Great Ideas in Computer Architecture (Machine Structures)

chipmunk holding square computer chip with cs61c label

CS 61C at UC Berkeley with Lisa Yan - Spring 2025

Lecture: Monday/Wednesday/Friday 3:00PM - 4:00PM PT, Valley Life Sciences 2050
Recordings will be published to bCourses Media Gallery

Week Date Lecture Discussion Lab HW Project
1 Tue 1/21 Lab 0: Intro, Setup Due 1/27
Wed 1/22 Lecture 1: Intro, Great Ideas
Thu 1/23
Fri 1/24 Lecture 2: Number Representation
Readings: Course Policies, P&H:2-4, Binary Slides
2 Mon 1/27 Lecture 3: C Intro - Basics Discussion 1: C, Number Rep

Homework 1 Due 1/30
Tue 1/28
Wed 1/29 Lecture 4: C Intro - Pointers, Arrays, Strings
Readings: K&R 5-6
Lab 1: C Due 1/30
Thu 1/30
Fri 1/31 Lecture 5: C Memory Management
Readings: K&R 7.8.5, 8.7
3 Mon 2/3 Lecture 6: C Generics
Readings: K&R 7.8.5, 8.7
Discussion 2: C


Homework 2 Due 2/04 Project 1: snek Due 2/13
Tue 2/4
Wed 2/5 Lecture 7: Floating Point
Readings: IEEE 754 Simulator
Lab 2: C Debugging Due 2/06
Thu 2/6
Fri 2/7 Lecture 8: RISC-V Basics
Readings: P&H 2.1-2.3
4 Mon 2/10 Lecture 9: RISC-V Data Transfer
Readings: P&H 2.9, 2.10
Discussion 3: Floating Point / RISC-V


Tue 2/11
Wed 2/12 Lecture 10: RISC-V Decision Making
Readings: P&H 2.6, 2.7, 3.2
Lab 3: RISC-V, Venus Due 2/13
Thu 2/13
Fri 2/14 Lecture 11: RISC-V Procedures
Readings: P&H 2.8
Project 2: CS61Classify A: Due 2/20 B: Due 3/06
5 Mon 2/17 No lecture: Holiday Homework 3 Due 2/18
Tue 2/18 Discussion 4: RISC-V Calling Convention


Wed 2/19 Lecture 12: RISC-V Instruction Formats I
Readings: P&H 2.5, 2.10
Thu 2/20
Fri 2/21 Lecture 13: RISC-V Instruction Formats II
Readings: P&H 2.5, 2.10
6 Mon 2/24 Lecture 14: Compiler, Assembler, Linker, Loader
Readings: P&H 2.12
Discussion 5: CALL, RISC-V ISA Homework 4 Due 2/25
Tue 2/25
Wed 2/26 Lecture 15: Caches I
Readings: SDS Handout
Lab 4: RISC-V Calling Convention Due 2/27
Thu 2/27
Fri 2/28 Lecture 16: Caches II
Readings: Blocks Handout
7 Mon 3/3 Lecture 17: Caches III
Readings: P&H A.3-A.6, State Handout
Discussion 6: Caches
Tue 3/4
Wed 3/5 Lecture 18: Caches IV
Readings: P&H 4.1, 4.3
Thu 3/6
Fri 3/7 Lecture 19: SDS I
Readings: P&H 4.4
Project 3: CS61CPU A: Due 4/03 B: Due 4/17
8 Mon 3/10 Lecture 20: SDS II Discussion 7 Homework 5 Due 3/11
Tue 3/11
Wed 3/12 Lecture 21: SDS III
Readings: P&H 4.6–4.8
Thu 3/13
Fri 3/14 Lecture 22: SDS IV
Readings: P&H 4.8, 4.10
9 Mon 3/17 No lecture
Tue 3/18 Midterm 7-9PM PT
Wed 3/19 Lecture 23: RISC-V Single-Cycle Datapath I
Readings: P&H 4.6, 4.7, 4.8, 4.10
Lab 5: Logisim Due 3/20
Thu 3/20
Fri 3/21 Lecture 24: RISC-V Single-Cycle Datapath II
Readings: P&H 4.6, 4.7, 4.8, 4.10
10 Mon 3/24 No lecture: Holiday
Tue 3/25 No lecture: Holiday
Wed 3/26 No lecture: Holiday
Thu 3/27 No lecture: Holiday
Fri 3/28 No lecture: Holiday
11 Mon 3/31 Lecture 25: RISC-V Single-Cycle Control Logic
Readings: P&H 5.1-5.4, 5.8, 5.9, 5.13, Cache Flowchart
Discussion 8: Datapath Homework 6 Due 4/01
Tue 4/1
Wed 4/2 Lecture 26: RISC-V 5-Stage Pipeline I
Readings: P&H 5.1-5.4, 5.8, 5.9, 5.13, Cache Flowchart
Thu 4/3
Fri 4/4 Lecture 27: RISC-V 5-Stage Pipeline II
Readings: P&H 5.1-5.4, 5.8, 5.9, 5.13, Cache Flowchart
12 Mon 4/7 Lecture 28: RISC-V 5-Stage Pipeline III - Hazards
Readings: P&H 1.7, 1.8, 2.11, 4.10, 4.11, 5.10, 6.1-6.3, 6.5, 6.7, OpenMP Summary Card
Discussion 9: Pipelining, Hazards Homework 7 Due 4/08
Tue 4/8
Wed 4/9 Lecture 29: Parallelism I - Intro
Readings: P&H 1.7, 1.8, 2.11, 4.10, 4.11, 5.10, 6.1-6.3, 6.5, 6.7, OpenMP Summary Card
Lab 6: CPU, Pipelining Due 4/10
Thu 4/10
Fri 4/11 Lecture 30: Parallelism II - SIMD
Readings: P&H 1.7, 1.8, 2.11, 4.10, 4.11, 5.10, 6.1-6.3, 6.5, 6.7, OpenMP Summary Card
13 Mon 4/14 Lecture 31: Parallelism III - TLP
Readings: P&H 1.7, 1.8, 2.11, 4.10, 4.11, 5.10, 6.1-6.3, 6.5, 6.7, OpenMP Summary Card
Discussion 10: Parallelism
Tue 4/15
Wed 4/16 Lecture 32: Parallelism IV - Concurrency
Thu 4/17
Fri 4/18 Lecture 33: Parallelism V - Distributed Computing and MapReduce
14 Mon 4/21 Lecture 34: Guest Lecture (TBD)
Readings: P&H 5.7, 5.8
Discussion 11: More Parallelism Homework 8 Due 4/22
Tue 4/22
Wed 4/23 Lecture 35: Virtual Memory I
Readings: P&H 5.7-5.8
Thu 4/24
Fri 4/25 Lecture 36: Virtual Memory II
15 Mon 4/28 Lecture 37: MapReduce, OS Discussion 12
Tue 4/29
Wed 4/30 Lecture 38: I/O, Warehouse-Scale Computing Homework 9 Due 5/01
Thu 5/1
Fri 5/2 Lecture 39: Summary, What's Next? Lab 7: Parallelism Due 5/02
16 Mon 5/5 RRR Week
Tue 5/6 RRR Week
Wed 5/7 RRR Week
Thu 5/8 RRR Week
Fri 5/9 RRR Week
17 Mon 5/12
Tue 5/13
Wed 5/14 Final (7-10PM PT)