Computer Architecture (810:142), Fall 2007

Time and Place: 11:00 AM to12:15 PM Tuesday and Thursday in ITTC 322

Web-site: www.cs.uni.edu/~fienup/cs142f07/

Class Email List: Send messages to 810-142-01-FALL@uni.edu from your UNI account (let me know other email addesses that you want to use)

Instructor: Mark Fienup (fienup@cs.uni.edu)

Office: ITTC 313

Phone: 273-5918 (Home 266-5379)

Office Hours: M 9-11, 1-2; T 9:30-10:45; W 9-10, 1-2; Th 9:30-10:45; F 9-11

Prerequisite: Computer Organization (810:041)

Required Text: "The Essentials of Computer Organization and Architecture," second edition, by Null and Lobur; Jones and Bartlett Publishers; 2006; ISBN-10: 0-7637-3769-0. (Same book I used in Computer Organization, 810:041, too!)

Course Goals: Very few people will become computer architects, but the vast majority of students will be employed as a software "somethings" (designers, implementors, etc.). Unfortunately, efficient software systems can only be produced by people with a thorough understanding of computer hardware and its relationship to software. Therefore, the major goal of this course is to understand the relation between the hardware and software, and how to efficiently use the hardware. To achieve this you will learn about (1) the hardware organization of sequential and parallel computers, (2) the memory hierarchy including cache and virtual memory, (3) system I/O and communication, (4) interrupts, and (5) hardware support for operating systems.

Assignments: The majority of your assignments will be "pencil-and-paper" exercises. However, we might have an occasional programming assignments to highlight the importance of understanding the computer architecture when designing and writing software.

Pedagogic Approach: In class, I'll tend to break up the lecture with active and group learning exercises to aid learning. While this is not formally graded, part (5%) of your grade will be based on your participation on these in-class activities. Students benefit by (1) increased depth of understanding, (2) increased comfort and confidence, (3) increased motivation, and (4) being better prepared to work in groups on the job. This might sound great, but it will require you (and me) to work differently to prepare for class. Before the class, you must read the assigned reading, thought about what I've asked you to think about, etc.; otherwise you won't be able to effectively participate in your group during class.

Grading policy: There will be three tests (including the final). I'll announce tests at least one week in advance to allow you time to prepare. Tentative weighting of course components is:

In-class Work: 5 %

Assignments: 25 %

In-class Test 1: 23 % (~September 27)

In-class Test 2: 23 % (~November 8)

Final: 24 % (Thursday, December 13 from 10-11:50 AM in ITT 322)

Grades will be assigned based on straight percentages off the top student score. If the top student's score is 92%, then the grading scale will be, i.e., 100-82 A, 81.9-72 B, 71.9-62 C, 61.9-52 D, and below 52 F. Plus and minus grades will be assigned for students near cutoff points.

Special Notice: In compliance with the University of Northern Iowa policy and equal access laws, I am available to discuss appropriate academic accommodations that may be required for students with disabilities. Requests for academic accommodations are to be made during the first three weeks of the semester, except for unusual circumstances, so arrangements can be made. Students are encouraged to register with Student Disability Services, 103 Student Health Center, to verify their eligibility for appropriate accommodations.