Department of Electrical and Computer Engineering
The University of Texas at Austin

EE 382N, Spring, 2004
Y. N. Patt, Instructor
Hyesoon Kim, Moinuddin Qureshi, TAs
Nominal Course Outline
January 20, 2004

January 20: First class meeting. Introduction to the course, administrative details. Focus of the course. Architecture and Microarchitecture: Sciences of Tradeoffs.

January 21: Basic concepts in architecture and microarchitecture. Critical path, Bread and Butter Design, Partitioning, Timing, Pipelining. Data Path, state machine, microsequencer, microinstruction definition, and microcode. Microprogramming (horizontal, vertical, two-level, dynamic microprogramming, bit steering). Extension to pipelining and pipelined control. Effective use of short pipelines, with some digressions into more effective use of long pipelines without blocking. The structure of a modern pipeline. Functions at each stage.

January 26: Problem Set 1a due at start of class.

January 26,27,28: Discussions . Introduction to the CAD tools we will be using in the course. Review of the use of these tools on the logic design of a simple ALU.

February 2: Problem Set 1b due, 12:01am.

February 2: The x86 ISA, and some implementation issues.
February 3: Pipelining in the year 2004.
February 4: Branch Prediction.

February 9: Branch Prediction, continued.
February 10: Discussion section
February 11: The Trace Cache.

February 16,17,18: Discussion section.

February 23: Problem Set 2 due at start of class.

February 23: The Block-structured ISA.
February 24: Simultaneous Multithreading.
February 25: Clustering and its implications.

March 1: Data Flow; HPS.
March 2: Discussion
March 3: Pentium Pro and Pentium 4 implementations.

March 5: Problem Set 4 due, 5pm in Room 541 ENS.

March 8: Review.
March 9: Discussion
March 10: First exam.

March 15 through 19: Spring break, no class.

March 22,23,24: Individual group meetings to define individual implementations.

March 25, 26: First Design Review in 541a ENS, by appointment.
[Problem Set 5 is to be handed in at that time.]

March 29: The Naysayers, and their impact.
March 30: Discussion section.
March 31: Microarchitectures Approaches for the year 2009.

April 5: Importance of Compiler technology to Future Microarchitectures.
April 6: Discussion section.
April 7: RISC, a Retrospective.

April 12: Cache Coherency.
April 13: Discussion section.
April 14: Review.

Oral exams (Exam 2) scheduled for April 15,16.

April 19: Memory consistency.
April 20: Discussion section.
April 21: IEEE Floating Point arithmetic, The IEEE Standard. Formats. Gradual underflow, NaNs, Exceptions, Round-off, Guard Digits and Sticky bits, Wobble.

April 26: Measurement methodology and abuses.
April 27: Case Study I: The IBM Power 5 microarchitecture. (Guest lecture by Ron Kalla of IBM).
April 28: Discussion section.

May 3: Guest lecture:10 Simple Observations That Get Me Excited About Architecture (Professor Sanjay Patel, University of Illinois).
May 4: Case Study III: TBD.
May 5: Last class meeting. Review of the course.

Final project design reviews in 541a, May 6,7 by appointment.

May x: Final project report due on the date scheduled for the final exam, in 541a, 10pm.

Note: there will be no final exam in this course.

Additional topic, if time permits: Alternative approaches to concurrency. Vector Processing, SIMD, MIMD, other variations of Multiprocessing.