Von-Neumann-Architektur
Was ist die Von-Neumann-Architektur?
Die Von-Neumann-Architektur
Die Von-Neumann-Architektur ist das grundlegende Konzept, nach dem die meisten modernen Computer aufgebaut sind. Sie beschreibt, wie ein Computer Daten verarbeitet und speichert. Stell dir vor, du möchtest einen Kuchen backen. Du hast ein Rezept (Programm) und Zutaten (Daten). Die Von-Neumann-Architektur ist wie deine Küche: Sie hat einen Ort, an dem das Rezept und die Zutaten aufbewahrt werden (Speicher), einen Bereich, in dem alles verarbeitet wird (Rechenwerk), und eine Steuerung, die alle Schritte koordiniert (Steuerwerk). Das Entscheidende: Rezept und Zutaten liegen gemeinsam am selben Ort (auf der Arbeitsfläche), was eine flexible Abarbeitung erlaubt.
Die Komponenten der Von-Neumann-Architektur
Die Von-Neumann-Architektur besteht aus fünf grundlegenden Komponenten: dem Speicher, dem Rechenwerk, dem Steuerwerk, dem Ein-/Ausgabewerk und dem Bus-System. Der Speicher bewahrt Programme und Daten auf. Das Rechenwerk (ALU – Arithmetic Logic Unit) führt mathematische und logische Operationen aus, vergleichbar mit einem Taschenrechner. Das Steuerwerk ordnet die Schritte an und ist damit zentrale:r „Dirigent:in“ des Systems. Das Ein-/Ausgabewerk ermöglicht die Kommunikation mit der Außenwelt, etwa über Tastatur und Bildschirm. Das Bus-System verbindet alle Komponenten wie ein Straßennetz und erlaubt den Datenaustausch zwischen ihnen. Weil Programme und Daten im selben Speicher liegen, muss sich die CPU ständig sowohl Befehle als auch zugehörige Daten über den Bus holen.
Wie funktioniert die Von-Neumann-Architektur?
Der Fetch-Decode-Execute-Zyklus
Die Verarbeitung in der Von-Neumann-Architektur erfolgt in einem stets wiederkehrenden Ablauf. Im ersten Schritt (Fetch) holt die CPU den nächsten Befehl aus dem Speicher. Im zweiten Schritt (Decode) wird dieser Befehl in konkrete Aktionen übersetzt. Im dritten Schritt (Execute) führt die CPU diese Aktionen aus. Nach diesem Durchlauf holt sie den nächsten Befehl. Stell dir vor, du liest jeweils einen Schritt aus einem Kochrezept (Fetch), verstehst ihn (Decode) und führst ihn aus (Execute). Dieser Zyklus läuft ununterbrochen, während das Programm arbeitet.
Der Von-Neumann-Flaschenhals
Ein Kernproblem der Von-Neumann-Architektur ist der sogenannte Von-Neumann-Flaschenhals. Programme und Daten liegen im selben Speicher und müssen über dasselbe Bus-System zur CPU gelangen. Wenn das Programm sehr viele Daten anfordert, entsteht ein Engpass: Die CPU wartet oft auf Nachschub, da das Bus-System nur begrenzte Datenmengen pro Zeiteinheit übertragen kann. Ein Beispiel wäre die Bearbeitung hochauflösender Videos: Obwohl der Prozessor schnell rechnen könnte, wird er ausgebremst, weil das Einlesen der großen Videodaten nur langsam über den Bus gelingt.
Datenfluss in der Praxis
Der Datenfluss in einem Von-Neumann-Computer folgt einem klaren Ablauf. Wenn du in einem Textverarbeitungsprogramm auf „Speichern“ klickst, verwandelt das Eingabewerk (etwa Maus und Tastatur) deine Aktion in digitale Signale. Das Steuerwerk koordiniert nun den Befehl zum Speichern, das Rechenwerk verarbeitet mögliche Zwischenschritte, und über das Bus-System werden die relevanten Daten in den Speicher geschrieben. Auf dem Bildschirm (Ausgabewerk) siehst du schließlich eine Bestätigung. Dieser ganze Vorgang basiert auf dem Fetch-Decode-Execute-Zyklus, bei dem Befehle geholt, interpretiert und ausgeführt werden.
Lernziele
- den Von-Neumann-Flaschenhals erklären, indem die Begrenzung der Datenübertragungsrate zwischen Prozessor und Speicher als zentrales Problem der Von-Neumann-Architektur beschrieben wird.
- die Funktionsweise der Von-Neumann-Architektur erklären, indem der Ablauf der Datenverarbeitung (Fetch-Decode-Execute-Zyklus) und die Rolle der einzelnen Komponenten an konkreten Beispielen erläutert werden (z. B. ein:e Benutzer:in gibt Text über die Tastatur ein, der Text wird im Speicher abgelegt, die CPU verarbeitet den Text und gibt ihn auf dem Bildschirm aus).
- die grundlegenden Komponenten der Von-Neumann-Architektur abzurufen, indem die Begriffe Speicher, Rechenwerk, Steuerwerk, Ein-/Ausgabewerk und Bus-System und deren jeweilige Funktion benannt werden.