CSE 120: Computer Architecture
Winter 2021
Basic Information
Lectures: TBD
Instructor: Asst. Professor Heiner Litz (hlitz〈〈at〉〉ucsc·edu)
Office: 217 Engineering 2, Mon 2:30–3:30 PM and Wed 11:00 AM–12:00 PM
TAs: TBD
TBD
Prerequisites: CSE 12 and CSE 12L; and CSE 13E, or CSE 13S, or CSE 15 and CSE 15L. CSE 16 recommended.
Required text: Computer Organization and Design RISC-V Edition: The Hardware Software Interface
(Hennessy & Patterson)
Home page: https://canvas.ucsc.edu/courses/40087
Course Overview
The goal for students in this course is to learn the fundamental principles of computer architecture. To help students
accomplish this goal we’ll cover the various important aspects of computer architecture in general, examine specific
examples from current CPUs and systems, and consider the RISC-V instruction set architecture and its possible
impact on system design. Topics include:
• Computer system performance
• Instruction set architectures
• Pipelining & forwarding
• Multi-execution units
• Caches
• Memory hierarchy
• Virtual memory
• Branching & branch prediction
• Multicore CPUs
• GPUs and SIMD instructions
Prerequisites
The formal prerequisites for this class are CSE 12 and CSE 12L; and CSE 13E, or CSE 13S, or CSE 15 and CSE
15L. CSE 16 recommended. We’re going to assume you gained the knowledge and skills from these classes as taught
at UCSC; if you took the equivalent classes at another university or community college, you may want to look over
the syllabus and materials for the offerings on this campus. Particularly, you should be fluent in C/C++, the Unix
command line, git, make, and, most importantly have knowledge about Assembly and a RISC ISA.
Resources
The required text, Computer Organization and Design RISC-V Edition: The Hardware Software Interface, is avail-
able at the UCSC bookstore as well as online booksellers such as Amazon. Homework problems may be taken
from the book (the RISC-V version), and lectures will complement the material as presented there. You should
read the material in the textbook before it is covered in lecture. Other than the textbook, all of the material
in this class, including assignments and grades, will be available on Canvas (https://canvas.ucsc.edu/
CSE 120, Winter 2021, UC Santa Cruz - 1 - © 2021 Heiner Litz
courses/40087), and will require that you log in to access it. We’ll be conducting all class-related discussion,
on Piazza, accessible via the Canvas website.
Evaluation & Grading
Exams
You must take each exam at the scheduled time unless you have an unexpected illness or family emergency.
You must let the professor know by email or text message before the exam’s scheduled start, unless you’re inca-
pacitated by illness. In addition, you must provide a doctor’s note or letter from the funeral home before you
can make up the exam. There are no exceptions to this policy.
Homework Assignments
There will be 4–6 graded homework assignments over the course of the quarter. Students will form groups of exactly
two that will work together and submit a single solution via Canvas. You’ll typically have about a week to do each
assignment. You may not work with other students on the homework assignments—the goal is to see how
well you and your partners understands the material. Please see the Academic Integrity section (below) for further
details.
Homework will typically be submitted on Canvas: each assignment must be submitted as a single PDF file. You
may type up your homework, or scan in handwritten material (or both), as long as it’s in a single file. There are
scanner programs available for Android and iOS cell phones that you may wish to use. Please scan your homework
in black and white if possible, and no higher than 200dpi resolution, so that the files don’t get too big. If there are
any programming problems as part of a homework assignment, they will be managed and submitted via git. We
assume that you’re familiar with git from CMPE 12 or other prerequisites; please see the Canvas site for links to
help with git if you need them.
Timeliness
Rather than approve extensions on a case-by-case basis, each student may turn in one assignment (of her/his choice)
up to two days late. Think of this like “sick days” that you may use if you’re feeling ill. We won’t try to verify your
illness, but neither will you get a second extension should you actually be sick later in the quarter. Other than this
single exception, late homework will not be accepted.
Quizzes
There will be 6–8 unscheduled quizzes over the course of the quarter. They will take about 15 minutes, and be 4–5
multiple choice questions on recently-covered material. Quizzes will be given via Canvas, so you’ll need to install
Canvas on an electronic device and bring it to class. We’ll drop the lowest two quiz grades when computing your
quiz average so, while you’ll get a zero if you miss a class in which a quiz is given, you can miss two quizzes without
it affecting your grade.
Class Participation
Class Participation is highly recommended. You may receive extra credit on your overall course grade for actively
participating in class, including things such as actually participating (asking questions) in lecture, visiting discussion
sections, and participating in Piazza discussions.
CSE 120, Winter 2021, UC Santa Cruz - 2 - © 2021 Heiner Litz
Grading
Grades in the class will be distributed as follows:
• Homework assignments: 10%
• Quizzes: 10%
• Midterm: 20%
• Final: 60%
In order to pass the class, you’ll need to demonstrate basic mastery of the subject material as demonstrated by your
homework, quizzes, and exams. You may not pass if your (weighted) average in any of these three areas is below
50%.
Webcast
This class will be webcast and can be viewed on: webcast.ucsc.edu
Getting Help
There are several ways to get help with concepts covered in class, textbook, and homework assignments, listed in
approximately the order you should try them for help.
• Attend classes and discussion sections.
• Read Canvas for information on assignments.
• Read and post to the class discussion forum, hosted at piazza.com.
• Meet with the course staff during office hours.
• Email the course staff.
You’re encouraged to post general questions to the Piazza forum, and to answer questions others have posted
there. Asking things like “how does this concept work?” or “can we work through this problem not on the home-
work?” are fine. Questions such as “what did you get for Problem 2 on this week’s assignment” or “what did I do
wrong on this pipeline diagram?” are not acceptable, and should be asked during office hours (preferable), or via
email. Course staff will read Piazza and reply to posted questions.
Discussion sections are your chance to ask the course staff in-depth questions about the material being covered,
homework assignments, or anything else about computer architecture (or other general computer engineering and
computer science issues) you want to discuss. If your question cannot be answered in the sections, please visit Prof.
Litz in the office hours. Please don’t just drop by outside of office hours. If you cannot attend office hours, arrange
a meeting in advance by emailing the course staff member with whom you want to meet.
Accommodations for Students with Disabilities
UC Santa Cruz is committed to creating an academic environment that supports its diverse student body. If you
are a student with a disability who requires accommodations to achieve equal access in this course, please submit
your Accommodation Authorization Letter from the Disability Resource Center (DRC) to Prof. Litz privately
during office hours. If you cannot attend any office hours due to an academic conflict (another course or section
only), you may make an appointment. Accommodations must be made two weeks before the assignment / exam
for which you want accommodations, or we cannot guarantee that we can accommodate you. All students who
may benefit from learning more about DRC services are encouraged to contact the DRC by phone at 831-459-2089
or by email at drc@ucsc.edu.
CSE 120, Winter 2021, UC Santa Cruz - 3 - © 2021 Heiner Litz
Academic Integrity
Academic integrity is a requirement for this course (and, indeed, for your entire academic career). All material
submitted for a grade must be your own independent work; this includes homework, quizzes, and exams. If you
get help from anyone other than course staff, you must acknowledge their contribution on your submitted work.
This includes help from tutors from MSI and similar programs as well as private tutors. Obviously, any form of
collaboration during a quiz or exam is strictly forbidden, but you may study in groups if you like.
You may discuss class material with others, and you may discuss general approaches to homework assignments.
You may look at someone else’s notes, but you may not look at or discuss other group’s homework solutions. This
does not apply to course staff or to university-provided tutors (e.g., MSI tutors), but applies to all other people,
whether they’re in the class or not, at all times, even when course staff are present. For example, you may not copy
someone else’s homework in the lab section (or any other time, for that matter).
Homework assignments, exams and quizzes may not be re-distributed, copied or shared in digital or paper form
outside of this class.
We take academic integrity very seriously, and report all violations of academic integrity to the School of En-
gineering and to your college Provost. If you violate academic integrity, you will fail the class. Depending on the
severity of the violation, the university may impose additional penalties, including suspension and even expulsion in
rare cases.
The strongest motivator for academic integrity should be yourself. After all, the main reason you are here is to
learn. Your future employers care about your skills not your GPA. Finally, be responsible to your cohort. There is a
waiting list of 150 students for this class. If you are lucky enough to be enrolled please make use of it!
Bottom Line: don’t cheat!
CSE 120, Winter 2021, UC Santa Cruz - 4 - © 2021 Heiner Litz
学霸联盟