Skip to content

Von Neumann Architektur

Von-Neumann-Architektur


Von-Neumann-Architektur

  • ist die heute gängige Art wie Rechner aufgebaut sind.
  • nach John von Neumann benannt, obwohl nicht ganz klar ist ob er oder Konrad Zuse mehr zur Entwicklung der modernen Computertechnik beigetragen haben.

Universelle Rechenmaschine

  • Vorher: Spezielle Maschinen für bestimmte Aufgaben
  • Idee: Bauen wir eine Maschine die beliebige Aufgaben (Programme) ausführen/berechnen kann.
  • Unterschied zu anderen Architekturen: Programm (Logik) und Daten sind im selben Speicher und nicht getrennt voneinander.

EVA-Prinzip

  • Funktionsgruppen für
    • Eingabe
    • Verarbeitung
    • Ausgabe
  • Verarbeitung erfolgt streng sequenziell (nacheinander)
  • Das Ergebnis einer Operation kann so eindeutig vorausgesagt werden.

Funktionseinheiten

  • Rechenwerk
  • Steuerwerk
  • Speicher
  • Ein- und Ausgabeeinheit


CPU

  • Dort sind wesentliche Teile der Von-Neumann Architektur in einem zentralen Baustein zusammengefasst.
  • Kontrolliert den Datenfluss zwischen den einzelnen Funktionseinheiten.
  • Die Daten kommen aus dem Arbeitsspeicher oder den angeschlossenen Geräten (Tastatur, Laufwerke, etc.)
  • CPU verarbeitet Daten, danach werden sie an den Arbeitsspeicher oder angeschlossene Geräte gesendet.

Funktionsweise CPU

  • Lädt einen Befehl aus dem Arbeitsspeicher
  • Führt Befehl aus
  • Lädt nächsten Befehl
  • Ziel: Berechnen und verschieben von Daten

Befehlssatz

  • Eine CPU verfügt über eine gewisse (beschränkte) Menge an Operationen die sie ausführen kann. (= Befehlssatz)
    • Addieren
    • Subtrahieren
    • Daten aus Register laden
    • Daten in Register schreiben
  • Über einen Maschinencode (Kombination aus Nuller und Einser) wird festgelegt welcher Befehl ausgeführt wird.

Beispiel Maschinencode

Quelle: https://de.wikipedia.org/wiki/Maschinensprache Maschinencode.png


Nachteile

  • Die Von-Neumann Architektur hat in ihrer ursprünglichen Form ein paar Probleme, die eine effiziente Ausführung verhindern.

Verbesserungen

  • Hierarchisch gegliederte Speicherstruktur (Register und verschiedene Speicherebenen) Speicherhierarchie.png

Verbesserungen (2)

  • Feinere Aufteilung der Funktionseinheiten
  • Erweiterung der Befehlssätze
  • Mehrprozessorsysteme

Funktionseinheiten der CPU

EinheitAufgabe
IDU - Instruction Decode UnitBefehlsdecoder. Befehle die den Prozessor als Programm erreichen werden in Mikrocode übersetzt und an ausführende Einheit übergeben
EXU - Execution UnitAusführungseinheit. Führt Befehle die in Mikrocode vorliegen aus.
COL - Control LogicKontrolleinheit. Sorgt für Kontrolle im Ablauf der Mikrocodes
BIL - Bus Interface LogicBussteuereinheit. Überwacht und steuert den Bus
ALU - Arithmetic Logic UnitArithmetisch-logische Einheit. Addition, Subtraktion, Multiplikation, Division und logische Operationen (UND, ODER, NICHT)
FPU - Floating Point UnitFließkomma-Rechner. Berechnung mit Fließkommazahlen
DC - Data CacheDaten-Cache-Speicher. Schneller Zwischenspeicher
CC - Code CacheBefehls-Cache-Speicher. Schneller Befehlszwischenspeicher