CIS 662 - Computer Architecture - Fall 2006

News Calendar Textbooks and Resources
Course Description Course Requirements Grading
Instructor: Jelena Mirkovic  
Office hours: Tu/Tr 5 - 6 pm
Office: 412 Smith Hall 
Phone: 302-831-6052 
TA: Timo Koetzing
Office hours: M 3-5 pm
Office: 102 Smith Hall
Semester: Fall 2006 
Time: Tu/Th 2.00 am-3.15 pm 
Room: 232 Purnell Hall
Final exam: Monday Dec 11, 1-3pm, Purnell 232
  • 12/03 Final reading list
  • 12/03 A sample final with solutions
  • 11/26 Solution for problem 5.4 in the book
  • 11/26 Overview of cache architectures and how to calculate AMAT for each
  • 11/25 Makeup midterm. Choose only one question to solve, the one that will brind you a maximum point increase. To calculate the point increase click on "check score" button and identify a question on the midterm where you lost the most points, then solve the corresponding question on the makeup midterm. For example, if you got 30 points on question 1, 8 on question 2 and 27 on question 3, you lost most on question 2 (12 points). You would choose question 2 on the makeup midterm to solve. Your score before makeup midterm would be (30+8+27)/90*20=14.44. If you solved question 2 correctly, your new score for the midterm would be (30+20+27)/90*20=17.11. Do not solve more than one question - if you do this I will have to choose at random which one to grade and this is not what you want. Before starting on the makeup midterm make sure to look over the midterm solutions in the next item.
  • 11/25 Midterm solutions
  • 10/17 Sample midterm with solutions
  • 10/12 Midterm reading list
  • 8/29 Room change: We changed the class meeting room to 232 Purnell Hall.
  • 8/28 Secret number: Please E-mail me during this week with your name and a chosen number (1-1000) that you'd like to be your secret number. I will use this number to post homework, midterm and final grades in a privacy preserving manner.
  • 8/28 Calculator: I will try to schedule some brainstorming/exercise activity in each class. Please bring a calculator so you can give them a try.
  • 8/28 Errata for the textbook: can be found here.
Calendar and Syllabus
DayDateTopicClass slides ReadingsHomeworks
Goal of computer designer
Class 1 Chapter 1
Thur8/31 Measuring performance (benchmarks) Class 2 Chapter 1 Homework 1 assigned
Tues9/5 Principles of computer design
Class 3 Chapter 1
Thur9/7 Instruction set architectures Class 4 Chapter 2
Tues9/12 Memory addressing
Type and size of operands
Operations in the instruction set
Control flow instructions
Class 5 Chapter 2 Homework 1 due
Homework 2 assigned
Thur9/14 Control flow instructions
Encoding an instruction set
Role of compilers
Class 6 Chapter 2
Tues9/19 MIPS architecture
Pipelining concepts
Unpipelined and pipelined RISC processor
Class 7 Appendix A
Thur9/21 Pipeline hazards Class 8 Appendix A Homework 2 due
Homework 3 assigned
Tues9/26 Pipeline hazards Class 9 Appendix A
Thur9/28 Control hazards
Class 10 Appendix A
Tues10/3 Interrupt handling Extensions for multicycle operations Class 11 Appendix A Homework 3 due
Homework 4 assigned
Thur10/5 Instruction level parallelism Class 12 Chapter 3
Tue10/10 Scoreboarding Class 13 Chapter 3
Thur10/12 Tomasulo's algorithm Class 14 Chapter 3 Homework 4 due
Homework 5 assigned
Blank sheets for scoreboard and Tomasulo's algorithm
Tues10/17 Dynamic hardware prediction Class 15 Chapter 3 Sample midterm with solutions
Thur10/19 Midterm review
Tues10/24 Midterm
Thur10/26 High-performance instruction delivery
Multiple-issue processors
Class 16 Chapter 4
Tues10/31 Multiple-issue processors Class 17 Chapter 4 Homework 5 due
Homework 6 assigned
Thur11/2 Speculation
Class 18 Chapter 4
Tues11/7 Election day
Thur11/9 No class Chapter 4
Tues11/14 Speculation
Class 19 Chapter 4
Thur11/16 Compiler techniques for exposing ILP
Loop unrolling and scheduling
Class 20 Chapter 4
Tues11/21 Cache memories Class 21 Chapter 5 Homework 6 due
Homework 7 assigned
Thur11/23 Thanksgiving
Tue11/28 Cache performance
Reducing cache miss penalty
Reducing miss rate
Class 22 Chapter 5
Thu11/30 Reducing miss penalty and rate via parallelism
Reducing hit time
Improving memory performance
Class 23 Chapter 5
Tue12/5 Review for the final exam Homework 7 due
Textbooks and resources
Required reading
J. L. Hennessy, D. A. Patterson
"Computer Architecture: A Quantitative Approach," 3rd edition.
Be sure to get the 3rd edition, it is very different than the 2nd.
Optional reading
W. Stalling
"Computer Architecture and Organization," 6th edition.
Class slides
Will be posted in here after each class.
Course Description
This course provides a systematic study of core concepts of computer architecture design. These concepts have been developed in the last 50+ years, guided by extraordinary technology advancements, and the constant designer effort to get maximum performance out of desktop computers while minimizing the cost. The main focus is on key principles for high-performance low-cost desktop design. It covers in detail instruction set architectures, pipeline architecture, cache and virtual memories, methods for exploiting instruction level parallelism, multiprocessors and I/O devices. The workload is demanding and the course has regular homeworks (one per 1.5 weeks), a midterm and a final.
Course Requirements
There will be one homework assignment every 1.5 weeks. Homework can be submitted either in class or through E-mail (Send E-mails to with a PDF or PS attachment. No other file types will be accepted).

If you have difficulties doing the homework, ask for the help early. Come to office hours, or set an appointment with the instructor or TA. Make-up homeworks can only be given out for excused absences. Generally, absences due to illness, observing a religious holiday or emergency are recognized as excused absences. If you are aware that you will be absent and miss a homework deadline, inform the instructor prior to the deadline through E-mail. This naturally does not hold for severe illness and emergency (since those events cannot be predicted) but does for religious holidays.


I personally understand that there will be times when you can't make itbut please make every effort to attend the class regularly. Although I will post class slides online after each lecture, they can hardly replace all the clarifications and the announcements I make in class. If you do miss a class, I strongly advise you to obtain class notes from one of your classmates and to talk to them to see if you missed some important announcements. Be aware that 5% of your grade is class participation.

The University Seat Claim Policy states:

Unless excused by the faculty member, students holding a confirmed assigned seat in a class will have relinquished their seat if they have not personally appeared in class to claim the seat by ... the second meeting for a class scheduled to meet twice a week ... If the student does not claim the seat within the time limit specified above, and does not drop the course, the instructor has the option of assigning the student a grade of "Z" at the end of the term. It is the responsibility of the student to drop each course that he/she does not plan no attend, even when the student's registration is canceled for non-payment of fees. Failure to drop a course will result in a grade of "Z".
Therefore, attendance will be taken for the first two class meetings. Please make sure that you sign the attendance sheet.
Late policy
When you come in late you are disturbing both me and your classmates. Please make every effort to come on time. However, if you do happen to be late, come in and join the class (even if you are 30+ min late). Just don't make it a habit.
Academic honesty
You may study for homeworks and exams in a group or alone. However, all the work you submit must be your own. This means that you may not write homework answers in a group, or give/receive help in solving the homework. Students may not use the web to locate answers to any assignment. If you do not have time to complete an assignment, it is better to submit partial solutions than to get answers from someone else. Cheating students will be prosecuted according to University guidelines. Students should get acquainted with their rights and responsibilities as explained in the Student Guide to University Policies (
Asking for help
If you need help, don't hesitate to ask for it. There are no stupid questions, and nothing you ask will negatively affect your grade. On the contrary, students that ask for help early generally manage to improve their understanding of the material and achieve better grades. Also, remember that office hours are the time dedicated to meeting with students and answering their questions. The instructor and the TA are happy to have you come and make use of this time.

If you have any problem with the class (difficulties understanding the material or doing the homeworks, excused absence, emergency that prevents you from meeting a homework deadline, need a special accomodation, etc.) E-mail the instructor or TA, come to office hours, or simply find the instructor in the office. You can also call by phone if there is an emergency and you have no access to E-mail.

Grading policy
Mid-term Exam20%
Class participation5%
Final exam25%

You can check your assignment scores at this page using your secret number. You can use the following chart to predict your grade in class. You need to get the specified number of points or more to obtain the grade from the same column. Scores in form x.y are rounded up if y>5, otherwise they are rounded down.

93908683 80 767370666360