CS352H - Honors Computer Systems Architecture

Course: CS 352H - Computer Systems Architecture (Honors)
Unique Number: 54810
Instructor: Donald S. Fussell
Office: ACES 2.120
Phone: 471-9719
Office Hours: TTh 2:00-3:00
Administrative Assistant: Lindy Aleshire
Office: ACES 5.256
Phone: 232-7891
Teaching Assistant: TBD
Class Meetings: TTh 3:30-5:00, WEL 3.260 (Welch Hall)
Class Information: WWW: http://www.cs.utexas.edu/users/fussell/courses/cs352h
Required Textbook: Computer Organization and Design:The Hardware/Software Interface, 4th Edition, David A. Patterson and John L. Hennessy, Elsevier (Morgan-Kaufman), ISBN 978-0-12-374493-7, 2009.
Text can be purchased from the University Co-Op.
Companion site to textbook (includes errata sheets)
Reference Textbook (recommended): Computer Architecture: A Quantitative Approach, 4th Edition John L. Hennessy and David A. Patterson Elsevier (Morgan-Kaufman), ISBN 978-0-12-370490-0, 2007.
Prerequisites: A grade of at least C in each of the following courses: Computer Science 310 OR 310H, 336 OR 336H, Electrical Engineering 316, and Mathematics 408D OR 408M; and consent of the honors director or the instructor.

Course Objectives

In this course, you will learn about the basic principles and current practices of computer architectures and organizations, including instruction set design, pipelining, caching, virtual memory, and parallelism. At the end of this course, you will understand how computers are organized and what influences have determined the architectures of processors, memory systems, and input/output systems. You will also learn how to evaluate and improve computer system performance through analysis and computer simulation.

Student Evaluation

Your performance in this class will be evaluated through homework assignments and programming assignments, written critiques of papers on computer architecture topics, a midterm exam, a final project, and a final exam. The weights of each of these components is listed below:

For each exam, you may bring a non-programmable calculator and a single 8 1/2 x 11 sheet of handwritten notes (no photo-reduction). The in class midterm will be 75 minutes in duration. There will be no make-up exams.

The assignments will be a combination of written work and programming work. The written work will help you pace yourself in the reading and in your understanding of lectures. The programming components will be used to explore issues in computer design and performance analysis. In addition, we will be reading and discussing a number of original papers from the research literature in this course. These will be required reading, and you will also be required to write a critique (1 page, typewritten), including a summary of the paper and a critique of its importance and relevance.

Homeworks will be assigned approximately every 1-2 weeks. The final project will be due at the end of the term. Assignments will be due at the beginning of class. Your programming assignments will be submitted electronically and will require you to use your departmental Unix account. You may not email your assignments without prior permission. Programs will be graded on correctness, readability, style, and documentation.

The final project will be substantial and will likely require you to work in pairs. This will be assigned mid-semester to give you ample opportunity to learn the programming infrastructure and complete the development and testing.

You have a "late account" of 3 days for the term which you can spend any way you choose for your assignments. For example, you can turn in three homework assignments one day late each, or one homework assignment 3 days late, without penalty. An assignment is late if it is not turned in at the beginning of class on the day in which it is due. It is one day late until 5pm of the day after it is due, two days late from then until 5pm of the second day, and three days late from then until 5pm of third day. Weekends count as a single day. Once you have exhausted your late account, no late assignments will be accepted. You are responsible for turning in late homework to me or to Lindy Aleshire in ACES 5.256. The departmental homework drop box may not be used.

Academic Misconduct Policy

You are free to discuss the course material with your classmates and are encouraged to form study groups for the exams. You may collaborate on homework and programming assignments, but you must give credit where credit is due - acknowledge the people you work with. Please do not use this as a method to escape learning the material. If you do not learn from the assignments, you will not pass the exams or this course.

For the final project, you will have a programming partner. Partners will work together on the project, will submit it together, and will receive the same grade on it. Partners will be assigned when the project is assigned.

The homework, programs, projects, and exams must be the work of students or partnerships turning them in. The university policy (see Dean of Students' policies on academic integrity) will be followed strictly.

Your Responsibilities in This Class:

Other General Information

The programming assignments will require use of the Department of Computer Sciences Unix computing resources. All CS students who meet the prerequisites for CS352H are eligible for a CS departmental undergraduate Unix account. Important links:

Course Schedule

Last modified: 12/17/09 by Don Fussell fussell@cs.utexas.edu