Course Related

Tools & Style

Other

Course Description

Course Description

COMP 303 covers basic computer organization and systems programming. We will cover performance metrics, data formats, instruction sets, addressing modes, computer arithmetic, datapath design, memory hierarchies including caches and virtual memory, I/O devices, and bus-based I/O systems. The projects will cover systems programming. The course is open to any undergraduate who has mastered the material indigital design and basic programming.

Meeting Time

Lectures are held every Monday and Wednesday at 9:30 in ENG-Z15.

Problem Sessions are held every Friday at 15:30 in ENG-Z15.

Staff

This link provides more info on the course staff and how they can be contacted.

Lectures

This link provides links to slides used in the lectures, as well as show the various deadlines.

Textbook

We are going to be using "Computer Organization and Design: The Hardware/Software Interface," Third Edition, by David A. Patterson and John L. Hennessy, published through Morgan Kaufmann. Textbooks are available at the campus bookstore.

Requirements

This class has three components: lectures, weekly reading assignments, and a class project. You are expected to keep up with and excel at all three.

Academic Integrity

You are expected to maintain a high level of ethical standards and integrity in this course. This means that all work you submit must be the result of your own individual effort.

You may discuss homework problems with other students in the class, but you may not collaborate on the actual development or writing of the solutions. Under no circumstances would it be acceptable for two or more students to turn in substantially similar answers to a homework problem, or to have possession of each others' homeworks. Everyone with whom you discussed the homework set must be cited on the submitted homeworks. No part of the homework may be copied from or be based on solution sets on the web - also keep in mind that the solution sets on the web are often incomplete and incorrect.

The same standards apply for group projects at the group level. Group members are expected to turn in the result of their collaborative work with other members of the same group. No group should at any time be in possession of another group's solution, or copy another group's solution. It is your responsibility to protect your work from unauthorized access.

Any violations of the academic integrity code will be penalized, and may result in failure in the course, suspension, or expulsion from the university.
 

Tools

  1. Logisim.
  2. Additional Logisim Components.

Manuals

  1. MIPS Volume 1: Basic MIPS Architecture
  2. MIPS Volume 2: Instruction Set Reference
  3. MIPS Volume 3: Privileged Resources and Systems Programming

Projects

  1. ALU Implementation
  2. Basic Execution
  3. MIPS Processor
  4. MIPS Disassembler
  5. MIPS Simulator
  6. Cache Simulation and Measurement
  7. Multicore Simulator
  8. Final Project