RIT Computer Engineering


Tuesday, 23-Jul-2019 18:06:54 EDT

13 Visitors Since 30-Nov-1999


   Assignment #1, Due Tuesday, January 4.

   Assignment #2, Due Tuesday, February 1.

   Assignment #3, Due Thursday, February 10.


For the following lecture notes you can download or view a lecture as an Acrobat PDF file, or as a Microsoft Powerpoint97 file:

11-30-99 Basics of Computer Design. Performance Measures.
12-2-99 Instruction Set Architecture Characteristics and Classifications. CISC vs. RISC, The DLX Architecture.
12-7-99 A basic Multi-Cycle Implementation of DLX, Intoduction to Pipelining: Definitions, Performance, A pipelined DLX, Pipeline Hazard Classification, Data Forwarding

12-9-99 Data Hazards, Control Hazards, Static Branch Prediction, Compiler Pipeline Scheduling, Instruction Pipelining and Exception Handling.

12-14-99 Floating Point/Multicycle Pipelining, Exploiting Instruction-Level Parallelism (ILP): Loop Unrolling, Classification of Instruction Dependencies, Loop-Level Parallelism (LLP) Analysis,
1-4-2K Dynamic Instruction Pipeline Scheduling: The Scoreboard, The Tomasulo Approach.
10-13-2K Dynamic Branch Prediction Techniques: Branch History Table (BHT), Correlating Two-Level Dynamic Branch Predictors, Branch-Target Buffers.
1-18-2K Multiple Instruction Issue, CPI <1 Approaches: Superscalar, VLIW. Speculation: Software, Hardware. ILP Compiler Support, GCD Test.
1-20-2K The Memory Hierarchy. Cache Design Considerations: Organization, Replacement Policy, Write Strategies, Performance.
1-27-2K 3Cs of Cache, Cache Performance Optimization Techniques; Reduction of: Miss Rate, Miss Penalty and Hit Time
2-3-2K The Memory Hierarchy: Main & Virtual Memory
2-8-2K I/O Sub-System Design Considerations: Disk Storage Parameters, Bus Characteristics, I/O Performance Measures, Little's queueing theory.


9:00-11:50 AM Tuesday in room 1/3335, Thursday in room 9/3149


Dr. Muhammad Shaaban
e-mail: meseec@osfmail.isc.rit.edu
Office: 17-2507 X2373

Office Hours:
My Winter 99 schedule


Current: http://www.rit.edu/~meseec/eecc551-winter99/
Fall 99: http://www.rit.edu/~meseec/eecc551-fall99/
Winter 98: http://www.rit.edu/~meseec/eecc551-winter98/
Fall98: http://www.rit.edu/~meseec/eecc551-fall98/
Winter 97: http://www.rit.edu/~meseec/eecc551-winter97/
Fall 97: http://www.rit.edu/~meseec/eecc551-fall97/


The course covers various aspects of advanced uniprocessor computer architecture design. Instruction set architecture design alternatives are discussed. Techniques to enhance performance such as pipelined execution optimizations, branch-handling, exploiting instruction-level parallelism, multiple-instruction issue and dynamic scheduling are studied. Cache, and memory hierarchy design and performance issues are also presented. Finally, the design of efficient and reliable input/output systems are covered.


Computer Organization EECC550(0306-550).


Computer Architecture: A Quantitative Approach, Second Edition, John Hennessy, and David Patterson, Morgan Kaufmann Publishers, 1996.
Selected papers.


Participation and class presence: 5%
Homework assignments: 30%
Exam: 35%
Special topics project: 30%


Attending all lecture sessions is expected.


Week1: Fundamentals of Computer Architecture Design, Performance Measures Review. Instruction Set Principles Review and Examples. CISC vs. RISC. A Typical RISC Example: The DLX Architecture.
Week2: CPU Pipelining Concepts Review, Pipeline Hazards. Branch Handling: Static branch prediction Static Compiler pipeline scheduling. Pipelining and Exception Handling.
Week3: Advanced Pipelining, Exploiting Instruction-Level Parallelism (ILP). Pipeline Scheduling, Loop Unrolling. Instruction Dependencies Analysis.
Week4: Dynamic Instruction Scheduling: The Scoreboard Approach, The Tomasulo Approach.
Week5: Dynamic Hardware-based Branch Prediction.
Week6: Exploiting ILP Further: Multiple-Instruction Issue Approaches: Superscalar, VLIW. Software and hardware Speculation. Compiler ILP support.
Week7: Cache Design Issues, Memory-Hierarchy Design. Advanced Techniques to Improve Cache Performance.
Week8: Storage Systems, Bus Design, I/O Performance Measures and Benchmarks Reliable Storage: Redundant Array of Inexpensive Disks (RAID). I/O System Design Issues.
Week9: Project Presentations.

  This page is 20Kbytes long and was last modified on:   Monday, 25-Feb-2008 17:19:40 EST.

Made with at least 30% post-consumer recycled bits