Computer Organization and Architecture

  1. The Memory System
    1. Memory Hierarchy Fundamentals
      1. Memory Hierarchy Levels
        1. CPU Registers
          1. Cache Memory
            1. L1 Cache
              1. L2 Cache
                1. L3 Cache
                2. Main Memory (RAM)
                  1. Secondary Storage
                    1. Hard Disk Drives
                      1. Solid State Drives
                      2. Tertiary Storage
                        1. Optical Storage
                          1. Tape Storage
                        2. Principle of Locality
                          1. Temporal Locality
                            1. Recently Accessed Data
                              1. Loop Behavior
                              2. Spatial Locality
                                1. Sequential Access Patterns
                                  1. Array Processing
                                2. Memory System Characteristics
                                  1. Location Hierarchy
                                    1. Capacity Scaling
                                      1. Unit of Transfer
                                        1. Access Methods
                                          1. Sequential Access
                                            1. Direct Access
                                              1. Random Access
                                                1. Associative Access
                                                2. Performance Metrics
                                                  1. Access Time
                                                    1. Memory Cycle Time
                                                      1. Transfer Rate
                                                        1. Bandwidth
                                                        2. Physical Characteristics
                                                          1. Volatile vs Non-Volatile
                                                            1. Erasable vs Non-Erasable
                                                            2. Cost Considerations
                                                              1. Cost per Bit
                                                                1. Total System Cost
                                                            3. Cache Memory Systems
                                                              1. Cache Memory Principles
                                                                1. Cache Operation Fundamentals
                                                                  1. Locality of Reference Exploitation
                                                                    1. Cache Hit and Miss Concepts
                                                                    2. Cache Organization
                                                                      1. Cache Size Considerations
                                                                        1. Block Size (Cache Line Size)
                                                                          1. Cache Associativity
                                                                          2. Cache Mapping Functions
                                                                            1. Direct Mapping
                                                                              1. Address Mapping Process
                                                                                1. Tag Field
                                                                                  1. Index Field
                                                                                    1. Block Offset Field
                                                                                      1. Advantages and Disadvantages
                                                                                      2. Fully Associative Mapping
                                                                                        1. Tag Comparison Process
                                                                                          1. Content Addressable Memory
                                                                                            1. Advantages and Disadvantages
                                                                                            2. Set-Associative Mapping
                                                                                              1. Two-Way Set Associative
                                                                                                1. Four-Way Set Associative
                                                                                                  1. N-Way Set Associative
                                                                                                    1. Set Selection Process
                                                                                                      1. Advantages and Disadvantages
                                                                                                    2. Cache Replacement Policies
                                                                                                      1. Least Recently Used (LRU)
                                                                                                        1. Implementation Methods
                                                                                                          1. Hardware Requirements
                                                                                                          2. First-In First-Out (FIFO)
                                                                                                            1. Implementation Simplicity
                                                                                                              1. Performance Characteristics
                                                                                                              2. Least Frequently Used (LFU)
                                                                                                                1. Random Replacement
                                                                                                                  1. Hardware Simplicity
                                                                                                                    1. Average Performance
                                                                                                                  2. Cache Write Policies
                                                                                                                    1. Write-Hit Policies
                                                                                                                      1. Write-Through
                                                                                                                        1. Memory Consistency
                                                                                                                          1. Write Buffer Usage
                                                                                                                          2. Write-Back (Copy-Back)
                                                                                                                            1. Dirty Bit Management
                                                                                                                              1. Write-Back Buffer
                                                                                                                            2. Write-Miss Policies
                                                                                                                              1. Write-Allocate
                                                                                                                                1. No-Write-Allocate
                                                                                                                              2. Cache Performance Analysis
                                                                                                                                1. Hit Rate Calculation
                                                                                                                                  1. Miss Rate Calculation
                                                                                                                                    1. Miss Penalty Components
                                                                                                                                      1. Average Memory Access Time (AMAT)
                                                                                                                                        1. Cache Performance Optimization
                                                                                                                                        2. Multi-Level Cache Systems
                                                                                                                                          1. Inclusive Cache Hierarchy
                                                                                                                                            1. Exclusive Cache Hierarchy
                                                                                                                                              1. L1 Cache Characteristics
                                                                                                                                                1. L2 Cache Characteristics
                                                                                                                                                  1. L3 Cache Characteristics
                                                                                                                                                2. Main Memory Systems
                                                                                                                                                  1. Dynamic RAM (DRAM) Technology
                                                                                                                                                    1. DRAM Cell Structure
                                                                                                                                                      1. DRAM Operation Principles
                                                                                                                                                        1. Read Operation
                                                                                                                                                          1. Write Operation
                                                                                                                                                            1. Refresh Operation
                                                                                                                                                            2. DRAM Types
                                                                                                                                                              1. Fast Page Mode (FPM) DRAM
                                                                                                                                                                1. Extended Data Out (EDO) DRAM
                                                                                                                                                                  1. Synchronous DRAM (SDRAM)
                                                                                                                                                                    1. Double Data Rate SDRAM
                                                                                                                                                                      1. DDR SDRAM
                                                                                                                                                                        1. DDR2 SDRAM
                                                                                                                                                                          1. DDR3 SDRAM
                                                                                                                                                                            1. DDR4 SDRAM
                                                                                                                                                                              1. DDR5 SDRAM
                                                                                                                                                                          2. Static RAM (SRAM) Technology
                                                                                                                                                                            1. SRAM Cell Structure
                                                                                                                                                                              1. SRAM vs DRAM Comparison
                                                                                                                                                                                1. SRAM Applications
                                                                                                                                                                                2. Memory Organization Techniques
                                                                                                                                                                                  1. Memory Interleaving
                                                                                                                                                                                    1. High-Order Interleaving
                                                                                                                                                                                      1. Low-Order Interleaving
                                                                                                                                                                                        1. Performance Benefits
                                                                                                                                                                                        2. Memory Banking
                                                                                                                                                                                          1. Error Detection and Correction
                                                                                                                                                                                            1. Parity Checking
                                                                                                                                                                                              1. Error Correcting Codes (ECC)
                                                                                                                                                                                                1. Single Error Correction Double Error Detection (SECDED)
                                                                                                                                                                                            2. Virtual Memory Systems
                                                                                                                                                                                              1. Virtual Memory Concepts
                                                                                                                                                                                                1. Address Space Separation
                                                                                                                                                                                                  1. Memory Protection
                                                                                                                                                                                                    1. Memory Sharing
                                                                                                                                                                                                      1. Program Relocation
                                                                                                                                                                                                      2. Virtual Memory Benefits
                                                                                                                                                                                                        1. Larger Address Space
                                                                                                                                                                                                          1. Memory Protection
                                                                                                                                                                                                            1. Memory Sharing Between Processes
                                                                                                                                                                                                              1. Simplified Memory Management
                                                                                                                                                                                                              2. Paging Systems
                                                                                                                                                                                                                1. Page and Frame Concepts
                                                                                                                                                                                                                  1. Page Size Considerations
                                                                                                                                                                                                                    1. Page Table Structure
                                                                                                                                                                                                                      1. Single-Level Page Tables
                                                                                                                                                                                                                        1. Multi-Level Page Tables
                                                                                                                                                                                                                          1. Two-Level Page Tables
                                                                                                                                                                                                                            1. Three-Level Page Tables
                                                                                                                                                                                                                            2. Inverted Page Tables
                                                                                                                                                                                                                            3. Address Translation Process
                                                                                                                                                                                                                              1. Virtual Address Components
                                                                                                                                                                                                                                1. Physical Address Generation
                                                                                                                                                                                                                                2. Page Replacement Algorithms
                                                                                                                                                                                                                                  1. Optimal Algorithm (OPT)
                                                                                                                                                                                                                                    1. First-In First-Out (FIFO)
                                                                                                                                                                                                                                      1. Least Recently Used (LRU)
                                                                                                                                                                                                                                        1. LRU Approximation Algorithms
                                                                                                                                                                                                                                          1. Clock Algorithm
                                                                                                                                                                                                                                            1. Second Chance Algorithm
                                                                                                                                                                                                                                            2. Working Set Algorithm
                                                                                                                                                                                                                                          2. Segmentation Systems
                                                                                                                                                                                                                                            1. Segment Concepts
                                                                                                                                                                                                                                              1. Segment Table Structure
                                                                                                                                                                                                                                                1. Segmentation vs Paging
                                                                                                                                                                                                                                                  1. Combined Segmentation and Paging
                                                                                                                                                                                                                                                  2. Translation Lookaside Buffer (TLB)
                                                                                                                                                                                                                                                    1. TLB Structure and Operation
                                                                                                                                                                                                                                                      1. TLB Hit and Miss Handling
                                                                                                                                                                                                                                                        1. TLB Replacement Policies
                                                                                                                                                                                                                                                          1. TLB Performance Impact