Course Information for CS152: Computer Architecture and Engineering

Spring 2022

Catalog Description: Computer Architecture and Engineering

4.0 units. Three hours of lecture, plus one section per week. Prerequisites: CS61C.

Class Schedule/Rooms

Lectures: Tuesday and Thursday, 9:30AM-11:00AM, via Zoom through January 27 then in person in 306 Soda (date subject to change).
Discussion Sections: Friday 12:00-2:00PM DIS 101 / Friday 2:00-4:00PM DIS 102
Both discussion sections via Zoom through January 28 then in person in 310 Soda (date subject to change).

Both midterms held in class during lecture times.

Instructor: John Wawrzynek, Professor, EECS Department
Email: johnw at eecs
Office Hours: Thursday 11:00AM-12:00, via Zoom through January 27 then in 631 Soda (email for Zoom link)

TA: Hasan Genc
Email: hngenc at berkeley
Office Hours: Wednesday 4:00PM-5:00PM via Zoom through January 27 (see Piazza for Zoom link)

TA: Josh Kang
Email: minwoo_kang at berkeley
Office Hours: Tuesday 4:30PM-5:30PM via Zoom through January 27 (see Piazza for Zoom link

Course Grading

The course is organized into five modules, with each module having a problem set, and a lab. The grade breakdown is given below, but a failure to complete the majority (at least 3/5) of the labs will result in an automatic F.

Problem sets and lab reports will be submitted through Gradescope. Please refer to the pinned Piazza announcement for the course entry code.

15% Problem Sets

We will distribute 5 problem sets for you to practice your understanding of the course material. The problem sets also provide essential background material for the midterms. The problem sets will be graded primarily on an effort basis, but if you do not work through the problem sets you are unlikely to succeed in the exams! We will distribute solutions to the problem sets after the problem sets are due to give you instant feedback.

25% Labs

The labs will provide hands-on experience with the interaction of software and hardware, for a variety of machine designs. We will be making extensive use of designs written in the Chisel hardware description language. Each lab includes a directed component to guide students in learning certain concepts, plus an open-ended assignment to allow students to show their creativity. Failure to complete at least three labs will result in an automatic F grade.

60% Exams

There will be 2 midterms (15% for each) and the final exam (30%) covering the material learned in readings, labs, and problem sets. These will be closed book with no calculators, phones, smart watches, or computers of any kind allowed.

See also Departmental Grading Guidelines for Undergraduate Courses.

Late Assignment Policy

Problem sets must be handed in at the beginning of class on the due date, with no extensions possible. Each student gets two "free" extensions of the lab assignments, where labs can be turned in one class after the original due date. No other extensions will be given, unless for serious documented emergencies. An automatic F grade is given if less than three labs are completed.

Collaboration Policy

The problem sets are intended to help you learn the material, and we encourage you to collaborate with other students and to ask questions in discussion sections and office hours to understand the problems. However, each student must turn in their own solutions to the problems.

Students are encouraged to discuss solutions to the lab assignments with other students, but must run through the directed portion of the lab by themselves and turn in their own lab report. For the open-ended portion of each lab, students can work individually or in groups of two or three. Any open-ended lab assignment completed as a group should be written up and handed in separately. Students are free to take part in different groups for different lab assignments.

Regrade Policy

Requests for regrades on midterms, problem sets, and labs must be submitted through gradescope within one week of grades being posted.

Academic Accommodation Policy

Students with disabilities who need accommodations to access this course will be accommodated. Please contact DSP and apply for services. If you have emergency medical information you wish to share, or if you need special arrangements in case the building must be evacuated, please inform us as soon as possible. Please see John privately after class or in his office hours.


Video recordings of the lectures will be made available (requires CalNet/bConnected log-in), with the links posted on Piazza. The lectures can only be made available to registered Berkeley students.


The course will use Piazza for class communication. The course page can be found at

Compute Resources

All labs will be available on eda-{1..8} (eda-1.eecs, eda-2.eecs, etc.). You may want to use other servers for writing code or compiling, and you can see a full list of them at inst.


The following textbook is highly recommended for the course:

TextBook Picture J. L. Hennessy and D. A. Patterson, Computer Architecture: A Quantitative Approach, 6th Edition, Morgan Kaufmann Publishing Co., Menlo Park, CA. December 2017.
ISBN13: 978-0128119051
ISBN10: 0128119055

We will also use material from the companion website: 6th Edition, 5th Edition

The following textbook is recommended to refresh your background and to provide a simpler introduction to some of the basic concepts. Any recent edition should be sufficient for background study.

D. A. Patterson and J. L. Hennessy, Computer Organization and Design RISC-V Edition: The Hardware Software Interface, 1st Edition, Morgan Kaufmann Publishing Co., Menlo Park, CA., April 2017. 
ISBN13: 978-0128122754
ISBN10: 0128122757