Computer-Architektur

KAPITEL 01 · IT-GRUNDLAGEN

Computer-Architektur

Wie Computer aufgebaut sind – von der Von-Neumann-Architektur über CPU-Design und Bussysteme bis zu modernen Multi-Core-Prozessoren und parallelen Architekturen.

Von-Neumann & Harvard CPU-Aufbau Befehlszyklus Speicherhierarchie

Inhaltsverzeichnis

Schnellübersicht

Auf dieser Seite lernen Sie die grundlegenden Konzepte der Computer-Architektur:

  • Grundprinzipien: Von-Neumann vs. Harvard-Architektur
  • CPU-Aufbau: Rechenwerk, Steuerwerk, Register, Cache
  • Befehlszyklus: Fetch-Decode-Execute-Store
  • Pipeline: Parallele Befehlsverarbeitung
  • Bussysteme: Daten-, Adress- und Steuerbus
  • Speicherhierarchie: Von Registern bis Festplatte
  • Moderne Architekturen: x86, ARM, RISC-V
  • FAQ: Häufige Fragen zur Computer-Architektur

1. Was ist Computer-Architektur?

Definition

Computer-Architektur beschreibt den strukturellen Aufbau und die Funktionsweise von Computersystemen. Sie definiert, wie die verschiedenen Komponenten (CPU, Speicher, Bussysteme, Ein-/Ausgabe) miteinander interagieren und wie Befehle verarbeitet werden.

Die Computer-Architektur umfasst sowohl die logische Ebene (Befehlssatz, Datenformate) als auch die physische Ebene (Schaltkreise, Gehäuse). Sie ist die Schnittstelle zwischen Hardware und Software – das Betriebssystem und die Anwendungen müssen zur Architektur passen.

Die drei Hauptebenen: Instruction Set Architecture (ISA) – der Befehlssatz, Mikroarchitektur – die interne Implementierung, und System-Design – die Gesamtsystem-Komponenten.

Warum ist Computer-Architektur wichtig?

  • Performance: Verständnis der Architektur hilft bei der Optimierung von Software
  • Kompatibilität: Programme müssen zur CPU-Architektur passen (x86 vs. ARM)
  • Energieeffizienz: Moderne Architekturen optimieren Stromverbrauch
  • Skalierbarkeit: Von Embedded Systems bis Supercomputer
  • Innovation: Neue Architekturen ermöglichen neue Anwendungen (KI, Quantencomputing)

2. Von-Neumann vs. Harvard-Architektur

Es gibt zwei fundamentale Architekturen, auf denen praktisch alle Computer basieren:

Von-Neumann-Architektur

Gemeinsamer Speicher für Daten & Programme

Prinzip: Programme und Daten teilen sich denselben Speicher.

  • Einfacher Aufbau
  • Flexibel (Programme sind Daten)
  • Günstig herzustellen
  • Von-Neumann-Flaschenhals
  • Geteilte Bandbreite

Einsatz: Die meisten PCs, Server, Embedded Systems

Harvard-Architektur

Getrennte Speicher für Daten & Programme

Prinzip: Eigene Speicher für Programme und Daten.

  • Paralleler Zugriff möglich
  • Höhere Geschwindigkeit
  • Bessere Sicherheit
  • Komplexerer Aufbau
  • Teurer

Einsatz: DSPs, Mikrocontroller, CPU-Caches

Merkmal Von-Neumann Harvard
Speicher Gemeinsam für Daten & Programme Getrennt (eigene für Daten & Programme)
Zugriff Sequentiell (Flaschenhals) Parallel möglich
Geschwindigkeit Mittlerer Durchsatz Höherer Durchsatz
Komplexität Einfach Komplexer
Kosten Günstiger Teurer
Flexibilität Hoch (Self-Modifying Code) Eingeschränkt
Typische Anwendung PCs, Server, Laptops Mikrocontroller, DSPs, CPU-Caches

Moderne Hybrid-Architekturen

Viele moderne Prozessoren verwenden eine Hybrid-Architektur: Sie basieren auf dem Von-Neumann-Prinzip (gemeinsamer Hauptspeicher), nutzen aber Harvard-ähnliche Caches (getrennte L1-Caches für Daten und Befehle), um den Flaschenhals zu umgehen.

3. Aufbau der CPU (Central Processing Unit)

Die CPU ist das "Gehirn" des Computers. Sie besteht aus mehreren zentralen Komponenten, die zusammenarbeiten.

Rechenwerk (ALU)

Führt arithmetische (+, -, ×, ÷) und logische Operationen (AND, OR, NOT) durch. Das Herz der Datenverarbeitung.

Operationen:
Addition, Subtraktion
Logische Verknüpfungen
Bit-Shifts

Steuerwerk (Control Unit)

Steuert den Ablauf: liest Befehle, decodiert sie und koordiniert alle Komponenten der CPU.

Aufgaben:
Befehl holen (Fetch)
Befehl decodieren
Signale senden

Register

Schnellste Speicherplätze in der CPU (ca. 1 ns). Speichern Zwischenwerte, Befehle und Adressen.

Typische Register:
PC (Program Counter)
IR (Instruction Register)
ACC (Akkumulator)

Cache (L1, L2, L3)

Schneller Pufferspeicher zwischen CPU und RAM. Reduziert Zugriffszeiten dramatisch.

Größen:
L1: 32-64 KB pro Kern
L2: 256-512 KB pro Kern
L3: 8-128 MB geteilt

Bus-Interface

Verbindung zum Systembus. Ermöglicht Kommunikation mit RAM, I/O und anderen Komponenten.

Bus-Typen:
Adressbus (unidirektional)
Datenbus (bidirektional)
Steuerbus (Kontrollsignale)

Taktgeber

Erzeugt den Clock-Takt (z.B. 4 GHz). Synchronisiert alle Operationen der CPU.

Typische Taktraten:
Desktop: 3-6 GHz
Laptop: 1-5 GHz
Server: 2-4 GHz

Wichtige Register im Detail

  • PC (Program Counter): Zeigt auf den nächsten Befehl im Speicher
  • IR (Instruction Register): Speichert den aktuellen Befehl
  • ACC (Akkumulator): Hauptregister für Rechenoperationen
  • MAR (Memory Address Register): Adresse für Speicherzugriffe
  • MBR (Memory Buffer Register): Datenpuffer für Speicherzugriffe
  • PSW (Program Status Word): Statusflags (Zero, Carry, Overflow)

4. Der Befehlszyklus (Instruction Cycle)

Die CPU arbeitet in einem ständigen Zyklus, um Programme auszuführen. Dieser Zyklus besteht aus mehreren Phasen:

Die 5 Phasen des Befehlszyklus

1
Fetch

Befehl aus Speicher holen

2
Decode

Befehl decodieren

3
Execute

Befehl ausführen

4
Memory

Speicherzugriff

5
Writeback

Ergebnis speichern

Beispiel: ADD R1, R2, R3

Fetch: Befehl aus RAM laden
Decode: Steuerwerk erkennt "ADD" und Register R1, R2, R3
Execute: ALU addiert R2 + R3
Memory: (nicht nötig bei Register-Operation)
Writeback: Ergebnis in R1 speichern

5. Pipeline-Architektur

Eine Pipeline ermöglicht die parallele Verarbeitung mehrerer Befehle – ähnlich einer Fließbandarbeit in der Industrie.

Prinzip der Pipeline

Während ein Befehl in Phase 3 (Execute) ist, kann der nächste bereits in Phase 2 (Decode) sein und der übernächste in Phase 1 (Fetch). So werden alle Stufen optimal ausgelastet.

Takt Fetch Decode Execute Memory Writeback
Takt 1 Befehl 1
Takt 2 Befehl 2 Befehl 1
Takt 3 Befehl 3 Befehl 2 Befehl 1
Takt 4 Befehl 4 Befehl 3 Befehl 2 Befehl 1
Takt 5 Befehl 5 Befehl 4 Befehl 3 Befehl 2 Befehl 1

Vorteil der Pipeline

Ohne Pipeline: 5 Takte pro Befehl → 25 Takte für 5 Befehle
Mit Pipeline: 1 Befehl/Takt (nach Initialisierung) → 9 Takte für 5 Befehle
Speedup: ~2,8× schneller!

6. Bussysteme

Ein Bus ist ein Leitungssystem, das Komponenten miteinander verbindet. Ein Computer hat typischerweise drei Hauptbusse:

Adressbus

Überträgt Speicheradressen von der CPU zum RAM. Bestimmt, wo gelesen/geschrieben wird.

Beispiel:
32 Bit → 4 GB adressierbar
64 Bit → 16 Exabyte adressierbar

Datenbus

Überträgt die eigentlichen Daten zwischen CPU, RAM und I/O. Bidirektional.

Beispiel:
64 Bit = 8 Byte pro Takt
Bei 4 GHz = 32 GB/s

Steuerbus

Überträgt Steuersignale (Read, Write, Interrupt, Clock). Koordiniert alle Aktivitäten.

Signale:
MEMR, MEMW, IOR, IOW
CLK, RESET, IRQ

Wichtige Bus-Standards

  • PCIe (Peripheral Component Interconnect Express): Für Grafikkarten, NVMe-SSDs (bis 64 GB/s)
  • USB (Universal Serial Bus): Für Peripherie (USB 3.2 bis 20 Gbps, USB4 bis 40 Gbps)
  • SATA (Serial ATA): Für Festplatten/SSDs (bis 6 Gbit/s)
  • DMI (Direct Media Interface): Verbindung CPU ↔ Chipsatz
  • Infinity Fabric (AMD): Verbindung zwischen CPU-Komplexen

7. Speicherhierarchie

Computer nutzen verschiedene Speichertypen mit unterschiedlichen Eigenschaften – je näher an der CPU, desto schneller, aber auch kleiner und teurer.

Register

Direkt in der CPU, extrem schnell

< 1 ns
~1 KB
L1-Cache

Pro Kern, aufgeteilt in Daten + Befehle

~1 ns
32-64 KB
L2-Cache

Pro Kern, größer als L1

~3-4 ns
256-512 KB
L3-Cache

Geteilt zwischen allen Kernen

~10-15 ns
8-128 MB
Arbeitsspeicher (RAM)

DDR4/DDR5, flüchtig

~50-80 ns
8-128 GB
SSD / NVMe

Nicht-flüchtig, sehr schnell

~0,1 ms
250 GB - 8 TB
HDD / Cloud

Mechanisch oder remote, große Kapazität

~5-10 ms
500 GB - 20 TB+

Das Prinzip der Lokalität

Zeitliche Lokalität: Auf dieselben Daten wird bald wieder zugegriffen (z.B. Schleifenvariablen).
Örtliche Lokalität: Auf benachbarte Daten wird bald zugegriffen (z.B. Arrays).
Der Cache nutzt diese Prinzipien, um die häufigsten Daten bereitzuhalten.

8. Moderne Prozessorarchitekturen

Heute dominieren drei Architekturen den Markt – jede mit spezifischen Stärken:

x86 / x86-64

CISC · Intel & AMD
  • Komplexe Befehle (CISC)
  • Variable Befehlslänge
  • Viele Register (16+)
  • Hohe Einzelleistung
  • Abwärtskompatibel seit 1978
Einsatzgebiete: Desktop-PCs, Laptops, Server, Workstations, Gaming

ARM / ARM64

RISC · ARM Holdings
  • Einfache Befehle (RISC)
  • Feste Befehlslänge
  • Sehr energieeffizient
  • Lizenzierbar (SoC-Design)
  • Apple Silicon (M1/M2/M3)
Einsatzgebiete: Smartphones, Tablets, Embedded, Apple Mac, IoT

RISC-V

RISC · Open Source ISA
  • Komplett offene ISA
  • Keine Lizenzgebühren
  • Modular erweiterbar
  • Wachsendes Ökosystem
  • Ideal für Forschung
Einsatzgebiete: Mikrocontroller, Forschung, Custom Silicon, Embedded

9. CISC vs. RISC – Befehlssatz-Architekturen

Die beiden grundlegenden Ansätze für Prozessor-Design:

CISC

Complex Instruction Set Computer

  • Viele komplexe Befehle – ein Befehl kann mehrere Operationen ausführen
  • Variable Befehlslänge – 1 bis 15 Bytes
  • Direkter Speicherzugriff in Befehlen möglich
  • Weniger Code für komplexe Aufgaben
  • Hardware-decodiert – komplexerer Decoder
  • Beispiel: Intel x86, AMD64

RISC

Reduced Instruction Set Computer

  • Wenige einfache Befehle – jeder Befehl macht eine Sache
  • Feste Befehlslänge – meist 32 Bit
  • Load/Store-Architektur – nur Load/Store greifen auf Speicher zu
  • Mehr Code für komplexe Aufgaben
  • Einfacher Decoder – schneller pro Takt
  • Beispiel: ARM, RISC-V, MIPS

Moderne Hybrid-Ansätze

Viele moderne Prozessoren verwenden Hybrid-Ansätze: Intel x86 verwendet intern RISC-ähnliche Mikro-Operationen, die aus CISC-Befehlen übersetzt werden. ARM hat einige komplexe Befehle hinzugefügt. Die Grenzen verschwimmen zunehmend.

10. FAQ – Häufige Fragen & Antworten

Häufige Fragen zur Computer-Architektur

Was ist der Von-Neumann-Flaschenhals?

Der Von-Neumann-Flaschenhals entsteht, weil Daten und Programme denselben Speicher und denselben Bus teilen. Die CPU kann nicht gleichzeitig einen Befehl holen und Daten lesen/schreiben. Dies limitiert den Durchsatz, besonders bei datenintensiven Anwendungen.

Lösung: Moderne CPUs verwenden getrennte Caches (Harvard-ähnlich) für Daten und Befehle, um den Flaschenhals zu umgehen.

Warum ist Cache so wichtig?

Cache ist ein extrem schneller Pufferspeicher zwischen CPU und RAM. Er reduziert die Zugriffszeit dramatisch:

  • Register: < 1 ns
  • L1-Cache: ~1 ns
  • L3-Cache: ~10-15 ns
  • RAM: ~50-80 ns

Ohne Cache müsste die CPU für jeden Speicherzugriff 50-80 ns warten – das würde die Performance um den Faktor 50-80 reduzieren!

Was ist der Unterschied zwischen x86 und ARM?

x86 (Intel/AMD):

  • CISC-Architektur (komplexe Befehle)
  • Hohe Einzelleistung
  • Höherer Stromverbrauch
  • Dominant in PCs und Servern

ARM:

  • RISC-Architektur (einfache Befehle)
  • Sehr energieeffizient
  • Lizenzierbar (SoC-Design)
  • Dominant in Smartphones und Tablets

Apple Silicon (M1/M2/M3) basiert auf ARM und zeigt, dass ARM auch in Laptops und Desktops konkurrenzfähig ist.

Was ist Hyper-Threading / SMT?

Hyper-Threading (Intel) oder SMT (Simultaneous Multithreading, AMD) ermöglicht es einem physischen CPU-Kern, zwei Threads gleichzeitig auszuführen. Der Kern teilt seine Ressourcen (ALU, Cache) zwischen zwei Threads auf.

Vorteil: Bessere Auslastung der CPU-Ressourcen, besonders bei Aufgaben mit vielen Wartezeiten (z.B. I/O-Operationen).

Nachteil: Nicht alle Workloads profitieren – manche Aufgaben laufen besser auf physischen Kernen.

Was ist Out-of-Order Execution?

Out-of-Order Execution (OOO) ist eine Technik, bei der die CPU Befehle in einer anderen Reihenfolge ausführt als im Programm angegeben – solange das Ergebnis korrekt bleibt.

Ziel: Ressourcen besser auslasten. Wenn ein Befehl auf Daten wartet, kann die CPU bereits andere Befehle ausführen, die nicht von diesen Daten abhängen.

Beispiel: Wenn Befehl A auf eine Speicheroperation wartet, kann Befehl B (der unabhängig ist) bereits ausgeführt werden.

Was sind Multi-Core-Prozessoren?

Multi-Core-Prozessoren haben mehrere physische Kerne auf einem Chip. Jeder Kern kann unabhängig Befehle ausführen.

Vorteile:

  • Parallele Ausführung mehrerer Programme
  • Bessere Performance bei multithreaded Anwendungen
  • Energieeffizienter als ein einzelner Kern mit hoher Taktrate

Typische Konfigurationen: 4 Kerne (Mainstream), 8-16 Kerne (High-End), 32-64 Kerne (Server), 128+ Kerne (Supercomputer).

Was ist der Unterschied zwischen physischen und logischen Kernen?

Physische Kerne: Echte Hardware-Kerne auf dem Chip. Jeder Kern hat eigene ALU, Register und Cache.

Logische Kerne (Threads): Virtuelle Kerne durch Hyper-Threading/SMT. Ein physischer Kern kann 2 logische Kerne bereitstellen.

Beispiel: Ein 8-Core/16-Thread-Prozessor hat 8 physische Kerne, die jeweils 2 Threads ausführen können. Das Betriebssystem sieht 16 "Prozessoren".

Was ist RISC-V und warum ist es wichtig?

RISC-V ist eine offene, lizenzfreie Befehlssatz-Architektur (ISA). Jeder kann RISC-V-Prozessoren entwickeln, ohne Lizenzgebühren zu zahlen.

Vorteile:

  • Keine Lizenzkosten (im Gegensatz zu ARM)
  • Modular erweiterbar
  • Transparent und überprüfbar
  • Ideal für Forschung und Custom Silicon

Einsatz: Mikrocontroller, Embedded Systems, Forschung, zunehmend auch in Consumer-Produkten.

Was ist der Unterschied zwischen Harvard- und Von-Neumann-Architektur?

Von-Neumann: Ein gemeinsamer Speicher für Daten und Programme. Einfacher, aber langsamer (Flaschenhals).

Harvard: Getrennte Speicher für Daten und Programme. Schneller (paralleler Zugriff), aber komplexer und teurer.

Moderne CPUs: Verwenden eine Hybrid-Architektur – Von-Neumann im Hauptspeicher, Harvard in den Caches (getrennte L1-Caches für Daten und Befehle).

Was bedeutet "Taktfrequenz" und warum ist sie wichtig?

Taktfrequenz (in GHz) gibt an, wie viele Taktzyklen die CPU pro Sekunde ausführt. Ein 4 GHz-Prozessor hat 4 Milliarden Taktzyklen pro Sekunde.

Wichtig: Höhere Taktfrequenz bedeutet nicht automatisch bessere Performance! Die IPC (Instructions Per Clock) ist mindestens genauso wichtig. Ein moderner 3 GHz-Prozessor kann schneller sein als ein alter 4 GHz-Prozessor, wenn die IPC höher ist.

Beispiel: Intel Core i9-14900K (5.6 GHz Boost) vs. Apple M3 Max (4.05 GHz) – der Apple-Chip ist oft schneller trotz niedrigerer Taktfrequenz, weil die IPC deutlich höher ist.

Zusammenfassung

Die wichtigsten Punkte

  • Von-Neumann-Architektur: Gemeinsamer Speicher für Daten & Programme – Standard in PCs
  • Harvard-Architektur: Getrennte Speicher – schneller, in Caches und Mikrocontrollern
  • CPU-Komponenten: ALU, Steuerwerk, Register, Cache, Bus-Interface, Taktgeber
  • Befehlszyklus: Fetch → Decode → Execute → Memory → Writeback
  • Pipeline: Parallele Verarbeitung mehrerer Befehle → höherer Durchsatz
  • Bussysteme: Adressbus, Datenbus, Steuerbus
  • Speicherhierarchie: Register → Cache → RAM → SSD → HDD
  • Moderne Architekturen: x86 (CISC), ARM (RISC), RISC-V (Open Source)
  • CISC vs. RISC: Komplexe vs. einfache Befehle – moderne CPUs nutzen Hybrid-Ansätze
  • Multi-Core & SMT: Mehrere Kerne und Threads für parallele Verarbeitung

Weiterführende Themen

Vertiefen Sie Ihr Wissen in den folgenden Bereichen:

Weiterführende Themen

Zahlensysteme

Binär, Hexadezimal und Oktal – die Grundlagen der Datenverarbeitung.

Zu Zahlensystemen
Boolesche Algebra

Logikgatter, Schaltalgebra – die Mathematik der Computer.

Zur Booleschen Algebra
Prozessoren

CPU-Modelle, Spezifikationen und Benchmarks im Detail.

Zu Prozessoren
Speichereinheiten

RAM, SSD, NVMe – Speichertechnologien und deren Einsatzgebiete.

Zu Speichereinheiten