Rechnerarchitektur
# Rechnerarchitektur

Rechnerarchitektur ist ein Teilgebiet der Technischen Informatik, das sich mit dem Design von Rechnern (Computern) und speziell mit deren Organisation sowie deren externem und internem Aufbau (was ebenfalls mit 'Rechnerarchitektur' bezeichnet wird) beschäftigt.

## Definition

Gene Amdahl, Gerrit A. Blaauw und Frederick P. Brooks führten 1964 den Begriff Architecture ein, um die gemeinsamen Eigenschaften aller Modelle des IBM System/360 von ihren in Technik, Kapazität und Arbeitsgeschwindigkeit sehr verschiedenen Ausführungen zu unterscheiden. Diese Gemeinsamkeit sollte den Austausch von Rechnerteilen und Programmen bei verändertem Bedarf der Kunden erleichtern.

Es handelte sich also um eine Abstraktion ähnlich dem mathematischen Begriff einer algebraischen Struktur. In ihr wird zum Beispiel die Arithmetik durch die Regeln für Reihung und Vertauschung von Operanden oder die Auflösung von Klammern so abstrahiert, dass sie für verschiedene Grundmengen und Verknüpfungen, wie zum Beispiel die natürlichen Zahlen mit der Addition oder Mengen mit der Vereinigung gilt.

Das Wort Abstraktion vermieden die Autoren, indem sie in einer Fußnote eine Definition durch Aufzählung versuchten: „The term architecture is used here to describe the attributes of a system as seen by the programmer, i.e. the conceptual structure and functional behaviour as distinct from the organisation of the data flow and controls, the logical design and the physical implementation.“

Spätere Autoren wie Peter Stahlknecht und Ulrich Hasenkamp haben diese Aufzählung detailliert, ergänzt und verändert, darüber aber den Aspekt der Gemeinsamkeit und Abstraktion aus den Augen verloren. So büßte der Begriff Rechnerarchitektur seinen wesentlichen Charakter ein und wurde zum anspruchsvollen Schlagwort für beliebige Entwürfe.

## Anwendung

Wie ein Architekt eines Gebäudes die Prinzipien und Ziele eines Bauprojektes als die Basis für die Pläne des Bauzeichners festlegt, genauso legt ein Computer-Architekt die Computer-Architektur als Basis für die eigentlichen Designspezifikationen fest.

Der Ausdruck wird für verschiedene Bedeutungen verwendet:

* Der Befehlssatzarchitektur: Das Design der Prozessorarchitektur eines Computer und seines Befehlssatzes und Techniken wie SIMD- und MIMD-Parallelität.
* Allgemeinere und umfassendere Hardware-Architektur wie Cluster Computing und NUMA-Architekturen.
* Eine weniger formale Bedeutung bezieht sich auf die Beschreibung der Voraussetzungen (besonders Geschwindigkeits- und Verbindungsvoraussetzungen) oder Design-Implementationen der verschiedenen Komponenten eines Computers (wie zum Beispiel Arbeitsspeicher, Hauptplatine, elektronische Peripherie oder ganz allgemein des Hauptprozessors).
