Great Ideas in Computer Architecture (Machine Structures)
CS 61C at UC Berkeley with Lisa Yan, Justin Yokota - Spring 2024
Lecture: Monday/Wednesday/Friday 10:00AM - 11:00AM PT, Dwinelle 155
Recordings will be published to bCourses Media Galler
| Week | Date | Lecture | Discussion | Lab | HW | Project | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Mon 1/15 | No lecture: Holiday | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Tue 1/16 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Wed 1/17 |
Lecture 1: Intro:pdf/ pptx
Readings:
Course Policies
|
Lab 0: Intro, Setup Due 1/21 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Thu 1/18 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Fri 1/19 |
Lecture 2: C Intro - Basics /pdf /pptx /zip
|
Homework 1: C Intro and Number Rep Due 1/25 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 2 | Mon 1/22 |
Lecture 3: C - Pointers, Arrays, Strings pdf/ pptx
Readings:
K&R 5-6
|
Lab 1: C Due 1/23 | Project 1: snek Due 2/06 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Tue 1/23 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Wed 1/24 | Lecture 4: Number Representation pdf /pptx
|
Discussion 1: C, Number Rep
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Thu 1/25 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Fri 1/26 |
Lecture 5: C - Memory Management pdf /pptx /zip
Readings:
K&R 7.8.5, 8.7
|
Homework 2: Number Rep and C Memory Due 2/01 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 3 | Mon 1/29 |
Lecture 6: Floating Point pdf /pptx
Readings:
IEEE 754 Simulator
|
Lab 2: C Debugging Due 1/30 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Tue 1/30 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Wed 1/31 |
Lecture 7: C - Generics, Function Pointers pdf /pptx /zip
Readings:
K&R 5.11
|
Discussion 2: Floating Point / C
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Thu 2/1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Fri 2/2 |
Lecture 8: Intro to Assembly Language, RISC-V pdf /pptx
Readings:
P&H 2.1-2.3
|
Homework 3: Advanced C, Floating Point Due 2/08 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 4 | Mon 2/5 |
Lecture 9: RISC-V Data Transfer pdf /pptx
Readings:
P&H 2.9, 2.10
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Tue 2/6 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Wed 2/7 |
Lecture 10: RISC-V Decision Making, Logical Ops
pdf /pptx
Readings:
P&H 2.6, 2.7, 3.2
</td>
Discussion 3: RISC-V
|
Project 2: CS61Classify
A: Due 2/20
B: Due 3/05
|
</tr>
Thu 2/8 |
</tr>
| Fri 2/9 |
Lecture 11: RISC-V Procedures pdf /
|
Readings:
P&H 2.8
|
Homework 4: RISC-V
Due 2/15
|
5 |
Mon 2/12 |
Lecture 12: RISC-V Instruction Formats I pdf /pptx
|
Readings:
P&H 2.5, 2.10
Lab 3: RISC-V, Venus /pdf /pptx
Due 2/13
</tr>
| Tue 2/13 |
| Wed 2/14 |
Lecture 13: RISC-V Instruction Formats II pdf /pptx
|
Readings:
P&H 2.5, 2.10
Discussion 4: Assembly, ISA
|
| Thu 2/15 |
| Fri 2/16 |
Lecture 14: Compiler, Assembler, Linker, Loader pdf /pptx
|
Readings:
P&H 2.12
|
Homework 5: RISC-V, CALL
Due 2/22
|
6 |
Mon 2/19 |
No lecture: Holiday
|
Tue 2/20 |
| Wed 2/21 |
Lecture 15: Intro to SDS / Boolean Algebra pdf /pptx
|
Readings:
SDS Handout
Discussion 5: CALL, Boolean Algebra
|
Thu 2/22 |
| Fri 2/23 |
Lecture 16: State, Registers pdf /pptx
|
|
Homework 6: Intro to SDS
Due 2/29
|
7 |
Mon 2/26 |
Lecture 17: Combinational Blocks: MUX and ALU pdf /pptx
|
Readings:
Blocks Handout
Lab 4: RISC-V Calling Convention /pdf /pptx
Due 2/27
|
Tue 2/27 |
| Wed 2/28 |
Lecture 18: RISC-V Single-Cycle Datapath I pdf /pptx
|
Readings:
P&H 4.1, 4.3
Discussion 6: SDS, Logic
|
| Thu 2/29 |
| Fri 3/1 |
Lecture 19: RISC-V Single Cycle Datapath II pdf /pptx
|
Readings:
P&H 4.4
|
Homework 7: Single-Cycle Datapath
Due 3/07
|
8 |
Mon 3/4 |
Lecture 20: RISC-V Single-Cycle Control pdf /pptx
|
</tr>
Readings:
P&H 4.4, 4.5
Tue 3/5 |
| Wed 3/6 |
Lecture 21: RISC-V Datapath Review pdf /pptx /blank.pdf
|
Discussion 7: Single Cycle Datapath
|
Project 3: CS61CPU
A: Due 3/20
B: Due 4/09
|
Thu 3/7 |
| Fri 3/8 |
Lecture 22: RISC-V 5-Stage Pipeline I: Intro pdf /pptx
|
Readings:
P&H 4.6, 4.7, 4.8
|
| 9 |
Mon 3/11 |
Lecture 23: RISC-V 5-Stage Pipeline II: Hazards pdf /pptx
|
Readings:
P&H 4.8, 4.10
Lab 5: Logisim pdf /pptx
Due 3/12
|
Tue 3/12 |
| Wed 3/13 |
No lecture: Midterm 7-9PM
|
Discussion 8: Pipelining, Hazards
|
| Thu 3/14 |
| Fri 3/15 |
Lecture 24: FSM, OS pdf /pptx
|
|
Homework 8: Pipelining, FSMs
Due 3/22
|
10 |
Mon 3/18 |
Lecture 25: Parallelism I - Intro, Amdahl's Law pdf /pptx /zip
|
Tue 3/19 |
| Wed 3/20 |
Lecture 26: Parallelism II - SIMD pdf /pptx /
|
Discussion 9: Parallelism I
|
Thu 3/21 |
| Fri 3/22 |
Lecture 27: Parallelism III - TLP pdf /pptx /zip
|
| 11 |
Mon 3/25 |
No lecture: Holiday
|
Homework 9: Parallelism I
Due 4/04
|
Tue 3/26 |
No lecture: Holiday
|
Wed 3/27 |
No lecture: Holiday
|
Thu 3/28 |
No lecture: Holiday
|
Fri 3/29 |
No lecture: Holiday
|
12 |
Mon 4/1 |
Lecture 28: Parallelism IV - Concurrency pdf /pptx
|
Lab 6: CPU, Pipelining pdf /pptx
Due 4/02
|
Tue 4/2 |
| Wed 4/3 |
Lecture 29: Parallelism V - PLP / MapReduce pdf /pptx
|
Discussion 10: Parallelism II
|
| Thu 4/4 |
| Fri 4/5 |
Lecture 30: Caches I - AMAT pdf /pptx
|
|
Homework 10: Parallelism II
Due 4/11
|
13 |
Mon 4/8 |
Lecture 31: Caches II - Fully Associative pdf /pptx
|
Tue 4/9 |
| Wed 4/10 |
Lecture 32: Caches III - Direct Mapped pdf /pptx
|
Discussion 11: Caches, AMAT
|
Project 4: CS61kaChow
Due 4/23
|
Thu 4/11 |
| Fri 4/12 |
Lecture 33: Caches IV: Practice pdf /pptx /docx
|
Readings:
P&H 5.2, 5.5, 5.11
|
Homework 11: Caches
Due 4/18
|
14 |
Mon 4/15 |
Lecture 34: Virtual Memory I pdf /pptx
|
P&H 5.7-5.8
Lab 7: Parallelism pdf /pptx
Due 4/16
|
Tue 4/16 |
| Wed 4/17 |
Lecture 35: Virtual Memory II pdf /pptx
|
Readings:
P&H 5.7-5.8
Discussion 12: VM
|
| Thu 4/18 |
| Fri 4/19 |
Lecture 36: [optional] Guest Lecture: GPU Architecture
|
|
Homework 12: VM
Due 4/25
|
15 |
Mon 4/22 |
Lecture 37: [optional] MapReduce, Spark (Application)
|
Readings:
WSC 1, 2.4, 3, 5.1-5.3, P&H 6.7
Tue 4/23 |
| Wed 4/24 |
Lecture 38: [optional] Data Centers, Warehouse Scale Computing
|
Readings:
WSC 1, 2.4, 3, 5.1-5.3
Discussion 13: WSC, RAID, ECC
|
| Thu 4/25 |
| Fri 4/26 |
Lecture 39: Summary, What's Next?
|
|
| 16 |
Mon 4/29 |
RRR Week
|
Tue 4/30 |
RRR Week
|
Wed 5/1 |
RRR Week
|
Thu 5/2 |
RRR Week
|
Fri 5/3 |
RRR Week
|
17 |
Tue 5/7 |
| |