CS 220 Syllabus Spring 2010

Instructor

  • Ed Harcourt
  • Office: Bewkes 105-1
  • Phone: x5444
  • edharcourt@stlawu.edu
  • Office hours: Monday - Thursday 2PM - 3PM. I teach most mornings and will be hard to find.

Course Info

CS 220 - Computer Organization

The prerequisite for this course is CS219.

Required textbooks

  • Computer Organization and Design: The Hardware Software Interface, John Hennessy and David Patterson. 4th Edition.

  • The C Programming Language, Brian Kernighan and Dennis Ritchie, Second Edition, Prentice Hall.

    You do not need to purchase this book. A PDF version is available on the T: drive in the CS220 folder.

Required Software

  • PC-SPIM is the MIPS simulator the book uses. You can find it in T:\Harcourt\Public\lab_software\pcspim.zip. This is the Windows version. To install on your personal Ubuntu installation sudo apt-get install spim

Grading

Grades are based on a 100 point scale and are derived from the following.

  • Exams (75%)
  • Homework Assignments (25%)

The 100 points above translate to the following GPA points.

Click here to toggle displaying the grade table.

Homework Assignments

For the most part these include: exercises from the textbook and assembly language programming assignments that will execute on the SPIM simulator. Due dates are firm. Assignments are due at the beginning of class on the date due. Late assignments are reduced 10% a day. Programming assignments and circuit simulations will also be submitted on a personal folder that I will create for you on the T: drive.

Exams and Quizzes

There will be two mid-term exams, one final exam and several quizzes. The major exams are weighted equally. To determine your overall exam average add up all of the points on your exams and quizzes and divide by the total number of points.

  1. Exam 1: Tuesday, February 16
  2. Exam 2: Tuesday, March 30
  3. Final exam: Monday May 3, 1:30 - 4:30AM.

Attendance

Attendance is mandatory. You will be allowed two absences during the semester. After that your final grade will be reduced by two points per absence.


Topics

Below is a list of topics and the order we will cover them. I always have hope that we will cover them all but realistically we will end up skipping some. These topics largely follow the chapters in the textbook.

  1. Introduction and Overview
    • Performance
    • Moore's Law
    • Abstractions and Layering.
  2. The Binary Number System
  3. MIPS Assembly Language Programming
    • The SPIM Simulator
    • MIPS Instructions
    • assemblining, linking, and loading
  4. Arithmetic and Floating-Point Representation
  5. Logic Design
  6. The Processor (single cycle datapath)
  7. The Processor (pipelining)
  8. Caches
  9. Virtual Memory
  10. Storage and I/O
  11. Parallelism
    • Multicores
    • Clusters
    • Graphics Processors (GPUs)

Academic Integrity

Please read the university's academic integrity policies in your student handbook.