Computer Organization and Architecture
- Fundamentals:
- Computer Architecture and Technology Trends,
- Moore's Law,
- Classes of Parallelism and Parallel Architectures,
- Instruction Set Architecture:
- The Myopic View of Computer Architecture,
- Trends in Technology,
- Trends in Cost,
- Processor Speed, Cost, Power, Power Consumption, Fabrication Yield
- Performance Metrics and Evaluation:
- Measuring Performance,
- Benchmark Standards,
- Iron Law of Performance,
- Amdahl's Law,
- Lhadma's Law
- Memory Hierarchy Design:
- Basics of Memory Hierarchy,
- Coherence and locality properties,
- Cache memory organizations,
- Cache Performance,
- Cache optimization techniques,
- Virtual Memory,
- Techniques for Fast Address Translation
- Pipelining:
- What is pipelining,
- Basics of a RISC ISA,
- The classic five-stage pipeline for a RISC processor,
- Performance issues in pipelining,
- Pipeline Hazards
- Branches and Prediction:
- Branch Prediction,
- Direction Predictor,
- Hierarchical Predictors,
- If Conversion,
- Conditional Move
- Instruction Level Parallelism:
- Introduction,
- RAW and WAW,
- dependencies,
- Duplicating Register Values,
- ILP
- Multiprocessor architecture:
- taxonomy of parallel architectures.
- Centralized shared-memory,
- Distributed shared-memory architecture,
- Message passing vs Shared Memory