Skip to content
โ† Back to Overview

Computer Architecture

Architecture is the soul of the machine. We're not just learning parts; we're learning how to build a brain. From Von Neumann to multicore processors, let's engineer the future.

1. The Von Neumann Legacy ๐Ÿ›๏ธ

Virtually every computer today is built on the Von Neumann Architecture (1945). Its defining characteristic? The Stored-Program Concept. Both instructions (code) and data reside in the SAME memory space, addressable by location.

The Bottleneck

Because code and data share a bus, the CPU is much faster than the memory. The CPU spends a lot of time waiting for data. This is the Von Neumann Bottleneck.

2. Instruction Set Architecture (ISA) ๐Ÿ“œ

The interface between hardware and software. The "vocabulary" of the processor.

RISC (Reduced Instruction Set Computer)

  • Philosophy: Keep hardware simple, let software (compiler) do the work.
  • Instructions: Simple, fixed length, 1 cycle execution.
  • Registers: Heavy use of registers (Load/Store architecture).
  • Examples: ARM (your phone), MIPS, RISC-V.

CISC (Complex Instruction Set Computer)

  • Philosophy: Hardware should support complex operations to reduce code size.
  • Instructions: Complex, variable length, multi-cycle.
  • Memory: Instructions can operate directly on memory.
  • Examples: x86 (Intel/AMD desktops).

3. Pipelining: The Assembly Line ๐Ÿš€

Why execute one instruction at a time when you can overlap them? Pipelining divides execution into stages (Fetch, Decode, Execute, Memory, Writeback).

Performance Formula:

Speedup = (Time without pipeline) / (Time with pipeline)

Ideal CPI (Cycles Per Instruction) = 1. But Hazards ruin the party:

  • Structural: Hardware resource conflict.
  • Data: Instruction depends on result of previous one (RAW).
  • Control: Branching makes us fetch wrong instructions.

4. Memory Hierarchy: Need for Speed ๐ŸŽ๏ธ

We want memory to be fast, large, and cheap. We can't have all three. So we build a hierarchy.

  • Registers: Top speed, tiny capacity. Inside CPU.
  • L1 Cache: SRAM. Integrated. Split (Instruction/Data).
  • L2/L3: SRAM. Shared. Bridges CPU and RAM.
  • Main RAM: DRAM. Large capacity. Volatile.
  • Disk/SSD: Storage. Massive. Non-volatile. Slow.