Note: This website is under construction. All content is tentative and subject to change.
Note: If you are intending on joining this course, but are currently unable to add it (e.g. you are pending declaration of a CS major or a Concurrent Enrollment student waiting on an application to be processed), please fill out this form.
Resources
Common Errors
We have compiled a list of common errors you might run into for this course.
Exams
See the exam resources page.
Textbooks
- Computer Organization and Design RISC-V Edition, 1st or 2nd ed. by David Patterson, and John Hennessy
- The C Programming Language, 2nd ed. by Brian Kernighan and Dennis Ritchie
- The Datacenter as a Computer by Luiz André Barroso and Urs Hölzle (PDF)
Reference Cards
- CS 61C Reference Card: PDF
- v2.0.0: Fixed note about sltiu's immediate sign extension
- v3.0.0: Update datapath to match lecture
- Single-cycle: Moved immediate generator to be physically under the regfile, though no behavioral changes.
- Pipelined: Moved immediate generator from EX to ID.
- Pipelined: Moved WBMux from MEM to WB, and modified the relevant pipeline registers.
- v4.0.0: Fix pipelined control logic errors
- Move ImmSel to ID's control logic
- Move PCSel to MEM's control logic
- v4.0.1: Move ECC page to end.
- GDB Reference Card: PDF
- Venus Reference: HTML
Review Notes by Topic
Number Representation
- Sean Farhat's number rep notes
- Anusha's number rep notes
- Allan Yu's floating point notes
C
- Prof. Harvey's notes on C
- Prof. Hilfinger's notes on memory management
RISC-V
- Nick Riasanovsky's calling convention notes
- Sruthi's Verilog notes
SDS, Boolean Algebra, FSMs
- Prof. Wawryznek's notes on state, blocks, SDS, and boolean logic