Great Ideas in Computer Architecture (Machine Structures)
CS 61C at UC Berkeley with Dan Garcia, Justin Yokota - Fall 2023
Lecture: Monday/Wednesday/Friday 10:00AM - 11:00AM PT, Pimentel 1
Recordings will be published to bCourses Media Gallery
Week | Links | Date | Lecture | Discussion | Lab | HW | Project |
---|---|---|---|---|---|---|---|
1 | Wed 8/23 |
Lecture 1: Intro
Readings:
Course Policies
|
|||||
Thu 8/24 | Lab 0: Intro, Setup Due 8/29 | Homework 1: Number Representation Due 8/30 | |||||
Fri 8/25 | Lecture 2: Number Representation | ||||||
2 | Mon 8/28 | Lecture 3: C Intro - Basics |
Discussion 1: Number Representation
|
Project 1: snek Due 9/12 | |||
Tue 8/29 | |||||||
Wed 8/30 |
Lecture 4: C Intro - Pointers, Arrays, Strings
Readings:
K&R 5-6
|
Lab 1: C Due 8/31 | |||||
Thu 8/31 | Homework 2: C Due 9/06 | ||||||
Fri 9/1 |
Lecture 5: C Memory (Mis)Management
Readings:
K&R 7.8.5, 8.7
|
||||||
3 | Mon 9/4 | No lecture: Holiday | |||||
Tue 9/5 |
Discussion 2: C
|
||||||
Wed 9/6 | Lecture 6: Floating Point | Lab 2: C Debugging Due 9/07 | |||||
Thu 9/7 | Homework 3: Floating Point Due 9/13 | ||||||
Fri 9/8 |
Lecture 7: Intro to Assembly Language, RISC-V
Readings:
P&H 2.1-2.3
|
||||||
4 | Mon 9/11 |
Lecture 8: RISC-V Data Transfer
Readings:
P&H 2.9, 2.10
|
Discussion 3: Floating Point
|
||||
Tue 9/12 | |||||||
Wed 9/13 |
Lecture 9: RISC-V Decision Making Logical Ops
Readings:
P&H 2.6, 2.7, 3.2
|
Lab 3: RISC-V, Venus Due 9/14 | Project 2: CS61Classify A: Due 9/19 B: Due 10/03 | ||||
Thu 9/14 | Homework 4: RISC-V Due 9/27 | ||||||
Fri 9/15 |
Lecture 10: RISC-V Procedures
Readings:
P&H 2.8
|
||||||
5 | Mon 9/18 |
Lecture 11: RISC-V Instruction Formats I
Readings:
P&H 2.5, 2.10
|
Discussion 4: RISC-V Assembly, Functions
|
||||
Tue 9/19 | |||||||
Wed 9/20 |
Lecture 12: RISC-V Instruction Formats II
Readings:
P&H 2.5, 2.10
|
Lab 4: RISC-V Calling Convention Due 9/21 | |||||
Thu 9/21 | |||||||
Fri 9/22 |
Lecture 13: Compiler, Assembler, Linker, Loader
Readings:
P&H 2.12
|
||||||
6 | Mon 9/25 |
Lecture 14: Intro to Synchronous Digital Systems
Readings:
SDS Handout
|
Discussion 5: RISC-V Procedures, ISA, CALL
|
||||
Tue 9/26 | |||||||
Wed 9/27 | Lecture 15: Combinational Logic | ||||||
Thu 9/28 | Homework 5: Logic, Timing Due 10/04 | ||||||
Fri 9/29 | Lecture 16: SDS State, FSMs | ||||||
7 | Mon 10/2 |
Lecture 17: Combinational Logic Blocks
Readings:
Blocks Handout
|
Discussion 6: SDS, Logic, FSM | ||||
Tue 10/3 | |||||||
Wed 10/4 |
Lecture 18: RISC-V Single-Cycle Datapath I
Readings:
P&H 4.1, 4.3
|
Lab 5: Logisim Due 10/05 | Project 3: CS61CPU A: Due 10/17 B: Due 11/07 | ||||
Thu 10/5 | Homework 6: RISC-V Datapath Due 10/25 | ||||||
Fri 10/6 |
Lecture 19: RISC-V Single Cycle Datapath II
Readings:
P&H 4.4
|
||||||
8 | Mon 10/9 |
Lecture 20: RISC-V Single-Cycle Control
Readings:
P&H 4.4, 4.5
|
|||||
Tue 10/10 | Midterm: 7-9PM PT | ||||||
Wed 10/11 |
Lecture 21: RISC-V 5-Stage Pipeline I
Readings:
P&H 4.6
|
||||||
Thu 10/12 | |||||||
Fri 10/13 |
Lecture 22: RISC-V 5-Stage Pipeline II, Hazards
Readings:
P&H 4.7, 4.8
|
||||||
9 | Mon 10/16 |
Lecture 23: RISC-V 5-Stage Pipeline III, Hazards
Readings:
P&H 4.10
|
Discussion 7: Single-Cycle Datapath | ||||
Tue 10/17 | |||||||
Wed 10/18 | Lecture 24: Caches - Direct Mapped I | Lab 6: CPU, Pipelining Due 10/19 | |||||
Thu 10/19 | |||||||
Fri 10/20 | Lecture 25: Caches - Direct Mapped II | ||||||
10 | Mon 10/23 | Lecture 26: Caches - Multilevel | Discussion 8: Pipelining, Hazards | ||||
Tue 10/24 | |||||||
Wed 10/25 | Lecture 27: Caches - Set-Associative, Performance | ||||||
Thu 10/26 | Homework 7: Caches Due 11/01 | ||||||
Fri 10/27 | Lecture 28: Parallelism I - Intro | ||||||
11 | Mon 10/30 | Lecture 29: Parallelism II - SIMD | Discussion 9: Caches, AMAT | ||||
Tue 10/31 | |||||||
Wed 11/1 | Lecture 30: Parallelism III - TLP | Lab 7: Parallelism I - SIMD Due 11/02 | |||||
Thu 11/2 | Homework 8: Performance Programming Due 11/08 | ||||||
Fri 11/3 | Lecture 31: Parallelism IV - Concurrency | ||||||
12 | Mon 11/6 | Lecture 32: Parallelism V - PLP | Discussion 10: Parallelism I | ||||
Tue 11/7 | |||||||
Wed 11/8 |
Lecture 33: Virtual Memory I
Readings:
P&H 5.7-5.8
|
Lab 8: Parallelism II - OpenMP Due 11/09 | Project 4: CS61kaChow Due 11/28 | ||||
Thu 11/9 | Homework 9: OS, I/O, VM Due 11/15 | ||||||
Fri 11/10 | No lecture: Holiday | ||||||
13 | Mon 11/13 |
Lecture 34: Virtual Memory II
Readings:
P&H 5.7-5.8
|
Discussion 11: Parallelism II | ||||
Tue 11/14 | |||||||
Wed 11/15 |
Lecture 35: I/O
Readings:
P&H 5.2, 5.5, 5.11, A-64 to B-66
|
Lab 9: Parallelism III - Open MPI Due 11/16 | |||||
Thu 11/16 | Homework 10: ECC, Dependability, Parity, Potpourri Due 11/29 | ||||||
Fri 11/17 |
Lecture 36: Dependability, Parity, ECC, RAID
Readings:
P&H 5.2, 5.5, 5.11
|
||||||
14 | Mon 11/20 |
Lecture 37: MapReduce, Spark, Amdahl's Law
Readings:
WSC 1, 2.4, 3, 5.1-5.3, P&H 6.7
|
Discussion 12: OS, I/O, VM | ||||
Tue 11/21 | |||||||
Wed 11/22 | No lecture: Holiday | ||||||
Thu 11/23 | |||||||
Fri 11/24 | No lecture: Holiday | ||||||
15 | Mon 11/27 |
Lecture 38: Data Centers, Warehouse Scale Computing
Readings:
WSC 1, 2.4, 3, 5.1-5.3
|
Discussion 13: ECC, Dependability, Parity, Potpourri | ||||
Tue 11/28 | |||||||
Wed 11/29 | Lecture 39: Guest Lecture | ||||||
Thu 11/30 | |||||||
Fri 12/1 | Lecture 40: Summary, What's Next? | ||||||
16 | Mon 12/4 | RRR Week | |||||
Tue 12/5 | RRR Week | ||||||
Wed 12/6 | RRR Week | ||||||
Thu 12/7 | RRR Week | ||||||
Fri 12/8 | RRR Week | ||||||
17 | Mon 12/11 | Final: 8-11AM PT |