CS 351: Computer Architecture, Fall 2017

Links: [Course Home] [Schedule] [Resources] [Study Guide] [Moodle]

Instructor Dr. Suzanne Rivoire
Meeting times MoWe 2:00–3:50 PM, Darwin 30
Drop-in office hoursMoWe 1–1:45 PM
MoWe 4–5 PM
Office hours are in Darwin 116D. Please knock if the door to 116 is closed.
Textbook [required] Patterson and Hennessy, Computer Organization and Design: ARM Edition, ISBN 9780128017333
The edition is really important!
Prerequisites Grades of C- or better in CS 215 and CS 252, or consent of instructor.

Catalog description

(4 units) Lecture, 4 hours. Instruction set design; stages of instruction execution, data and control path design; CISC, RISC, stack architectures; pipelining; program optimization techniques, memory hierarchy: cache models and design issues, virtual memory and secondary storage; I/O interfacing; advanced topics to include some of the following: parallel architectures, DSP or other special purpose architecture, FPGA, reconfigurable architecture, asynchronous circuit design.

Course Goals

The major goals of this course are for you to

  1. Understand the mechanics of how hardware and system software execute the programs that you write.
  2. Understand software and hardware's contributions to the performance, reliability, and energy efficiency of your programs and systems.

For a list of detailed objectives that will be used to assess whether or not you have met these goals, visit http://rivoire.cs.sonoma.edu/cs351/objectives.html. You can also use that list as an exam study guide.


Grade of C- or better in both CS 215 and 252.

Students who do not meet these prerequisites will need instructor consent to remain in the course.

Consolidated Syllabus

You may download the course description, objectives, syllabus, and schedule in a consolidated pdf:

Exam dates

Exam 1:Sep. 27 (Wed.)In lecture
Exam 2:Nov. 1 (Wed.) Nov. 13 (Mon.)In lecture
Exam 3 (final):Dec. 11 (Mon.)2:00–3:50 PM

Students who have scheduling conflicts on these dates should contact the instructor at the beginning of the semester.

Coursework and Grading

Course Activities

Lecture and Reading

The tentative course schedule shows the topics to be covered. Students are expected to attend all lectures and to get the notes from another student if absent. Students are also expected to skim the assigned reading material before each lecture and read more fully after the lecture.

In-class Activities

In-class activities, including quizzes, will be given almost every lecture. Students' lowest 3 scores on these activities will be dropped from the grade calculation. These activities cannot be made up.

Homework problem sets

Approximately 6 homework problem sets will be assigned, which may include programming components. You may work in groups of up to three students and submit a single solution set for the group.


Three exams will be given, with the third during the scheduled final exam time. The exams cover the material from lecture, in-class and out-of-class assignments, and the textbook. Exams will emphasize recent material, although you are responsible for knowing previous material as well. You may bring one 8.5 by 11-inch handwritten sheet of notes to all exams.

Makeup exams will be given only in extraordinary circumstances.

Grading Policies

Grade breakdown

Exams 45%
Homework problem sets 45%
Class activities10%

Your final semester grade will be rounded to the nearest integer.

Cutoffs for letter grades (after rounding)


CS majors must take this course for a letter grade.

Up to 3% may be added to your final grade at the instructor's discretion for constructive participation in the class. Constructive participation includes in-class participation; asking good questions via email or during office hours; and doing outstanding or extra work on assignments. No other adjustments of borderline grades will be considered.

Late policy

Late homework problem sets: No late problem sets will be accepted. This policy allows solutions to be distributed in time for you to study for exams.

Regrade policy

Regrade requests will be accepted up to 7 days after an assignment or exam is returned. The reason for the regrade request must be explained in writing and submitted as a hard copy along with the assignment or exam to be regraded. Note that all regrade requests, except for those pointing out mistakes in the totaling of points, will cause the entire assignment or exam to be regraded. The adjusted grade may therefore be higher or lower than the initial grade.

Attendance Policy

Your attendance is highly encouraged, and absence from class can affect your grade in the following ways:

Collaboration Policies

Special note for group work

Your work is the collective responsibility of your group: you will all get the same grade for the assignment, and you will all be held responsible for any violation of the course collaboration policy in the work you submit.

If you start working with a group on a particular assignment but are no longer comfortable sharing this credit or responsibility with one or more of your groupmates, please let me know as soon as possible.

Project and Homework Assignment Collaboration Policy

Academic misconduct is taken very seriously in this course. For each homework assignment or class project, you must work with at most one group of up to 3 students.

The work you turn in must be the sole work of your group members. You may discuss ideas and approaches with other students and the instructor, but you should work out all details and write up all solutions with your group.

The following actions will be penalized as academic dishonesty:

Exam Collaboration Policy

Exams must be your own work. You are allowed to consult only your own brain, your 8.5x11" handwritten cheat sheet, and other materials specifically permitted by the instructor. Quiz policies will vary and will be announced when the quiz is given. On both exams and quizzes, giving or receiving unpermitted aid will be penalized as academic dishonesty.

Penalties for Academic Dishonesty

Academic dishonesty will be severely penalized; at a minimum, you will receive a grade of 0 on the assignment. For more information, see SSU's cheating and plagiarism policy (http://www.sonoma.edu/UAffairs/policies/cheating_plagiarism.htm) and the Dispute Resolution Board website (http://www.sonoma.edu/senate/committees/drb/drb.html).

Course and University Resources

Online Resources


Moodle Gradebook

The course gradebook will be kept on Moodle (http://moodle.sonoma.edu) so that you can check your grades and compute your average at any time. Grades will be posted to Moodle shortly after assignments are returned.

Email List

Course announcements will be sent to your SSU email address, so you should check your email frequently.

University Resources

Disability Accommodations

If you are a student with a disability and you think you may require accommodations, please register with the campus office of Disability Services for Students (DSS), located in Salazar Hall - Room 1049, Phone: (707) 664-2677, TTY/TDD: (707) 664-2958. DSS will provide you with written confirmation of your verified disability and authorize recommended accommodations. This authorization must be presented to the instructor before any accommodations can be made. Visit http://www.sonoma.edu/dss for more information.

University Policies

There are important University policies that you should be aware of, such as the add/drop policy, cheating and plagiarism policy, grade appeal procedures, accommodations for students with disabilities, and the diversity vision statement. Go to this URL to find them: http://www.sonoma.edu/uaffairs/policies/studentinfo.shtml.