DE1929010B2 - Modular aufgebaute datenverarbeitungsanlage - Google Patents

Modular aufgebaute datenverarbeitungsanlage

Info

Publication number
DE1929010B2
DE1929010B2 DE19691929010 DE1929010A DE1929010B2 DE 1929010 B2 DE1929010 B2 DE 1929010B2 DE 19691929010 DE19691929010 DE 19691929010 DE 1929010 A DE1929010 A DE 1929010A DE 1929010 B2 DE1929010 B2 DE 1929010B2
Authority
DE
Germany
Prior art keywords
memory
modules
module
register
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE19691929010
Other languages
English (en)
Other versions
DE1929010A1 (de
Inventor
Ivan F. West Chester; Hopkins James E. Berwyn; Taddei Mary E. West Chester; Pa. Lichty (V.StA.)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Unisys Corp
Original Assignee
Burroughs Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Burroughs Corp filed Critical Burroughs Corp
Publication of DE1929010A1 publication Critical patent/DE1929010A1/de
Publication of DE1929010B2 publication Critical patent/DE1929010B2/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Description

Die Erfindung bezieht sich auf eine modular aufgebaute Datenverarbeitungsanlage mit mehreren Speirhermodulen, mehreren Ein/Ausgabe-Steuermodulen und mehreren zentralen Verarbeitungsmodulen sowie mit einer Verbindungseinrichtung, über die jeder der Speichermodule mit einem der übrigen Module bidirektional verbindbar ist.
Eine solche modular aufgebaute Datenverarbeitungsanlage ist aus der US-PS 32 00 380 bekannt. Die darin beschriebene modular aufgebaute Datenverarbeitungsanlage bietet gegenüber nicht modularen Datenverarbeitungsanlagen den Vorteil, daß sie wesentlich schneller und effizienter arbeiten kann, da der Hauptspeicher in mehrere einzelne Speichermodule aufgeteilt ist, die gleichzeitig und unabhängig voneinander mit den anderen Modulen in Verbindung treten können. Trotz des modularen Aufbaus ist die bekannte Anlage mit gewissen Unzulänglichkeiten verbunden. Die Technologie auf dem Gebiet der Verknüpfungs- und
g' k. V el rr di ai z< di re bi H U ir. se S Z
rr zi S
je w S
d Jt S D L
ei ei tr u le S
H w ei vi A ai ei
19 29 ΟΙΟ
Schaltelemente hat nämlich zu Rechnerschaltungen geführt, die ihre Funktionen sehr schnell ausüben können, und zwar in Form von einzelnen, stoßartigen Vorgängen. Obgleich man den aus üblichen Kernspeichern aufgebauten Hauptspeicher in mehrere Speichermodule aufgeteili hat, sind diese einzelnen Speichermodule mit entsprechend kleinerer Kapazität und damit auch kleinerer Zugriffszeit nicht in der Lage, die zentralen Verarbeitungsmodule mit einer ausreichenden Geschwindigkeit zu bedienen. Dies gilt insbesondere für schnell arbeitende Datenverarbeitungsanlagen, bei denen bedingt durch die spezielle Anwendung der Hauptspeicher eine sehr große Kapazität haben muß. Um den genannten Schwierigkeiten zu begegnen, hat man versucht, Hochgeschwindigkeitsspeicher mit sehr schnellen Speicherelementen zu bauen. Derartige Speicherelemente sind beispielsweise supraleitende Zellen, magnetische Twistoren, Magnetdünnschichten und Ferritplatten. Man glaubte mit diesen Speicherelementen die herkömmlichen Kernspeicher hoher Kapazität verdrängen zu können. Die in diese schnellen Speicherelemente gesetzten Erwartungen haben sich jedoch bisher noch nicht erfüllt. Es besteht daher nach wie vor das Bedürfnis nach einem Hauptspeicher hoher Speicherkapazität mit kurzer Zykluszeit.
Zum weiteren Stand der Technik wird auf die US-PS 32 74 561 verwiesen, aus der ebenfalls bereits eine Datenverarbeitungsanlage bekannt ist, die voneinander unabhängige, miteinander verbundene Module aufweist, die zum Speichern, Verarbeiten und Steuern dienen. Jeder Verarbeitungsmodul hat Zugriff zu jedem der Speichermodule, die alle miteinander identisch sind. Diese bekannte Datenverarbeitungsanlage bietet keine Lösungsmöglichkeit für das obengenannte Bedürfnis an.
Der Erfindung liegt die Aufgabe zugrunde, in einer Mehrrechner-Datenverarbeitungsanlage die Zykluszeit des modular aufgebauten Hauptspeichers großer Kapazität herabzusetzen.
Zur Lösung dieser Aufgabe ist die Eingangs beschriebene modular aufgebaute Datenverarbeitungsanlage nach der Erfindung dadurch gekennzeichnet, daß jeder der Speichermodule von einer Vielzahl von Speichermatrixblöcken unterschiedlicher Speicherkapazität und Zugriffszeit einen der Speichermatrixblöcke enthält, daß jede der zentralen Verarbeitungseinheiten eine Einrichtung zum Auswählen eines der Speichermatrixblöcke entsprechend der gewünschten Kapazität und Zugriffszeit zur Verwendung in den Speichermodulen der Anlage aufweist und daß in jedem der Speichermodule auf die Auswähleinricbtungen der zentralen Verarbeitungseinheiten ansprechende Speichermodulauswähl- und Adreßeinrichtungen vorgesehen sind.
Die Erfindung wird somit im wesentlichen darin gesehen, daß mehrere Hochgeschwindigkeits-Speichermodule unterschiedlicher Speicherkapazität und damit unterschiedlicher Zugriffszeit vorgesehen sind, die im Bedarfsfalle ausgewählt werden. Ferner sind die besonderen Mittel angegeben, mit denen die Auswahl erreicht wird.
Der Erfindungsgegenstand bietet den Vorteil, daß der Hauptspeicher durch entsprechende Speichermodulauswahl eine derart hohe Arbeitsgeschwindigkeit hat, daß er einem Aufruf zum Speichern oder Wiederauffinden von Daten in einer Weise folgen kann, die der Arbeitsgeschwindigkeit der übrigen Module der Anlage angepaßt ist. Der Gewinn an Geschwindigkeit ist mit einem Minimum an technischem und wirtschaftlichem Aufwand verbunden.
Ein bevorzugtes Ausführungsbeispiel der Erfindung wird an Hand einer Zeichnung beschrieben.
F i g. 1 zeigt in Form einer bildlichen Darstellung die nach der Erfindung vorgeschlagene maximale Systemorganisation;
F i g. 2 ist das Blockschaltbild dej in F i g. 1 dargestellten Systems;
Fig.3 ist ein vereinfachtes Verdrahtungsschaltbild ίο mit den grundsätzlichen Datenübertragungswegen;
F i g. 4 ist ein Zwischenmodul-Verdrahtungsschaltbild mit weiteren grundsätzlichen Steuerleitungen;
Fig.5 ist ein Funktionsblockschaltbild von den Betriebsarten des Rechnermoduls unter der Steuerung von Unterbrechungssignalen;
F i g. 6 ist eine Tabelle mit sämtlichen Systemu'.iterbrechungssignalen und ihren einzelnen Funktionen;
F i g. 7 zeigt als Blockschaltbild den Flußweg eines Unterbrechungssignals während einer Ein/Ausgabe-Operation;
Fig.8 zeigt verschiedene Deskriptorwortformate, die von den Ein/Ausgabe-Steuermodulen zum Steuern der in Fig.7 dargestellten Ein/Ausgabe-Flußoperation benutzt werden;
F i g. 9 ist das äußere Verdrahtungsschaltbild eines Rechnermoduls im System nach der Erfindung;
Fig. 10 ist das äußere Verdrahtungsschaltbild eines Ein/Ausgabe-Steuermoduls im System nach der Erfindung;
F i g. 11 ist das äußere Verdrahtungsschaltbild eines Speichermoduls im System nach der Erfindung;
Fig. 12 zeigt verschiedene Operationsarten des Speichermoduls;
Fig. 13 ist das Verdrahtungsschaltbild des Ein/Ausgabe-Zusammenschaltnetzes mit den Verbindungen zwischen den Ein/Ausgabe-Steuermodulschränken und den peripheren Geräten;
Fig. 14 ist das Funktionsblockschaltbild eines einzelnen Rechnermoduls mit seinem Dünnschichtspeicherbereich, Rechenbereich und Logik- und Steuerbereich;
F i g. 15 zeigt die Formate von allen im Rechnermodul benutzten Datenwörtern;
Fig. 16 (Fig. 16A und 16B) ist eine Tabelle mit den Adreßplätzen des Dünnschichtspeicherbereichs des Rechnermoduls von F i g. 14;
Fig. 17 ist ein Einzelblockschaltbild des Rechenbereichs des Rechnermoduls von F i g. 14;
Fig. 18 ist ein Verbindungsschaltbild des Logikschalters im Rechenbereich von F i g. 17;
Fig. 19 ist ein Blockschaltbild der Programmverarbeitungseinheit;
F i g. 20 ist eine Einzeldarstellung des Unterbrechungsteils von F i g. 19;
F i g. 21 ist das Blockschaltbild der Speichersteuereinheit;
F i g. 22 ist ein Einzelblockschaltbild des Dünnschichtspeicherbereichs des Rechnermoduls;
F i g. 23 (F i g. 23A und 23B) ist ein Einzelblockschaltbild eines Ein/Ausgabe-Steuermoduls *mit einer ersten und einer zweiten Ein/Ausgabe-Steuereinheit;
Fig. 24 (Fig.24A und 24B) zeigt als Einzelblockschaltbild einen einzigen Hauptspeichermodul und wie dieser Modul in dem erfindungsgemäßen System benutzt wird.
Im folgenden wird ein modular aufgebautes Datenverarbeitungssystem beschrieben, von dem angenommen wird, daß es das erste allen Anforderungen gerecht werdende System mit Magnetkernmodulen ist, die nicht
nur verschiedene Speicherkapazitäten, sondern auch verschiedene Arbeitsgeschwindigkeiten haben. Dabei ist es sehr einfach, von den Modulen mit einer Kapazität zu den Modulen einer anderen Kapazität umzuschalten. Das erfindungsgemäße System erlaubt es, beispielsweise von Modulen mit einer Kapazität von 4096 Wörtern zu Modulen mit einer Kapazität von 16 384 Wörtern von Hand umzuschalten.
Bei der Wahl der Bezugszeichen wird grundsätzlich von den in F i g. 1 benutzten Bezugszeichen ausgegangen. Die Rechnermodule, die beispielsweise in Fig. 1 das Bezugszeichen 200 haben, sind in Fig. 2 mit den Bezugszeichen 201,202 usw. versehen.
Fig. 1 ist eine bildliche Darstellung einer Ausführungsform des nach der Erfindung aufgebauten Systems. Das System kann in Hauptabschnitte unterteilt werden. Der Hauptspeicherabschnitt 100 ist durch mehrere getrennte Übertragungsverbindungen über ein zentrales Zusammenschalt- und Verriegelungsnetz 300 mit dem Verarbeitungs- oder Rechnerabschnitt 200 verbunden. Die von peripheren Geräten gelieferte Information wird von einem Ein/Ausgabe-Steuerabschnitt 400 gesteuert und geleitet. Der Ein/Ausgabe-Steuerabschnitt 400 ist ebenfalls über das zentrale Zusammenschalt- und Verriegelungsnetz 300 mit dem Hauptspeicherabschnitt 100 verbunden. Ein Ein/Ausgabe-Netz 500, das dem zentralen Netz 300 ähnlich ist. verbindet den Steuerabschnilt 400 mit den peripheren Geräten 600. Das zentrale Zusammenschaltnetz 300 ermöglicht es, daß zwischen jedem der Speichermodule des Hauptspeicherabschnitts 100 und einer gleichen Anzahl von getrennten Rechnermodulen des Verarbeitungsabschnitts 200 und von Ein/Ausgabe-Steucrmodulen des Ein/Ausgabe-Steuerabschnitts 400 gleichzeitig eine Verbindung hergestellt werden kann.
Die F i g. 2 zeigt im einzelnen den modularen Aufbau des Systems nach der Erfindung. Dabei ist jeder Modul als Block dargestellt und durch ein Bezugszeichen gekennzeichnet. Die sechzehn Speichermodule haben die Bezugszeichen 101 bis 116. Die vier Rechnermodule 201 bis 204, die acht Ein/Ausgabe-Steuermodule 401 bis 408 und die beiden Datenaufrufmodule 701 und 702 sind über das zentrale Verbindungsnetz 300 mit jedem der Speichermodule verbunden. Jeder Ein/Ausgabe-Steuermodul ist in zwei Steuereinheiten unterteilt. Insgesamt ergeben sich zwanzig Ein/Ausgabe-Steuereinheiten, wenn man die Datenaufrufmodule wegläßt. Sämtliche Ein/Ausgabe-Steuermodule sind über das Ein/Ausgabe-Zusammenschaltnetz 500 an vierundsechzig periphere Geräte 600 angeschlossen. Dabei kann es sich um zweiunddreißig einfache Eingabegeräte und zweiunddreißig einfache Ausgabegeräte handeln. Es können aber auch zweiunddreißig kombinierte Ein/Ausgabe-Geräte oder Kombinationen von einfachen und kombinierten Geräten sein.
Die F i g. 3 und 4 sind vereinfachte Schaltbilder des zentralen Zusammenschaltnetzes 3. In diesen Figuren sind die Module des Systems und die System verbindungen dargestellt. Die F i g. 3 zeigt den Datenfluß durch die zentrale Schnittstelle. Die Fig.4 zeigt weitere Steuerleitungen in der zentralen Schnittstelle. Die mit einem Kreis umgebenen Zahlen geben die Anzahl der Leitungen in dem betreffenden Kabel an. Zunächst sollen die Daten betrachtet werden, die den Speicher verlassen. Diese Information wird durch die neunundvierzig Leitungen umfassenden Kabel geführt, die in der F i g. 3 an den unteren Abschnitt jedes Speichermoduls 101 bis 116 angeschlossen sind. Diese Kabelgruppe überträgt die Informationsdaten vom Speicher. Diese Gruppe aus sechzehn Kabeln mit jeweils neunundvierzig Leitungen ist an jeden der dreizehn Module 201 bis 203, 401 bis 408 und 701 bis 702 des Systems
s angeschlossen In der Figur führt die Kabelgruppe zuerst zum Rechnermodul 201. Eine besondere Reihenfolge ist jedoch nicht notwendig.
Die Steuerung der Informationsdaten, die von den sechzehn Kabeln mit jeweils neunundvierzig Leitungen
ίο übertragen werden, wird von einer Gruppe von sechzehn Steuerkabeln mit jeweils dreizehn Leitungen vorgenommen. Ein solches Steuerkabel geht von jedem der sechzehn Speichermodule aus. Diese sechzehn Kabel führen Steuerdaten vom Speicher. Diese Daten dirigieren den Informationsdatenfluß von einem besonderen der sechzehn Speichermodule 101 bis 116 zu einem besonderen der dreizehn übrigen Systcmmodule 201 bis 203, 401 bis 408 und 701 bis 702. Diese dreizehn Module werden auch als Nichtspeichermodule bezeichnet, da sie nicht Bestandteil des Hauptspeichers sind. Sie werden auch Speicherberutzermodule genannt.
Die 13adrigen Steuerkabel von den sechsehn Speichermodulen 101 bis 116 sind mit den übrigen Modulen in einer vollkommen anderen Weise verbunden als die bereits beschriebenen Kabel mit jeweils neunundvierzig Leitungen. Jeder Speichermodul des Systems ist getrennt über eine einzige Steuerleitung mit jedem Nichtspeichermodul verbunden. Einer der dreizehn Drähte, die von dem Speichermodul 101 kommen, ist an den Rechnermodul 201, ein anderer an den Rechnermodul 202 usw. angeschlossen. Jeder der dreizehn Drähte des Speichermoduls 101 ist also mit einem anderen getrennten Nichtspeichermodul verbunden. Dieses Verbindungsschema gilt auch für jeden der
übrigen Speichermodule 102 bis 116. Damit ergibt sich eine Gruppe aus dreizehn Kabeln mit jeweils sechzehn Leitungen oder Drähten. Ein lfeadriges Kabel ist daher an jeden der drei Rechnermodule 201 bis 203, an jeden der acht Ein/Ausgabe-Modulschränke 401 bis 408 und an jeden Datenaufrufmodul 701 bis 702 angeschlossen, wie es im unteren Teil der F i g. 3 gezeigt ist.
Als nächstes werden die Eingangskabel zu den vier in Fig. 3 gezeigten Speichermodulen betrachtet. Diese Verbindung ist in einer anderen Weise durchgeführt.
Die Informationsdaten zum Speicher werden ebenfalls von einem Kabel aus neunundvierzig Leitungen übertragen. Allerdings führen in diesem Falle von jedem der dreizehn Nichtspeichermodule eigene getrennte Kabel mit neunundvierzig Leitungen zu dem Speicher-
modul 101. Jeder der dreizehn Module 201 bis 203, 401 bis 408 und 701 bis 702 ist über sein eigenes Steuerkabel an den Speichermodul 10H angeschlossen. In diesem Fall haben die drei Steuerkabel von den Rechnermodulen 201 bis 203 und die Steuerkabel von den acht
Ein/Ausgabe-Steuermodulen 401 bis 408 und von den beiden Datenaufrufmodulen 701 bis 702 jeweils zwei Leitungen. Wie es in der Fig.3 gezeigt ist, sind sechsundzwanzig Kabel an den Speichermodul 101 angeschlossen. Unter diesen sechsundzwanzig Kabeln
sind dreizehn Informationsdatenkabel mit jeweils ηeunundvierzig Leitungen und dreizehn Steuerdatenkabel mit jeweils zwei Leitungen. Diese Kabel kommen von den Ein/Ausgabe-Steuermodulschränken 401 bis 410, den Datenaufrufmodulen 701 bis 702 und den Rechnermodulen 201 bis 203. Diese sechsundzwanzig Kabel sind aufeinanderfolgend mit jedem der aufeinanderfolgenden Speichermodule 102 bis 116 verbunden. In der F i g. 4 sind Steuerleitungen gezeigt, die von
den Speichermodulen 101 bis 116 wegführen. Diese Leitungen dienen zum Obertragen von zusätzlichen Informationen, beispielsweise von Paritätsfehlern an Adressen oder Daten oder von Informationen, die angeben, wenn die Systemgrenzen überschritten werden. Jeder Speichermodul ist über eine eigene Leitung an jeden der Rechnermodule angeschlossen. Vom Speichermodul 101 führen beispielsweise jeweils eine Leitung zu jedem Rechnermodul 201 bis 203. Es ergibt sich daher eine Gruppe aus drei Kabeln, mit jeweils sechzehn Drähten, die alle an einen der Rcchnermodule 201 bis 203 angeschlossen isind.
Als nächstes werden die Unterbrechungsleitungeii betrachtet, die von den Rechnermodulen 201 bis 203 wegführen. Jeder Rechner besitzt die Fähigkeit, sich selbst oder irgendeinen anderen Rechnermodul des Systems zu unterbrechen. Von jedem Rechnermodul führt ein Kabel aus drei Leitungen zu allen anderen Rechnermodulen. Die beiden Leitungen, die von jedem der Datenaufrufmodule 701 und 702 wegführen, sind eine äußere Anforderungsleitung und eine Deskriptorbcstätigungsleitung. Diese Leitungen sind ebenfalls an alle Rechnermodule angeschlossen. Es sind daher zwei Kabel mit jeweils zwei Leitungen aufeinanderfolgend mit jedem der drei Rechnermodule 201 bis 203 verbunden. In ähnlicher Weise führen von den Hin/Ausgabc-Modulen Leitungen zu den Rechnermodulen. Von jedem Ein/Ausgabe-Modul führen wegen seiner Duplizität zwei äußere Anforderungsleitungen, zwei Deskriptorbcstätigungsleitungen und zwei Ein/ Ausgabe-Beendigungsleilungen, also insgesamt sechs Leitungen, zu allen Rechnerrnodulen. Es ist daher eine Gruppe aus acht Kabeln mit jeweils sechs Leitungen aufeinanderfolgend an jeden der drei Rechnermodule angeschlossen. Wie man in F i g. 3 sieht, ist jeder Rechnermodul lediglich mit dem vorangehenden ver bunden. Wenn das System größer ist, dann müssen auch die Gruppe ajs den sechsundzwanzig Kabeln, die Gruppe aus sechszehn Informationskabeln mit neunundvierzig Leitungen, die Gruppe aus sechzehn Steuerkabeln mit dreizehn Leitungen von den Rechnermodulen 101 bis 116, die sechzehn Steuerkabel mit drei Leitungen von den Speichermodulen, die Kabel aus drei Leitungen zwischen den Rechnern, die Gruppe mit den beiden Kabeln aus zwei Leitungen von den Datenaufrufmodulen und die Gruppe mit acht Kabeln aus jeweils sechs Leitungen von den Ein/Ausgabe-Modulen entsprechend vergrößert werden. Das zentrale Zusamrnenschahnetz 300. das in Fig.] gezeigt ist, wird von den beschriebenen Kabeln gebildet. Dieses Zusammenschalinetz ist keine getrennte Einheit, sondern folgt automatisch aus den modularen Zwischenverbindungen. Die Stärke der Kabel ändert sich entsprechend der Anzahl der dem System hinzugefügten oder weggenommenen Module.
Die F i g. 5 zeigt das Un'terbrechungssteuersystem des Datenverarbeiters. Dieses System spricht nicht nur auf ein Versagen der Anlage an, sondern entdeckt auch besondere Bedingungen und berichtigt ggf. diese Bedingungen. Ferner schützt dieses System das gesamte Datenverarbeitungssystem gegenüber vollkommenem Ausfall, ohne daß dabei der gesamte Verarbeitungsvorgang zum Stillstand kommt. Dies wird dadurch erreicht, daß der Rechnermodul Fehlerunterbrechungssignale erkennt, wenn der Modul bereits in der Unterbrechungsbetriebsart arbeitet. Das vorliegende System arbeitet daher nicht nur in einem normalen und in einer Unterbrechungssteuerbetnebsart. sondern es kann noch in einer weiteren Unterbrechungsbetriebsart betrieben werden.
Der Ausdruck »Unterbrechung« hat hier nicht die herkömmliche Bedeutung von Anhalten oder Aufhören, sondern wird benutzt, um eine Verschiebung, Übertragung oder einen Transfer anzudeuten. Die Unterbrechung kann als eine Aufforderung an den Rechnermodul betrachtet werden, um dessen Aufmerksamkeit von einem Programm auf ein anderes Programm zu lenken.
ίο Dies wird von den Geräten des Unterbrechungssystems gesteuert. Diese Anforderungen oder Aufrufe können intern, also innerhalb jedes der Rechnermodule, oder extern, also von den anderen Modulen des Systems, ausgelöst oder eingeleitet werden.
is Eine in Fig. 5 darges'ellte Unterbrechungssignal-Auswahlvorrichtung 5-10 empfängt sämtliche Unterbrechungssignale und wählt davon eines zur Untersuchung durch den Rechnermodul 5-12 aus. Obwohl diese Auswahlvorrichtung 5-10 als getrennter Baustein gezeigt ist, befindet sich die Vorrichtung tatsächlich innerhalb des Rechnermoduls 5-12. In der Fig. 5 sind zwar mehrere Rechnermodule gezeigt, die jedoch lediglich bildhaft die verschiedenen Betriebsarten darstellen sollen. Es handelt sich also nicht um verschiedene Module, sondern um ein und denselben Modul in verschiedenen Betriebszuständen.
Ein Rechnermodul 5-12 spricht auf den Empfang eines Unterbrechungssignals dadurch an, daß es seine Betriebsart ändert. Ein in der normalen Betriebsari arbeitender RechnermoduS führt die Schritte eine* Maschinen- oder Objektprogramms aus. Der Empfang eines ausgewählten Unterbrechungssignals veranlaßt den Rechnermodul seine Aufmerksamkeit (Operation auf eine Steueraufgabe zu richten. Diese Operationsver
is Schiebung wird als Transfer von der Operation ir Normalbetriebsart zu einer Operation in Steuerbe triebsart bezeichnet. Die erste Steuerbetriebsart is! Steuerbetriebsart A, 5-16 bezeichnet. Diese Steuerbe triebsart unterscheidet sich von einer zweiten Steuerbe triebsart B, 5-20.
Wenn der Rechnermodul 5-12 in seiner normaler Betriebsart N arbeitet, dann veranlaßt die Auswah eines Unterbrechungssignals durch die Vorrichtung 5-10, daß der Rechnermodul einen Betriebsartwechse oder eine Betriebsartverschiebung, nämlich zur Steuer betriebsart A. 5-16 vornimmt. In diesem Zustand führ der Rechnermodul ein Programm aus einer Gruppe vor passenden Steuerprogrammen aus, die jedem von der Unterbrechungszuständen oder jeder von den Unter brechungsbedingungen zugeordnet sind. Diese Pro gramme sind in besonderen Abschnitten des Hauptspei chers angeordnet, die durch IARA (das Unterbre chungsbasisregister zur Ausführung der Steuerungsbe triebsart A) und die besondere Unterbrechung gekenn zeichnet sind. Sie werden in ihrer Gesamthei Steuerbetriebsart-/4-UnterbrechungspIan genannt. Zu sätzlich zu den Abhilfe- und Prüfprogrammen, die in allgemeinen dem Ausdruck »Unterbrechung« zugeord net sind, werden hier weitere Programme umfaßt, urr sämtliche Steuerfunktionen zu leiten, die vom Systerr benötigt oder gefordert werden. Alle Ein/Ausgabe-Ope rationen werden durch die Benutzung eines Unterbre chungssteuersignals eingeleitet, und die Beendigung solcher Operationen wird bei ihrer Benutzung erkannt.
Unter sämtlichen Signalen wird der Rechnermodu das Unterbrechungssignal bedienen und danach selbs
■ zur Normalbetriebsart zurückkehren, indem er eir Unterbrechungsrückkehrsignal IRR erzeugt. Nach dei
609 538 33
Rückkehr zur Normalbetriebsart-Verarbeitung gewinnt der Rechnermodul aus seinem eigenen Dünnschichtspeicher diejenige Information, die er beim Empfang des Unterbrechungssignals dort speicherte. Diese gespeicherte Information enthält sämtliche Informationen, die notwendig sind, um die Verarbeitung an demjenigen Programmpunkt wieder aufzunehmen, an dem sie unterbrochen wurde.
Wenn der Rechnermodul beim Arbeiten in der Steuerbetriebsart A, 5-16 ein Unterbrechungssignal erhält, das anzeigt, daß ein Fehler aufgetreten ist, dann wechselt der Rechnermodul sogar noch in eine andere Betriebsart über, die Steuerbetriebsart B genannt wird. Dies ist symbolisch durch den Block 5-20 dargestellt. In dieser letzten Steuerbetriebsart führt der Rechnermodul Programme aus, die noch in einem weiteren Plan zusammengestellt sind, der durch IARB (das Unterbrechungsbasisregister zur Steuerbetriebsart-ß-Verarbeitung) und durch die besondere Unterbrechung bezeichnet ist. Dieser Plan wird Steuerbetriebsart-Ö-Unterbrechungsplan genannt und enthält lediglich Programme, die der Abhilfe dienen, weil nur eine Fehlerunterbrechung eine derartige Operationsverschiebung auslösen kann. Auch in diesem Falle kehrt der Rechnermodul von der ß-Betriebsart 5-20 zu seiner Normalbetriebsart 5-12 zurück, sobald er die Ausführung des passenden Abhilfeprogramms beendet hat. Falls der Rechnermodul beim Arbeiten in der ß-Betriebsart 5-20 ein weiteres Unterbrechungssignal erhält, das anzeigt, daß ein Fehler bei der Ausführung des Abhilfeprogramms aufgetreten ist, oder daß der Rechnermodul mit der Verarbeitung aufhören soll, dann reagiert der Rechnermodul entsprechend und hält die Verarbeitung an. Dies ist durch den Block 5-22 dargestellt. Dies hat den Vorteil, daß der Rechnermodul nicht fortfänrt, das Abhilfeprogramm auszuführen, falls die darin enthaltenen Befehle fehlerhaft sind. Falls der Rechnermodul beim Arbeiten in der A-Betriebsart 5-16 ein Unterbrechungssignal empfängt, das das Anhalten der Verarbeitung fordert, dann wird er dieser Forderung nachkommen und unmittelbar in die Haltbedingung 5-22 übergehen, ohne vorher zur ß-Betriebsart 5-20 zu wechseln.
Die für diese Unterbrechungsmaßnahmen notwendigen Bauelemente enthalten im wesentlichen zwei Register im lokalen Dünnschichtspeicher, der in jedem Rechnermodul des Systems untergebracht ist. Fig. 16 ist eine Übersicht über die Plätze der lokalen Dünnschichtspeicherregister. Darin sind auch die beiden Unterbrechungsbasisadreßregister IARA IARB enthalten, die als Register 063 und 067 aufgeführt sind. Diese beiden Register enthalten die Basis- oder Grundadresse der bereits aufgeführten Unterbrechungspläne, die in den Hauptspeichermodulen 100 von Fig. 1 gespeichert sind. Diese Grundadreßinformation wird dazu benutzt, um die Anfangsadresse der Unterbrechungsdienstroutine zu bestimmen. Der Steuerbetriebsart-/4-Unterbrechungsplan ist nicht und sollte auch nicht in demselben Speichermodul angeordnet sein wie der Steuerbetriebsart-ß-Unterbrechungsplan. Dadurch wird verhindert, daß beim Ausfall eines einzigen Hauptspeichermoduls beide Pläne unzugänglich werden könnten.
In dem in Fig.6 dargestellten Unterbrechungsplan sind die achtzehn Unterbrechungsbedingungen gezeigt, die in dem vorliegenden System benutzt werden. Normalerweise veranlaßt der Empfang irgendeines dieser Unterbrechungssignale, daß der Rechnermodul von der Ausführung eines Objekt- oder Maschinenprogramms auf die Ausführung eines Steuerprogramms überwechselt. Das besondere ausgewählte Steuerprogramm hängt von der empfangenen Unterbrechungsbedingung ab. Jeder Unterbrechungsbedingung sind im Hauptspeicher passende Steuerprogramme zugeordnet.
Da das Auftreten von gewissen Bedingungen eine schnellere Aufmerksamkeit erfordert als dasjenige von anderen, haben die achtzehn Bedingungen eine vorgegebene Priorität, die durch eine Zahlenfolge angegeben ist. Die Unterbrechungsbedingungen sind in der zweiten Spalte angegeben. Jeder Rechnermodul des Systems enthält ein 15-Bit-Unterbrechungsregister. Von diesen Bits ist ein Bit einer besonderen Unterbrechungsbedingung zugeordnet. Das Register wird dazu benutzt, um die Unterbrechungssignale von den fünfzehn Unterbrechungsbedingungen niedrigerer Ordnung zwischenzuspeichern, bis sie benutzt werden. Jeder Rechnermodul enthält noch ein Register, das mit dem Unterbrechungsregister verbunden ist und zusammen mit diesem betrieben wird, um gewisse Bits des Unterbrechungsregisters zu steuern. Dieses letztere Register wird auch mit Maskenregister bezeichnet. Seine Hauptfunktion besteht darin, zu verhindern, daß gewisse Rechnermodule auf gewisse Unterbrechungsbedingungen ansprechen. Auf diese Weise wird verhindert, daß sämtliche Rechnermodule gleichzeitig auf einen einzigen Steueraufruf oder eine einzige Steueranforderung ansprechen.
Die einzelnen Bits des Unterbrechungsregisters sind in der dritten Spalte der in Fig.6 gezeigten Tabelle angegeben. Die drei Unterbrechungsbedingungen, denen die erste, zweite und dritte Priorität zugeordnet sind, haben keinen Platz unter den Unterbrechungsregisterbits in der Spalte 3. Diese drei Bedingungen sind die einzigen drei von den achtzehn Unterbrechungsbedingungen, die bedingungslos sämtliche Rechnermodule des Systems beeinflussen können, ohne daß dabei irgendein Bit des 15-Bit-Unterbrechungsregisters in irgendeinem Rechnermodul benutzt wird. Diese drei Bedingungen sind in der Rangfolge ihrer Priorität aufgeführt, nämlich Hauptspeisenetzausfall, Zählen der Realzeituhr und Nachstellen der Zeit des Tagesregisters. Alle übrigen fünfzehn Unterbrechungsbedingungen arbeiten in Verbindung mit einem Bit des 15-Bit-Unterbrechungsregisters, das in jedem Rechnermodul angeordnet ist. Von den fünfzehn in der dritten Spalte von Fig.6 aufgeführten Bits können sieben Unterbrechungsregisterbits gegenüber aktiver Operation maskiert werden. Dadurch wird verhindert, daß ein besonderer Rechnermodul auf eine ausgewählte maskierte Unterbrechung anspricht. Die Bits des 18-Bit-Datenwortes, die in das Maskenregister eingegeben werden, entsprechen den Bits des Unterbrechungsregisters. Diese Bits sind in benachbarten Zeilenplätzen in der Spalte »Maskierbits« im Lade-Spezialregister-Operand LSR aufgeführt. Wie es in der siebten und dritten Spalte von Fig.6 gezeigt ist, werden die Datenwortbits 1 und 3 (Spalte 7) zusammen mit dem Bit 2 des Unterbrechungsregisters (Spalte 3) die Datenwortbits 5 bis 20 zusammen mit dem Bit 3 des Unterbrechungsregisters benutzt, v/ährend sich die Bits 21 bis 36 auf das Bit 1 oder auf das Außenaufrufbit bzw. Außenanforderungsbit des Unterbrechungsregisters beziehen. Das Bit 5 des Unterbrechungsregisters kann durch die Aktivierung des Bits 41 des Datenwortes maskiert werden, und die Bits 43 bis 45 kann man dazu benutzen, um die Aktivierung des Bits 9 des Unterbrechungsregisters zu sperren. Die Datenwortbits 47 und 47 können die Operation der Unterbrechungsre-
r E d s e F A E r rr C S
gisterbits 13 bzw. 14 maskieren. In der vierten Spalte der Tabelle ist angegeben, welche Rechnermoduie von den einzelnen Unterbrechungsbedingungen berührt werden. Beim Vorhandensein des Hauptnetzausfall-Unterbrechungssignals sprechen alle Module in dem System an, weil sich alle Module auf den Ausfall des Speisenetzes vorbereiten müssen. Bei der Unterbrechung »Zählen der Realzeituhr« werden ebenfalls sämtliche Rechnermodule beeinflußt, jedoch spricht jeder Modul einzeln auf seinen Aufruf an. Wenn ein Rechnermodul in der Unterbrechungsbetriebsart A arbeitet, kann er nur sechs von den vierzehn aufgeführten Bedingungen erkennen. Das Erkennen von irgendeiner dieser sechs Bedingungen veranlaßt, daß der Modul zur Operation in der Unterbrechungsbetriebsart B übergeht. Diese Bedingungen sind: Wiederstarten nach Netzausfall, Ausschreiben von indirekten Grenzen, illegale Instruktion, kein Zugriff zum Speicher, Paritätsfehler zum Speicher, »Snag«-Bit und Paritätsfehler vom Speicher. Die Bits des Unterbrechungsregisters kann man in irgendeiner der in der Spalte »Bitsetzen in der Betriebsart« aufgeführten Betriebsarten setzen.
In den beiden übrigen Spalten auf der rechten Seite der Tabelle, nämlich »Verhalten bei Steuerbetriebsart« und »Verhalten bei Normalbetriebsart«, ist das zugeordnete Verhalten eines Rechnermoduls angegeben, der in einer von diesen Betriebsarten arbeitet, und zwar im Hinblick auf jede der achtzehn Unterbrechungen. Unabhängig von der gerade ausgeführten Betriebsart speichert der Rechnermodul automatisch diejenige Information, die er gerade verarbeitet, sobald er das »Hauptnetzausfalltt-Unterbrechungssignal empfängt. Das Verhalten oder die Antwort auf eine Zähl-Realzeit-Unterbrechung ist also dieselbe sowohl in der Normalais auch in der Steuerbetriebsart. In beiden Fällen wird die Realzeituhr um einen Schritt weitergeschaltet.
Die Fig. 7 zeigt eine System-Ein/Ausgabe-Operation, bei der geeignete Unterbrechungssignale benutzt werden, um die Operation einzuleiten und zu beenden. Der Einfachheit halber ist lediglich ein Grundsystem gezeigt, das nur einen einzigen Speichermodul 101, einen Ein/Ausgabe-Steuermodulschrank 401 mit zwei Ein/Ausgabe-Untermodulen oder -einheiten 401-1 und 401-2 sowie ein Rechnermodul 201 benutzt. Ein einziger Block mit der Bezeichnung 600 und der Benennung Abschluß- oder Endgeräte soll eine Gruppe von peripheren Geräten darstellen. Die besondere Art des benutzten Gerätes ist hier nicht wichtig. Es kommt lediglich darauf an, daß eines der Außenaufruf-Unterbrechungssignale erzeugt wird.
jede der beiden Ein/Ausgabe-Steuereinheiten 401-1 und 401-2 ist in Wirklichkeit ein kleiner Festprogrammrechner, der aufgrund von 48-Bit-Wortbefehlen, die Deskriptoren genannt werden, Daten empfängt, aussendet und deren Format ändert Grundsätzlich gibt es sechs Arten von Deskriptoren, von denen jeder sein eigenes bestimmtes Bitformat und eine entsprechende Funktion hat Dabei handelt es sich um Einricht-, Auslöse-, Befehls-, Einsen-Prüf-, Nullen-Prüf- und Ergebnis-Deskriptoren. Die ersten fünf befinden sich im Hauptspeicher und werden von dort an einen oder mehrere der Ein/Ausgabe-Steuermodule abgegeben. Der Ergebnis-Deskriptor-lnhalt wird im Ein/Ausgabe-Steuermodul erzeugt und zu einem Platz im Speicher zurückgegeben, der im Steuermodul bestimmt wird.
Der Rechnermodul 201 arbeitet zunächst in der Normalbetriebsart 201-N. Beim Empfang des Ein/Ausgabe-Beendigung-Unterbrechungssignals von einer Ein/Ausgabe-Steuereinheit 401-1 oder 401-2, die den entsprechenden Maskierbitsatz aufweist, wechselt der Rechnermodul 201 von der Operation in der Normalbetriebsart 201-N zur Operation in der Steuerbetriebsart 201-C um. Bei dieser Betriebsart veranlaßt der Rechnermodul, daß einer der fünf Deskriptoren, die sich im Hauptspeicher befinden, zu einer besonderen Ein/Ausgabe-Einheit in einem Ein/Ausgabe-Modul gesendet werden. Da die Speicherübertragungsleitungen zu beiden Ein/Ausgabe-Einheiten innerhalb eines Moduls gemeinsam sind, wird ein Bit auf den Datenleitungen zeitlich aufgeteilt mit den Daten, um anzuzeigen, welche Einheit eines Ein/Ausgabe-Moduls den Deskriptor empfangen soll.
Der erste Transfer in die Steuerbetriebsart besteht im allgemeinen darin, einen Einricht-Deskriptor zu einer besonderen Ein/Ausgabe-Einheit zu senden. Der Einricht-Deskriptor liefert die Grundadresse für die Rückkehr von allen Ergebnis-Deskriptoren von einem Ein/Ausgabe-Modul. Obwohl ein Einricht-Deskriptor an eine besondere Ein/Ausgabe-Einheit adressiert ist, ist lediglich ein Grundadreßregister pro Ein/Ausgabe-Modul vorhanden, und die beiden Einheiten in einem Ein/Ausgabe-Modul benutzen dieselbe Grundadresse. Die Ein/Ausgabe-Einheit kann einen Einricht-Deskriptor zu jeder beliebigen Zeit empfangen, vorausgesetzt oaß die Parität richtig ist. An den Rechner wird immer dann eine Bestätigung übertragen, wenn ein Einricht-Deskriptor empfangen wird. Ein Ergebnis-Deskriptor wird zurückgegeben an die neue Grundadresse plus der Ein/Ausgabe-Einheit-Nummer, falls die Einheit mit einem Abschlußgerät nicht verbunden ist.
Ein anderer Transfer zur Steuerbetriebsart kann einen Befehl-Deskriptor an eine Ein/Ausgabe-Einheit senden. Er wird angenommen, falls die Einheit nicht gerade einen anderen Deskriptor verarbeitet und wenn die Parität richtig ist. Eine Bestätigung wird an den Rechnermodul gesendet, wenn der Befehl-Deskriptor angenommen und das angeforderte oder aufgerufene Abschlußgerät verfügbar ist. Ein Ergebnis-Deskriptor wird zurückgebracht zum Grundadreßregister als auch die Ein/Ausgabe-Einheit-Nummer, wenn die Operation endet.
Wenn es notwendig ist, eine Operation zu beenden, wird ein anderer Transfer in eine Steuerbetriebsart vorgenommen, und ein Auslöse-Deskriptor wird an die gewünschte Einheit gesendet. Es gibt zwei Arten von Auslöse-Deskriptoren, die gesendet werden können, nämlich sofortige Beendigung und Beendigung am Ende eines Wortes. Der Auslösedeskriptor wird zu jeder beliebigen Zeit angenommen, falls die Parität richtig ist. An den Rechner wird eine Bestätigung gegeben. Eine Unterbrechung wird an den Rechner abgegeben, wenn die zweite Beendigungswahl, nämlich Beendigung am Wortende, vorgeschrieben und das Wortende abgefühlt ist. Ein Ergebnis-Deskriptor wird zurückgebracht, wenn die Operation beendet ist
Andere Übergänge zur Steuerbetriebsart können veranlassen, daß ein Prüf-Deskriptor entweder für alle Nullen oder für alle Einsen zu einer Ein/Ausgabe-Einheit gebracht wird Solche Deskriptoren werden angenommen, wenn die Ein/Ausgabe-Einheit gerade keinen anderen Deskriptor verarbeitet und die Parität richtig ist Eine Bestätigung wird an den Rechner abgegeben, wenn der Prüf-Deskriptor angenommen worden ist Die Prüf-Deskriptoren prüfen den internen Transfer zu der Ein/Ausgabe-Einheit Dasselbe Wort, das zu der Ein/Ausgabe-Einheit gesendet worden ist
wird als Ergebnis-Deski'ptor zum Grundadreßregister zurückgebracht. Es enthält auch noch die Ein/Ausgabe-Einheit-Nummer.
Falls eine Ein/Ausgabe-Einheit Schwierigkeiten hat, den Ergebnis-Deskriptor zum Speicher zurückzubrinfen, werden die Signale an der Außenaufrufleitung, die zum Rechnermodul führt, angehoben, d. h. sie werden auf ihren oberen Pegel gebracht.
Die Bitformate von den sechs Deskriptoren, die in Verbindung mit der gerade beschriebenen Ein/Au:sga- ι ο be-Operation benutzt werden, sind in F i g. 8 gezeigt. Der Einricht-Deskriptor enthält in den Bits 17 bis 31 die Adresse, die zum Zurückbringen von allen Ergebnis-Deskriptoren von einem besonderen Ein/Ausgabe-Modul die Grundadresse liefert. Beide Ein/Ausgabe-Modu-Ie oder Einheiten in dem Schrank benutzen diese Adresse als eine Basis, von der ihre besondere Speicheradresse in der Deskriptorliste zu bestimmen ist. Diese Bestimmung wird dadurch durchgeführt, daß die Einheit-Nummer zur Basisadresse hinzugezählt wird.
Unter dem Format des Einricht-Deskriptors ist das Format des Auslöse-Deskriptors gezeigt. Dieser Deskriptor stattet das System mit der Fähigkeit aus, daß eine Ein/Ausgabe-Steuereinheit von dem Beschältigt-Zustand in einen Nichtbeschäftigt-Zustand oder Leerlauf-Zustand überwechselt. Dieses Überwechseln beendet die aktive Ein/Ausgabe-Operation. Das Bit 43: des Deskriptors wird dazu benutzt, um die Steuereinheit zu benachrichtigen, wann sie anhalten soll. Wenn das Bit 43 eine binäre Eins ist, dann wird die Ein/Ausgabe-Steuereinheit davon in Kenntnis gesetzt, zurückzukehren, wenn das letzte Zeichen des gerade übertragenen Speicherwortes vollständig ist. Falls das Bit 43 eine binäre Null ist, dann wird der Ein/Ausgabe-Steuereinheit mitgeteilt, daß sie sofort ansprechen soll, selbst wenn dies bedeutet, daß die gerade vorliegende Transferoperation vorzeitig beendet wird.
Ein Auslöse-Deskriptor mit einer richtigen Parität wird von jeder nichtbeschäftigten Steuereinheit ignoriert. Ein Auslöse-Deskriptor wird von einer beschäftigten Einheit nur dann wahrgenommen, wenn die Einheit durch den Deskriptor besonders adressiert ist.
Alle Deskriptoren werden von dem Ein/Ausgabe-Steuermodul einzeln auf Parität geprüft. Wenn der Modul eine unrichtige Parität entdeckt, dann wird de· Deskriptor als ein Befehl- oder Einricht-Deskriptor mit einer unrichtigen Parität behandelt, wobei, falls die Einheit im Ein/Ausgabe-Schrank nicht beschäftigt ist, aktiviert wird und veranlaßt, daß ein Ergebnis-Deskriptor zum Speicher zurückgeschickt wird. Dieser Deskriptor enthält Status- oder Zustandsinformation, die irgendeinen Paritätsfehler anzeigt. Wenn ciie ausgewählte Einheit beschäftigt ist, wird der Auslöse-Deskriptor ignoriert, und die beschäftigte Einheit fährt fort, ihre gegenwärtige Aufgabe auszuführen.
Die Ein/Ausgabe-Steuereinheit, die einen Auslöse-Deskriptor wirksam empfängt, bestätigt die erfolgreiche Beendigung der Deskriptorübertragung, und zwar dadurch, daß sie dies dem Rechner, der die Operation einleitete, mitteilt. Diese Bestätigung ist kein Unlerbrechungssignal, da eine Ein/Ausgabe-Beendigung-Unterbrechung niemals auftritt, wenn eine Ein/Ausgabe-Operation von einem Auslöse-Deskriptor beendet wird. Die Bestätigung und die Unterbrechung sind verschiedene Signale vom Ein/Ausgabe-Modul zum Rechnermodul. ds
Alle Operationen der peripheren Geräte werden von einem Befehl-Deskriptor eingeleitet. Sein Format ist unmittelbar unter dem des Auslöse-Deskriptors in F i g. 8 dargestellt. Dieser Deskriptor wird ebenfalls an eine besondere Ein/Ausgabe-Einheit gesendet. Die besondere Einheit empfängt den Deskriptor, jedoch untei der Voraussetzung, daß der Deskriptor eine richtige Parität hat und daß die Einheil; eine vorangehende periphere Operation beendet hat.
Der Befehl-Deskriptor wird dazu benutzt, um die Art des zu verwendenden peripheren Gerätes anzuzeigen. Um diese Anzeige oder Bezeichnung zu vereinfachen, werden die verschiedenen Typen oder Arten von peripheren Geräten, die in dem System benutzt werden, in einfache Geräte und zusammengesetzte oder kombinierte Geräte klassifiziert. Ein einfaches Gerät benötigt nur eine einzige Leitung zum Ein/Ausgabe-Zusammenschaltnetz. Man unterscheidet wieder zwei Arten von einfachen Geräten, nämlich ein einfaches Eingabegerät und ein einfaches Ausgabegerät. In ein peripheres Eingabegerät kann man Information eingeben, die das Gerät dann in das System übertragt. Ein Ausgabegerät hingegen nimmt Information aus dem System auf. En Eingabegerät ist beispielsweise ein Kartenleser, während ein Ausgabegerät beispielsweise ein Drucker ist. Ein kombiniertes peripheres Gerät kann die Information in zwei Richtungen übertragen, d. h.. es benötigt mehr als eine Leitung zürn Ein/Ausgabe-Verbindungsnetz. Ein kombiniertes Gerät kann man auch als einfaches Gerätepaar betrachten.
Bei dem in F i g. 8 gezeigten Befehl-Deskriptor wird das Bit 45 benutzt, um ein kombiniertes Gerät zu kennzeichnen. Falls das Bit 45 eine binäre Eins ist, benötigt man ein kombiniertes Gerät, um den Befehl auszuführen. Eine binäre Null kennzeichnet ein einfaches Gerät. Die Bits 39 bis 44 des Deskriptorwortes kennzeichnen das ausgewählte periphere Gerät. Da diese Gruppe sechs Bits aufweist, kann man insgesamt vierundsechzig verschiedene Geräte auswählen.
Die vier Bits 13 bis 16 des Befehl Deskriptors werden dazu benutzt, um die Operation einer Ein/Ausgabe-Steuereinheit bei der Ausführung einer Operation zu modifizieren. Wenn das Bit 14 eine binäre Eins ist, hält die Ein/Ausgabe-Steuereinheit, die diesen Deskriptor verwendet, nicht an, wenn bei der Informationsübertragung von dem Abschlußgerät ein Paritiiisfehler entdeckt wird. Normalerweise hält in einem solchen Falle das periphere Gerät an. Im vorliegenden Falle wartet es, bis die Übertragung vom Gerät beendet ist, bevor es den Fehler registriert. V/enn das Bit 15 eine binäre Eins oder gesetzt ist, dann wartet der Ein/Ausgabe-Steuerkanal, der im Besitz dieses Deskriptors ist, nicht so lange, bis er an der Reihe ist, den Zugriff zum Übertragungszwischenspeicher des Ein/Ausgabe-Steuermoduls zu erhalten, sondern er erhält Priorität gegenüber seiner Zwillingseinheit in demselben Ein/ Ausgabe-Schrank. Wenn umgekehrt der Schrank mit einer Speicherleitung verbunden ist, die innerhalb des Speichermoduls Priorität hat, dann erhiilt die Ein/Ausgabe-Einheit sofortigen Zugriff zu der Speicherstelle. Diese Modifikation kommt beispielsweise dann zur Anwendung, wenn ein Kanal eines Ein/Ausgabe-Steuermoduls, der mit einem peripheren Gerät in Verbindung tritt, eine Betriebsgeschwindigkeit von einem Megahertz hat, und wenn der andere Kanal, der mit dem peripheren Gerät in Verbindung sieht, eine Be;triebsgeschwindigkeit von 100 kHz hat. In diesem Falle ist es erwünscht, daß ein Gerät mit hoher Arbeitsgeschwindigkeit Priorität über cm Gerät mit niedriger Arbeitsgeschwindigkeit hat. Wenn man beiden Einheiten innerhalb eines Steuermoduls Priorität gibt, ist es trotzdem
ni O Pi
d( si D A A ni in
w A E rr ki Γ. d. C
15
19 29 OiO
an Die
:ine ine
An ;en. ien, V1On ien, der :rät Zuwei hes ein ge-Ein em ein ;ise inn . es erjch
ird zu ist, ehl .fates Da mi
ien bezu iah tor railer ien alle ist, ine der rip-Tiff beität !in/ mit des
zur jerung ;ga-Jem sget es ivinsgcnerdcm
nicht möglich, daß beide Einheiten gleichzeitig die Operation steuern, so daß es notwendig ist, das Prioritätsbit zu setzen.
Die Bits 13 und 16 werden dazu benutzt, um eine Aufzeichnungs-Zähl-Operation zu kennzeichnen. Wenn diese Bits binäre Nullen sind und keine Anzeige (X) vorliegt, wird keine Aufzeichnung-Zähiung vorgenommen. Wenn die beiden Bits binäre Einsen sind, wird der Aufzeichnung-Zähler automatisch mit einer Eins geladen. Wenn die Bits eine binäre Eins und eine binäre Null sind, dann startet die Operation als Ausgabeoperation. Das erste vom Speicher empfangene Wort enthält das Aufzeichnung-Zählfeld. In beiden Fällen, bei denen die Aufzeichnung-Zählung benutzt wird, enthält der Ergebnis-Deskriptor die verbleibende Aufzeichnung-Zählung in den Bits 45 bis 48, wie es in F i g. 8 gezeigt ist.
Die ersten zwölf Bits (1 bis 12) des Befehl-Deskriptors werden Wortzählfeld genannt. Dieses Feld gibt die Anzahl der Wörter an, die an der betreffenden Ein/Ausgabe-Operation teilnehmen. Es können maximal 4096 Wörter angegeben und mit einem Befehl-Deskriptor übertragen werden. Das 20-Bit-Feld mit den Bits 17 bis 36 gibt die Anfangsspeicheradresse an, die von der Ein/Ausgabe-Steuereinheit benutzt werden soll. Dieses Feld ist in F i g. 8 entsprechend bezeichne!..
Drei Bits des Befehl-Deskriptors liefern die Befehlcodes, die /ur Übertragung zu den peripheren Geräten zu den Ein/Ausgabe-Steuereinheiten gesendet werden. Dabei handelt es sich um die Bits 46 bis 48. Bei einem einfachen Eingabegerät sind zwei der acht möglichen Befehlcodes reserviert, um Auflöse- und Einricht-Deskriptoren zu kennzeichnen, und es werden lediglich drei von den übrigen sechs Befehlcodes benutzt. Diese sind 010,011 und 100. Die anderen drei Codes (101, 110 und 111) werden, selbst wenn sie gesendet werden, von dem Gerät genauso interpretiert wie der Code 010.
Ferner dienen die drei Befehlcodebits 46 bis 48 für verschiedenartige Instruktionen an die einfachen Ausgabegeräte als auch an irgendein kombiniertes Gerät. Das Bit 46 wird von dem Ein/Ausgabe-Steuermodul dazu benutzt, um einem kombinierten Gerät, das eine Ausgabeoperation ausführt, mitzuteilen, daß das letzte Zeichen der Übertragung gesendet ist und daß die acht niedrigstwertigen Bits des 12-Bit-Wortzählfeldes null sind.
Das Format des Ergebnis-Deskriptors ist in Fig.8 unter dem Format des Befehl-Deskriptors dargestellt. Der Ergebnis-Deskriptor ist lediglich einer von den vier gezeigten Deskriptoren, dessen Signalübertragungsrichtung von der Ein/Ausgabe-Steuereinheit zum Speicher geht. Seine Hauptfunktion besteht darin, daß System mit Information zu versorgen, die den Status einer Ein/Ausgabe-Operation betrifft.
Die Fig.9, 10 und 11 zeigen das äußere Verdrahtungsschaltbild des Rechner-, des Ein/Ausgabe-Steuer- und des Speichermoduls. In allen Fällen ist ein vereinfachtes Blockschaltbild des Innenabschnitts des Moduls gezeigt, das dazu dient, den Signalfluß durch den Modul aufzuzeigen. Der Rechnermodul 201 (Fig.9) zeigt die vier Hauptabschnitte von jedem derartigen Modul. Diese Hauptabschnitte sind die Programmverarbeitungseinheit 201-40, die Recheneinheit 201-20, die Speichersteuereinheit 201-30 und der lokale Dünnschichtspeicher 201-10. Die Speichersteuereinheit 201-30 dirigiert die Steuerinformation 201-22 von und zu allen Speichermodulen. Dabei wird für einen besonderen Speicherplatz die Speicherinlormation aufgerufen, die aus dem Speicher ausgelesen, in den Speicher eingeschrieben, zu einem E<n/Ausgabe-Steuermodul übertragen oder die gesendet werden soll, um Steueroperationen im Speicher auszuführen. Die Steuereinheit 201-30 führt diese Operation unter dem Befehl der Programmverarbeitungseinheit 201-40 aus, die die Schritte eines besonderen Programms durchführt. Im allgemeinen ist die Verarbeitungseinheit 201-40 die Steuereinheit des Rechnermoduls 201. Das sieht man auch daran, daß dies die einzige Einheit ist, die bidirektional mit allen übrigen drei Hauptabschnitten verbunden ist. Sie kann nicht nur Information zur Dünnschichtspeichereinheit 201-10, zur Recheneinheit 201-20 und zur Speichersteuereinheit 201-30 übertragen, sondern sie kann auch veranlassen, daß diese Einheiten Information zu ihr übertragen.
Informations- und Steuerdaten erreichen den Rechnermodul über die Verbindungen, die im oberen Teil der F i g. 9 gezeigt sind. Diese Daten verlassen den Rechnermodul wieder über die im unteren Teil der Fig.9 gezeigten Verbindungen. Die Eingabe- und Ausgabeverbindungen können Kabel zu und von allen anderen Modulen im Datenverarbeitungssystem enthalten. Die Speicherinformation gelangt über ein 49-Leitung-Kabel in den Rechnermodul. Dieses Kabel ist unter einer Gruppe von Kabeln ausgewählt, die ein Kabel von jedem Speichermodul enthalten. In ähnlicher Weise werden die Steuerdaten über eine Gruppe von Leitungen zugeführt, die eine Steuerverbindung von jedem Speichermodul enthalten.
Die Speicherinformation verläßt den Rechnermodul (Fig. 9) über ein einziges 49-Leitung-Kabel, das im allgemeinen mit allen Speichermodulen des Systems verbunden ist. Die Steuerinformation wird vom Modul weggeführt in einem einzigen 2-Leitung-Kabel. das im allgemeinen mit allen Speichermodulen verbunden ist.
Die Fig. 10 ist ebenfalls ein äußeres Verdrahtungsschaltbild, das die Verdrahtung eines Ein/Ausgabe-Steuermoduls angibt. Diese Module haben grundsätzlich dieselben Verbindungen, so daß nur ein Modul beschrieben wird. Die Verdrahtungsverbindungen des Steuermoduls stellen insofern unter den Systemmodulen etwas besonderes dar, weil sie zusätzlich zu den Eingabe- und Ausgabeverbindungen zu allen Speichermodulen Eingabe- und Ausgabeverbindungen zu allen peripheren Geräten des Systems aufweisen. Die Verbindungen zu den Speichermodulen sind im oberen Teil der Fig. 10 gezeigt. Die Verbindungen zu den peripheren Geräten befinden sich im unteren Teil der Figur. Der Ein/Ausgabe-Steuermodul 401 (Fig. 10) weist zwei identische Ein/Ausgabe-Steuereinheiten 401-1 und 402-2 auf. Diese Einheiten teilen sich gemeinsam in die Schnittstellenschaltungsanordnung 401-12,401-100,401-101 zum Hauptspeicher und zu den peripheren Geräten. Die Hauptspeicher-Schnittstellenschaltung 401-12 erhält Informationsdaten vom Hauptspeicher über Leitungen 9-40. In dieser Hinsicht ist dieser Modul dem Rechnermodul von Fig.8 ähnlich Das Informationsrückgabekabel 9-20 zum Speicher isl insofern ähnlich, daß es ebenfalls neunundvierzig Leitungen wie das Steuerkabel 9-10 mit seinen beider Steuerinformationsleitungen aufweist.
Die Schnittstelle zwischen einem Ein/Ausgabe Steuermodul und den vielen peripheren Geräten enthäl die Steuer- und Datenleitungen, die notwendig sind, urr die Verbindung zwischen irgendeinem der vierundsech zig peripheren Geräten und einer von den beider Ein/Ausgabe-Einheiten herzustellen und aufrechtzuer halten. An die Eingabeschnittstellenschaltung 401-10!
ist eine Mehrkabelverbindung 10-50 angeschlossen, die zweiunddreißig Eingangskabel mit jeweils zwölf Leitungen enthält. Jedes Eingangskabel dient dazu, daß ein einfaches Eingabegerät mit einer Ein/Ausgabe-Einheit in Verbindung treten kann. Die Ausgabeschnittstellen- c schaltung 401-100 ist mit einer ähnlichen Anzahl von Kabeln 10-60 verbunden, um den einfachen Ausgabegeräten dieselbe Möglichkeit zu bieten. Jedes Ausgabekabel enthält zwölf Leitungen. In jedem Kabel sind fünf Steuerleitungen und sieben Informationsleitungen. Sechs Informationsleitungen liefern gleichzeitig die sechs Bits eines Informationszeichens, und die siebte Leitung Hefen ein Paritätssignal. Alle Eingabe- und Ausgabekabel können von jeder der beiden Ein/Ausgabe-Einheiten 401-1 und 401-2, die in dem Modul enthalten sind, benutzt werden. In jedem Kabel, das in der Mehrkabelverbindung 10-50 und 10-60 enthalten ist. enthält fünf Steuerleitungen. Dabei handelt es sich um eine Start/Stopp-Leitung, eine Zeichenaufruf- oder Zeichenanforderungsleitung, eine Einheit-Verfügbar-Leitung, eine Zeichenabtastleitung und eine Gerät-Zustands-Leitung. Ein kombiniertes Gerät benötigt zwei Kabel, nämlich ein Kabel für den Eingang und ein anderes für den Ausgang. Die Eingabekabelnummer ist stets um eins größer als die Ausgabekabelnummer.
Bei dem in Fig. 11 gezeigten Speichermodul 101 ist ein Speicher 101-120 zwischen eine Eingabeinfo-mationsauswählvorrichtung 101-110 und die Ausgabeinformationstreiber 101-130 geschaltet. Zur Auswahlvorrichtung führen dreizehn 49-Leitung-Kabel, von denen jeweils eins von jedem der drei Rechner, jedem von den acht Ein/Ausgabe-Steuerrnodulen und jedem von den beiden Datenaufrufmodulen des Systems kommt. Ferner ist an den Speichermodul ein Steuerkabel von jedem von diesen anderen dreiiehn Modulen angeschlossen. Diese Steuerkabel von den Rechnermodulen, den Ein/Ausgabe-Steuermodulen und den Datenaufrufmodulen sind identisch.
Diese Kabel liefern die notwendige Steuerinformation, um zu einem besonderen Speichermodul Zugriff zu erhalten. Zusätzlich zu jedem Ein/Ausgabe- oder Datenaufrufmodul-Aufruf gibt es noch dreiundzwanzig Steuerleitungen, bei denen die höchstwertigen drei Bits und die niedrigstwertigen zwanzig Bits des 49-Leitung-Informationskabds vorhanden sind. Die höchstwertigen drei Bits geben den Operationscode zum Speicher an. Diese Codes können entweder ein Lese- oder ein Schreib-Code sein (F i g. 12).
Ferner wird jeder Rechneraufruf von weiteren siebenundzwanzig Steuerleitungen begleitet, von denen die sieben höchstwertigen Bits und die niedrigstwertigen zwanzig Bits vorhanden sind. Die sieben höchstwertigen Bits (Fig. 12) geben an, welche Operation der Speicher ausführen soll. Dabei kann es sich um eine Leseoperation, eine Schreiboperation oder um einen Befehl handeln, nach dem ein Deskriptor zu einem Datenaufrufmodul oder zu einer Ein/Ausgabe-Einheit gesendet werden soll. In jedem Ein/Ausgabe-Modul sind zwei Ein/Ausgabe-Einheiten vorhanden. Der Rechnermodul hat drei Steueroperationen zum Dirigieren der Speichermodule. Diese sind: (1) Lies einen besonderen Platz im Speicher und übertrage den Inhalt dieses Speicherplatzes in den Rechner. Überprüfe das erste Bit, bevor der nächste Aufruf fortgeführt wird. Falls es sich dabei um eine binäre Eins handelt, dann gehe zum ^s nächsten Aufruf über. Wenn das Bit eine binäre Null ist. ersetze es durch eine binäre Eins und komplementiere das Paritätsbit. l'21 Mache aus den unteren 4096 Bits S.«»eropera,io„CT »11 «he
wichte Programm aus Versehen durch g
Versafen nictu zerstört wird und für jede Art von
S idonnen werden kann Die zwanzig
benutzt um die Speichermoduladresse zu kennzeichnen.
Das Bi>49 ist das Paritätsbit für cue dreiundzwanz.g
InfoJmat.onsbits von einem Ein/Ausgabe- oder einen.
Datenaufrufmodul oder für d.e s.ebenundzwanz.g
Informationsbits von einem Rechnermodul. Em einzelner Speichermodul (F i g. 11) kann in e.nem vorgegebenen Augenblick nur einem Aufruf genügen. Dabei, s
dne Prioritätsauflösung in jedem Speichermodul
notwendig. Diese Auflösung w.rd durch die Pnomatsh«rimmunesschaltung 101-442 vorgenommen. Wenn
k KonSfkt bestehf, wird der Zugriffaufruf 101-150
gewährt und der aufrufende Modul wird dementsprechend benachrichtigt, und zwar über eine der Ausgangsteuerleitungen, im unteren Teü der figur. Danach w.rd
das ausgewählte Wort vom Speicher 101-20 zu dem
aufrufenden Modul über die Spe.cherausgabetre.ber
101-130 in einem einzigen 49-Bit-Transfer gleichzeitig
ηΐίΓπκ 13 zeigt die Verbindungen zwischen den
Ein/Ausgabe-Steuermodulen und den vierundsechzig
peripheren Geräten. Diese Verbindungen sind allgemein in F i g. 2 mit dem Bezugsze.chen 500 gekennzeichnet und in F i g. 1 als Ein/Ausgabe- Zusammenschaltnetz
dareestellt Das zentrale Zusammanschaltnetz 300 ist in
diesen Figuren ebenfalls gezeigt. Von jedem der acht
Ein/Ausgabe-Steuermodulen 401 bis 408 führen identische Kabelgruppen zu jedem der vierundsechzig
iedeaus?ierundsechzig Kabeln bestehende Gruppe
ist in zweiunddreißig Eingabekabel und zweiunddreißig
Ausgabekabel unterteilt. Jedes Eingabekabel ist mit
jedem von den acht Ein/Ausgabe-Steuermodulen
verbunden und enthält insgesamt zwölf Leitungen. Zehn
von diesen Leitungen übertragen Information von dem
Gerät zu dem Modul und werden daher bezüglich des
Moduls als Eingabesignalleitungen betrachtet. Die
beiden übrigen Leitungen des Eingabekabels übertragen Information in entgegengesetzter Richtung und
werden vom Modul für solche Zwecke wie Starten oder
Stoppen des Gerätes oder Anforderung von Information von einem peripheren Eingabegerät benutzt, jedes
von den Ausgabekabeln ist mit jedem von den
Ausgabeabschnitten eier acht Ein/Ausgabe-Steucrmoduicn verbunden und enthält zwölf Leitungen. Diese
Leitungen sind anders unterteilt. Neun Leitungen von
jedem Inforr peripr Kabel entgej Gerät Das zweiu die vo Grupf zweiu werk Steuei pherei könne herge.1 Die Funkt diesen stem t Steuei verwe Schräi Funkt Arithr Steuei rung, Unter sehe ο nen, λ Speicl Dünn; zugrei Der keit ν deren werde ten. 12-Bit wort Variai aus ei katon einunc ausge wie vi vervo von ei einer be be; einem Index Bits. I ben b· : ben. [ um so zu bi : indire letzte Figun gezeij ein W Systei entwc Wörti Adrei. chers) erreic
/7C-
f19
id >n re id
IuI lie •in ■in an :'g alie en
;n. er lie m η.
u! sin 50 e- :srd m er ig
ig eh- tz in ht ti-•ig
pe Mg nit en hn ;m les )ie raind Jer nailcs lcn nocsc /on
jedem der zweiunddreißig Ausgabekabel überträgt Information von dem Ein/Ausgabe-Steuermodul zu den peripheren Geräten. Die drei übrigen Leitungen jedes Kabels werden dazu benutzt, um Information in entgegengesetzter Rcihtung zu übertragen, d. h. von den Geräten zu dem Ein/Ausgabe-Steuermodul.
Das Ein/Ausgabe-Netz wird im wesentlichen von den zweiunddreißig Eingabe- und Ausgabekabeln gebildet, die von jedem der Ein/Ausgabe-Steuermodulen zu einer Gruppe von zweiunddreißig Eingabegeräten und zweiunddreißig Ausgabegeräten führen. Dieses Netzwerk ermöglicht es, daß irgendeiner der Ein/Ausgabe-Steuermodule mit irgendeinem der verfügbaren peripheren Geräte in Verbindung treten kann. Weiterhin können aber auch derartige Verbindungen gleichzeitig hergestellt werden.
Die Fig. 14 ist ein Blockschaltüild und zeigt die Funktionsbereiche eines Rechnermoduls 201. Drei von diesen Rechnermodulen können in einem Maximumsystem benutzt werden. Anstelle des achten Ein/Ausgabe-Steuermoduls kann man einen vierten Rechnermodul verwenden. Die Rechnermodule sind in einzelnen Schränken untergebracht und haben grundsätzlich drei Funktionsbereiche: (1) Logik und Steuerung, (2) Arithmetik und (3) Speicherung. Der Logik- und Steuerbereich wird zur Instruktionsausführung, indizierung, relativen und indirekten Adressierung und Unterbrechungsverarbeitung benutzt. Der arithmetische oder Rechenbereich führt arithmetische Operationen, Verschiebungen und Vergleiche durch. Bei dem Speicherbereich handelt es sich um einen lokalen Dünnschichtspeicher, der sofort verfügbar und schnell zugreifbar ist.
Der Rechnermodul arbeitet mit einer Geschwindigkeit von 4 MHz wie eine Variabel-3-Adreß-Maschine, deren Programminstruktionen als Silbenfolge behandelt werden. Die Fig. 15 zeigt eine Reihe von Wortformaten. Das erste ist ein Programmwort aus vier 12-Bit-Silben plus ein Paritätsbit. In einem Programmwort sind vier Arten von Silben möglich: Operator, Variant, Adresse und Index. Die Operatorsilbe besteht aus einem 6-Bit-Befehlcode und drei 2-Bit-Adreß-Indikatoren. Der Befehlscode gibt an, welche von einundsechzig möglichen Instruktionen vom Rechner ausgeführt werden soll. Die Adreßindikatoren geben an, wie viele Silben notwendig sind, um eine Instruktion zu vervollständigen. Die Länge der Instruktionen reicht von einer bis sieben Silben. Die Variantsilbe besteht aus einer 12-Bit-Instruktionsumsteuergröße. Eine Adreßsilbe besteht aus elf Bits einer beliebigen Adresse und aus einem Bit für einen Indirekt-Adreß-lndikator. Die Indexsilben bestehen aus drei Feldern mit jeweils vier Bits. Indexsilben kann man mit Variant- oder Adreßsilben benutzen, jedoch nicht zusammen mit Operatorsilben. Die Adreß- und Indexsilben kann man vereinigen, um sowohl eine direkte als auch indirekte Adressierung zu bewirken. Eine unendliche Anzahl von Stufen indirekter Adressierung ist möglich, wobei bei der letzten Stufe indiziert wird. Als nächstes sind in den Figuren !5A und 15B die Indirekt-Adreß-Wörter ho gezeigt. Es gibt zwei Indirekl-Adreß-Wörter, nämlich ein Wort für das System 16 (SY 16) und ein Wort für das System 20 (5V20). Der Rechnermodul ist in der Lage entweder als eine 16-Bit-Adreß-Maschine (mit 65 Wörtern des Hauptspeichers) oder als eine 20-Bit-Adreß-Maschine (mit 1 948 376 Wörtern des Hauptspeichers) zu arbeiten. Dies wird durch einen Schalter erreicht, der an der Waruingstafel angeordnet ist und automatisch die Formate von irgendeinem Adreßvort oder Dünnschichtspeicherwort einstellt (Fig. 15A und 15B).
Eine indirekte Adressierung liefert die automatische Fähigkeit einer dynamischen Gleitgrenzen-Überprüfung. Alles indirekte Lesen, außer demjenigen in der zweiten bis n-ten Zeit durch eine wiederholte Instruktion, und alles indirekte Schreiben wird durch die Gleitgrenzen überprüft. Während einer indirekten Kette liegt ein Indirekt-Adreß-Wort vor, bei dem das ß-Bit (Bii 25) gleich eins ist. Wenn dies festgestellt wird, wird das .Y-Register oder Obergrenzen-Register mit den Inhalten der Bits 5-24 für SY20 oder der Bits 9-24 für SV16 geladen und das V-Register oder Dntergrenzen-Register wird den Bits 29-48 für S V 20 oder mit den Bits 33-48 für SY 16 geladen. Nachdem man durch mehrstufiges indirektes Adressieren und Indizieren die endgültige Adresse erhalten hat, wird die endgültige Adresse geprüft, um festzustellen, ob sie innerhalb der Gleitgrenzen liegt. Es wird dann 16 (außerhalb der Indirekt-Grenzen-Unterbrechung) eingestellt oder gesetzt.
Außer den genannten Formaten benutzt der Rechner verschiedene Wortformate für binäre Wörter, Gleit punktwörter, Zeichenwörter und Dünnschichtspeichtiwörter (Fig. 15A und 15B). Die Binärdatenwörter Lestehen aus einem Vorzeichenbit, 0 bei positivem und 1 bei negativem Vorzeichen, und siebenundvierzig Datenbits. Das Gleitpunktdatenwort enthält zwei Vorzeichenbits mit derselben Maßgabe wie oben. Sowohl der Exponent (11 Bits) als auch die Mantisse (35 Bits) haben ein Vorzeichenbit, das dem jeweiligen Wert vorausgeht. Das alphanumerische Datenwort wird für die Zeicheninstruktionen benutzt und besteht aus acht 0-Bit-Zeichen. Die Dünnschichtspeicher-Wortiormate werden dazu benutzt, um den Dünnschichtspeicher in verschiedenen Weisen zu laden. Bei einem System, das sechzehn Bits zur Adressierung benötigt, gibt es vier Dünnschichtspeicherformate, ein 16-Bit-Register, zwei 16-Eit-Register, drei 16-Bit-Register und ein 18-Bit-Register. Beim System 20 gibt es ebenfalls vier Formate, ein 20-Bit-Register, zwei 20-Bit-Register, drei 16-Bit-Register und ein 48-Bit-Register.
Der Logik- und Steuerbereich (Fig. 14) enthält eine Programmverarbeitungseinheit (PPU) 201-40 und eine Speichersteuereinheit (MCU) 201-30. Die Schaltung dieses Bereichs wird dazu benutzt, um Indizierung, indirekte Adressierung, Adreßberechnung und andere logische Operationen auszuführen. Die Programmverarbeitungseinheit 201-40 ist das zentrale Steuersystem des Rechnermoduls. Alle Daten- und Programmwörter werden von dieser Einheit gehandhabt, bevor sie über das Zusammenschalt- und Vernegelungsnetz 300 zum Hauptspeicher oder zur Recheneinheit 201-20 gegeben werden. Die Programmverarbeitungseinheit stellt Daten und Instruktionen auf. Sie liest das Programm von dem lokalen Dünnschichtspeicher 201-10, und zwar jeweils eine Silbe, berechnet die Datensuchadresse nimmt die Indizierung vor und startet die Recheneinheil 201-20 oder die Speichersteuereinheit 201-30. Sodanr verarbeitet sie die nächste Silbe, während die anderer Einheiten ihre Funktionen durchführen. Diese Fähigkeii zur gleichzeitigen Verarbeitung aufeinanderfolgendei Programmsilben ist eine besondere Maßnahme diesel Maschine und als Programmüberlappung bekannt. Die; wird während der Operation der Recheneinheit 201-2( (oder Speichersteuereinheit 201-30) ausgeführt, wöbe die Programmverarbeitungseinheit das nächste Pro
grammwort holt, die Speicher- oder Zweigadresse berechnet und damit beginnt, die nächste Instruktion für die Recheneinheit aufzustellen. Die zum Holen des Programms benötigte Zeit ist im allgemeinen vernachlässigbar.
Die Programmverarbeitungseinheit 201-40 enthält das Maskier- oder Masken-Register, das zusammen mit der Lade-Spezialregister-Instruktion benutzt wird, die in bezug auf das Unterbrechungssystem beschrieben ist. Ferner enthält die Einheit das oben beschriebene Gleitgrenzen-Register und das bereits erwähnte Unterbrechungsregister. Ansonsten ist es vom Programm nicht zugreifbar.
Die Programmverarbeitungseinheit bedient alle Programmunterbrechungen, indem sie bei Empfang eines Unterbrechungsbedingungssignals alle zweckdienlichen Steuerinformationen in Dünnschichtregister des Dünnschichtspeichers 201-10 speichert. Diese Information wird benötigt, um später das Programm an derjenigen Stelle fortzuführen, an der es unterbrochen wurde. Es übergibt dann die Steuerung an ein Unterbrechungsprogramm und setzt die Unterbrechungsregister wahlweise zurück.
Die Speichersteuereinheil 201-30 wird von der Programmverarbeitungseinheit benutzt. Wenn die Speichersteuereinheit von der Programmverarbeitungseinheit mit einer Adresse ausgerüstet ist, übernimmt die Speichersteuereinheit 201-30 die Steuerung und wartet auf Zugriff zum Hauptspeicher. Nach Erhalt des Zugriffs gibt sie die sich ergebende Information in das IV-Register der Programmverarbeitungseinheit. Die Programmverarbeitungseinheit schafft dann die Daten in den richtigen Platz. Die Daten können zur Verarbeitung zur Recheneinheit, im Fall einer Programmabzweigung oder Programmüberlappung zum Programmspeicherregister (PSR) im lokalen Dünnschichtspeicher 201-10 gebracht werden oder zu Indirekt Adreß-Berechnungen benutzt werden. Die Gleitgrenzenprüfung wird ebenfalls in der Speichersteuereinheit durchgeführt. Im Falle einer Speicheroperation für den Hauptspeicher wartet die Speichersteuereinheit auf das sich ergebende Datenwort von der Recheneinheit, bevor sie den Zugriff zum Hauptspeicher ausführt und die Daten überträgt. Wenn aus irgendeinem Grunde Zugriff zu einem Speichermodul angefordert, jedoch nach zehn Millisekunden nicht gewährt wird, wird eine Unterbrechungsbedingung erzeugt und die Instruktion wird beendet.
Die Speichersteuereinheit 201-30 tastet auch noch die Fehlerleitungen von jeder der sechzehn Speichermodule ab, um zu bestimmen, ob die Adreß- oder Datenwörter einen Paritätsfehler enthielten oder ob das Wort, das sie versuchte zu schreiben, in einem geschützten Speicherblock war. Ferner prüft die Einheit, ob ein »snag« Bit während einer indirekten Kette anwesend ist, bestimmt, wann das indirekte Abholen fortgesetzt werden soll, und entscheidet, wann das Gleitgrenzenregister zu laden ist. Die Speicher steuereinheit merkt sich auch, welche Adresse eine Fehlerbedingung hervorrief, und sie weist die Programmverarbeitungseinheit an, diese Fehleradresse im effektiven Adreßregister des Dünnschichtspeichers aufzubewahren, bis die Fehlerbedingung verarbeitet wird. Ferner bestimmt sie, wann es richtig ist, die indirekten Gleitgrenzen zu überprüfen, um zu bestim men, ob die zu verarbeitende Adresse außerhalb der Gleitgrenzen liegt Beim Übertragen einer Adresse zum Hauptspeicher erzeugt die Speichereinheit stets ein Paritätsbit für den Operationscode und das A.dreßfeld.
Der arithmetische Bereich des Rechnermoduls (F i g. 14) enthält eine arithmetische oder Recheneinheit 201-20. Diese Einheit weist drei arbeitende Rechenregister A, ßund Csowie die dazugehörige Steuerung auf. Das A- und ß-Register führen die tatsächlichen arithmetischen Berechnungen durch. Alle drei Register werden als Schieberegister beinutzt, und zwar sowohl bei Fest- als auch bei Glekpunktoperationen. Die
ίο Recheneinheitregister unterliegen nicht dem Programmzugriff.
Der Dünnschichtspeicherbereich des Rechnermoduls hat eine magnetische Dünnschichtspeichereinheit 201-10. Diese lokale Dünnschichtspeichereinheit besteht aus 128 Dünnschicht- 49-Bit-Registern. Die Einheit arbeitet in Verbindung mit der Programmverarbeitungseinheit 201-40, um eine äußerst schnellie Speichervorrichtung vorzusehen, die die Anzahl der Datenzugriffe zu den Hauptspeichermodulen wesentlich vermindert.
An die Programmsteuerungseinheit 2!01-40 sind weitere Steuerleitungen als Außensieuerungen 201-60 angeschlossen. Diese Leitungen führen Unterbrechungsoperationen durch, indem sie die Aufmerksamkeit des Rechnermoduls aufrufen und den Empfang von derartigen Unterbrechungssignalen bestätigen.
Die F i g. 16 zeigt, daß alle der einhundertundachtundzwanzig Dünnschichtregister durch eine Octal-Code-Zahl (beispielsweise 0,57) adressiert werden kann. Sie können auch durch einen Namen gekennzeichnet sein, (Indexregister 10) oder durch eine Gruppe von großen Buchstaben, die man als Dünnschichtspeicher-Adreß-Identifiziergröße bezeichnet (die Buchstaben PCR identifizieren beispielsweise die Dünnschicht-Register-
Adresse 057). Die Dünnschichtspeichertafel identifiziert die Dünnschichtregister und Regi&tergruppen durch eine Zahl als auch durch einen Namen.
Der Dünnschichtbcrcich enthält fünf Operandenregister. Vier Operanden-Stapcl-Register haben die Octal-
Code-Zahlen 140, 144, 150 und 154. Ein Dünnschicht-C-Register ist mit TFC bzw. 124 bezeichnet. Das TFC-Register speichert den niedrigstwertigen Datenteil einer Doppellänge-Dividier-Instruktion DDV. Gleit-Dividier-Instruktion FDV und Doppellänge-Schiebe-In-
struktion SHF. Ferner speichert es die niedrigstwertige Hälfte eines Doppellängenprodukts einer Multiplizieroperation und den Rest von einer Divisionoperation sowie das Ergebnis der Doppellänge-Schiebe-Instruktion.
Die beiden Programmspeicherregister PSR1 und
PSR 2 mit Octalzahlen 100 und 104 speichern acht
Instruktionssilben und erlauben ein überlapptes Instruk-
tionsabholen während langer Instruktionen.
Das Grundadreßregister BAR bei 055 enthält die
Grundadresse des Datenadreßbereichs. Das Grundprogrammregister BPR bei 054 enthält die Basisadresse des Zweigprogrammadreßbereichs. Das Programmzählregister PCR bei 057 speichert die Adresse des letzten Wortes (zuletzt vom Speicher geholtes Wort) in den
Programmspeicherregistern.
Fünfzehn Indexregister und fünfzehn Vergleichsgren- E zenregister sind bei den ersten dreißig Octail-Code-Zah- !l len (000 bis 037) im lokalen Speicher in jeder ; s Indexadreßsilbe angeordnet und können benutzt wer- s
den, um jede Operandenadresse zu modifizieren. Die ^ Indexregister können um einen Schritt vor- und ^ zurückgeschaltet werden und auf sechs verschiedene Arten mit den Grenzenregistern verglichen werden. st
/ΙΊ
auf.
ien
ter
[>ie
ro-
IuIs
ieit
beieit
ierzuiin-
nddc-Sie
ein.
i3cn
eß-'CR
iericrt
rch
-gital-
-C-Das
itci!
Di-
-Intige
zietion
•uk-
und
icht
-uk-
des
tlretten
den
ren-
^ah-
:der
ver-Die
und
lene
den.
Das Indexinkrementregister XIR an der Stelle 122 wird von der Logik während der Ausführung der Indexinkrementinstruktion benutzt. Das Indexregister 0 und Grenzenregister 0 sind spezielle Register, die bei Vergleichsoperationen benutzt werden. Sie enthalten beide stets eine Null. Im Grenzenregister 0 kann man Information speichern, jedoch enthält das Register eine Null, wenn Vergleichsoperationen durchgeführt werden. Andererseits kann man noch Information im Grenzenregister 0 bei der Octalstelle 020 speichern, jedoch niemals im Indexregister 0 an der Stelle 000.
Die zwanzig Bits des exekutiven Realzeituhrregislers RTC an der Stelle 114 werden automatisch ausgelesen und jeweils nach zehn Millisekunden um einen Schriti weitergcschaltet oder inkreiT;er>tiert. Die exekutive is Realzeituhr kann getastet und von dem Exekutivprogramm gesetzt werden. Eine Unterbrechung wird ausgelöst, sobald das Zählen überläuft, wenn das Maskierbit gesetzt ist. Die sechsunddreißig Bits des Benutzer-Realzeituhr-Registers an der Stelle 115 werden automatisch ausgelesen und alle zehn Millisekunden um einen Schritt weitergeschaltet oder inkrementiert. Das Benutzer-Realzeituhr-Register kann getastet, jedoch nicht gesetzt werden. Eine Überlaufbedingung veranlaßt, daß das Register zurückgesetzt wird, jedoch wird keine Unterbrechung ausgelöst.
Das Zeichcnzählregisler CCR an der Stelle 123 wird von der Zeichensuchinstruktion CSE benutzt, um von dem angegebenen Zeichen gesetzte geprüfte Zeichenposition i-nzuzeigen. An der Stelle 40 ist das Dividierkühlregister, das bestimmt, wie viele Bits die Antwort einer Doppellänge-Dividier-Instruktion enthält.
Wenn eine Wiederholinstruktion benutzt wird, sieht das Wiederholprogrammregistcr RPR an der Stelle 041 Speicherplätze für die vier Silben des zu wiederholenden Programmwortes vor. Das Wiederholzählregister RCR an der Stelle 120 enthält die Anzahl der noch durchzuführenden Iterationen, wohingegen das Wicdcrholinkrementregister RIR an der Stelle 130 die Inkrementc enthält, die den Adressen entsprechen, die in drei Wiederholadreßregistern RAR an den Stellen 44,45 und 4b der Wiederholinstruktion enthalten sind. Wenn eine Subroutine ausgeführt wird, enthalten die Subroutine-Speicher-Register SSR. SSA, SSP, SSC die Subroutineinformation, d. h. den friiheren Inhalt von BAR, BPR und PCR. Das Unterbrechungsprogrammregister IPR an der Stelle 110 stellt Speicherraum für den Inhalt des zuletzt adressierten PSR zur Verfügung, und zwar während der Unterbrechung, wohingegen das Unterbrechungs-Abwerf-Register IDR an der Stelle 070 das PSR und die Wiederhols:euerung für die Unterbrechungsrückkehr speichert. Das Netzausfall-Abwerf-Register PDR an der Stelle 064 speichert die Inhalte der Steuerflipflops und der Flipflops des Unterbrechungsregisters, und zwar für den Fall eines Netzausfalls.
Der Programmbereich, von dem der ietzte Zweig ausging, ist in einem Register BDR an der Stelle 112 enthalten. Das Unterbrechung-Zweig-Bezugsregister an der Stelle 102 enthält die Adresse des letzten Zweiges, bevor eine Unterbrechung stattfand. Die Effektivadreßregister EAR 1 und EAR 2 bleiben bezüglich sämtlicher Speicheradressierung auf dem neuesten Stand, selbst bei der Wiederholbetriebsart bis ein Speicherübertragungsfehler gemacht wird. Sie bleiben dann ungeändert, wie es vom MCU befohlen wird, bis diese Fehlerbedingung bedient wire'.
Das Dünnschichtspeicher-60-lndirekt-Grenzen-Register IBR enthält den letzten Wer! der Gleitgrcnzen.
Dieser Wert kann während einer Unterbrechungsrückkehr wieder eingegeben werden, wenn das Programm während einer Wiederholinstruktion unterbrochen war. Das TOD-Register 77 enthält den laufenden Monat, den Tag, die Stunde und die Minute in binärcodierter Dezimalform.
Das Unterbrechungssystem kümmert sich um Unterbrechungen, die sich aus Bedingungen wie arithmetischer Überlauf, Überlauf der Realzeituhr, illegale Instruktion, Paritätsfehler, externe Ein/Ausgabe-Aufrufe und Ein/Ausgabe-Ergebnissituationen ergeben. Jeder Rechner hat ein Unterbrechungsregisler. Wenn eine besondere Bedingung veranlaßt, daß an einer gewissen Bitposition im Unterbrechungsregister eine binäre Eins auftritt, wird eine Programmunterbrechung vorgenommen. Diese Unterbrechung hält das gerade ausgeführte Programm an, speichert hinreichend viel Information in den Dünnschichtregistern, so daß das Programm an der unterbrochenen Stelle später fortgeführt werden kann, und überträgt die Steuerung einem besonderen Programm, das die Unterbrechung bedient. Falls beim Arbeiten in dieser Steuerbetriebsart ein Fehler auftritt, wird die Steuerung an ein weiteres besonderes Programm übertragen, das den Fehler bedient. Eine Rückkehr durch die Unterbrechungsrückkehr-Instruktion IRR ist stets eine Rückkehr in die anfängliche Normalbetriebsart. Die unbenutzten Dünnschichtregister, die in der in F i g. 16 dargestellten Tafel des lokalen Speichers enthalten sind, sind zur Benutzung durch das Exekutivsteuerprogramm reserviert.
Die Fig. 17 bezieht sich auf den in Fig. 14 gezeigten arithmetischen oder Rechenbereich und ist ein Einzelblockschaltbild der darin enthaltenen Recheneinheit 201-20. Ein Teil der in F i g. 14 gezeigten Übertragungsvorrichtung 201-50 ist in der Fig. 17 links dargestellt. Die Recheneinheit enthält die drei arithmetischen Arbeitsregister des Rechnermoduls zusammen mit den zugeordneten Steuerungen. Dabei handelt es sich um das .4-Register 201-20-16, das 5-Rcgistcr 201-20-12 und das C-Register 201-20-10. Die A- und ß-Register 201-20-16 und 201-20-12 führen die tatsächlichen Rechenoperationen aus, und alle drei Register werden als Schieberegister für Fest- und Gleitpunktoperationen benutzt.
Der in der Recheneinheit enthaltene Addierer 201-20-14 ist in der Lage, zwei 48-Bit-Zahlen in einer einzigen Taktzeit zu addieren. Da das System mit einer Taktgeschwindigkeit von 4MHz arbeitet, erhält man eine volle Summe in 250 Nanosekunden. Diese Summe wird dann in das /4-Register 201-20-16 gebracht und entsprechend der Natur der Instruktion positioniert. Eine vollständige 48-Bit-Verschiebung wird ebenfalls in einer Taktzeit durchgeführt, ebenso ein 48-Bit-Transfer von einem zu einem anderen Register. Dadurch ergibt sich eine stark verminderte Exekutions- oder Ausführungszeit für sich wiederholende Instruktionen, beispielsweise für das Multiplizieren und Dividieren.
Eine besondere Maßnahme dieser Recheneinheit ist ihre Fähigkeit das Wort in dem /4-Register zu positionieren. Dieses Positionieren des Wortes wird dadurch erreicht, daß das Ergebnis nach links oder rechts geschoben wird, wenn es in den Logikschalter 201-20-18 übertragen wird. Der Logikschalter enthält mehrere Schalterpositionen, die man ändern kann, so daß man jeder zu schaltenden Informationsgröße Genüge leisten kann. Dadurch kann man irgendeine gewünschte Menge an logischer Information in einer einzigen Taktzeit schalten. Das D-Register 201-20
609 538/335
bringt die notwendige Schiebeinformation zu dem R- und L· Decoder 201-20-24, der über die Schiebeinformation entscheidet und dementsprechend veranlaßt, daß die im Logikschalter 201-20-18 enthaltene Information in geeigneter Weise orientiert wird. S
Im 5-Register 201-20-26 befindet sich die Variantsilbe, die die Schiebeinstruktion begleitet und die steuert, welche Art von Verschiebung ausgeführt werden soll, nämlich nach links oder nach rechts, am Ende aufhören oder über das Ende hinaus, arithmetische oder logische Verschiebung, einfache oder doppelte Verschiebung. Eine einzige oder einfache Verschiebung wird an einem 48-Bit-Wori durchgeführt. Die doppelte Verschiebung wird an zwei 48-Bit-Wörtern durchgeführt. Dabei ist der niedrigstwertige Teil im TFC-Register im lokalen Dünnschichtspeicher enthalten.
Eine Verschiebung wird auch bei Instruktionen vorgenommen, die normiert werden sollen. Ein nichtnormiertes Ergebnis einer arithmetischen oder Recheninstruktion ist die Instruktion CBF. nämlich die »Setze-Um-Binär-In-Gleitpunkt«. Diese Instruktionen veranlassen, daß das 48-Bit-Wort nach links geschoben und der Exponent justiert wird. Diese Verarbeitung wird mit Justierung 201-20-20 bezeichnet ur.d dauert so lange an, bis eine binäre Eins in der höchstwertigen Stelle der Mantisse steht.
Die Zeichenauswahlvorrichtung 201-20-30 spricht auf Signale vorn 5-Register 201-20-26 an. Der Ausgang der Zeichenauswählvorrichtung ist an die Register A, Bund eingeschlossen, so daß die Zeichenauswählvorrichtung wahlweise eines der in diesen Arbeitsregistern enthaltenen Zeichen angeben kann.
Die Fig. 18 ist ein Einzelschaltbild des Logikschalters 201-20-18 von Fig. 17. Bei der horizontalen Leitungsgruppe handelt es sich um die Leitungen von der .Schaltmatrix.
Die Fig. 19 ist ein Einzelblockschaltbild der Programmverarbeitungseinheit. Die Fig. 20, 21 und 22 /eigen Einzclabschnittc des Rechnermoduls. Die Fig. 20 zeigt die Unterbrechungsteile des Moduls. 4u wahrend in den Fig. 21 und 22 die Speichersteuereinheit MCi/ und der Dünnschichtspeichcrbereich TFMA dargestellt ist. Da die Programmverarbeitungscinheit das zentrale Steuersystem des Rechnermoduls ist, wird die Einheit dazu benutzt, das Programm zu lesen, und die Rechen- und Speichersteuereinheit in Gang zu setzen. Ferner wird die Einheit dazu verwendet, um den Dünnschichtspeicherteil des Moduls zu adressieren und zu aktivieren. Die 49-Bit-lnformationstreiber 201-40-18 (Fig. 22) d~s TFMA werden durch den Inhalt des so IV-Registers oder des M-Registers aktiviert, um die 48-lnformationsleitungen des lokalen Dünnschichtspeichers während einer Schreiboperation zu treiben. Das übrige Bit wird von dem Paritätsgenerator des W-Registers oder des M-Registers getrieben. Das Bit wird derart erzeugt, daß eine ungerade Gesamtparität entsteht.
Das 49-Bit-/?-Register 201-40-20 (F i g. 22) erhält das 49-Bit-AusgangssignaI von den Abfühlverstärkern 201-40-21 des lokalen Speichers, wenn eine Leseoperation durchgeführt wird. Während einer Leseoperation wird das 49-Bit-Ä-Register überprüft, um sicherzustellen, daß die Gesamtparität ungerade ist. Falls eine gerade Parität festgestellt wird, wird die Hauptuhr oder der Haupttaktgeber im Rechner angehalten und auch die Verarbeitung eingestellt. Der Inhalt des Registers wird angezeigt. Es soll noch bemerkt werden, daß das Ausgangssignal des /?-Registers zu den Informationstreibern zurückgegeben wird, um eine regenerative Wiedereinschreiboperation durchzuführen, die bei dieser Art von Speicher notwendig ist. Eine PPtV-Multiplexvorrichtung 201-40-22, die in F i g. 19 dargestellt ist, liefert einen gleichzeitigen Übertragungspfad für einige Funktionen. Die Vorrichtung empfängt die Ausgangsgröße des Ä-Registers, des W-Registers, des Addierers 201-40-42 und der Indexmultiplexvorrichtung 201-40-30, um die notwendige Indizierung der Steuerinformation und die damit notwendigen Veränderungen in den Steuerinstruktionen vorzunehmen. Der Ausgang der Multiplex vorrichtung 201-40-22 ist an eine Anzahl von Register angeschlossen, die die notwendigen Decodier- und Codieroperationen entsprechend den vielfachen Funktionen vornehmen, die in den einzelnen Inhalten der Multiplexvorrichtung enthalten sind. So ist das F-Register 201-40-24 ein 12-Bit-Register, das die funktionale Information aufnimmt, die in der Multiplexvorrichtung enthalten ist. Diese Information wird decodiert (201-40-28), um die Funktion zu identifizieren, und dann an die notwendigen Steuerungen übertragen, die zur Datenverarbeitung dienen, und an die zugeordneten Adreßrechensteuerungen 201-40-32. Das /V-Register 201-40-26 ist ein weiteres 12-Bit-Register, das zur Aufnahme von Ausgangsinformation an die Multiplexvorrichtung angeschlossen ist. Es erhält Information, die codiert werden muß.
Das Unterbrechungsregister 201-40-12 (F i g. 20) und sein Maskierregister 201-40-10 liefern ebenfalls Information, die codiert werden muß. Ein Unterbrechungscodierer 201-40-13 (Fig. 19) liefert diese geeignet zu indizierende Information (201-40-30) zur Multiplexbündelung, bevor sie zum Dünnschichtadreßcodiercr 201-40-34 gelangt, um eine Adresse im lokalen Dünnschichtspeicher zu erzeugen. Diese Adresse wird dann zur nachfolgenden Adressierung des Platzes im Dünnschichtspeicher, der aktiviert werden soll, in das Adreßregister 201-40-36 gebracht.
Das 20-Bit-M-Register 201-40-3S ist ebenfalls an die Multiplexvorrichtung angeschlossen, um Information zu enthalten, die mathematisch verarbeitet werden soll. Das Register nimmt daher Information auf, die an den Addierer 201-40-42 gegeben werden soll, wo die Information mit dem Inhalt des ^-Registers 201-40-40 verarbeitet wird. Ferner empfängt es von der Multiplexvorrichtung Information, die an das S-Register 201-20-26 der Recheneinheit (Fig. 17) gegeben werden soll, um die Information für irgendeine auszuführende Schiebefunktion zu liefern.
Wie es aus Fig. 21 hervorgeht, kommt die Eingabesteuerinformation zum Rechnermodul in das 48-Bit W Register 201-40-16, ebenso wie die Eingabedaten vom Rechnermodul. Die Speicherdaten werden zunächst in mehrere Empfangsvorrichtungen 201-40-14 gebracht, die in der Lage sind, neunundvierzig solcher Datenbits zu handhaben.
Daten, die in der Recheneinheit noch mathematisch zu verarbeiten sind oder bereits verarbeitet wurden, werden mittels der internen Übertragungsvielfachleitung 201-50 (Fig. 19) des Rechnermoduls durch das W-Register geleitet. Die Speichersteuereinheit MCU (Fig. 21) bearbeitet Steuer- und Transferaufgaben, die ihr von der Programmverarbeitungseinheit (Fig. 19) übertragen werden. Sie enthält und steuert die 51-Bit-Leitungstreiber 201-30-18, die Adressen und Daten zu allen sechzehn Speichermodulen übertragen. Sie enthält die Speicherzeitvorrichtung 201-30-10, die den Synchronismus zwischen dem Speichermodu! und
'e I dem damit in Verbindung stehenden Rechnermodul :- I aufrechterhält. Alle Unterbefehle, die diese Übertrai- I gung beeinflussen, werden durch die Speicherzeitvor-■t, f richtung 201-30-10 abgegeben und gesteuert,
e i| Das 27-Bit-G-Register 201-30-12 empfängt und >- 1 enthält Information, die an die Leilungstreiber •s 1 201-30-18 weitergegeben werden soll, nachdem sie 0, I durch den Addierer 201-40-42 der Programmverarbein I tungseinheit PPU einer Adreßmanipulation unterzogen η I wurde. Zusätzlich zur Adreßinformation vom Addierer ■r i empfängt es Operationssteuerbefehle, die die auszufühn % rcndc Funktion angeben, und Ateninformation vom W- Register. Im G-Register wird Parität hergestellt, die η j den Adreßaufruf zum Speicher begleitet. Ein Paritäts-
n 1 generator am IV-Register erzeugt ebenfalls Paritälsins f formation, die die Daten begleiten. Das Paritätsauswahlnetzwerk bestimmt, welches Paritätsbit zu den vorgenannten Leitungstreibern gesendet wird. Ein Paar von 20-Bit-Registern, die getrennt mit X und Y bezeichnet sind, und zusammen das Bezugszeichen 201-30-16 aufweisen, bilden die Vorrichtung zum Prüfen der indirekten Adresse, um zu sehen, ob diese innerhalb gewisser vorgegebener Grenzen liegt. Dies wird von einem Vergleicher 201-30-20 durchgeführt, der die endgültige indirekte Adresse vergleicht, die durch den Inhalt des G-Registers gesucht wird, wobei die obere und untere Grenze in den beiden 20-Bit-Rcgistern 201-.30-16 enthalten sind.
Die Fig. 17 bis 22 bilden eine Gesamtdarstellung des Rechnermoduls. Die Register im lokalen Dünnschichtspeicher (Fig. 22) werden durch Identifiziergrößen gekennzeichnet, und zwar BAR, BPR usw.
Sobald eine Unterbrechungsbedingung auftritt, muß tier Rechnermodul die Unterbrechung erkennen und so schnell wie möglich bearbeiten. Jede Unterbrechung setzi ein besonderes Bit in dem Unterbrechungsregister 201-40-12. Wenn im Falle einer Unterbrechung die gerade ausgeführte Instruktion beendet ist, bestätig; der Rcchnermodul die Unlerbrechungsbedingung, indem er in die Steuerbetriebsart übergeht. Der Übergang von der Normalbetriebsart .~ur Sleuerbetriebsart wird durch den Empfang ausgelöst oder durch ein Signal vom Steuerflipflop ΊΤΕ. Durch das Erkennen einer Unterbrechungsbedingung wird eine Folge in Gang gesetzt, die im folgenden beschrieben wird.
Die Inhalte der Dünnschichtregister BAR, BPR und PCR werden im ISA, ISPund AS'Cgespeichert. Der vom PCR gespeicherte Wert ist die Adresse des auszuführenden Programmwortes, nachdem zur Normalbetriebsart, also zur Ausführung des unterbrochenen Programms zurückgegangen wird, oder die um eins geringere Adresse des auszuführenden Wortes, was davon abhängt, welche Silbe beim Auftreten der Unterbrechung gerade verarbeitet worden ist. Wenn eine Überlappung aufgetreten ist, wird die im PCR gespeicherte Adresse automatisch korrigiert.
Die Inhalte der Programmspeicherregister PSR1 oder PSR 2 werden im Unterbrechungsprogrammregister IPR gespeichert. Die Inhalte der Steuerflipflops, die notwendig sind, damit die Operation bei der richtigen Silbe des Programms wieder aufgenommen wird, werden im Unterbrechungs-Abzug-Register IDR gespeichert. Die Bedeutung jedes Biits des IDR wird im folgenden angegeben:
65 Bitl:
Wenn dieses Bit eine Eins ist, wurde beim Auftreten der Unterbrechung gerade ein geschlossener Codestapel verarbeitet.
Bits2-8:
Nicht benutzt.
Bits9-12:
Diese Bits; geben die Nummer des unterbrochenen Rechners an.
Bits 13-27:
Diese Bits geben den Zustand des gesamten Unterbrechungsregisters an, wenn eine Unterbrechungauftritt.
Bit 28:
Wenn dieses Bit eine Eins ist, dann bedeutet das, daß das Effektivadreßregister 113 die Adresse der Fehlerbedingung hat, die die Fehlerunterbrechung auslöste.
Bit 29:
Wenn dieses Bit eine Eins ist, dann bedeutet dies, daß der Speichermodul einen Adreßparitätsfehler, einen Datenparitätsfehler oder einen Versuch, in einen Nur-Lese-Abschnitt des Speichers zu schreiben, entdeckt hat.
Bits 30-31:
Diese Bits geben die Silbe an, die bei einer wiederholten Instruktion zuletzt benutzt wurde.
Bit 32:
Wenn dieses Bit eine Eins ist, dann bedeutet dies, daß der Verarbeiter in der Mitte einer Wiederhol-4-Silben-Instruktion war, als die Unterbrechung auftrat.
Bits 33-35:
Diese Bits geben die Adresse der nächsten PSR-SWbe an. Dies ist eine Operatorsilbe, da der Transfer zur Steuerbetriebsart nur am Ende einer Instruktion erfolgen kann. Die Silben im PSR 1 sind beginnend mit dem höchstwertigen Ende des Registers numeriert, also 3-2-1-0. Die Silben im PSR 2 sind ähnlich numeriert, also 7-6-5-4.
Bit 36:
Wenn dieses Bit eine Eins ist, wurde eine wiederholte Instruktion unterbrochen.
Bit 37:
Wenn dieses Bit eine Eins ist, wurde eine wiederholte Instruktion unterbrochen, und zwar bevor die erste Iteration ausgeführt wurde.
Bit 38:
Eine Eins an dieser Stelle bedeutet, daß das PSR 1 noch Information enthielt, nachdem die letzte Instruktion vor der Unterbrechung ausgeführt war. Wenn die Bits 38 und 39 beide Eins sind, und zwar infolge eines Überlaufs, dann wird eines dieser Bits zurückgesetzt, und zwar beim Wiederspeichern, da die Überlappung bei der Rückkehr zur normalen Betriebsart verlorengeht.
Bit 39:
Eine Eins bedeutet, daß das PSR 2 noch Informa tion enthielt, und zwar nach der Ausführung der letzten Instruktion, bevor die Unterbrechung durchgeführt wurde. Wenn die Bits 38 und 39 beide Eins sind, und zwar infolge eines Überlappens, dann wird beim Rückspeichern eines der Bits zurückgesetzt, weil dabei die Überlappung verlorengeht.
Bit 40:
Eine Eins bedeutet an dieser Stelle, daß das Überlauf-Flipflop POVgesetzt und der zugeordnete Indikator dies angibt
Bit41:
Eine Eins bedeutet, daß das Unterlauf-FIipflop PUNgesetzt ist und der Anzeiger dies angibt.
fr 30
Eine Eins bedeutet, daß das Nichtnormierflipflop PNN gesetzt ist und der betreffende Anzeiger dies
angibt.
Bits 43-44:
Diese Bits betreffen den Inhalt des Stapelzählers und geben an, welches Register des Stapels oben ist: 0, 1, 2 oder 3 (entsprechend den Positionen
1-4).
Bit 45: ίο
Eine Eins bedeutet, daß der Rechnermodul in der
Steuerbetriebsart arbeitete.
Bit 46:
Eine Eins bedeutet, daß die vorliegende Unterbrechungsbedingung ein Hauptnetzausfall ist.
Eine Eins bedeutet, umgekehrte Operation des
Stapelzählers.
Bit 48:
Eine Eins bedeutet, daß der Rechnermodul in der Steuerbetriebsart ß arbeitete.
Das Steuerbetriebsartflipflop wird auf gewisse Instruktionen hin gesetzt, die beim Betrieb in der Normalbetriebsart nicht verfügbar sind und die zeitweise die Verarbeitung von anderen Unterbrechungsbedingungen verhindern, mit Ausnahme der beiden Unterbrechungen mit der höchsten Priorität, nämlich Hauptnetzausfall und Schalten oder Zählen der Realzeituhr.
Der Inhalt des Unterbrechungsregisters IAR wird in das BAR und BPR gegeben. Das IAR kann nur in der Steuerbetriebsart geladen werden und enthält die Grundadresse einer Tabelle von zwölf Datenwörtern, die die Startadressen von Routinen bezeichnen, die die zwölf Unterbrechungsbedingungen bedienen. Diese Tabelle wird von dem Programmierer aufgestellt, und zwar derart, daß jede Unterbrechungsbedingung von der passenden Routine bedient wird. Der Programmierer muß auch diese Bedienungsroutinen schreiben, falls das Programm nicht unter der Steuerung eines Exekutivprogramms laufen soll. Unterbrechungsbedienroutinen sind mit einer Gruppe von Subroutinen ähnlich, von denen jede eine Reihe von Operationen aufführt, um entweder (a) den Grund der Unterbrechungsbedingung und die ihr zugrunde liegende Ursache r-u bestimmen, (b) den unterbrochenen Abschnitt des Programms kurzzuschließen, (c) das Programm erneut zu starten und den verdächtigen Abschnitt noch einmal durchzuführen oder (d) eine Identifizierung der Unterbrechung auszudrucken und anzuhalten.
Die Speicheradresse des ersten Speicherplatzes der Unterbrechungsbedienroutine einer besonderen Unterbrechungsbedingung wird dadurch berechnet, daß die in der Tabelle von Fig.6 angegebene Unterbrechungsnummer zum Inhalt des Unterbrechungs-Grundadreß-Registers IAR hinzugezählt wird.
Das Bit im Unterbrechungsregister 201-40-12, das der zu verarbeitenden Unterbrechungsbedingung entspricht, wird zurückgesetzt.
Dann wird das POV, PUN, PNN und alle anderen notwendigen Steuerflipflops zurückgesetzt, so daß sie vom Steuerbetriebsartprogramm benutzt werden können, ohne daß sie von diesem zuerst zurückgesetzt werden müssen.
Wenn die Unterbrechung durch eine Störbedingung, beispielsweise POV, PUN oder PNN, hervorgerufen wurde, dann werden diejenigen Füpflops. die die Unterbrechung verursachen, nicht zurückgesetzt. Von den anderen wird der Inhalt gespeichert und sie werden zurückgesetzt, so daß man in sie wieder einspeichern kann, wenn die /^-Instruktion ausgeführt wird. Diejenigen Flipflops, die den Bedingungen, die die Unterbrechung auslösten, zugeordnet sind, werden zurückgesetzt, wenn die /Aß-Instruktion ausgeführt wird, falls sie nicht vorher zurückgesetzt worden sind.
Das Steuerprogramm aufgrund einer Unterbrechung ist daher im allgemeinen (mit Ausnahme der beiden ersten Unterbrechungen in Fig.6) eine Service- oder Dienstroutine, die die jeweils notwendigen Handlungen steuert. Diese Serviceroutinen sind in einer Tabelle in den Hauptspeichermodulsn zusammengestellt. Zu jeder der aufgeführten Unterbrechungsbedingungen gibt es eine zugehörige Routine, die an einer besonderen Adresse der gespeicherten Liste angeführt ist.
Wenn aufgrund eines Untctrechungssignals keine Programmhandlung benötigt wird, kann man eine codierte /RÄ-Instruktion an dem betreffenden Tabellenplatz aufführen. Die folgende Tabelle zeigt typische Hand!ungswe;sen, die zum Bedienen der genannten Unterbrechungen benutzt werden:
Hauptnetzausfall (PPF):
Starte erneut irgendeine Ein/Ausgabe-Operation, die durch den Netzausfall beeinträchtigt wurde.
Externe Aufrufe (EXR):
Mache den Rechner auf die externen Aufrufe aufmerksam.
Ein/Ausgabe-Beendigung (IOT):
Prüfe den Zustand im Ergebnisdeskriptor auf richtige Beendigung der Ein/Ausgabe-Operation.
Rechnerunterbrechung (INTC):
Suche in der Aufgabentabelle die durchzuführende Aufgabe.
Realzeituhr-Überlauf (RTC):
Führe die Operation durch, wenn das vorgeschriebene Zeitintervall verstrichen ist.
Äußere indirekte Grenzen (OIB):
Finde heraus, warum die effektive Adresse außerhalb der Speichergrenzen liegt.
Illegale Instruktion (ILIN):
Starte Ein/Ausgabe-Operation, wenn ein unbenutzter Zahlencode die Unterbrechung verursacht.
Kein Zugriff zum Speicher (NOAM):
Finde heraus, warum eine Operandadresse sich auf einen nicht im System befindlichen Speicherplatz bezieht.
Datenaufrufmodul-VerbindungenfDDM/-
Beginne den DDA-f-Deskriptor-Stapel zu bedienen.
Subroutinensprung (SRJ):
Zeichne auf, daß in eine Subroutine eingetreten wurde. (Hauptsächlich benutzt zum Aufspüren von Verbindungen.)
Eine einzige Instruktion (SIN):
Interpretiere die als nächstes ausgeführte Instruktion. (Hauptsächlich zum Überprüfen von neuen Programmen benutzt.)
Nichtnormale Bedingung (ABCN):
Berichtige Datenwerte infolge von Überlauf oder Unterlauf.
Halt (HL T):
Führe eine Steuerbetricbsartoperation durch, beispielsweise Verändern der Speichergrenzen.
Snag-Bit (SNAG,):
Führe Programmaktion durch, wenn Sperren vom Speicherwort oder Tabelle iiuf tritt.
volls der; gabt enth ein Dies bent wen Ein/ odei besc len-401 Bez Ein/
verl Sch mal. lnfc spei in
g!ei Dat fan j kun Gei zeit ber kur des 1-N
an§ me
zu ?v de bc Ei Ih
tion,
rufe
auf
η.
auf
latz
:ten
von
•ukuen
Paritätsfehler (PER):
Erzeuge erneut die Daten, weil Fehler im Speicherwort.
Die Ausführung einer Instruktion, die Speicher-Extern-Aufruf-Instruktion SER genannt wird, veranlaßt, daß der Inhalt des Unterbrechiingsregisters 201-40-12 in den Bits 21 bis 32 der S£Ä-Instruktion-Speicheradresse gespeichert wird. Diese identifiziert die auf Verarbeitung wartenden Unterbrechungssignale.
Die F i g. 23 zeige ein Einzelblockschaltbild eines vollständigen Ein/Ausgabe-Steuermodul-Schrankes, der zwei vollkommen voneinander getrennte Ein/Ausgabe-Steuereinheiten Nr. 1 und Nr. 2 oder Kanäle enthält. In dieser Beschreibung soll unter einem Modul ein Schrank oder ein Gehäuse verstanden werden. Diese Ausdrücke werden miteinander austauschbar benutzt. Die beiden Einheiten innerhalb eines Moduls werden auch Kanäle oder Submodule genannt. Die Ein/Ausgabe-Steuermodulschränke 401 und die Kanäle oder Einheiten 401-1 und 401-2 wurden bereits beschrieben. Dabei wurden die peripheren Schnittstellen- und Speicherverbindungsabschnitte des Moduls 401-10 und 401-12 bezeichnet. Diese grundsätzlichen Bezugszeichen werden in der in Fig. 23 dargestellten Einzeldarstellung ergänzt.
Um die Arbeitsweise des Ein/Ausgabe-Motiuls zu verbessern, wurde jedem Modul in einem Ein/Ausgabe-Schrank ein Zwischenregister hinzugefügt. Operationsinäßig liegt das Zwischenregister zwischen dem Informationsregister und dem Verbindungszwischenspeicher, Durch diese Modifikation und eine Änderung in der Prioritätslogik, können jetzt beide Kanäle gleichzeitig mit einem 1-MHz-Gerät arbeiten und Daten von derselben Speichersteuervorrichtung empfangen, die eine Systemzykluszeit bis zu 3,25 Mikrosekunden pro Zyklus haben kann. Wenn langsamere Geräte benutzt werden, kann man die Speicherzykluszeit erhöhen. Wenn beispielsweise ein 500-kHz-Gerät benutzt wird, kann man einen Speicher mit 8,5 Mikrosekunden pro Zyklus verwenden. Wenn nur eine Einheit des Ein/Ausgabe-Schrankes benutzt wird, kann das IMHz-Gerät mit einem 16-Mikrosekunden-Speicher zusammenarbeiten usw.
Die obigen Zeiten sind lediglich Beispiele. Es soll angenommen werden, daß keine anderen Hauptrahrr-enaufrufe zur Speichersteuervorrichtung kommen, die von der Ein/Ausgabe benutzt wird. Da dies eine unpraktische Beschränkung ist, sind in vielen Fällen die obengenannten Speicherzyklusgeschwindigkeiten die maximal erlaubten Geschwindigkeiten. Die Geschwindigkeiten sollten so hoch wie möglich sein, wenn 1 M Hz-Geräte benutzt werden. Zur Systemoptimierung kann man eine Kombination von einigen sehr schnellen Speichern benutzen, d. h., wenn schnelle und langsame Geräte verwendet werden. Die schnellen Speicher könnte man für Übertragungen aus Platten- oder Trommelgeräten benutzen und die langsamen Speicher für Druckeroperationen.
Da es möglich ist, daß der Ein/Ausgabe-Modul nicht zur rechten Zeit einen Speicherzugriff bekommt, und zwar infolge der Verarbeitung von anderen Aufrufen an den Speicher mit höherer Priorität, sind alle davon betroffenen Geräte derart ausgerüstet, daß sie die Ein/Ausgabe-Operalion beenden, wenn die Ein/Ausgabe die benötigten Daten nicht zur Verfugung hat.
Alle Daten von der Ein/Ausgabe zum Speicher und den Geriiteii enthalten ein Piiniiitsbit. Die Speicherdntenleiturigen enthalten eine Parität sowohl an den Adreß- als auch an den Datenbits zum Speicher. Die Gerät-Daten-Leitungen enthalten Parität am Befehlscode, bei der Aufzeichnungszählung als auch an den Daten zum Gerät.
Die Ein/Ausgabe weist noch gewisse interne Paritätsüberprüfungen auf. Diese enthalten eine Paritätsvorausschau, UiTi sowohl die Wort- als auch Adressenzähler zu prüfen, und die zeichenweise Bestimmung der Datenwortparität, um sicherzustellen, daß die Parität vom und zum Speicher mit derjenigen Parität übereinstimmt, die durch dieses Verfahren bestimmt worden ist. Das letzte Verfahren zeigt, ob sich beim Verschieben innerhalb der Ein/Ausgabe Bits geändert haben.
Um den internen Deskriptortransfer zu überprüfen werden nach der Übertragung zum Deskriptorregister alle Deskriptoren zurück in den Verbindungs- oder Übertragungszwischenspeicher gebracht, um festzustellen, ob die in dem Verbindungszwischenspeicher CB erzeugte Parität noch mit der vom Speicher erhaltenen Parität übereinstimmt. Durch diese Überprüfung kann man verhindern, daß ein falsches Gerät ausgelöst wird, daß falsche Information in den Speicher geschrieben oder aus dem Speicher gelesen wird, daß zu wenig oder zu viel Information von einem besonderen Gerät geschrieben oder gelesen wird oder daß ein Gerät eine falsche Operation ausführt.
Ferner ist ein Prüfdeskriptor vorgesehen, der dem obigen Weg folgt, der jedoch einen Ergebnisdeskriptor zurückschickt, anstatt ein Gerät zu starten. Dadurch wird, falls ein Problem beim Deskriptortransfer auftritt.
das Programm in die Lage versetzt, zu bestimmen.
welches Bi' aufgefangen oder fallen gelassen worden ist.
Die Deskriptorüberprüfung zusammen mit der vorausschauenden Paritätsergänzung an den Wort- und Adreßziihlern trägt viel dazu bei, die Ein/Ausgabe zu verhindern, daß sowohl im Speicher als auch in den Geräten Information, die eigentlich nicht berührt werden sollte, zerstört oder überschrieben wird.
Durch diese gerätetechnischen Sicherheitsmaßnahmen sind die Speicherbereiche sowohl in den peripheren Rahmen als auch im Hauptrahmen gut davor geschützt, an nicht bekannten Stellen zerstört zu werden. Durch diese Maßnahmen werden schlechte Speicherbereiche bekannt und die Zerstörung wird aul drei oder weniger Wörter beschränkt. Wenn in der Adreß-Zähler-Gerät-Nummer oder am Befehl-Code-Platz in der Ein/Ausgabe ein Fehler auftritt, dann treten sowohl im Hauptrahmen als auch im peripheren Speicher keine schlechten Stellen auf.
Da im vorliegenden System die acht Ein/Ausgabe-Steuermodulschränke identisch sind, genügt es einen einzigen zu beschreiben. Jeder Schrank gestattet es, daß gleichzeitig mit der Datenverarbeitung Ein/Ausgabe-Operationen durchgeführt werden können. Fernet steuert der Schrank den Transfer und das Format dei Daten zwischen den peripheren Geräten und den Hauptspeichermodulen. Bei Beendigung des Datentransfer werden alle Einrichtungen automatisch ir einen Fertigzustand für neue Aufrufe gebracht, und durch die Systemunterbrechung wird das Exekutivprogramm von der Beendigung der Ein/Ausgabe-Operation informiert.
Zwischen dem Systemspeicher und jedem det
fts Ein/Ausgabe-Steuermodule wird der Kontakt Ober den Speichel verbindungsabschnitt des Ein/Ausgabe-Moduh aufrechterhalten, wie es im oberen Teil der Fig. 2] gezeigt ist. Dieser Abschnitt des Moduls wird iir
illgemeinen von den beiden Ein/Ausgabe-Einheiten geteilt. Dies trifft auch für den peripheren Schnittstellenabschnitt zu, der im unteren Teil der Figur gezeigt ist. Da beide Steuereinheiten bidirektional arbeiten können, muß man die Beschreibung des Signalflusses durch den Modul mit einer besonderen Operation kennzeichnen, beispielsweise Eingabe oder Ausgabe. Eine Ausgabeoperation enthält im allgemeinen den Transfer von Speicherinformationsdaten in 48-Bit-Segmenten oder Wörtern durch das zentrale Zusammenschaltnetz zu (o dem Verbindungszwischenspeicherregister 401-12-18 des Ein/Ausgabe-Steuermoduls. Von dort gelangen die Daten zum Zwischenspeicherregister und schließlich zum Informationsregister 401-2-12 der Einheit Nr. 2. In jedem Falle wird das 48-Bit-Wort danach in serieller Folge von 6-Bit-Zeichensegmenten zu einem peripheren Ausgabegerät übertragen, und zwar unter der Steuerung dieses Gerätes.
Eine Eingabeoperation liegt vor, wenn Informationszeichen sequentiell von einem peripheren Eingabegerät geliefert werden, anschließend in irgendeiner der Ein/Ausgabe-Steuereinheiten zu einem 48-Bit-Wort zusammengesetzt, anschließend in das Zwischenspeicherregister übertragen und dann zum Verbindungszwischenspeicher 401-12-18 gebracht werden, um die Information auf den Leitungen des Steuernetzes in einen besonderen Speicherplatz zu bringen. Da die beiden Operationen in derselben Weise begonnen werden, d. h. durch einen Deskriptortransfer vom Systemspeicher zu einem Ein/Ausgabe-Modul, und zwar unter den Befehlen von einem Rechnermodul, werden aile Operationen in derselben Weise ausgelöst und folgen daher auch dem gleichen Muster.
Alle Ein/Ausgabe-Einheit-Operationen werden ausgelöst aufgrund einer Ein/Au^gabe-Instruktion eines Rechnermoduls, der in seiner Steuer-A-Betriebsart arbeitet. Diese Instruktion wird mit »Übertrage einen Deskriptor zur Ein/Ausgabe« TIO bezeichnet. Diese Instruktion läuft wie folgt ab. Der Rechnermodul verlangt Zugriff zu einem Speichermodul. Nach Gewährung des Zugriffs wird der Inhalt des Speicherwortplatzes (ein Deskriptor) zu dem Ein/Ausgabe-Steuermodul übertragen, der von dem den Speicheraufruf begleitenden Befehlscode bezeichnet wird. Dieses Anfangswort tritt in das Deskriptorregister 401-1-26 über das Verbindungszwischenspeicherregister 401-12-18ein.
Die Eingabe in das gemeinsam benutzte Verbindungszwischenspeicherregister wird über eine selektive Torvorrichtung vorgenommen, die in der F i g. 23 Einseiten-Eingabevorrichtung 401-12-16 genannt ist. Durch selektives Eintasten von Information in das Verbindungszwischenspeicherregister 401-12-18 ermöglicht es die Einseiten-Eingabevorrichtung 401-12-16, daß der Verbindungszwischenspeicher vom Speicher kommende Information annimmt, wenn eine Ausgabeoperation vorgeschrieben ist. Ferner ermöglicht die Einseiten-Eingabevorrichtung, daß der Verbindungszwischenspeicher ein aus Zeichen zusammengesetztes Wort von einem der Zwischenspeicherregister 401-1-12, 401-2-12 annimmt, wenn eine Eingabeoperation vorgeschrieben ist. Die Speicherinformationsdaten, die während einer Ausgabeoperation in den Verbindungszwischenspeicher 401-12-18 von der Einseiten-Eingabeeinrichlung 401-12-16 gelangen, werden in das eine oder andere der Zwischenspeicherregister 401-1-12 oder 401-2-12 übertragen. Wenn der Transfer vom Sneicher Steuerdaten umfaßt, d. h. einen Deskriptor.
dann geschieht die Übertragung von dem Verbindungszwischenspeicher in das eins oder andere der Deskriptorregister 401-1-26, 401-2-26, unabhang.g davon, ob es sich um eine Eingabe- oder eine Ausgabeoperation handelt.
Daten die in den Verbindungszwischenspeicher gegeben werden, ob es sich jetzt um Information oder Steuerung handelt, die zum Speicher zurückgeschickt wird, d. h. Eingabeinformationsdaten oder Ergebnisdeskriptoren, nehmen nicht nur beim Verlassen des Verbindungszwischenspeichers einen verschiedenen Weg, sondern werden auch in einer verschiedenen Weise gehandhabt.
Der genommene Weg führt von dem Verbindungszwischenspeicher zu Gruppen von Leitungstreibern. Eine Gruppe dieser Treiber 401-12-38 enthält insgesamt fünfundzwanzig Leitungstreiber, wohingegen eine zweite Gruppe 401-12-32 dreiundzwanzig von diesen Leitungstreibern aufweist. Ein Paritätstreiber 401-12-36 ist ebenfalls vorhanden und erhält ein Paritätssignal vom PÄritätsgenerator 401-12-34.
Während die fünfundzwanzig Leitungstreiber 401-12-38 ihre Daten direkt vom Kommunikationszwischenspeicher oder Verbindungszwischenspeicher erhalten, ;st dies bei den dreiundzwanzig Leitungstreibern 401-12-32 nicht der Fall. Von den letztgenannten Leitungstreibern werden zwanzig von einer zweiten selektiven Toreinrichtung beliefert, die ebenfalls Einseiten-Eingabevorrichtung 401-12-26 genannt wird. Die drei übrigen Treiber werden von einem Lese/Schreib-Schalter 401-12-30 beliefert, der die auszuführende Operation von einer Steuervorrichtung signalisiert, die jeder Einheit Nr. 1 und Nr. 2 zugeordnet ist.
Die dreiundzwanzig Leitungstreiber, die von den Einseiten-Eingaben 401-12-26 versorgt werden, werden abwechselnd mit Informations- und Steuerdaten beliefert. Die Einseiten-Eingaben 401-12-26 können wahlweise Information zu allen zwanzig Treibern von dem Zwisrhenspeicherregister 401-12-18 durchtasten. Dies wird getan, wenn die 20-Bit-Speicheradresse in dem 48-Bit-Inhalt des Kommunikationszwischenspeichers 401-12-18 enthalten ist. Information, die den 15-Bit-Inhalt des Deskriptor-Grundadreß-Registers 401-12-30 und die fünf Bits, die dasjenige periphere Gerät bezeichnen, das einen Einricht- oder Auslösedienst 401-12-22 benötigt, vereinigt, kann ebenfalls diesen zwanzig Leitungstreibern zugeführt werden.
Auf die Instruktionen, die im Deskriptorwort enthalten sind, das sich in jedem der Deskriptorregister 401-1-26 und 401-2-26 befindet, wird in F i g. 23 lediglich symbolisch hingewiesen. Das Deskriptorwort enthält die laufende Periphergerätnummer, den Außengerät-Operationscode, die Anzahl der zu verarbeitenden Aufzeichnungen, den zu benutzenden Speicherplatz und das Ein/Ausgabe-Operation-Zustandsfeld. Eine Deskriptordecodiervorrichtung 401-1-28 und eine passende Steuerlogikvorrichtung 401-1-36 sind diesem Deskriptorregister zugeordnet. Ebenfalls sind sie dem Instruktionsregister im Rechnermodul zugeordnet. Das für diese Operation zu benutzende periphere Gerät wird von einer Gerät-Leiuingspaar-Selektionseinrichuing 401-1-λθ aufgrund des 5-Bit-ldentifiziersignals vom Deskriptorregister 401-1-26 ausgewählt. Die Zustandsinformation ESL von peripheren Eingabe- und Ausgabegeräten gelangt in die Einheit über die LRX-Empfänger-Mischer 401-1-32. Das gleiche gilt für die von beiden Gerätearten kommende Information, die die Verfügbarkeit UA der Einheit betrfft.
Da bestit gewis Gera wird vorg« Zwec
Jec schlu Scnni schni ber ment zu di Ausg aufru tung 401-1 Die scher Ein// ßend ten S speie ster, ( die zwisc 401-1
folgt:
des s sehet
35
icher oder hickt sdesdes tenen lenen
ungsbern. :sami zweiiesen 12-36 iignal
eibcr szwi-•r eribern nnten 'eiten insei-. Die ireibrende n, die
ι den
belieilwei-
ichers iit-In-
dienst diesen
Da die Einheit diese Information von den Geräten bestimmen muß, benötigt sie eine Einrichtung, die gewisse Steuersignale den Zeichen auferlegt, die zu den Geräten gesendet werden. Für periphere Eingabegeräte wird diese Steuerung von eiern Mischer 401-1-34 vorgenommen, während für Ausgabegeräte für diese Zwecke der Mischer 401-1-22 benutzt wird.
Jeder Ein/Ausgabe-Steuermodul tritt mit dem Abschlußgerät (pe-ipheres Gerät) über die Ein/Ausgabe-Scnnittstellenschaltung in Verbindung. Die Eingabeschnittstellenschaltung enthält mehrere Mischer/Treiber 401-10-1, die die Decodier-Misch- und Treiberelemente für alie Leitungen, die vom Ein/Ausgabe-Modul zu den peripheren Geräten führen, enthalten. Diese Ausgabeschaltung benötigt Empfänger für das Zeichenaufrufsignal vom Gerät. Die Eingabeschnittstellenschaltung enthält mehrere Empfängervorrichtungen 401-10-8 und Eingabeauswähleinrichtungen 401-10-6. Die Eingabesignate werden über die Empfänger-Mischer 401-10-4 nach einem Multiplexverfahren in die Ein/Ausgabe-Steuereinheiten gegeben und anschließend in den 2-Zeichen-Zwischenspeicher der geeigneten Steuereinheit überführt. Der 2 Zeichen-Zwischenspeicher 401-1-10 ist ein zusätzliches 2-Zeichen-Register, das mit dem Informationsregister verbunden ist, um die beiden 'letzten Zeichen des 8-Zeichen-Wortes zwischenzuspeichern. Der 2-Zeichen-Zwischenspeicher 401-1-10 arbeitet während einer Ausgabeoperation wie folgt: Gleichzeitig mit der Übertragung de. sechsten Zeichens vom Register wird eine Parallejübertragung des siebten und achten Zeichens in den 2-Zeichen-Zwischenspeicher vorgenommen. Zu diesem Zeitpunkt ist
ίο
das Informationsregister für die nächste Wortübertragung vom Zwischenspeicherregister 401-12-18 verfügbar, obwohl das siebte und achte Zeichen noch nicht zum peripheren Gerät übertragen worden sind. Jede Ein/Ausgabe-Einheit hat die Fähigkeit, eine Operationsüberlappung zwischen der gerade übertragenen Information und der gerade benutzten Information vorzunehmen.
Dieser 2-Zeichen-Zwischenspeicher tritt auch während einer Eingabefolge in Operation. Dabei nimmt er seriell die beiden ersten Zeichen des nächsten Wortes, das gerade von dem peripheren Gerät übertragen wird, auf. wobei zur selben Zeit das vorher im Informationsregister zusammengesetzte Wort durch das Zwischen-Speicherregister und den Verbindungszwischenspeicher in den Hauptspeicher übertragen wird. Während dieses Zeitabschnitts führt die Ein/Ausgabe-Einheit zwei Funktionen gleichzeitig aus, so daß sie eine Operations-Überlappung vorsieht.
Die Eingabe- und Ausgabe-Gerät-Schnittstellenabschnitte im unteren Teil der Fig.23 haben jeweils eir Verbindungskabel mit 224 Leitungen, an denen das Bezugswort »Daten« steht. Diese Verbindung enthäli zweiunddreißig Gruppen von jeweils sieben Leitungen die jeweils ein 6-Bit-Zeichen und ein Paritätsbl· übertragen. Jede 7-Leitung-Gruppe bildet zusammer riiit einer 5-Leitung-Gruppe von Steuerleitungen eir getrenntes Kabel. Die Signale an diesen Leitunger beziehen sich auf die drei Grundarten von peripherer Geräten, nämlich einfache Eingabegeräte, einfach« Ausgabegeräte und kombinierte periphere Geräte.
Hierzu 29 Blatt Zeichnungen
>rwcrt igister diglich :nthält igerättenden itz und : Desssende eskripnstruk-

Claims (11)

Patentansprüche:
1. Modular aufgebaute Datenverarbeitungsanlage mit mehreren Speichermodulen, mehreren Ein/Ausgabe-Steuermodulen und mehreren zentralen Verarbeitungsmodulen sowie mit einer Verbindungseinrichtung, über die jeder der Speichermodule mit einem der übrigen Module bidirektional verbindbar ist, dadurch gekennzeichnet, daß jeder der Speichermodule (100; 101 bis 116) von einer Vielzahl von Speichermatrixblöcken unterschiedlicher Speicherkapazität und Zugriffszeit einen der Speichermatrixblöcke (101-120; 101-24) enthält, daß jede der zentralen Verarbeitun^seinheiten (200: 201 bis .203) eine Einrichtung zum Auswählen eines der Speichermatrixblöcke entsprechend der gewünschten Kapazität und Zugriffszeit zur Verwendung in den Speichermodulen der Anlage aufweist und daß in jedem der Speichermodule auf die Auswähleinrichtungen der zentralen Verarbeitungseinheiten ansprechende Speichermodulauswähl- und Adreßeinrichtungen (101-143 in Fig. 11; 101-24-10, 101-24-105 in F i g. 24) vorgesehen sind.
2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß die Einrichtung zum Auswählen der Speichermatrixblöcke eine Schalteinrichtung ist, die in der Lage ist, von einer der Speichermodulkapazitäten auf eine andere umzuschalten.
3. Datenverarbeitungsanlage nach Anspruch 2, dadurch gekennzeichnet, daß die Schalteinrichtung zum kompatiblen Zusammenschalten von mehreren Speichermodulen (t00) verschiedener Arbeitsgeschwindigkeiten mit den Nichtspeichermodulen (200, 400, 700) der Anlage Takt- und Steuereinrichtungen (201-30-10,201-40-32,101-24-24) aufweist.
4. Datenverarbeitungsanlage nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß an die Schalteinrichtung mindestens eine erste Registereinrichtung mit damit verbundenen Auswahlmitteln zur Bezeichnung von mindestens einer ersten und zweiten Speicheradrcßbitmenge der Anlage angeschlossen ist.
5. Datenverarbeitungsanlage nach einem der Ansprüche 2 bis 4, dadurch gekennzeichnet, daß an die Schalteinrichtung eine Einrichtung angeschlossen ist, die zum Betrieb der Anlage mit Einfach- und Mehrfach-Wortformaten unterschiedlicher Wortlänge verschiedenartige Wortformate liefert.
6. Datenverarbeitungsanlage nach einem der Ansprüche 2 bis 5, dadurch gekennzeichnet, daß die Schalteinrichtung eine Operationsbetriebsart-Auswahleinrichtung (101-24-24), ein daran angeschlossenes Adreßregister (101-24-10) und mehrere mit dem Adreßregister verbundene Adreßauswahltore (101- 24-105) aufweist.
7. Datenverarbeitungsanlage nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß jeder Speichermodul einer ersten Speichermodulgruppe eine Speicherkapazität von η Multibit-Wörtern und jeder Speicher einer zweiten Speichermodulgruppe eine Speicherkapazität von m Multibit-Wörtern hat und daß jeder zentrale Verarbeitungsmodul eine Schalteinrichtung mit einer ersten Stellung zum Auswählen irgendeines Wortes der η Multibit-Worter in irgendeinem Speichermodul der ersten Speichermodulgruppe und mit mindestens einer zweiten Stellung zum Auswählen irgendeines Wertes der η Multibit-Wörter ir '^nde.nem Speichermodul der zweiten Speichermodulgruppe
aufwcist u 7
"
8. Datenverarbeitungsanlage nach Anspruch/, dadurch gekennzeichnet, daß die Sctalteinnd> tung Mittel zum Ändern der Mult.b.tadresse der Anlage von einer Vielzahl von Bits in eme andere Vielzahl von Bits aufweist. . 7
9. Datenverarbeitungsanlage nach Anspruch/ oder 8, dadurch gekennzeichnet, daß jeder· zentra e Verarbeitungsmodul eine Einrichtung enthaU, de zwischen einer /,-Bit-Adresse und ^1* Adresse umschalten kann, wöbe, ro großer als n ist. so daß sich die Anlage durch Spe.cherexpansion oder Speicherkontraktion den jeweiligen Verhaltnissen anpassen kann und verschiedenartige Gruppen von Wortformaten von der Anlage verwendet werden können. . .
Datenverarbeitungsanlage nach einem aer vorstehenden Ansprüche, dadurch gekennzeichnet, daß jeder einer Gruppe von Steuerungseinheiten einzeln mit allen Eiii/Ausgabe-Steuermodulen verbunden ist und daß eine Gruppe von Speichereinheiten über eine Verbindungsmatrix mit jedem der Sieuerungseinheiten derart verbindbar ist dall irgendeine der Steuerungseinheiten das Lesen, Schreiben und Steuern von irgendeiner der Speichereinheiten leiten kann.
11. Datenverarbeitungsanlage nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß eine Gruppe von Speichermodulen eine Gesamtspeicherkapazität von wahlweise m Wortern oder η Wörtern aufweist und jeder zentra e Verarbeitungsmodul eine Schalteinrichtung enthalt, die in einer ersten Schaltstellung irgendeines der m Wörter und in einer zweiten Schaltstellung irgendeines der η Wörter selektiv adressieren kann.
Datenverarbeitungsanlage nach Anspruch 11, dadurch gekennzeichnet, daß die Gruppe von Spcichermodulen eine Anzahl von χ Speichermodulen enthält, wenn die Speicherkapazität m Worter beträgt, und daß die Gruppe von Speichermodulen eine Anzahl von y Speichermodulen enthalt, wenn die Speicherkapazität π Wörter beträgt.
DE19691929010 1968-06-10 1969-06-07 Modular aufgebaute datenverarbeitungsanlage Ceased DE1929010B2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US73591168A 1968-06-10 1968-06-10

Publications (2)

Publication Number Publication Date
DE1929010A1 DE1929010A1 (de) 1970-01-15
DE1929010B2 true DE1929010B2 (de) 1976-09-16

Family

ID=24957740

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19691929010 Ceased DE1929010B2 (de) 1968-06-10 1969-06-07 Modular aufgebaute datenverarbeitungsanlage

Country Status (7)

Country Link
US (1) US3548382A (de)
JP (1) JPS5113980B1 (de)
BE (1) BE734246A (de)
DE (1) DE1929010B2 (de)
FR (1) FR2010550A1 (de)
GB (1) GB1277902A (de)
NL (1) NL6908726A (de)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3983539A (en) * 1969-05-19 1976-09-28 Burroughs Corporation Polymorphic programmable units employing plural levels of sub-instruction sets
US4942516A (en) * 1970-12-28 1990-07-17 Hyatt Gilbert P Single chip integrated circuit computer architecture
USH1970H1 (en) 1971-07-19 2001-06-05 Texas Instruments Incorporated Variable function programmed system
US3805247A (en) * 1972-05-16 1974-04-16 Burroughs Corp Description driven microprogrammable multiprocessor system
JPS535785B2 (de) * 1973-03-31 1978-03-02
US3949374A (en) * 1973-06-28 1976-04-06 Tokyo Denryoku Kabushiki Kaisha Arrangement for supplying input signals to central processing units without interruption of programs
US3905023A (en) * 1973-08-15 1975-09-09 Burroughs Corp Large scale multi-level information processing system employing improved failsaft techniques
US3906163A (en) * 1973-09-14 1975-09-16 Gte Automatic Electric Lab Inc Peripheral control unit for a communication switching system
US4096571A (en) * 1976-09-08 1978-06-20 Codex Corporation System for resolving memory access conflicts among processors and minimizing processor waiting times for access to memory by comparing waiting times and breaking ties by an arbitrary priority ranking
US4931922A (en) * 1981-10-01 1990-06-05 Stratus Computer, Inc. Method and apparatus for monitoring peripheral device communications
US4486826A (en) * 1981-10-01 1984-12-04 Stratus Computer, Inc. Computer peripheral control apparatus
JPH0812621B2 (ja) * 1981-10-01 1996-02-07 ストレイタス・コンピュータ・インコーポレイテッド 情報転送方法及び装置
US4866604A (en) * 1981-10-01 1989-09-12 Stratus Computer, Inc. Digital data processing apparatus with pipelined memory cycles
US4597084A (en) * 1981-10-01 1986-06-24 Stratus Computer, Inc. Computer memory apparatus
US4816990A (en) * 1986-11-05 1989-03-28 Stratus Computer, Inc. Method and apparatus for fault-tolerant computer system having expandable processor section
US6802022B1 (en) 2000-04-14 2004-10-05 Stratus Technologies Bermuda Ltd. Maintenance of consistent, redundant mass storage images
US6901481B2 (en) 2000-04-14 2005-05-31 Stratus Technologies Bermuda Ltd. Method and apparatus for storing transactional information in persistent memory
US6862689B2 (en) 2001-04-12 2005-03-01 Stratus Technologies Bermuda Ltd. Method and apparatus for managing session information
US6948010B2 (en) 2000-12-20 2005-09-20 Stratus Technologies Bermuda Ltd. Method and apparatus for efficiently moving portions of a memory block
US6886171B2 (en) * 2001-02-20 2005-04-26 Stratus Technologies Bermuda Ltd. Caching for I/O virtual address translation and validation using device drivers
US6766413B2 (en) 2001-03-01 2004-07-20 Stratus Technologies Bermuda Ltd. Systems and methods for caching with file-level granularity
US6874102B2 (en) 2001-03-05 2005-03-29 Stratus Technologies Bermuda Ltd. Coordinated recalibration of high bandwidth memories in a multiprocessor computer
US6971043B2 (en) * 2001-04-11 2005-11-29 Stratus Technologies Bermuda Ltd Apparatus and method for accessing a mass storage device in a fault-tolerant server
US6996750B2 (en) 2001-05-31 2006-02-07 Stratus Technologies Bermuda Ltd. Methods and apparatus for computer bus error termination
US9515204B2 (en) * 2012-08-07 2016-12-06 Rambus Inc. Synchronous wired-or ACK status for memory with variable write latency
JP7282342B2 (ja) 2018-06-13 2023-05-29 国立大学法人東北大学 Memsデバイスの製造方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3274561A (en) * 1962-11-30 1966-09-20 Burroughs Corp Data processor input/output control system
US3319226A (en) * 1962-11-30 1967-05-09 Burroughs Corp Data processor module for a modular data processing system for operation with a time-shared memory in the simultaneous execution of multi-tasks and multi-programs
US3349375A (en) * 1963-11-07 1967-10-24 Ibm Associative logic for highly parallel computer and data processing systems
US3320594A (en) * 1964-03-10 1967-05-16 Trw Inc Associative computer
US3416139A (en) * 1966-02-14 1968-12-10 Burroughs Corp Interface control module for modular computer system and plural peripheral devices

Also Published As

Publication number Publication date
DE1929010A1 (de) 1970-01-15
NL6908726A (de) 1969-12-12
FR2010550A1 (de) 1970-02-20
BE734246A (de) 1969-11-17
GB1277902A (en) 1972-06-14
US3548382A (en) 1970-12-15
JPS5113980B1 (de) 1976-05-06

Similar Documents

Publication Publication Date Title
DE1929010B2 (de) Modular aufgebaute datenverarbeitungsanlage
DE2113890C2 (de) Zentrale Verarbeitungseinrichtung für Datenverarbeitungsanlagen
DE2230830C2 (de) Datenverarbeitungsanlage
DE2104733C2 (de) Eingabe/Ausgabe-Einrichtung für eine Datenverarbeitungsanlage
DE1524102C3 (de) Elektronische, aus Baueinheiten aufgebaute Datenverarbeitungsmaschine
DE2635592A1 (de) Multiprozessor-abrufsystem
DE2130299A1 (de) Eingabe/Ausgabe-Kanal fuer Datenverarbeitungsanlagen
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE1146290B (de) Elektronisches Datenverarbeitungssystem
DE2750721A1 (de) Ein/ausgabe-system
CH650600A5 (de) Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister.
DE2455803A1 (de) Mehrprozessor-datenverarbeitungsanlage
DE2523372B2 (de) Eingabe-ZAusgabe-Anschlußsteuereinrichtung
DE1931966B2 (de) Datenverarbeitungsanlage mit Assoziativspeichern
DE2646296A1 (de) Assoziative elektronische schaltungsanordnung aus digitalen prozessoren
DE1279980B (de) Aus mehreren miteinander gekoppelten Datenverarbeitungseinheiten bestehendes Datenverarbeitungssystem
DE2054830C3 (de) Informationsverarbeitungsanlage mit Mitteln zum Zugriff zu Speicher-Datenfeldern variabler Länge
DE3013070C2 (de) Schaltungsanordnung zur Bearbeitung von aus mehreren peripheren Geräten herangeführten Anforderungssignalen innerhalb einer datenverarbeitenden Einrichtung
DE2363846A1 (de) Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage
DE2556617A1 (de) Datenverarbeiter zum rotierbaren verschieben von bits eines datenwortes
DE1909477A1 (de) Speichersteueranlage fuer ein Multiprogramm-Datenverarbeitungssystem
DE2218630B2 (de) Schaltungsanordnung zur Steuerung von Unterbrechungssignalen in Datenverarbeitungsanlagen
DE1956460C3 (de) Datenverarbeitungsanlage mit Assoziativspeichern
DE2221926C3 (de) Datenverarbeitungsanlage mit wenigstens einem in Verbindung mit mehreren Peripheriegeräten stehenden Prozessor
DE2142374A1 (de) Datenverarbeitungseinnchtung

Legal Events

Date Code Title Description
BHV Refusal