Computer Architecture: Von Neumann Model and Components
Von Neumann Computer Architecture
Overview
This architecture, conceptualized by John von Neumann, remains relevant today. It describes a computer system with interconnected functional units.
Functional Units
- Input Unit: Receives data and instructions, converting them into binary signals. Multiple input units can exist.
- Output Unit: Presents results to the user, transforming binary signals into understandable information.
- Internal Memory (Main/Central Memory): Stores data and instructions during program execution. Directly linked to faster units like the ALU and Control Unit. Programs must be loaded into main memory to run. Constructed from integrated circuits (chips).
- External Memory (Secondary/Auxiliary Memory): Provides massive, persistent storage. Slower but much larger than internal memory. Data persists until explicitly deleted by the user.
- Processing Unit: Contains the Arithmetic Logic Unit (ALU) for arithmetic and logical operations, data buses, and registers (small memory units for storing data, instructions, or memory addresses).
Memory Types
ROM (Read-Only Memory)
- Permanent (non-volatile) storage; retains information even when powered off.
- Contains essential startup instructions.
- Content is factory-set and typically unchangeable.
- Variants include PROM (programmable) and EEPROM (electrically erasable programmable).
RAM (Random Access Memory)
- Volatile storage; content is lost when powered off.
- Content can be modified.
- Stores active data and programs.
Word Length and Memory Addressing
Bytes (8 bits) are often too small for many operations. ALUs typically operate on larger word lengths (e.g., 16, 32, 64, or 128 bits). Word length influences processing speed. A longer word length allows for greater precision and faster execution.
Cache Memory
Cache memory is smaller but significantly faster than main memory. It resides between the CPU and main memory to accelerate data access.
Processor
The processor executes instructions. It comprises the control unit, ALU, registers, and accumulator.
Instruction execution involves fetching instructions from memory, decoding them, retrieving operands, performing the operation in the ALU, and storing the result in the accumulator. The status register tracks the state of the processor, including flags like zero result, carry, and overflow.
Peripherals
Peripherals facilitate communication between the computer and the external world or provide storage. They are categorized into:
- Input units (e.g., keyboard, mouse)
- Output units (e.g., monitor, printer)
- Secondary storage units (e.g., hard drives, flash memory)
Peripherals connect to the computer via parallel or serial connectors. Parallel connectors transmit multiple bits simultaneously, while serial connectors transmit one bit at a time.