Rechnerarchitektur

spezifiziert die Beziehung zwischen unterschiedlichen Bestandteilen eines Computers From Wikipedia, the free encyclopedia

Rechnerarchitektur ist ein Teilgebiet der Technischen Informatik und Mikroelektronik, das sich mit dem Design von modernen Rechenmaschinen (Computer oder Digitalrechner) und speziell mit deren Organisation sowie deren externem und internem Aufbau beschäftigt.[1][2] Die Elemente einer Rechnerarchitektur sind seit dem Aufkommen der Digitalelektronik die Gatter, welche aus Transistoren aufgebaut sind.

Die stark vereinfachte Systemarchitektur einer Central Processing Unit (CPU) besteht aus verschiedenen Bausteinen und Verbindungen. Daten werden als Eingaben zur zentralen Recheneinheit (CPU) geleitet, dort verarbeitet und anschließend als Ausgaben zurückgegeben. Dabei spielen Register, Instruktionen (Kontrollfluss, rot) und der Datenfluss (schwarz) eine entscheidende Rolle.

Eine Rechnerarchitektur kann entweder durch konstruktive Methoden, die sich auf das physische Design und die Implementierung der Hardware konzentrieren, oder durch Hardwarebeschreibungssprachen, die neben dem eigentlichen Design, zusätzlich eine abstrakte Modellierung und Simulation von digitalen Schaltungen ermöglichen, beschrieben werden. Man spricht auch von einer rechnerbasierten Entwicklung.

Zu den bekanntesten Architekturen für Computer bzw. deren zentralen Recheneinheiten, oder Prozessoren, zählen die Harvard-Architektur und die Von-Neumann-Architektur sowie MIPS, CISC, RISC und POWER.

In diesem Kontext wird auch von einer Mikroarchitektur oder Prozessorarchitektur gesprochen. Außerdem wird von einer Rechnertechnik als Fachgebiet gesprochen. Die beiden Begriffe überschneiden sich teilweise.

Im Sinne eines Systems Engineering wird grundlegend in eine funktionale, logische und physikalische Architektur unterschieden. Des Weiteren wird bei Computerarchitekturen der Hardware/Software-Schnittstelle (HSI) eine besondere Bedeutung eingeräumt.[3] Dabei kommen auch Werkzeuge wie SystemC oder SystemVerilog zum Einsatz.[4][5]

Geschichte

Rechnerarchitekturen sind Computerarchitekturen für elektronische bzw. integrierte Schaltkreise (ICs), die seit den 1940er Jahren mit den ersten röhrenbasierten Rechenmaschinen (vgl. Großrechner wie das „Manchester Baby“) entwickelt wurden. Als Teil des Manhattan-Projekts wurde damals der ENIAC erfunden und genutzt. Nicholas Metropolis und Stan Frankel berechneten (numerisch) mit dem ENIAC beispielsweise die Kernspaltung nach dem Tröpfchenmodell von Niels Bohr und John Wheeler.[6] Aus ENIAC folgt wenig später der UNIVAC und der MANIAC. Letzterer basierte auf der Von-Neumann-Architektur. Dick Feynman et al. berechneten mit diesen ersten Maschinen die Zustandsgleichung für Materie bei extrem hohen Drücken nach dem Thomas-Fermi-Modell.[7] ENIAC und UNIVAC stammen von den Erfindern John Mauchly und John Presper Eckert. Die Association for Computing Machinery (ACM) verleiht heute noch den Eckert-Mauchly Award für herausragende Erfindungen im Bereich der Rechnerarchitekturen und Computersysteme.

Ab den 1950er Jahren wurden die ersten Architekturkonzepte auf elektronischen (vgl. IBM 701) und später transistorbasierte Geräte übertragen (vgl. IBM 7070). Genau genommen gelang es Richard Grimsdale, eine Rechnerarchitektur auf Basis von Transistoren aufzubauen. Erst ab den 1950er Jahren kamen neue Transistoren auf den Markt, die weitere Architekturen ermöglichten, speziell der ab den 1960er Jahren bekannte FET und MOSFET. Damit begann das Computerzeitalter. Die Geburtsstätte des Silicon Valley, welches eine Vielzahl von US-amerikanischen Unternehmen aus der Halbleiterbranche hervor brachte und das digitale Zeitalter begründete, war die 391 San Antonio Road in Mountain View.

Seit den 2000er Jahren entwickeln sich Rechnerarchitekturen bzw. Mikroarchitekturen zu hochkomplexen Systemarchitekturen weiter. Es gibt eine Vielzahl optimierter Architekturen für die unterschiedlichsten Anforderungen. Seit den 2010er Jahren sind Mehrkernarchitekturen bei den meisten zentralen Rechnerarchitekturen oder Mikroprozessoren üblich. Ebenfalls hat sich die Rechnerarchitektur der Grafikprozessoren und anderer ICs weiterentwickelt. All diese Entwicklungen werden von den Entwicklungen in der Mikroelektronik, Nanoelektronik und Halbleitertechnik innerhalb der Halbleiterindustrie dominiert.[8][9][10]

Begriff und Definition

Gene Amdahl, Gerrit A. Blaauw und Frederick P. Brooks führten 1964 den Begriff Architecture ein,[11][12] 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[13] 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.

Verwendung

Wie ein Architekt (Ingenieur) 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 Architektur wird im Rahmen der Halbleiter-, Mikro- und Computerelektronik für verschiedene Bedeutungen verwendet:

Siehe auch

Literatur

Einzelnachweise

Related Articles

Wikiwand AI