Computer Science
>
>

CS 61C Great Ideas in Computer Architecture (Machine Structures)

Fall 2022

UC Berkeley

This course deepens students' understanding of computer architecture and the translation of high-level programs into machine language. Emphasis is on C and assembly language programming, computer organization, parallelism, CPU design, and warehouse-scale computing. Prerequisites include CS61A and CS61B or equivalent C-based programming experience.

Course Page

Overview

Official Academic Guide course description

The subjects covered in this course include C and assembly language programming, translation of high-level programs into machine language, computer organization, caches, performance measurement, parallelism, CPU design, warehouse-scale computing, and related topics.

Prerequisites

CS61A and CS61B (or equivalents) or experience with a C-based programming language (e.g. Java, C++).

Learning objectives

No data.

Textbooks and other notes

There is no official textbook for this class. However, there are three optional textbooks as additional references:

  • P&H: Second edition of Patterson and Hennessy's Computer Organization and Design RISC-V Edition book ("P&H"), ISBN 0128122757.
  • K&R: The C Programming Language, Second Edition by Kernighan and Ritchie. Other C programming books are also suitable if you are already comfortable with them, but our lectures will be based on K&R.
  • WSC: The Datacenter as a Computer: An Introduction to the Design of Warehouse-Scale Machines, which is freely available on our website.

Please contact staff on Ed if you have trouble finding or paying for these textbooks.

Other courses in Computer Systems

CS 110: Principles of Computer Systems

Winter 2022

Stanford University

CSE 351 The HW/SW Interface

Autumn 2022

University of Washington

CS 107e Computer Systems from the Ground Up

Winter 2023

Stanford University

CS 107A: Problem-solving Lab for CS 107

Autumn 2022

Stanford University

ELE/COS 475 Computer Architecture

Fall 2019

Princeton University

Courseware availability

Lecture slides available at Home

No videos available

Discussions with solutions available at Home

Labs available at Home

Projects available at Home

Resources available at Resources

Covered concepts