Rund um die CPU viele dedizierte Prozessoren

12.11.1976

Mit Prof. Dr. Joachim H. Niedereichholz, Universität Frankfurt, sprach CW-Chefredakteur Dr. Gerhard Maurer

- Immer wieder liest man, daß künftig Software-Funktionen von Hardware-Komponenten erfüllt werden sollen. Ist das ein Langfrist-Konzept oder hat es schon für die heutige Praxis Bedeutung?

Diese Software-/Hardware-Integration existiert bereits. Sie ist bei kommerziell vertriebenen Systemen, wie etwa Burroughs B 1700 oder B 6700, oder Univac 90-Anlagen oder auch Honeywell-Systemen bereits realisiert.

- Sie sprechen offensichtlich Firmware an - also Realisation von Software-Funktionen per Mikroprogramm - letztendlich eben doch noch per Software.

Nicht allein das. In der Burroughs B 6700 werden zum Beispiel einige Systemsoftware-Funktionen, die bei anderen Rechnern üblicherweise per Software gelöst werden, echt per fest verdrahteter Hardware implementiert, eben nicht per Mikroprogramm. Interessant ist in diesem Zusammenhang, daß es an amerikanischen Hochschulen bereits Prototypen von Maschinen gibt, deren komplette Systemsoftware und auch Übersetzersoftware - total per Hardware realisiert wurde. Es wird nicht lange dauern, bis die Erkenntnisse, die dort gewonnen werden, auf den Markt kommen.

- Drei Implementierungs-Alternativen für die, Befehlsausführung stehen also zur Verfügung: Erstens Software, zweitens Mikroprogramme oder Firmware und drittens reine Hardware-Lösungen. Wo im einzelnen liegen die Unterschiede?

Wie Software heutzutage funktioniert, ist bekannt. Die Mikroprogramm- oder Firmware-Lösung ist ebenfalls noch eine Software-Lösung - aber mit dem Unterschied, daß Befehle in eine Sequenz elementarer Mikroprogramm-Befehle aufgelöst werden, die in einem Kontrollspeicher stehen. Die Kontrollspeicher arbeiten erheblich schneller als übliche große Hauptspeicher, so daß die Befehlsausführung schneller ist.

- Wie nun funktioniert die reine Hardware-Umsetzung von Software-

Befehlen?

Ein Additionsbefehl etwa, der im Operations-Decodierer steht, stößt direkt über Leitungen das Rechenwerk an. Ein solcher Baustein ist streng auf eine einzige Funktion fixiert und nicht programmierbar. Der Vorteil ist hier - insbesondere für Großrechner - die Schnelligkeit.

- Warum hat man, nicht schon früher Software per fest verdrahteten Hardware-Elementen realisiert?

Bei den üblichen Maschinen-Codes ist das ja die Regel. Komplexe Statements aus Anwenderproblemen - etwa ein Fetch - sind jedoch heutzutage nur recht teuer per Hardware zu realisieren, denn die entsprechenden Logikelemente haben dann ja nur eine einzige fixierte Verwendung und man braucht entsprechend viele davon.

- Nun werden Halbleiter-Elemente ja immer billiger - und die Frage stellt sich, ob es sich bereits lohnt, der Vorteil erheblich höherer Schnelligkeit durch den Einsatz von mehr Hardware in den Steuer- und Rechenwerken zu erkaufen.

Dahin geht eindeutig der Trend. Firmware ist eventuell nur eine Zwischenlösung.

- Was wird der nächste Schritt sein?

Die konsequente Weiterführung dieses Konzeptes bedeutet, daß wir mit hardwaremäßig realisierten Sort-Prozessoren, Query-Language-Prozessoren, speziellen Sprach-Prozessoren und auch Betriebssystem-Komponenten rechnen müssen - die zum Teil ja auch schon existieren.

- Das wären also dedizierte Maschinen für jeweils nur eine bestimmte Aufgabe - die Sie zudem nicht softwaremäßig, sondern durch fest verdrahtete Hardware lösen.

Das muß nicht gleich auf einmal so kommen. Richtig ist wohl, daß wir künftig rund um den Hauptrechner eine Vielzahl dedizierter Prozessoren antreffen werden, die ihre Aufgaben teils per Hardware-Implementierung, teils mittels Firmware, teils mittels konventioneller Softwarelösung erledigen.

- Existent sind ja schon I/O-Prozessoren und Kommunikations-Vorschaltrechner.

Ja, aber dies ist nur der Anfang. Wir werden mit unterstützenden Array-Prozessoren, Assoziativen Such-Prozessoren, Data Base-Back End-Maschinen, speziellen Wartungsprozessoren, Software-Entwicklungs-Satelliten und anderen Entwicklungen zu rechnen haben. Dann wird man je nach Aufgabenbereich und Aufgabenstellung solche Konfigurationen maßgeschneidert zusammenstellen - durchaus nicht nur mit Komponenten eines Herstellers.

- Gibt es dieses Konzept des Distributed Processing nicht bereits seit zehn Jahren bei den großen CDC-Anlagen und heute eigentlich bei jedem namhaften Hersteller?

Das stimmt zwar, aber die peripheren Prozessoren bei CDC-Rechnern haben alle die gleiche Struktur und sind konventionell softwaremäßig programmiert. Das kommende Konzept des Distributed Processing sieht vor, verschiedene, hochspezialisierte, eben dedizierte, Vor- oder Nachschaltrechner um eine oder mehrere Zentraleinheiten zu gruppieren.

- Welche spezialisierten Funktionen erfordern welche dedizierte Hardware?

Zunächst also Eingabe-/Ausgabe-Steuerung und Kommunikations-Steuerung, die bekannt sind. Wo sie benötigt werden, wird man Array-Prozessoren ankoppeln, die bekanntlich sehr effizient Vektor- und Matrizenoperationen erledigen können - gerade in einem solchen Konzept wird es für diese Feldrechner einen ganz großen Durchbruch geben. Das gilt wohl auch für Assoziativ-Prozessoren, die mit einem assoziativen Speicher arbeiten. Dieser ist inhaltsadressierbar und nicht nur positionsadressierbar wie konventionelle Speicher. Sie werden eingesetzt, wo schnelles Durchsuchen großer Datenbestände gefordert wird - etwa bei der Bild- und Mustererkennung, bei der zivilen und militärischen Flugüberwachung, aber auch im kommerziellen Bereich beim Durchsuchen von investierten Datenbeständen.

- Man hört heute gelegentlich von der großen Zukunft der Datenbank-Nachschaltrechner.

Eine Date Base-Back End-Maschine ist nur innerhalb dieses Konzeptes denkbar.

Nur wählt man hier eine dedizierte Maschine nicht aufgrund hardwaretechnologischer Überlegenheiten, sondern aufgrund der zu erfüllenden spezifischen Datenbank-Funktionen. Man wird Lösungen antreffen, die diese Funktionen in Konventioneller Software oder in Formware oder in Hardware implementieren - zeitlich vermutlich auch in dieser Reihenfolge.

- Und welche Aufgaben bleiben dann noch für den zentralen Hauptrechner?

Nicht alle der geschilderten dedizierten Prozessoren wird man bei jeder Konfiguration antreffen, sondern nur den jeweils gewünschten Ausschnitt. Dabei hat dann eine starke CPU durchaus ihre Berechtigung - im Sinne eines Universalrechners.