Preliminary Syllabus:
Spring 2018 EE380 (AKA CS380, CPE380)
Computer Organization and Design
(also listed as "Microcomputer Organization")

Instructor: Professor Hank Dietz
Office: 203 Davis Marksbury Building
Home URL:
Course URL (watch errata for changes):
Course Meetings: MWF 2:00-3:15 in room 207 Ralph G Anderson
Course Text: Computer Organization & Design, The Hardware/Software Interface, Fifth Edition: The Hardware/Software Interface, Patterson & Hennessy, Morgan Kaufmann publisher, 2013.
Versions as old as the 2nd Edition are usable, but it has become too awkward to list corresponding sections in all versions as the material is covered in class.


EE380 is the undergraduate computer architecture core course and a key course for anyone interested in computer engineering. The course serves as an introduction to the design and analysis of modern computer architectures. It is expected that students entering this course will have some high-level language programming experience and basic understanding of digital logic (as per EE280).

Course Content

A very approximate overview of the lecture coverage, in "lecture weeks," is given in the following table. Note that the reference chapters do not contain all the material covered in lectures; you are expected to understand any material discussed in the lectures, cited from references, or presented via the course URL.

Topic Primary Reference Weeks Exam
Introduction Book Chapter 1 1.0 0
A Simple Machine Online (EE280 review from Book Appendix B) 2.0 0
Performance Book Chapter 1 0.5 0
Machine Language Book Chapter 2 1.5 1
Arithmetic Book Chapter 3 2.0 1
Data Path & Control Book Chapter 4 1.0 1
Pipelining Book Chapter 4 1.5 2
Memory & I/O Book Chapter 5 1.5 2
Parallel Processing Book Chapter 6 1.0 2

The textbook for this course is an excellent reference that essentially defines the common background understanding of computer architecture assumed for many CS/EE jobs. However, it is not perfect, and there are a variety of things we'll do differently. The various revisions of the textbook differ mostly in rearrangements trying to smooth-out problems with performance analysis and the "single cycle" implementation architecture, as well as modernization of the ideas and examples. As the table above shows, we largely follow the order in the text; however, we use additional materials with online references throughout, and even use additional materials as the primary reference for the simple machine as noted above.

Homework, Projects, Quizzes, & Exams

Various homework/projects will be assigned. Generally, these must be submitted via the WWW forms at the course site; computer use will be discussed in lectures and at the course URL. Detailed grading may be done on only a subset of the work assigned. Simple quizzes may be given in class to confirm your attentiveness and help tailor the presentation to better meet student interests and needs.

Professor Dietz tries to minimize travel during the semester, but he will be presenting research at Electronic Imaging 2018 January 29-February 1, 2018. Arrangements are not yet final, so there may be some adjustment to the regular class meeting schedule. Any schedule changes, including changes made due to weather, are announced on the course website.

The course material is segmented into 3 exams covering the material suggested in the table above. Exams 0 and 1 will be in class. Exam 2 is actually the first half of the final exam, the second half of which is comprehensive. The schedule for the two in-class exams will be announced in class and at the course URL. Final exams are scheduled by the office of the registrar. The Spring 2018 EE380 final is listed as 3:30PM Wednesday, May 2, 2018.

The University of Kentucky gives very specific conditions that would justify taking an exam at other than the scheduled time and place, and we will honor all requests complying with university guidelines. Beyond that, we will try to accomodate any request to take an exam at other than the scheduled time provided that the request is made in writing or email before the scheduled exam time. In such cases, the course staff may elect to use a different format (e.g., an oral exam) for the specially-scheduled exam.


The grading in this course will generally follow the usual scale of "A" starting at 90%, "B" at 80%, "C" at 70%, and "D" at 65%; these grade thresholds will never be increased, but may be lowered slightly as the course staff find appropriate. The first two exams will count for approximately 20% of your course grade each, and the final will count for about 30%. The remaining 30% of your grade will be based on the other assignments and quizzes. Note that this is a change from previous semesters, weighting the final 10% less and assignments and quizzes 10% more. These weightings for the final course grade are unlikely to change significantly, but may be adjusted if circumstances make that appropriate.

Mid-term grades are intended to help you know what grade your current trajectory is likely to result in for the complete course, and mid-term grades will be posted to myUK consistent with university guidelines. 70% of your final course grade is determined by exams, so computing mid-term grades using the final grade weightings on all work submitted to that point could be misleading. Instead, expect the weightings for mid-term grades to heavily favor the first exam -- the only exam graded before mid-term grades must be submitted.

Homework solutions are posted to aid students in preparation for the upcoming exam on the same material. You will generally have at least a week to do each homework, but homework is due by the stated date and will not be accepted after a solution is posted. The two in-class exams are generally graded and returned to the students, with answers reviewed either in class or in sessions scheduled specifically for that purpose. So that any possible grading errors can be consistently handled for all students, regrade requests (preferably in writing) must be made promptly and must be specific as to the reason a regrade is requested. At the option of the course staff, any work submitted for regrade may be re-evaluated in its entirety.


Students are expected to generally behave in an ethical manner, but violations will be treated as serious offenses. Altering graded exams and then submitting them for regrade is obviously unethical, but you do not need to be trying to enhance your grade in order for your behavior to be inappropriate. For example, attempts to break into computer accounts associated with this course or to falsely identify yourself are serious ethical violations even if there was no intent to "cheat" per se.

There are lots of study materials for this course, including old exams, widely available; using them as study aids is perfectly acceptable, but be warned that an apparent reuse of an old question usually has the question slightly reworded so that repeating the old answer will get no credit. Although students are encouraged to discuss course material with one another, everything you submit must be entirely your own original work. Similarly, for in-class exams that specify no textbooks, no calculators, etc., use of the banned resources is a serious offense.

University of Kentucky guidelines do not treat ethics violations as minor infractions. Violation of the policy can result in all involved students failing the course; more severe penalties also may be applied. Contact Professor Dietz beforehand if you have any doubts about how this policy might apply.

EE380 Computer Organization and Design.