4003-520 Syllabus Spring 20123

1. Course Prerequisites

The prerequisites for this course that I feel are important are:

  1. 334 - Computer Science 4
  2. 345 - Computer Organization
  3. 440 - Operating Systems
These are prerequisites, not corequisites - to succeed in Computer Architecture, you should have already passed all of these courses, or their equivalents. Taking them at the same time as Computer Architecture is not sufficient! See me immediately if you are missing one or more of the prerequisites, or you may be dropped from Computer Architecture without further warning!

2. Books

The book is Computer Architecture - a Quantitative Approach fifth edition by John Hennessy & David Patterson. It should be available at the RIT bookstore.

A portion of the material for which you are responsible is not in our text. You will have to depend on handouts and class notes for it.

In addition, the labs for this class will require you to code in C++, so a book on C++ is recommended.

3. Grades

Your final grade will be based on a number of components: The grade distribution between these groups is:

3.0 Assignment of final grades

This course uses the traditional 90/80/70/60 percentage-based grading scale.


Each instructor reserves the right to alter these division points as they see fit at the end of the quarter if they believe it to be necessary, based on the overall evaluation of individual or class performance and effort.
 
Score Range Grade
n ≥ 90% A
80% ≤ n < 90% B
70% ≤ n < 80% C
60% ≤ n < 70% D
n < 60% F

3.0. Exams

Two exams will be scheduled for this course. The first is a two-hour test covering half the course material. An exact date will be announced at least one week in advance. The best estimate right now would be April 4th. The second half of the course will be tested May 9th. The 2nd Exam will not be comprehensive.

The graduate and undergraduate versions of the exams may not be the same. A somewhat deeper understanding of architectural issues is expected of the graduate students.

3.1. Class Presentation Evaluation

You will be required to attend and evaluate the class presentations. These evaluations will make up a part of each students presentation grade, and you will be graded on the quality and quantity of the feedback you provide.

3.2. Homework

Homework will be announced in class and posted to the course account home page at www.cs.rit.edu/~paw/20123.arch.html

The homework questions will be largely quantitative analysis questions, similar to the style of our text book. They will not be regular, but be assigned when needed. Solutions will be passed out a week later.

3.3. Labs

There will be two programming labs in this course. They will involve the use of a computer component simulation package written in C++. This means that you will have to learn how to do elementary C++ programming. Possession of a textbook on the language is recommended. More details on the library we will use and the first assignment will be available very soon.

If you do not already know how to program in C++, or in another object-oriented language, please let the me know as soon as possible!

3.4. Team Project

There will be a single, quarter long, team programming project. This project will require you to design and implement your own instruction set. Like the labs, the project will use the C++ computer component simulation package. In additon the project will have a number of documents due during the quarter.

4. Academic Honesty

It is a shame that this must be stated at all, but there are always a few students who do not abide by the rules of proper academic conduct. For the record:

You can find the complete RIT's Academic Honesty Policy (section 18 of the RIT Students Rights and Responsibilities handbook) by following the links.

Those who behave in a dishonest or unethical manner in computer science courses, or in their dealings with the Computer Science Department, are subject to disciplinary action. In particular, dishonest or unethical behavior in the execution of assigned work in a computer science course will be treated as follows:

  1. For a first offense the student involved will receive, at a minimum, a grade of zero for the assigned work.
  2. For a second offense, in the same or a different course, the student will receive, at a minimum, a failing grade for that course.
  3. For a third offense, a student will be suspended and their case will be referred to judicial affairs.

Furthermore, the following action will be taken for each person involved in the incident, whether currently enrolled in the course or not:

For more details refer to the DCS Policy on Academic Dishonesty. For most of you, such warnings are unnecessary. We have to mention this because otherwise some students would say, ``but you never said I couldn't just copy Johnny's work and turn it in as my own.''