Dr. Marc Olano <>
ITE 354 (455-3094); Office Hours: TuTh 4:00-5:00


Yao Yao <>
ITE 353A; Office Hours: MoWe 4:00-5:30


CMSC 411 or equivalent undergraduate computer architecture course


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


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 3-4). The total grade breakdown will be as follows:

30% Homework
30% Project
20% Mid-term exam
20% 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.

Tentative Schedule

Homeworks are due in class on Thursday 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 Ed. 4th Ed. 5th Ed. Due dates
Jan 30/Feb 1 Introduction, Project, Cost        
Feb 6/8 Project, Performance, Benchmarking Ch 1 Ch 1 Ch 1  
Feb 13/15 HDL, Simulation See below HW 1
Feb 20/22 Instruction set design Ch 2 App B App A Select Team and Project
Feb 27/Mar 1 Pipelining App A App A App C HW 2
Mar 6/8 Pipelining, Branch prediction        
Mar 13/15 Exceptions Ch 3 Ch 2 Ch 3 HW 3
Mar 27/29 Review, MIDTERM        
Apr 3/5 Instruction-level parallelism, Tomasulo Ch 5 Ch 5 Ch 2  
Apr 10/12 Intel / Cache Ch 7 Ch 6 App B HW 4
Apr 17/19 More Cache Ch 6 Ch 4 Ch 5 Extra Credit 1
Apr 24/26 Memory       HW 5
May1/3 Shared Memory / Distributed Memory       Extra Credit 2
May 8/10 Parallel Systems / I/O, Networks & Storage Ch 8 App E App F HW6
May 15 Review       Project hard-copy
May 17 FINAL EXAM 10:30-12:30

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 if I make significant change or addition. Also, as we proceed through the semester, slides will be added as links in the topic list above.

There is a piazza group for this class, Everyone will be added to this group. 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 be aware of whether you are posting a public or private message on this forum. Post questions about assignments, exams, or questions that do not include material that should not be shared with your classmates publically. Feel free to post student answers if you know them. Be sure to either use private messages or email for questions about grades or other private matters.

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 Rights and Responsibilities section of 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.