CSE 240A -- Principles in Computer Architecture
Fall 2023
Instructor: Dean Tullsen
Basic Course Information:
Instructor: Dean Tullsen
-
CSE 3216
-
tullsen at ucsd dot edu
-
534-6181
-
office hours: M 2-3, W 11-12, or by appt
TAs: TBD
Meeting times and place:
- Center Hall 105
-
lecture: Tu Th 3:30 - 4:50 p.m.
Course textbook
-
Hennessy & Patterson, "Computer Architecture: A Quantitative Approach",
Fifth Edition, Morgan Kaufmann (requited!)
-
We'll also be reading some research papers as well as referencing some books from the outstanding
series Synthesis Lectures on Computer Architecture. Those books will be free to access while you are on the UCSD domain. If you're interested in computer architecture, you should be browsing these books.
Other background reading
- Patterson & Hennessy, "Computer Organizatin and Design: The
Hardware/Software Interface" gives a lower-level treatment of the material
(more from the design standpoint). This represents the assumed
background/prerequisite for this class.
Let me emphasize that the prerequisite material for this course is an undergraduate class that covered ISA design, pipelining, caches, etc. If you do not have the prerequisites, you should not be in this class.
As a consequence (and this is the one thing you absolutely need to know before you come to class the first day), there will be a pretest. It will be handed
out the first day of class and due at the beginning of the second. It is 3% of your grade, and CANNOT BE MADE UP if you miss it.
To get on the piazza discussion board for the class, please go to this link.
Assignments (other than tests and pretest) will be of three types:
traditional homeworks, e.g., problems from the book, typically with 1-week
notice.
-
traditional homeworks, e.g., problems from the book, typically with 1-week
notice.
-
small projects, typically involving simulation and analysis tools
-
reading summaries for papers (I will try to give one week notice on reading assignments. History indicates I don't always succeed.)
We will be using some Canvas for lecture slides,
homework assignments, announcements, etc. Make sure you are on it regularly. This page is a very abbreviated version of the syllabus.
The complete one can be found on Canvas.
Course Outline:
I. Introduction
II. Computer System Performance
III. Instruction Set Architecture
IV. Pipelining
V. The Memory/Cache Hierarchy
VI. Instruction-Level Parallelism
VII. Parallel Machines
I expect students to have the highest standards of integrity in a graduate class.
However, we will check aggressively for cheating, including
copying off of other people
or from online resources, etc. If cheating is found, of any kind, severe consequences
will result.