Computer Architecture:
Deals with attributes of a system visible to the programmer.
Has a direct impact on the logical execution of a program.
Architectural attributes include the instruction set, number of bits used for data types, I/O mechanisms, and memory addressing techniques.
Computer Organization:
Concerns the operational units and their interconnections that realize the architectural specifications.
Involves hardware details transparent to the programmer, control signals, interfaces between the computer and peripherals, and memory technology used.
CPU (Central Processing Unit): Controls the operation of the computer and performs data processing functions.
Main Memory: Stores data.
I/O (Input/Output): Moves data between the computer and its external environment.
System Interconnection: Mechanism for communication among the CPU, main memory, and I/O.
Examples components include:
Power supply
System fan
Motherboard
Floppy drive
Optical drive
Hard drive
Heat sink
CPU Socket: For installing the CPU.
Clock Generator: Provides timing signals for the system.
Memory Slots: For installing RAM.
Expansion Slots: For adding expansion cards (e.g., graphics card).
Graphics Card: Handles video output.
RAM (Random Access Memory): Volatile memory used for storing data and instructions that the CPU is actively using.
PS/2 Ports: For mouse and keyboard.
Display Port: For video output.
HDMI Port: For video and audio output.
VGA Port: For video output.
DVI Port: For video output.
USB Port: For connecting various peripherals.
Ethernet Port: For network connection.
Audio In/Out: For audio input and output (microphone, speakers).
Data Bus: Carries data between components.
Address Bus: Specifies the memory location or I/O device being accessed.
Control Bus: Carries control signals (e.g., read, write) to coordinate activities.
Arithmetic and Logic Unit (ALU): Performs data processing functions.
Control Unit: Controls the operation of the CPU and the computer.
Registers: Provide internal storage within the CPU.
CPU Interconnection: Mechanism for communication among the control unit, ALU, and registers.
CPU (Central Processing Unit):
Fetches and executes instructions.
Consists of an ALU, a control unit, and registers.
Referred to as a processor in a single-CPU system.
Core:
An individual processing unit on a processor chip.
May be equivalent in functionality to a CPU on a single-CPU system.
Specialized processing units are also referred to as cores.
Processor:
A physical piece of silicon containing one or more cores.
Interprets and executes instructions.
Referred to as a multicore processor if it contains multiple cores.
Multiple layers of memory between the processor and main memory.
Smaller and faster than main memory.
Used to speed up memory access by storing data from main memory likely to be used in the near future.
Multiple levels of cache (L1, L2, L3, etc.) can improve performance, with L1 being closest to the core.
Cache Hierarchy: L1 I-cache (instruction cache), L1 D-cache (data cache), L2 instruction cache, L2 data cache, L3 cache (shared by multiple cores).