Computer-Architektur
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.
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
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
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.
Addition, Subtraktion
Logische Verknüpfungen
Bit-Shifts
Steuerwerk (Control Unit)
Steuert den Ablauf: liest Befehle, decodiert sie und koordiniert alle Komponenten der CPU.
Befehl holen (Fetch)
Befehl decodieren
Signale senden
Register
Schnellste Speicherplätze in der CPU (ca. 1 ns). Speichern Zwischenwerte, Befehle und Adressen.
PC (Program Counter)
IR (Instruction Register)
ACC (Akkumulator)
Cache (L1, L2, L3)
Schneller Pufferspeicher zwischen CPU und RAM. Reduziert Zugriffszeiten dramatisch.
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.
Adressbus (unidirektional)
Datenbus (bidirektional)
Steuerbus (Kontrollsignale)
Taktgeber
Erzeugt den Clock-Takt (z.B. 4 GHz). Synchronisiert alle Operationen der CPU.
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
Fetch
Befehl aus Speicher holen
Decode
Befehl decodieren
Execute
Befehl ausführen
Memory
Speicherzugriff
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.
32 Bit → 4 GB adressierbar
64 Bit → 16 Exabyte adressierbar
Datenbus
Überträgt die eigentlichen Daten zwischen CPU, RAM und I/O. Bidirektional.
64 Bit = 8 Byte pro Takt
Bei 4 GHz = 32 GB/s
Steuerbus
Überträgt Steuersignale (Read, Write, Interrupt, Clock). Koordiniert alle Aktivitäten.
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
L1-Cache
Pro Kern, aufgeteilt in Daten + Befehle
L2-Cache
Pro Kern, größer als L1
L3-Cache
Geteilt zwischen allen Kernen
Arbeitsspeicher (RAM)
DDR4/DDR5, flüchtig
SSD / NVMe
Nicht-flüchtig, sehr schnell
HDD / Cloud
Mechanisch oder remote, große Kapazität
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
- Komplexe Befehle (CISC)
- Variable Befehlslänge
- Viele Register (16+)
- Hohe Einzelleistung
- Abwärtskompatibel seit 1978
ARM / ARM64
- Einfache Befehle (RISC)
- Feste Befehlslänge
- Sehr energieeffizient
- Lizenzierbar (SoC-Design)
- Apple Silicon (M1/M2/M3)
RISC-V
- Komplett offene ISA
- Keine Lizenzgebühren
- Modular erweiterbar
- Wachsendes Ökosystem
- Ideal für Forschung
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
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.
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!
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.
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.
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.
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).
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".
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.
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).
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:
- Zahlensysteme – Binär, Hexadezimal, Oktal
- Boolesche Algebra – Logikgatter und Schaltalgebra
- Prozessoren – CPU-Modelle und Spezifikationen
- Speichereinheiten – RAM, SSD, HDD im Detail
Weiterführende Themen
Binär, Hexadezimal und Oktal – die Grundlagen der Datenverarbeitung.
Zu ZahlensystemenLogikgatter, Schaltalgebra – die Mathematik der Computer.
Zur Booleschen AlgebraCPU-Modelle, Spezifikationen und Benchmarks im Detail.
Zu ProzessorenRAM, SSD, NVMe – Speichertechnologien und deren Einsatzgebiete.
Zu Speichereinheiten