Great Ideas in Computer Architecture (Machine Structures)

chipmunk holding square computer chip with cs61c label

CS 61C at UC Berkeley with Dan Garcia, Peyrin Kao - Fall 2024

Lecture: Monday/Wednesday/Friday 10:00AM - 11:00AM PT, Dwinelle 155
Recordings will be published to bCourses Media Gallery

Week Date Lecture Discussion Lab HW Project
1 Tue 8/27 Lecture 0: Intro, Great Ideas
Wed 8/28 Lecture 1: Number Representation
Readings: Course Policies, P&H:2-4, Binary Slides
Lab 0: Intro, Setup Due 9/03
Thu 8/29
Fri 8/30 Lecture 2: C Intro - Basics Homework 1 Due 9/06 Project 1: snek Due 9/12
2 Mon 9/2 No Lecture: Holiday
Tue 9/3 Discussion 1: C, Number Rep
Wed 9/4 Lecture 3: C Intro - Pointers, Arrays, Strings
Readings: K&R 5-6
Lab 1: C Due 9/05
Thu 9/5
Fri 9/6 Lecture 4: C Memory Management
Readings: K&R 7.8.5, 8.7
3 Mon 9/9 Lecture 5: C Generics
Readings: K&R 7.8.5, 8.7
Discussion 2: C
Homework 2 Due 9/17
Tue 9/10
Wed 9/11 Lecture 6: Floating Point
Readings: IEEE 754 Simulator
Lab 2: C Debugging Due 9/11
Thu 9/12
Fri 9/13 Lecture 7: RISC-V Basics
Readings: P&H 2.1-2.3
Project 2: CS61Classify A: Due 9/23 B: Due 10/03
4 Mon 9/16 Lecture 8: RISC-V Data Transfer
Readings: P&H 2.9, 2.10
Discussion 3: Floating Point / RISC-V
Tue 9/17
Wed 9/18 Lecture 9: RISC-V Decision Making
Readings: P&H 2.6, 2.7, 3.2
Lab 3: RISC-V, Venus Due 9/19 Homework 3 Due 9/24
Thu 9/19
Fri 9/20 Lecture 10: RISC-V Procedures
Readings: P&H 2.8
5 Mon 9/23 Lecture 11: RISC-V Instruction Formats I
Readings: P&H 2.5, 2.10
Discussion 4: RISC-V Calling Convention
Tue 9/24
Wed 9/25 Lecture 12: RISC-V Instruction Formats II
Readings: P&H 2.5, 2.10
Lab 4: RISC-V Calling Convention Due 9/26 Homework 4 Due 10/01
Thu 9/26
Fri 9/27 Lecture 13: Compiler, Assembler, Linker, Loader
Readings: P&H 2.12
6 Mon 9/30 Lecture 14: Intro to SDS
Readings: SDS Handout
Discussion 5: CALL, RISC-V ISA
Tue 10/1
Wed 10/2 Lecture 15: Combinational Logic
Readings: Blocks Handout
Homework 5 Due 10/15
Thu 10/3
Fri 10/4 Lecture 16: State and Registers
Readings: P&H A.3-A.6, State Handout
Project 3: CS61CPU A: Due 10/24 B: Due 11/07
7 Mon 10/7 Lecture 17: Combinational Blocks: MUX and ALU
Readings: P&H 4.1, 4.3
Discussion 6
Tue 10/8
Wed 10/9 Lecture 18: RISC-V Single-Cycle Datapath I
Readings: P&H 4.4
Thu 10/10
Fri 10/11 Lecture 19: RISC-V Single-Cycle Datapath II
8 Mon 10/14 Lecture 20: RISC-V Single-Cycle Control (10-11 AM) + Midterm (8-10 PM)
Readings: P&H 4.6–4.8
Tue 10/15
Wed 10/16 Lecture 21: RISC-V 5-Stage Pipeline I
Readings: P&H 4.8, 4.10
Lab 5: Logisim Due 10/17 Homework 6 Due 10/22
Thu 10/17
Fri 10/18 Lecture 22: RISC-V 5-Stage Pipeline II
Readings: P&H 4.6, 4.7, 4.8, 4.10
9 Mon 10/21 Lecture 23: RISC-V 5-Stage Pipeline III
Readings: P&H 4.6, 4.7, 4.8, 4.10
Discussion 7
Tue 10/22
Wed 10/23 Lecture 24: Caches I
Readings: P&H 5.1-5.4, 5.8, 5.9, 5.13, Cache Flowchart
Homework 7 Due 10/29
Thu 10/24
Fri 10/25 Lecture 25: Caches II
Readings: P&H 5.1-5.4, 5.8, 5.9, 5.13, Cache Flowchart
10 Mon 10/28 Lecture 26: Caches III
Readings: P&H 5.1-5.4, 5.8, 5.9, 5.13, Cache Flowchart
Discussion 8: Pipelining, Hazards
Tue 10/29
Wed 10/30 Lecture 27: Caches IV
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 10/31 Homework 8 Due 11/12
Thu 10/31
Fri 11/1 Lecture 28: Parallelism I - Intro, Amdahl's Law
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
11 Mon 11/4 Lecture 29: 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
Discussion 9: Caches, AMAT
Tue 11/5
Wed 11/6 Lecture 30: 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
Thu 11/7
Fri 11/8 Lecture 31: Parallelism IV - Concurrency Project 4: CS61kaChow Due 11/21
12 Mon 11/11 No lecture: Holiday
Tue 11/12 Discussion 10: Caches, SIMD
Wed 11/13 Lecture 32: Parallelism V - Distributed Computing and MapReduce Lab 7: Parallelism Due 11/14 Homework 9 Due 11/26
Thu 11/14
Fri 11/15 Lecture 33: Virtual Memory I
Readings: P&H 5.7, 5.8
13 Mon 11/18 Lecture 34: Virtual Memory II
Readings: P&H 5.7-5.8
Discussion 11: TLP, PLP
Tue 11/19
Wed 11/20 Lecture 35: Guest Lecture: Applications of Parallel Computers (Aydin Buluc)
Thu 11/21
Fri 11/22 Lecture 36: Guest Lecture
14 Mon 11/25 [HW Only] Lecture 37: I/O, Warehouse-Scale Computing
Tue 11/26
Wed 11/27 No Lecture: Holiday Homework 10 Due 12/03
Thu 11/28
Fri 11/29 No Lecture: Holiday
15 Mon 12/2 [HW Only] Lecture 38: ECC, RAID Discussion 12
Tue 12/3
Wed 12/4 Lecture 39: Guest Lecture
Thu 12/5
Fri 12/6 Lecture 40: Summary, What's Next?
16 Mon 12/9 RRR Week
Tue 12/10 RRR Week
Wed 12/11 RRR Week
Thu 12/12 RRR Week
Fri 12/13 RRR Week
17 Mon 12/16 Final: 8-11AM PT