CMSC 611: Advanced Computer Architecture

Fall 2014, TuTh 2:30-3:45, SOND101

Instructor: Dr. Marc Olano <>
ITE 354 (455-3094); Office Hours: Mo 1:00-3:00

TA: Yichuan Gui <>
ITE 340; Office Hours: TuTh 12:30-2:00

Prerequisite: CMSC 411 or equivalent undergraduate computer architecture course

Text: Computer Architecture: A Quantitative Approach, 3rd edition or later, John L Hennessy and David A Patterson

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
20%:   Project
25%:   Mid-term exam
25%:   Final exam

Unexcused late homework assignments will receive a score of zero. Late submissions may be allowed for documented work or conference travel, if approved in advance of the original due date. If I have not told you that you will be allowed to turn an assignment in late before it is due, expect a zero if you turn it in late.

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 or the sole work of your project group. 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.

In other words, "I referred to the arstechnica web site and discussed the assignment with John Doe" is OK as long as you explicitly say that in your homework, and still solved the problem yourself.

Tentative Schedule

Homeworks are due in class on Tuesday unless otherwise indicated, with late assignments due in class Thursday.

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 Ed. 4th Ed. 5th Ed. Due dates
Aug 28 Introduction, Cost        
Sep 2/4 Performance / Benchmarking Ch 1 Ch 1 Ch 1  
Sep 9/11 Instruction set design        
Sep 16/18 Pipelining Ch 2 App B App A HW 1 (Solution)
Sep 23/25 Pipeline Hazards App A App A App C Select Team and Project
Sep 30/Oct 2 Instruction-level parallelism / Scoreboard Ch 3 Ch 2 Ch 3 HW 2 (Solution, Diagram)
Oct 7/9 Tomasulo / Intel Examples       Extra Credit (Solution)
Oct 14/16 Branch Prediction       HW 3 (Solution, Diagram)
Oct 21/23 Review, MIDTERM        
Oct 28/30 Cache Ch 5 Ch 5 Ch 2  
Nov 4/6 Cache (cont)       HW 4 (Solution)
Nov 11/13 Memory / Storage / I/O Ch 7 Ch 6 App D Extra Credit (Solution)
Nov 18/20 I/O/ Shared Memory Ch 6 Ch 4 Ch 5 HW 5 (Solution)
Nov 25 Shared Memory; THANKSGIVING See below Extra Credit (Solution)
Dec 2/4 Shared Memory / HDL / Simulation Ch 8 App E App F HW6 (Solution)
Dec 9 Review       Project hard-copy
Dec 11 FINAL EXAM, 1:00 - 3:00 PM

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 a class piazza site for this class. Everyone will be added to this site. Announcements will be made there, and you can also use it for public communication with your classmates, the TA and instructor. You should either check this site periodically, or make sure it is set to send you messages by email. Please only post messages appropriate for the entire class to see. Be sure to send messages about grades or other private matters directly to the instructor or TA.