CS 250: Computer Architecture
Fall 2007
Instructor :
Professor Zhiyuan Li
Lecture
Schedule: TTh 3:00-4:15pm Aug 20 - Dec 9, 2007
Lab Schedule:
See
School Update
Home
page of the course:
Students will access course
materials (course policies, lecture notes, grades, assignments, etc)
through Purdue's
WebCT
What Does This Course Cover?
In this course, we will focus on two things: 1) Fundamental concepts of
computer architecture; and 2) Techniques for analyzing and measuring
computer system behavior based on the fundamental concepts.
The following is a list concepts we
will emphasize (the corresponding experiments are in
parentheses):
- Instruction and data
representations; (Examine how source code is converted
into assembly code and then machine code.)
- instruction decoding and addressing modes
- The virtual address space and
memory allocation (Examine data allocation methods, stack, heap)
- Call and return sequences
- Activation records
- Heap memory management
- The central processing unit (CPU)
(Examine the impact of control flow and data dependences on program
performance)
- Control flow and branch
prediction
- Data dependences and
instructional level parallelism
- Pipelining
- Software pipelining
- The memory hierarchy and data locality
(Examine the impact of data
locality on program performance)
- Caches
- Buffers
- Registers
- Prefetching
- I/O structures; (Examine I/O behavior and performance)
- direct memory access;
- interrupts;
- bus operations.
Selected optional topics:
- Multicore processor chips (Examine program speedup by
using multiple threads)
- Virtual machines (Examine how Java source code is converted
into Java byte code; Examine how Java virtual machines work)
Textbook
"Essentials of Computer
Architecture", by Douglas E.
Comer, published by: Prentice
Hall.
The textbook will be
complemented by lecture notes which focus on the concepts listed above
and serve as the basis for exams in this course.
Grading of CS250
- Written assignments, quizzes and lab assignments (50% total)
- Midterm 1 (15%)
- Midterm 2 (15%)
- Final exam (20%)