Marquette University logo      
Marquette resources Course calendar  
Goals

Course Goals and Objectives

 

 

Course Goals:

To provide students the ideas and concepts required to understand the architectures of modern microprocessors, including instruction set principles, instruction-level parallelism, memory hierarchy designs, and I/O; to provide students the analytical tools for assessing processor performance; and to provide students the opportunity to become familiar with the Internet and the technical literature as sources of current information on the topics of the course.

Course Objectives:

By the end of the course you should be able to ...

  • Describe analytical methods for measuring and reporting processor performance.
  • Apply Amdahl's law to determine the speedup of a processor resulting from processor enhancements.
  • Classify various instruction set architectures.
  • List and describe common processor addressing modes.
  • Discuss instruction set encoding and types of operands.
  • Describe the role of compilers in instruction set design.
  • Describe a basic processor pipeline.
  • List and discuss the various types of pipeline hazards.
  • Describe loop unrolling, scheduling, and forwarding as used for pipeline hazard elimination.
  • Describe techniques for static branch prediction.
  • Describe hardware techniques for dynamic branch prediction.
  • Describe a typical floating-point pipeline.
  • Describe the MIPS R4000 pipeline.
  • Define instruction-level parallelism (ILP).
  • List and discuss three types of instruction dependencies.
  • Describe dynamic scheduling as a technique for overcoming data hazards.
  • Describe dynamic scheduling with a scoreboard.
  • Describe the Tomasulo algorithm.
  • Discuss branch penalty reduction with dynamic hardware prediction.
  • Describe a simple superscalar architecture as a device for taking advantage of more ILP with multiple issue.
  • Discuss compiler support for exploiting more ILP.
  • Define conditional and predicated instructions.
  • Discuss compiler speculation and hardware speculation.
  • Describe the structure of the PowerPC 620.
  • Describe the memory hierarchy.
  • Discuss block placement, block identification, block replacement, and write policy as they apply to any level of the memory hierarchy.
  • Describe the concept of and basic structure of a cache.
  • Define direct mapped, associative, and set associative.
  • Describe the Alpha AXP 21064 data cache and instruction cache.
  • Discuss the analytical assessment of cache performance.
  • List and describe several techniques for reducing cache misses.
  • List and describe several techniques for reducing cache miss penalties.
  • List and describe several techniques for reducing cache hit time.
  • List and describe several techniques for improving main memory bandwidth.
  • List and discuss several differences between caches and virtual memory.
  • Discuss protection in virtual memory.
  • Describe protection in virtual memory.
  • Describe protection in the Intel Pentium and the Alpha AXP 21064.
  • Describe the Alpha AXP memory hierarchy.
  • Describe the S bus, Microchannel, PCI, IPI, and SCS1 2 I/O buses.
  • Describe several levels of RAID.

 

Taken from ABET Course Outline, updated Fall 1999 by Lane Branson

See also goals for each chapter:

 

 

 
  Marquette University. Be The Difference. Marquette | Corliss |