Memory Hierarchy
Understanding cache, main memory, and secondary storage in computer systems
Introduction
Memory hierarchy is a concept in computer architecture that organizes different types of memory based on their speed, size, and cost, creating a layered structure to optimize performance and cost.
Memory Levels
From fastest to slowest:
- Registers
- Cache Memory (L1, L2, L3)
- Main Memory (RAM)
- Secondary Storage (HDD/SSD)
- Tertiary Storage (Tape, Optical)
Cache Memory
Key aspects of cache memory:
- Cache Organization
- Direct Mapped
- Set Associative
- Fully Associative
- Cache Policies
- Replacement Policies
- Write Policies
- Coherence Protocols
Main Memory
Characteristics of main memory:
- Random Access Memory (RAM)
- Dynamic RAM (DRAM)
- Static RAM (SRAM)
- Memory Controllers
- Memory Interleaving
Important Concepts
Key aspects of memory hierarchy:
- Access time and latency
- Bandwidth and throughput
- Cost per bit
- Volatility
- Memory management