Computer Architecture
CPSC 321, Course Information, Fall 2004
This course gives an introduction to the basic hard- and software
components of a computer. It features an introduction to the MIPS
assembly language. It covers the design of the basic components of a
computer, including I/O modules, memory, control unit and arithmetic-logic
unit.
Textbook D. Patterson, J. Hennessy: Computer
Organization: The Hardware-Software Interface, Morgan Kaufman
Publishers, 1997
Instructor Dr. Andreas Klappenecker,
Office HRBB 509B, Office hours TW 10:15am-11:15am or by
appointment.
Class meets TR 12:45pm-2:00pm in Zachry 105B
Teaching Assistant
General Information
Lecture Notes
Assignments
Assembly Language
Verilog
Lectures
- T Aug 31: Introduction, History, Five Components
- R Sep 02: History, Performance, Assembly Language
- T Sep 07: Assembly language
- R Sep 09: Assembly language
- T Sep 14: The Arithmetic-Logic Unit
- R Sep 16: The Arithmetic-Logic Unit
- T Sep 21: Addition, Multiplication, Floating Point Numbers
- R Sep 23: Division, Floating Point Arithmetic
- T Sep 28: MIPS Processor
- R Sep 30: MIPS Processor
- T Oct 05: Multicycle Processor
- R Oct 07: Review
- T Oct 12: Midterm Exam
- R Oct 14: Multicycle Processor, Verilog
- T Oct 19: Discussion of Exam
- R Oct 21: Verilog
- T Oct 26: Verilog, Microprogramming, Pipelined Processors
- T Nov 02: The Pentium 4
- R Nov 04: The Memory Hierarchy
- T Nov 09: Caches, Virtual Memory
- R Nov 11: Cache Performance, Virtual Memory, Interfacing, Multiprocessors
- T Nov 16: Multithreading and Dataflow Architectures
To probe further:
The following references are bedtime
musings for computer scientists. They are not necessary for this
course, but you might enjoy reading some of them:
- ENIAC:
The Triumphs and Tragedies of the World's First Computer by Scott
McCartney.
- Enigma by Robert Harris, Ballantine Books, 1996.