SimpleScalar Resources

·        Tools (from www.simplescalar.com)

·        Documentation (from www.simplescalar.com)

·        Sources (somewhat customized for NYU)

a.      SimpleScalar simulator source (simplesim-3v0c.tgz)
This is common to both SPARC/Solaris and x86/Linux installations.

b.      Department SPARC/Solaris machines (e.g., slinky, griffin, etc.)
(README)

c.      x86/Linux installation
(README, simpletools-2v0-nyu.tgz, simpleutils-2v0-nyu.tgz)

 

Course Materials

The lecture slides used in this course have been derived from slides developed by Professors David Patterson and Randy Katz at the University of California, Berkely and Professor Michael Schulte at Lehigh University for their graduate Computer Architecture courses. The SimpleScalar assignments being used in this course were originally developed by Michele Co and Professor Kevin Skadron of the Computer Science Department at the University of Virginia. The instructor gratefully acknowledges all of their efforts.

 

09/04/2002

Course Description and Schedule

Assignment 0: SimpleScalar Familiarization Exercise

Lecture 1: Introduction, Fundamentals of Computer Design
                  (Slides in One-up, and Two-up formats)

09/11/2002

Lecture 2: Instruction Set Principles
                  (Slides in One-up, and Two-up formats)

09/18/2002

Assignment 1: Pipelining Basics

Lecture 3: Pipelining
                  (Slides in One-up, and Two-up formats)

09/25/2002

Lecture 4: Pipeline Hazards, Branch Prediction
                  (Slides in One-up, and Two-up formats)

10/02/2002

Lecture 5: Branch Prediction (cont’d), Dealing with Data Hazards
                  (Slides in One-up, and Two-up formats)

10/08/2002

Assignment 2: Branch Prediction, BTB, and RAS

10/09/2002

Lecture 6: Dealing with Data Hazards (cont’d) – Tomasulo’s Algorithm
                  (Slides in One-up, and Two-up formats)

10/16/2002

Lecture 7: Multiple Instruction Issue

                  (Slides in One-up and Two-up formats)

10/23/2002

Lecture 8: Compiler Optimizations for Modern VLIW/EPIC Architectures
                  Guest lecture by Professor Benjamin Goldberg, NYU
                  (Slides in One-up and Two-up formats)

10/31/2002

Lecture 9: Limits of ILP, Memory Hierarchy Design

                  (Slides in One-up and Two-up formats)

Assignment 3: Multiple Functional Units

11/06/2002

Lecture 10: Memory Hierarchy Design – Caches

                   (Slides in One-up and Two-up formats)

11/14/2002

Lecture 11: Memory Hierarchy Design – Main Memory

                   (Slides in One-up and Two-up formats)

Assignment 4: Dynamic Scheduling, Multiple Instructions/Cycle

11/20/2002

Lecture 12: Multiprocessors and Multithreading

                   (Slides in One-up and Two-up formats)

11/27/2002

Lecture 13: Multiprocessors and Multithreading – Bus-based Cache Coherence

                   (Slides in One-up and Two-up formats)

12/04/2002

Lecture 14: Multiprocessors and Multithreading – Scalable Parallel Machines
                   (Slides in One-up and Two-up formats)