Notes on Computer Organization and Architecture Concepts
Overview of Computer Organization and Architecture
- Focus on structure and function of computers for understanding modern systems.
- Emphasis on designing for performance.
Basic Definitions
- Computer Architecture: Attributes visible to a programmer.
- Computer Organization: Operational units and their interconnections.
Characteristics of Computers
- Diversity in type and design - from microprocessors to supercomputers.
- Evolution marked by rapid change in technology.
- Fundamental concepts apply consistently despite the variety.
Computer Hierarchy
- Top-Level Structure: Major components (Processor, Memory, I/O).
- Each major component can be broken down into subcomponents.
Memory Organization and Types
- Hierarchical approach to memory consisting of Registers, Cache, Main Memory, and External Storage.
- Registers: Fastest memory, directly accessible by the CPU.
- Cache: Faster than main memory, holds copies of frequently accessed data to improve access time.
- Main Memory (DRAM): Larger, slower than cache, used for primary storage while the computer is executing.
- External Storage: Disk drives and removable media used for larger, persistent storage.
Cache Memory Principles
- Cache operates on the principle of Locality of Reference: frequently accessed data is kept close to the processor.
- Two types: Direct-Mapped (each block maps to one cache line) and Associative (blocks can map to any cache line).
- Replacement Algorithms: Manage how cache lines are replaced (e.g., LRU, FIFO).
- Access Time: Time needed for data retrieval.
- Cycle Time: Time for a series of accesses.
- Hit Ratio: Frequency of accessing cache vs total accesses.
- A higher hit ratio leads to improved performance.
Error Correction in Memory Systems
- Memory systems can have hard and soft errors.
- Hamming Code: Detects and corrects single-bit errors; implemented in modern DRAM systems to maintain integrity.
Advanced DRAM Organization
- SDRAM: Synchronous DRAM that operates in sync with the system clock.
- DDR SDRAM: Sends data on both the rising and falling edges of the clock cycle, effectively doubling data transfer rates.
- RDRAM: High-speed memory designed for Intel processors for higher data rates over a smaller number of wires.
RAID (Redundant Array of Independent Disks)
- Uses multiple disks to improve performance and reliability.
- Different RAID levels (0-6) provide varying levels of redundancy and data access efficiency.
- RAID 0: Stripes data across disks for performance, no redundancy.
- RAID 1: Mirrors data for redundancy.
- RAID 5: Uses distributed parity for redundancy with multiple drives.
- RAID 6: Two-parity schemes for high availability.
I/O Operations and Disk Structures
- Disk operations involve seeking time, rotational delay, and transfer time.
- Disk Formatting: Organizes data in tracks and sectors; uses formats for compatibility with systems.
- Disk Scheduling: Algorithms to improve efficiency of read/write operations in multi-task environments.
Conclusion
- Understanding the organization and architectural principles is essential for anyone studying computer systems.
- The complex interaction between hardware and memory technologies shapes the performance of modern computing devices.