Course Information for CS152: Computer Architecture and Engineering

Spring 2019

Catalog Description: Computer Architecture and Engineering

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

Class Schedule/Rooms

Lectures: Monday and Wednesday, 1:00-2:30pm, 306 Soda Hall
Discussion Sections: Friday 12:30-2:00pm DIS 101 3111 Etcheverry / Friday 2:00-3:30pm DIS102 3107 Etcheverry
Both midterms held in class during lecture times.

Instructor: Krste Asanović, Professor, CS Division, EECS Department
Email: krste at eecs
Office Hours: Wednesday 10-11am, 567 Soda Hall (email to confirm)

TA: David Biancolin
Email: biancolin at eecs
Office Hours: Tuesday, 2-3pm, 529 Cory

TA: Albert Magyar
Email: albert.magyar at berkeley
Office Hours: Wednesday 4:30-5:30pm, 283H Soda

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.

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.

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. 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

For addition errors in the total score, return the midterm back to the TA to get it fixed. For regrades, return the midterm to the TA within a week of the midterm being graded with a separate sheet of paper explaining the discrepancy. The staff will carefully regrade the entire midterm, read the reasoning provided, and then make a final decision. Since the entire midterm is being regraded, it is possible the total score could go down as a consequence of previously undiscovered mistakes being found. We therefore recommend that regrade requests only be used when the case is strong and a significant number of points are at stake.

Academic Accommodation Policy

Students with disabilities who need accommodations in order 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 Krste privately after class or in his office.


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

Compute Resources

All labs will be available on {icluster6, icluster7, icluster8, icluster9}.eecs. 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 Web site.

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