CMSC 611: Advanced Computer Architecture

Fall 2008, MW 4:00-5:15, LH 5

Last update:
Wed Dec 3 18:06:57 EST 2008
Tue Dec 2 10:51:07 EST 2008
Wed Nov 26 18:49:21 EST 2008
Tue Nov 18 09:03:40 EST 2008

Instructor: Dr. Marc Olano <>
ITE 354 (455-3094); Office Hours: Tue 2:00-4:00

TA: Neelofer Tamboli <>
ITE 334; Office Hours: Wed 2:00-4:00

Prerequisite: CMSC 411 or equivalent

Text: Computer Architecture: A Quantitative Approach, 3rd or 4th edition, John L Hennessy and David A Patterson. Required.

Goal: Develop an understanding of the principles and practices employed in the design and evaluation of processors and computer systems.


Your grades will be based on homework assignments given approximately every other week, an in-class mid-term, a cumulative final exam, and a final project (done in groups of 2-3). The total grade breakdown will be as follows:

30%:   Homework
25%:   Mid-term exam
25%:   Final exam
20%:   Project

Homework assignments submitted up to one week late will be penalized 20 percent of the possible score. Assignments more than one week late will receive a score of 0.

Academic Honesty

By enrolling in this course, each student assumes the responsibilities of an active participant in UMBC's scholarly community in which everyone's academic work and behavior are held to the highest standards of honesty. Cheating, fabrication, plagiarism, and helping others to commit these acts are all forms of academic dishonesty, and they are wrong. Academic misconduct could result in disciplinary action that may include, but is not limited to, suspension or dismissal. To read the full Student Academic Conduct Policy, consult the UMBC Student Handbook, the Faculty Handbook, or the UMBC Policies section of the UMBC Directory, or the Graduate School website.

All assignments in the course are expected to be your individual work. You may discuss assignments, however any help you receive must be documented. At the beginning of each or assignment, you must include a statement indicating the sources you used while working on it (excluding course staff and text) and the type of help you received from each. If you received no help, say so. Failure to include this comment will result in your assignment being returned ungraded.

Tentative Schedule

Homeworks are due in class on Wednesday unless otherwise indicated.

Readings should be completed before the first date listed below for maximum benefit. In many cases, the readings may be lengthy (covering most of a 1000+ page book over the course of the semester). You are, of course, free to choose your own strategy. At the very least, I'd recommend skimming the readings before class then re-reading difficult sections in depth after class. Without a doubt, prior exposure to the concepts we will be covering will aid your understanding.

Date Topic 3rd Edition 4th Edition Due dates
Aug 27 Introduction
Sep 3 Cost Ch 1 Ch 1
Sep 8/10 Performance & Benchmarking
Sep 15/17 Instruction set design, Compilers and ISA Ch 2 App B HW 1
Sep 22/24 Pipelining & Pipeline Hazards App A App A Mon: Select Team and Project app+user by email
Sep 29/Oct 1 Instruction-level parallelism, Scoreboard Ch 3 Ch 3 HW 2
Oct 6/8 Tomasulo, Branch Prediction
Oct 13/15 Branch Prediction HW 3
Oct 20/22
Review, Midterm
Oct 27/29 Cache Ch 5 Ch 5
Nov 3/5 Cache & Memory Ch 7 Ch 6 HW 4
Nov 10/12 Storage, I/O Ch 6 Ch 4
Nov 17/19 HDL & Simulation, Parallel Systems Ch 8 See below HW5
Nov 24/26 Shared & Distributed memory, Interconnection Networks App E
Dec 1/3 Complex parallel systems HW6
Dec 8 Review Mon: Project hardcopy in class
Dec 15 Final exam, 3:30 – 5:30, LH V

VHDL Resources

Class Resources

This syllabus is a snapshot of the class web page ( Important announcements and updates will be made to this page throughout the semester. I will announce at the beginning of class if I make a significant change or addition, and date stamps of the latest several changes will appear on top of the page.

There is also a class email list for announcements and public student questions: Your classmates will get this email, so you should not use the list for private or grade-related comments, but feel free to use it as a means to ask public questions of me, the TA, or your fellow students. The list will only accept mail from subscribed addresses. I have pre-subscribed the address for each student enrolled in the course as of Tuesday, August 26th. You can add, change or remove subscription using the web interface at