Great Ideas in Computer Architecture (Machine Structures)

UC Berkeley EECS

MTuWTh 9:30-11am, 10 Evans

Instructors: Steven Ho, Nick Riasanovsky

Great Ideas in Computer Architecture (Machine Structures)

UC Berkeley EECS

MTuWTh 9:30-11am, 10 Evans

Instructors: Steven Ho, Nick Riasanovsky

News

  • Welcome to 61C!

Calendar

Wk Date Lecture Topic Reading Section Lab Homework Project
106/18 MIntro, Number Representation [PDF]Course Policies
P&H: 2.4
Binary slides
Section 0: Number RepresentationLab 0: gitHW1: C Concepts
Due 06/28 @ 23:59

Mini-bio
Due 06/25 in Section

HW0: Number Representations
Due 06/25 @23:59
06/19 TuC Intro, Pointers [PDF]Brian Harvey's Intro to C
K&R Ch. 1-5
06/20 WC Arrays, Strings, Pointers [PDF]K&R Ch. 5-6
C Reference Slides
Section 1: C BasicsLab 1: C and GDB
06/21 ThC Memory Management, Usage [PDF]K&R: 7.8.5, 8.7
Guerrilla Session: Number Representation, C Intro, Pointers, Wed 4-6pm @ Cory 540AB
206/25 MIntro to Assembly Language, RISCV Intro [PDF]P&H: 2.1-2.3Section 2: C Memory Management and RISCV IntroLab 2: Advanced C, Memory ManagementHW2: RISCV and Floating Point
Due 07/06 @ 23:59
Project 1: Chatroom
Released 6/21
Due 06/30 @ 23:59:59
06/26 TuRISCV, RISCV Functions [PDF]P&H: 2.6 - 2.9, 2.10 (only p.111-113), A.6
06/27 WRISCV Instruction Formats [PDF]P&H: 2.5, 2.10Section 3: RISCV Procedures and Instruction FormatsLab 3: RISCV Assembly
06/28 ThFloating Point, Compiler, Assembler, Linker, Loader (CALL) [PDF] P&H: 3.5, 3.9, 2.12
Guerrilla Session: Memory Layout, RISCV Intro, RISCV Functions, Wed 4-6pm @ Cory 540AB

MT1 review session, Saturday, 2-4pm @ 306 Soda

Guerilla Session Part 2! RISCV Instructions, Floating Point, CALL, Sunday 2-4pm @ Cory 540AB
307/02 MCALL cont., Intro to Synchronous Digital Systems (SDS), Logic [PDF]SDS Handout
Logic Handout
P&H: A.2-A.3
Section 4: Floating Point, CALLMidtermHW3: Logic and Timing
Due 07/16 @ 23:59
Project 2-1: RISCV Disassembler
Released 6/29
Due 07/06 @ 23:59:59
07/03 TuMidterm 1: During lecture time @ 10 Evans (covers up to and including CALL)
07/04 WFourth of July HolidaySection 5: Logic, SDS, FSMsLab 4: RISCV Functions, Bit Manipulation
07/05 ThFunctional Units, FSMs [PDF]Blocks Handout
P&H: 4.2, A.5-A.8
State Handout
407/09 MRISCV Datapath, Single-Cycle Control Intro [PDF]P&H: 4.1, 4.3, 4.4Section 6: Single-Cycle DatapathLab 5: LogisimHW4: Datapath
Due 07/16 @ 23:59
Project 2-2: RISCV Executor
Released 7/06
Due 07/13 @ 23:59:59
07/10 TuRISCV Single-Cycle Control; Pipelining Intro [PDF]P&H: 4.5, 4.6
07/11 WRISCV 5-Stage Pipeline/Hazards [PDF]P&H: 4.7, 4.8Section 7: PipeliningLab 6: Regfile & ALU Design
07/12 ThMemory Hierarchy, Fully Associative Caches [PDF]P&H: 5.1, 5.2, 5.3, 5.4, 5.8, 5.9, 5.13
Cache Flowchart
Guerrilla Session: SDS, FSM, Single Cycle Datapath, Wed 4-6pm @ Cory 540AB
507/16 MCaches: Direct-mapped, Set-associative [PDF]<See above>Section 8: CachesLab 7: CachesHW5: Caches
Due 07/23 @ 23:59
Project 3: CPU
Released 7/12
Due 07/20 @ 23:59:59
07/17 TuMultilevel Caches, Cache Questions [PDF]<See above>
07/18 WPerformance, Flynn Taxonomy, Intro to Data-Level Parallelism [PDF]P&H: 1.6-1.8, 3.6, 5.15, 6.1-6.3
IEEE 754 Simulator
Section 9: Caches cont., AMAT, Flynn TaxonomyIMPORTANT INFORMATION,
PLEASE READ
07/19 ThDLP Continued [PDF]<See above>
Guerrilla Session: Pipelining & Caches, Wed 4-6pm @ Soda 405/320

MT2 review session, Sunday, 2-4pm @ GPB 100
607/23 MAmdahl's Law, Thread-Level Parallelism, OpenMP IntroP&H: 4.10, 6.5Section 10: SIMD, Midterm 2 PrepLab 8: SIMD InstructionsHW6: Performance Programming
Due 07/30 @ 23:59
07/24 TuTLP/OpenMP Part 2, Cache Coherence, and OpenMP Sharing IssuesP&H: 2.11, 5.10
OpenMP Summary Card
07/25 WMidterm 2: During lecture time @ 10 Evans (Covers up to and including 07/17 lecture)Section 11: Cache Coherence, SynchronizationLab 9: Thread-Level Parallelism
07/26 ThWarehouse Scale Computing, MapReduce (Spark)The Datacenter as a Computer: Ch 1, Ch 2.4, Ch 3, 5.1-5.3
P&H: 6.7
Guerrilla Session: Parallel Programming, Cache Coherency, Wed 4-6pm @ Cory 540AB
707/30 MOS Support, Base and Bounds, Virtual Memory IntroMapReduce Paper
P&H: 4.9, 5.16
Section 12: WSC, Map Reduce and SparkLab 10: MapReduce and SparkHW7: VM, I/O, Parity, and ECC
Due 08/06 @ 23:59
Project 4: Performance
Released 7/26
Due 08/03 @ 23:59:59
07/31 TuVirtual MemoryP&H: 5.6, 5.7
08/01 WDependability: Parity, ECCP&H: 5.5
Berkeley RAID Paper
Section 13: Virtual MemoryLab 11: Virtual Memory
08/02 ThRAID, I/O: Interrupts, Disks, NetworkingP&H: 5.2, 5.5, 5.11
Guerrilla Session: MapReduce, Virtual Memory, Wed 4-6pm @ TBD

Final review session, Sunday 2-4pm @ GPB 100
808/06 MDisks, Networking, Final Exam QuestionsSection 14: I/O, DependabilityLab 12: Extra Office Hours
08/07 TuSummary, What's Next?
08/08 WNo Lecture: Final StudyingSection 15: Extra Office Hours
08/09 ThFinal Exam: 7-10pm in TBA.
loading...

Staff

Instructors


Instructor: Steven Ho
shteveno@berkeley
OH: Fr 1-3pm @Soda 651

Instructor: Nick Riasanovsky
njriasanovsky@berkeley
OH: Fr 1-3pm @Soda 651

Teaching Assistants (uGSIs)


Head TA: Damon Anderson
damonan@berkeley
Section: Dis 106/Lab 016
OH: TuTh 12-1pm @Soda 411
Specialty: Caches/Datapath

TA: Jonathan Murata
jmurata@berkeley
Section: Dis 101/Lab 011
OH: F 10-12pm @Soda 651
Specialty: Caches

TA: Sukrit Arora
sukrit.arora@berkeley
Section: Dis 104/Lab 012
OH: TuTh 4-5pm @Cory 212
Specialty: RISC-V/Datapath

TA: Suvansh Sanjeev
suvansh@berkeley
Section: Dis 102/Lab 014
OH: Th 3-5pm @Soda 651
Specialty: C, Number Rep

TA: Emaan Hariri
ehariri@berkeley
Section: Dis 105/Lab 015
OH: M 12-2pm @Soda 651
Specialty: Number Representation

TA: Sruthi Veeragandham
sruthiv123@berkeley
Section: Dis 107/Lab 017
OH: MW 6-7pm @Soda 341B
Specialty: Pipelining/Hazards

TA: Sean Farhat
s.farhat-sabet@berkeley
Section: Dis 103/Lab 013
OH: F 11-1pm @Soda 651
Specialty: Caches

Tutors


Tutor: Anusha Dandamudi
adandamudi@berkeley
Tutoring: MW 3-4pm @Cory 504
Specialty: Caches

Tutor: Hersh Godse
hersh.godse@berkeley
Tutoring: Tu 3-4pm, W 6-7pm @Cory 504
Specialty: Caches

Tutor: Stephan Kaminsky
skaminsky115@berkeley
Tutoring: MTh 6-7pm @Cory 504
Specialty: Datapath/CPU

Tutor: Spencer McCall
smccall@berkeley
Tutoring: MTh 2-3pm @Cory 504
Specialty: Parallelism/Number Rep

Tutor: Alex Thomas
alexthomas@berkeley
Tutoring: Tu 4-5pm @Cory 504 W 2-3pm @Cory 212
Specialty: Caches

Resources

GDB reference card (version 5):  (pdf | ps | dvi)
Git resources:  (cheat sheet | flow guide)
Harvey notes on C:  (pdf)
Hilfinger notes on Memory Management:  (pdf)
RISCV Green Sheet:  (pdf)
Venus (Keyhan Vakil's RISC-V Emulator):  (Venus)
Past Exams:  (HKN, TBP)
Posters from CS Illustrated (Caches, FP, Number Rep, Pointers/Arrays):  (html)