cs470 - Spring 2002


To help students understand the fundamentals of computing by studying the interaction between hardware and software at various levels. Discuss the design trade-offs that drive the performance of computer systems.
Topics covered include Performance Definition, Instruction Set Design, Datapath and Control, Pipelining, the Memory Hierarchy, Input/Output systems.

Prerequisite: CS 350 or ECE 218.

Section 54 has been cancelled.

Section 51 Section 52 Section 53 Section 55
Instructor Virgil Bistriceanu
Office hours MW 7:00am - 8:00am
M 8:00pm - 9:00pm
Office SB-110
Phone (312) 567-5146
Fax (312) 567-5067
e-mail virgil@cs.iit.edu
Lecture M 6:25 pm - 8:05 pm, LS-111
Lab W 10:00am - 11:40am W 6:25pm - 8:05pm F 10:00am - 11:40am R 6:25pm - 8:05pm
Lab instructor Patrick Wagstrom
Rahul Ohri
Patrick Wagstrom
Rahul Ohri
Lab room SB-108B
Teaching Assistant

"Computer Organization and Design: the hardware/software interface"
David A. Patterson, John L. Hennessy - second edition
Morgan Kaufmann, Inc. 1994
ISBN 1-55860-491-X
  • Homeworks: 20%
  • Midterm: 20%
  • Final: 30%
  • Laboratory: 30%

Everything you have to turn in is due before the end of the class the day the work is due. For late submittal there is a 10% per business day penalty.

All the work you submit must be individual.

Academic dishonesty will not be tolerated. Please read IIT's rules and regulations.

Exams are open-book(s) open-notes.

The following grading scale will be used to determine your grade in this class:
  • A: 90 - 100
  • B: 80 - 89
  • C: 70 - 79
  • D: 60 - 69
  • E: 0 - 59 This is a failing grade!

Failure to take a passing grade (i.e. an average mark of at least 60 out of 100) in either exams, lab average, or homeworks average earns you a failing grade regardless of your average mark.

Class attendance and participation will help settle the borderline grades. Regular class attendance is important and students are expected to actively participate in class: questions and comments are always welcome.

  1. Introduction: discuss class structure, objectives, and requirements (1 hour)
  2. Overview and history of computer architecture (1 hour)
  3. Fundamentals of computer design (4 hours)
    • Latency, throughput
    • Comparing performance
    • Design drivers: common case, Amdahl's law, locality
    • MIPS, MPFLOS, benchmarking
  4. Basic organization of a von Neumann computer (1)
    • Control unit, main memory, I/O
    • Instruction execution: fetch, decode, execute
  5. Instruction Set design (4 hours)
    • Instruction Set architectures: 0 (stack), 1 (accumulator), 2, and 3-address
    • Fixed v. variable length instruction sets
    • Memory v. register
    • Addressing modes
    • Flow control instructions
    • Interrupts and I/O
  6. Datapath and Control (4 hours)
    • Single v. multi clock-cycle datapath
    • Control unit: hardwired v. microprogramming
    • Exceptions
  7. Pipelining (4 hours)
    • Pipeline performance
    • Data and control hazards; resolving hazards
    • Exceptions
  8. The memory hierarchy (4 hours)
    • Cache
    • Main memory organization
    • Virtual memory
    • TLB
  9. I/O (2 hours)
    • I/O performance measures
    • Types and characteristics of I/O devices
    • Buses
  10. Midterm exam (2 hours)
  11. Final exam (2 hours)
Total: 30 hours
Important Events

Event Sections 01 and 91
Last day to drop a class February 5
Last day to remove incomplete grades March 1
Midterm March 4
Spring Vacation March 18-22
Last day for official withdrawal April 5
Last day of classes May 10
Final May 13, 7:30pm to 9:30pm

The instructor for this class reserves the right to change this schedule.

Unless otherwise stated all papers you turn in will be TYPED. No handwritten work is accepted. Each page will have a header as follows:

  • the left side: your name
  • middle: page number and the total number of pages (ex. 2/5 indicates this is page 2 out of a total of 5)
  • right hand side: name of the assignment (ex. Homework #2)

Each page will also have a footer:

  • the left hand side will contain the following text: cs470-section: Spring 2002 where section stands for the section you are in
  • the right hand side will contain the following text: Illinois Institute of Technology - Computer Science

The header and the footer will be Arial, 10 points, regular. The text for the paper itself will be typed using Times Roman (12 points regular, except for titles which may be larger and bold).

Last update: May 6, 2002 Virgil Bistriceanu cs470 Computer Science

$Id: syllabus.html,v 1.3 2002/05/06 11:56:29 virgil Exp $