DE1549522C - Datenverarbeitungsanlage mit Simultanverarbeitung mehrerer Programme mittels mehrerer Rechner - Google Patents

Datenverarbeitungsanlage mit Simultanverarbeitung mehrerer Programme mittels mehrerer Rechner

Info

Publication number
DE1549522C
DE1549522C DE1549522C DE 1549522 C DE1549522 C DE 1549522C DE 1549522 C DE1549522 C DE 1549522C
Authority
DE
Germany
Prior art keywords
program
computer
register
registers
computers
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.)
Expired
Application number
Other languages
English (en)
Inventor
Andrew Te-an Palos Verdes Peninsula Calif. Ling (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.)
RCA Corp
Original Assignee
RCA Corp
Publication date

Links

Description

1 2
Die Erfindung betrifft eine Datenverarbeitungs- gänge. erforderlich.-Außerdem wares bisher- außeranlage mit Simultanverarbeitung mehrerer Programme ordentlich schwierig, ein unterbrochenes" Programm mittels mehrerer Rechner, wobei jeder der verschie- gerade von demjenigen Rechner fortführen zu lassen, denen Rechner Zugriff zu einem Hauptspeicher hat der hierfür am besten geeignet war, so daß die Kapa- und die Fähigkeit besitzt, entsprechend verschiedener 5 zität des Systems praktisch nie optimal genutzt wurde. Unterbrechungsanforderungen die Durchführung sei- Die Aufgabe der Erfindung besteht darin, in einer
nes Programmes zu unterbrechen, mit mehreren Sät- Datenverarbeitungsanlage, die wenigstens ein sogezen von Programmdurchführungsregistern zum Spei- nanntes Benutzerprogramm (z. B. ein Produktionschern einer entsprechenden Anzahl von auszuführen- programm) und wenigstens ein Kontrollprogramm den Programmen einschließlich wenigstens eines Ar- io zur Steuerung oder Überwachung der Durchfühbeitsprogramms. des Anlagenbenutzers und wenigstens.-. rung ..des Benutzerprogramms durchführen-'soll, eines Kontrollprogramms s ,und . mit. einem ; gemeine "·. die einzelnen für eine Mehrprogrammverarbeitung samen Steuerwerk für die Rechner. geeigneten Rechner mit ihren jeweiligen -Pro-
Bei Datenverarbeitungsanlagen,· die mehrere-Pro-^ · grammregistersätzen so zu einem einzigen simultan gramme durchführen, müssen:bei,Programmunterbre- 15 arbeitenden System zu kombinieren, daß mit g£ringchungen die wesentlichen Informationen sichergestellt: stem Zeitaufwand für ein Programm oder Teilprowerden. Es ist bekannt, Register für jedes Programm ·.. gramm jeder der verschiedenen Rechner gewählt vorzusehen, in denen die Daten des unterbrochenen. ■ werden kann. Dabei soll jeweils nur ein solcher Rech-Programms festgehalten bzw. aus denen die wesent- ' ner gewählt werden, der nicht gerade ein wichtigeres, liehen Daten des auszuführenden Programms ent- 20 also nicht zu störendes Arbeitsprogramm eines Benutnommen werden. zers des Systems durchführt. Außerdem soll jeweils
Ferner ist es bekannt (schweizerische Patentschrift der am besten geeignete Rechner gewählt werden.
374 842), jedes von mehreren Teil-Datenverarbei- Die Erfindung besteht darin,' daß bei einer Daten-
tungswerken eines Rechners mit jedem von mehreren Verarbeitungsanlage der eingangs angegebenen Art Teilspeichern zu verbinden, um die gleichzeitige 25 das Steuerwerk, welches in der Lage ist, jeden der Durchführung verschiedener Programme zu ermög- Programmdurchführungsregistersätze mit jedem Rechlichen, ohne daß der Ablauf der Programme durch ner zu verbinden, eine vom Inhalt von jeweils in. den Wartezeiten beeinträchtigt wird. Die einzelnen Ver- Rechnern vorgesehenen Registern zur Programmsatzarbeitungswerke sind aber nicht jeweils für eine·- · identifizierung gesteuerte erste Gruppe von Torglie-Mehrprogrammverarbeitung bestimmt oder geeignet. 30 dem, die jeweils einen identifizierten Progrämm-Zwar ist auch schon ein System mit mehreren voll- durchführungsregistersafz mit einem der Rechnerverständigen Rechnern bekannt · (USA.-Patentschrift binden, enthält, ferner für jeden Programmdurchfüh-3 229 260), von denen eine. Vielzahl unabhängiger rungsregistersatz je ein Anzeigeglied zum Anzeigen Programme bearbeitet wird und denen ein Befehls- einer anstehenden Unterbrechung und je ein Tätigregister gemeinsam ist. Die einzelnen Rechner sind~35 Anzeigeglied, eine ebenfalls von den Programmsatzaber nicht in der Lage, selbst die Steuerung eines identifizierungsregistem gesteuerte zweite Gruppe von Programms bis zu einem Zeitpunkt zu übernehmen, Torgliedern, welche Signale von jedem Rechner zu bei welchem der Rechner sich für dieses Programm den vom jeweiligen Register identifizierten Anzeigenicht mehr so gut eignet wie ein anderer Rechner, gliedern übertragen, sowie fünf Wählglieder, ..von und das Programm demgemäß zu unterbrechen. Es 40 denen das erste auf Grund einer Unterbrechurigsanist auch schon bekannt, Informationen zwischen meh- förderung, von einem Rechner diesen auswählt und reren Rechnern und mehreren Speichern ie nach Ver- - veranlaßt, daß er seinen Betrieb mit dem mit'ihm fügbarkeit der Soeicher auszutauschen (USA.-Patent- verbundenen Programmdurchführungsregistersatz unschrift 3 242 467). terbricht und die zugeordneten beiden Anzeigeglieder
Schließlich ist bekannt, zwei oder_mehrere. Rechner.45 auf-den entsprechenden Stand-gebr'ächt werden, wähso miteinander zu verbinden, daß zwischen ihnen ein - · rend das zweite Wählglied in Abhängigkeit vom Inhalt Datenaustausch möglich ist und jeder Rechner ver- der Unterbrechungsanzeigeglieder die Adresse des schiedene Programme auf Grund der Daten oder prioritätshöchsten Programmdurchführungsregister-
eines schon begonnenen Programms eines anderen· satzes mit einer anstehenden Unterbrechung erzeugt,
Rechners durchführen kann, also eine Vielzahl unab- 50 das dritte WählgÜed einen für das Kontrollprohängiger Programme gleichzeitig (simultan) von einer gramm bestimmten Programmdurchführungsregister-Vielzahl von Rechner bearbeitet wird. satz wählt, das vierte Wählglied in Verbindung mit
Bisher -ist jedoch-noch-kein System bekannt,- das es- - einem der ■Unterbrechungsanzeigegliederj-gegebenengestattet, das in einem, bestimmten Programmdurch- falls einen Rechner, der eine bestimmte Wahlprioriführungsregister gespeicherte Programm in einen be- S5 tat besitzt, als1 Kontrollrechner"wählt, und das fünfte liebigen von mehreren .zentralen Rechnern, zu über- Wählglied einen vom vierten Wählglied nicht gewähltragen, insbesondere, gerade in denjenigen,..der zur ten Rechner mit einem gewählten^ untätigen ProDurchführung dieses Programms jeweils am besten grammdurchführungsregistersatz-für-ein Arbeitsprogeeignet ist. Da bisher jedes dieser Register jeweils gramm des Benutzers verbindet." * ' "
nur einem einzigen Rechner zugeordnet war, ergab 60 Hierdurch werden die oben geschilderten Nachteile sich vor allem der Nachteil, daß ein Rechner zu einem der bekannten Datenverarbeitungsanlagen vermieden. Programm eines anderen Rechners nur mittelbar Zu- Ein bevorzugtes Ausführungsbeispiel der Erfindung
griff hat, nämlich über dessen Hauptspeicher. Da- ist in der Zeichnung dargestellt. Es zeigt
durch wird ein beträchtlicher Zeitverlust in Kauf ge- F i g. 1 das Blockschaltbild einer Datenverarbei-
nommen, zumal der Betrieb des anderen Rechners 65 tungsanlage gemäß der Erfindung,
bei dieser Datenübertragung beeinträchtigt wird. Fig. 2 ein die Arbeitsweise der Anlage nach Fig. 1
Wenn ein Rechner ein fremdes Programm unter- erläuterndes Flußdiagramm,
bricht, sind wieder zeitraubende Umspeicherungsvor- F i g. 3 ein Einzelheiten einer Torschaltungsanord-
nuhg in .der Anlage nach 'Fig.-1 wiedergebendes" ler. 10. angeschlossen^ ist. Der Wähler-10 hat-einen.
Schaltschema und' ' ;. ; . . ......... Ausgangst-zum:Wählen des Rechners 11 und einen
Fig. .4 das Schaltschemä eines für die Anlagenach Ausgangs s2 zum Wählen des Rechners 12. - ■■■■■-.■■·
F i g. 1 verwendbaren Prioritätswählers. ..... . .. . Jeden-Rechner 11 und 12 hat· ferner einen Unter-
Fig. 1 zeigt das Blockschaltschema einer Daten- .5 brochen-Ausgang»Unt« und einen »Tätig«-Ausgang, Verarbeitungsanlage mit einem ersten Rechner 11 und die^an eine entsprechende Gruppe von zweiten Toreinem zweiten Rechner 12. Jeder der beiden Rechner. gliedern 17 bzw.. 18 angeschlossen sind. Die zweiten ist über einen entsprechenden Daten- und Steuer.- Torglieder17-und 18 empfangen außerdem vom Resigalsammelleiter 13 bzw. 14 sowie über eine ent-, gister PSR im entsprechenden Rechner über die Lei- ■ sprechende Gruppe von ersten Torgliedern 15.bzw. io tung des Ausgangs PSRN die-Programmidentifizier-■ 16 mit einer AnzaM von.Sätzen von Programmdurch- . zahL-Die. zweiten Torglieder 17-und 18 leiten vom führungsregistern 21', 22, 23 und 24 verbunden. Jeder'..' entsprechenden Rechner ein Unterbrechsignal »Unt« '■'■ Satz - von Programmdürchführung'sregistern enthält: zu einem.-durch-die in-der Leitung; des Ausgangs-Speicherplätze für Zwischeriresultate und Zustands-. PSRN - anstehende Zahl bestimmten der -vier Unterinformationen für'ein entsprechendes, zugewiesenes. 15 brechanzeigerflipflops;25. Ebenso leiten; die zweiten-Programm. Jeder Satz .von Programmdurchführungs-. Torglieder 17-und 18 von -den-,Rechnern »Tätig«-· registern kann ein Systemsteuerregister sowie eine: Signale zu einem durch die am Ausgang PSRN-angroße Anzahl von allgemeinen und Nutzregistern ent- stehende- Zahl bestimmten - der vier 'Anzeigeflipflops halten. Einer oder mehrere der Sätze von Programm-.... 26. Das heißt,:i die·"Zweiten- Torglieder 17 und 18-durchführungsregistern können für die Durchführung.20 steuern Setz- und-Rücksetzsignale.von· den Rechnern · von .steuernden, überwachenden und Eingabe-Aus-. nach den-Unterbrechanzeigeflipfiops 25 und den Ingabe-Programmen bestimmt sein. Andere dieser Re- gebrauchanzeigeflipflops 26.-- -■ -.a---- -"·<· gistersätze können für eine entsprechende Anzahl Die Flipflops 25 haben-Ausgänge, die auf-ein vofi Aufgaben- oder Benutzer-Produktionsprogram- ODER-Glied-27- geschaltet- sind, das immer dann:ein men vorgesehen sein. ' . . 25 Ausgangssignal-»Ausf.Wahl«- liefert- -wenn durch ·■
Jeder Rechner arbeitet jeweils mit einem Satz von .. eines oder ^mehrere der Anzeigeflipflops 25 eine lau- ■ Programmdurchführungsregistern bei der Durchfüh-.... fende -Unterbrechung- (Unterbrochen-Zustand) ange-rung eines entsprechenden Programms. Der andere .. zeigt wird.'-Das Signal- »Ausf.iWahl« wird durch- Tor- Rechner kann dabei gleichzeitig mit einem anderen glieder-29- und- 31 -unterder -Steuerung der Wähler-Satz von Programmdurchführungsregistern für die 30 signale Jt1 -und t^aui die Rechner gekoppelte - ' ·- -a■■· Durchführung eines entsprechenden anderen Pro- Die Ausgänge.der.Anzeigeflipflops25 sind außer-' gramms arbeiten. Jeder Rechner ist mit jedem, belie- dem auf-einen-Wähler 20 geschaltet Der Wähler 20 bigen der Registersätze verbindbar. ~ Jeder Register- ist-mit-einem Ausgang an ein Torglied 32 angeschlos-; satz kann beispielsweise aus vielen einzelnen Flip-, >sen, ,.das. die Zahl oder- Adresse eines gewählten der flopstufen zum Speichern einer Vielzahl von entspre- 35 Progrämmdurchführungsregistersätze mit einer lau chenden Informationsbits aufgebaut sein und außer- fenden Unterbrechung anzeigt. -Der, Wähler- 20 kann dem Einrichtungen zum Ansteuern irgendeines ge- Einrichtungen zum-Wählen eines-Registersatzes auf·· wünschten Flipflopregisters" im * Registersatz enthal-... Grund einer vorher festgesetzten Priorität oder
ten. Andererseits körinen die Sätze von Programm-. . Dringlichkeit-enthalten. ■ t-·- - ■ :..~.\::.,--
durchführungsregistern auch" aus Speicherplätzen 4° Mindestens-einer der-Sätze von Programmdurch-
eines Notizblock-Schnellspeichers mit Einrichtungen... führungsregistern-21-bis-24 ist-für- 'ein-'Steuerpro--
zum' Ansteuern jedes gewünschten Speicherplatzes im gramm bestimmt und- hat- einen -mit einem Wähler 30
Speicher bestehen. Γ ,. :"." .. . .... '. . . verbundenen-Bereit-Ausgang-33. Das zu dem :Tor-
Jeder der beiden Rechner 11 und 12 hat entweder. glied 34-gelangende- Ausgangssignal- des Wählers 30
Zugang zu einem gemeinsamen Hauptspeicher (nicht-45 ist eine- Zahl-oder-Adresse, -die- einen bestimmten der
gezeigt) öder enthält' seinen eigenen Hauptspeicher.. 1 betriebsbereiten -Registersätze identifiziert. Der Wäh-
und hat außerdem Zugangzum Hauptspeicher: des.... ler 30 kann-so-konstruiert sein, ;daß er stets einen
anderen Zentralteils. Jeder Rechner enthält ein Pro- - vorbestimmten-der Registersätze wählt, oder daß er
grammidentifizierüngsregister PSR', zur Aufnahme" einei Registersatz auf Grund einer vorbestimmten
einer Zahl oder Adresse zum Identifizieren desjenigen -5° Priorität-wählt,-oder- daß er einen Registersatz- auf
der: .Sätze von Programmdurchführungsregistern 21.:... Grund-von-in-den Registersätzen gespeicherten In-
bis 24, mit dem der Rechner für die Durchführung :: formationen wählt. - - -■■■-■ - .·■■..-------■
eines Programms verbunden ist "oder werden, soll Jeder.-Rechner-enthält ein iJnterbrechungssperr-
Jedes, dieser'Identifizierungsregister PSR hat einen. T anzeige-Fh'pflop (nicht gezeigt) mit einem Ausgang
Zahl-, oder Adresse'naüsgäng PSRN, der mit einem.-55 »UntSperr«,-der über entsprechende Torglieder 35 '
entsprechenden ersten Törglied 15 bzw. 16 gekonpelt - bzw.-. 36-sowie-eine Leitung 37 mit dem Torglied 34
ist, um für Daten- und Steuersignale über die Sam-..'.. verbunden-ist. Di&Leitung 37 ist außerdem über eine melleitungl3 bzw. 14 eine Verbindung zwischen dem'." Inverterstufel mit dem-Torglied 32 verbunden. Durch
betreffenden Rechner und deni/jeweils identifizierten das-Unterbrechungssperrsignal in der Leitung 37 und der Registersätze21 bis 24 herzustellen. " 60 dasumsekehrteUnterbrechungssperrsignal in derLei-Jeder"Rechner 11 und 12 beliefert, wenn er in Be--. .. tung37' .wird bestimmt, ob der über das Torglied 32
trieb (nicht unwirksam) ist, einen "Wähler"40 mit ; ; wirkende Wähler 20 oder der über das Torglied 34
einem Ausgangssignal »Verfügbar«.' Der. Wähler 40 .. wirkende Wähler 30 die Zahl eines gewählten Satzes
hat einen Ausgang'^ für die "Vorwahl des Rechners von Programmdurchführungsregistern entweder über 11 und einen Ausgang i/für die Vorwahl des Rech- '65 das-Torglied 38-zum Register·PSR im Rechner 11
nersl2. . :. ■■.<■;"..· ;"V·'. . .... oder über-das'Torglied 39 zum Register PSR im
Jeder Rechner'li und 12 :hat einen Unterbre-;· Rechner-12 liefert. ■ — - ....·.--.·. ... ■
chungsansuch-Ausgang »UntAns«, der an einen Wäh- Jeder Rechner 11 und 12 hat einen Unterbrechungs-
5 6
beendigungsausgang »Unt.Ende«, der über ein ent- vier Flipflops 25 angeschlossen. Die Rücksetzleitung sprechendes Torghed 41 bzw. 42 mit dem Wähler 10 RI ist an sämtliche vier UND-Glieder an den Rückverbunden ist. Em zum Wähler 10 gelangendes Unter- setzeingängen der vier Flipflops 25 angeschlossen, brechungsbeendigungssignal bewirkt, daß die Wähl- Die Ausgänge 200 der Flipflops 25 sind, wie in ausgangssignaleS1 bzw. s, des Wählers aufhören. 5 Fig. 1 gezeigt, an den Wähler 20 und das ODER-
Die Ausgänge der Anz"eigeflipfiops 26 sind an einen Glied 27 angeschlossen.
Wähler 50 angeschlossen. Der Wähler 50 empfängt Der Tätig-Ausgang des Zentralteils 11 besteht aus
außerdem Eingangssignale vom Ausgang PSRN der einer Setzleitung SU und einer Rücksetzleitung RU.
entsprechenden RegisterPSR in den Rechnernil und Die SetzleitungSU ist an sämtliche vier UND-Glieder
12. Der Wähler 50 vergleicht die ihm zugeführte Pro- io an den Setzeingängen der vier Flipflops 26 ange-
grammregisterzahl mit den Ausgangssignalen der An- schlossen. Die Rücksetzleitung RU ist an sämtliche
zeigeflipflops 26, um zu ermitteln, ob der Register- vier UND-Glieder an den Rücksetzeingängen der vier
satz mit der Nummer oder Adresse des Ausgangs Flipflops 26 angeschlossen. Die Ausgänge 205 der
PSRN bereits tätig ist. Ist dies der Fall, so schickt der der Flipflops 26 sind an den Wähler 50 (F i g. 1) an-
Wähler 50 in die Leitung 51 ein Vorrücksignal »Vorr«, 15 geschlossen. Die Wähleingänge S1 und S2 für die zwei-
das ein Torglied 52 oder ein Torglied 53 durchläuft, ten Torglieder 17 sind über ein ODER-Glied 206 ver-
um die Zahl im Register PSR des entsprechenden bunden, dessen Ausgang α an sämtliche UND-Glieder
Rechners 11 bzw. 12 zu erhöhen. Anschließend führt in F i g. 3 angeschlossen ist.
der Wähler 50 erneut den Vergleich durch. Wenn der Die zweiten Torglieder 18(Fi g. 1) können in der
Vergleich anzeigt, daß die Zahl im Register PSR der 20 gleichen Weise angeordnet und zwischen den Rech-
Nummer eines untätigen Satzes von Programmdurch- ner 12 und die Flipflops 25 und 26 geschaltet sein,
führungsregistern entspricht, beendet der Wähler 50 wie die zweiten Torglieder 17 zwischen den Rechnern
seinen Wählvorgang, indem er kein Vorrücksignal 11 und die Flipflops 25 und 26 in F i g. 3 geschaltet
mehr in die Leitung 51 schickt. sind. Die Ausgänge der zweiten Torglieder 18 sind an
Fig. 1 zeigt also eine Datenverarbeitungsanlage 25 die Setz-und Rücksetzeingänge der Flipflops 25 und mit beispielsweise zwei Rechnern 11 und 12 sowie 26 in der gleichen Weise angeschlossen, wie die Ausvier Sätzen von Programmdurchführungsregistern 21, gänge der zweiten Torglieder 17 an die gleichen Setz-22, 23 und 24. Die übrigen Schaltungseinheiten in und Rücksetzeingänge der Flipflops 25 und 26 angeder Anordnung nach F i g. 1 bilden ein Steuerwerk schlossen sind.
zum Steuern von Verbindungen über die Sammellei- 30 Für den Wähler 20 (F i g. 1) kann ein einfacher
tungen 13 und 14 zwischen den Rechnern und den Prioritätswähler von der in F i g. 4 gezeigten Art ver-
Sätzen von Programmdurchführungsregistern. wendet werden. F i g. 4 zeigt vier Flipflops 25, die mit
Sämtliche das Steuerwerk in F i g. 1 bildenden Ein- ihren Ausgängen an vier entsprechende UND-Glieder heiten erfüllen einfache Funktionen. Die Einheiten 201, 202, 203 und 204 angeschaltet sind. Der Auskönnen ohne weiteres aus elementaren Verknüp- 35 gang der ersten Flipflops sperrt außerdem über eine fungsgliedern wie UND-, NAND-, ODER- oder Inverterstufe die Glieder 202, 203 und 204. Die AusNOR-Gliedern, Flipflops, Vergleichern usw. nach gänge des zweiten und des dritten Flipflops sperren üblichen und bekannten Konstruktionsprinzipien auf- in entsprechender Weise über Inverter die höher gebaut werden. numerierten Glieder 203 und 204. Bei Auftreten eines
Beispielsweise können die zweiten Torglieder 17 40 Taktimpulses an der Klemme 207 liefert der Prioriin der in F i g. 3 gezeigten Weise aufgebaut und zwi- tätswähler nach F i g. 4 bei 200 ein Ausgangssignal sehen den Rechner 11 und die Flipflops 25 und 26 ge- vom prioritätshöchsten (d. h. dem niedrigst numerierschaltet sein. Das Register PSR im Rechner liefert ten) der Ausgangssignale liefernden Flipflops 25. Die eine Ausgangsnummer, die einen der Sätze von Pro- Ausgangssignale 220 (F i g. 4) des Wählers 20 (E i g. 1) grammdurchführungsregistern identifiziert. Die Num- 45 können über vier Drähte, vier Torglieder 32, vier mer des Ausgangs PSRN kann durch Erregen einer Torglieder 38 und vier Drähte zurück zum Register der Leitungen 1 bis 4 geliefert werden. Der Ausgang 1 PSR geleitet werden. In Fi g. 1 sind, um die Zeichist mit am Setzeingang und am Rücksetzeingang des nung nicht unnötig zu komplizieren, jeweils nur Einersten der Flipflops 25 vorgesehenen Torgliedern so- zeldrähte und einzelne Torglieder gezeigt,
wie mit am Setzeingang und am Rücksetzeingang des 50 Die anderen Wähler 10, 30, 40 und 50 in F i g. 1 ersten der Flipflops 26 vorgesehenen Torglieder ver- können ähnlich als Prioritätswähler in der in F i g. 4 bunden. Die Ausgänge 2, 3 und 4 des Registers PSR gezeigten Weise ausgebildet sein. Die Wähler 10 und sind in entsprechender Weise mit entsprechenden 40 (bei dem Ausführungsbeispiel nach Fig. 1 mit Torgliedern an den Eingängen anderer Flipflops der zwei Rechnern) weichen von der Anordnung nach Gruppen 25 und 26 verbunden. Bei einer anderen 55 F i g. 4 insofern ab, als sie jeweils nur zwei Eingänge und wirtschaftlicheren Anordnung ist das Register und zwei Ausgänge haben. Der Wähler 50 kann den PSR ein Zweibit-Register und die Zahl am Ausgang in F i g. 4 gezeigten Prioritätswähler sowie außerdem PSRN eine binär verschlüsselte Zahl 00, 01, 10 oder einen üblichen Vergleicher mit einem Ausgang ent-11, die über jeweils zwei Leitungen befördert wird, halten, der bedingt den erwähnten Vorrückimpuls um einen bestimmten der vier Sätze von Programm- 60 »Vorr« in die Leitung 51 schickt. Statt dessen kann durchführungsregistern zu identifizieren. Bei einer der Wähler 50 auch aus lediglich einem Vergleicher derartigen Anordnung kann zwischen das Register bestehen. Bei einer von der Anordnung nach F i g. 1 PSR und die Torglieder 17 ein Decodierer eingeschal- abweichenden Ausführungsform kann der Wähler 50 tet sein. lediglich einen Prioritätswähler enthalten, wie in
Der Unterbrochen-Ausgang des Rechners 11 in 65 F i g. 1 gezeigt. In diesem Falle werden die Register-
F i g. 3 besteht aus einer Setzleitung SI und einer zahlen am Ausgang PSRN nicht dem Wähler 50 zu-
Rücksetzleitung RI. Die Setzleitung SI ist an samt- geleitet, und es erscheint als Ausgangsgröße des Wäh-
liche vier UND-Glieder an den Setzeingängen der lers 50 eine Zahl, die in der gleichen Weise wie eine
I 549
Zahl von den Wählern 20 und 30 direkt in das Register PSR eingegeben wird.
An Hand der F i g. 2 soll jetzt die Arbeitsweise des Rechners 11 im Zusammenhang mit dem Steuerwerk der Anlage nach F i g. 1 beschrieben werden. F i g. 2 ist ein Flußdiagramm, an Hand dessen ein Programmablauf beschrieben wird, dem der Rechner 11 bei der sequentiellen Durchführung von Teilen einer Anzahl von Steuerprogrammen und/oder Benutzer-Produktionsprogrammen folgt. Der Rechner 12 folgt außerdem unabhängig dem Flußdiagramm in der gleichen Weise. Der Programmablauf nach F i g. 2 kann im Rechner auf konstruktivem Wege, d. h. mittels entsprechender Verknüpfungsschaltungen, oder auf dem Wege der Programmierung erfüllt werden und stellt einen Programmablauf dar, dem der Rechner immer dann folgt, wenn er im gerade durchgeführten Programm einen unterbrechbaren Punkt, bezeichnet mit 100, erreicht. Es sei beispielsweise angenommen, daß der Rechner 11 derzeit ein Produktionsprogramm unter Verwendung des Satzes 21 von Programmdurchführungsregistern durchführt.
Der Entscheidungspunkt 101 in F i g. 2 stellt denjenigen Punkt dar, an dem der Rechner seine Programmunterbrechungsverzeichnisse prüft, um zu ermitteln, ob eine Programmunterbrechung erforderlieh ist. Wird eine Programmunterbrechung gefordert, so wird in den Schritt 102 eingetreten, um die notwendigen Unterbrechungsvorgänge durchzuführen, wozu das Auf-den-laufenden-Stand-Bringen des Unterbrechungsverzeichnisses und das Prüfen der Unterbrechun^smacke, beide im derzeit mit dem Rechner verbundenen Satz 21 von Programmdurchführungsregistem befindlich, gehören kann. Wird die Unterbrechung am Entscheidungspunkt 103 zugelassen, so erfolgt bei 104 eine Prüfung, um zu ermitteln, ob eine Unterbrechung durch das Unterbrechungssperr-Flipflop im Rechner verhindert wird. Ist keine Unterbrechungssperre vorhanden, so wird in den Schritt
105 eingetreten, um Zustandsinformationen im Satz 21 der derzeit mit dem Rechner verbundenen Programmdurchführungsregister zu speichern und dem Wähler 10 (F i g. 1) ein Unterbrechungsansuchsignal »Unt.Aus« zuzusenden. Wenn der Wähler 10 das Unterbrechungsansuchen gutheißt, gibt er ein Wählsignal S1 aus. Der Rechner spricht darauf am Punkt
106 an, indem er nach 107 fortschreitet, um ein Unterbrechungssignal »Unt« demjenigen Anzeigeflipflop 1 der Gruppe 25 zuzuleiten, der durch den Inhalt des Registers PSR identifiziert wird, und dem identifizierten Anzeigeflipflop 1 der Gruppe 26 ein Rücksetz-»Tätig«-Signal zuzuleiten.
Im Anschluß an 107 trifft das Steuerwerk eine Entscheidung, ob der gerade bediente Rechner für die Durchführung eines Steuerprogramms zu wählen ist. Wenn der Rechner 11 probeweise durch den Wähler 40 gewählt wird, gibt der Wähler 40 ein Wählsignal t, aus, und wenn durch irgendeines der Flipflops 25 eine laufende Unterbrechung angezeigt wird, überträgt das ODER-Glied 27 ein Signal »Ausf.Wahl« über das Gatter 29 (aufgetastet durch i,) zum Rechner 11. Der Rechner erkennt bei 108, daß er für die Durchführung eines Steuerprogramms gewählt ist und schickt bei 109 ein Unterbrechungsbeendigungssignal »Unt.End« über das UND-Glied 41 zum Wähler 10, um dessen Ausgangssignal S1 zu unterbrechen.
Der Fluß des Programmablaufs schreitet über den Weg 110 nach 111 fort, an welchem Punkt das Register PSR im Rechner vom Wähler 20 über die GHeder 32 und 38 eine Identifizierungsnummer empfängt. Diese Nummer ist eine Zahl oder Adresse, die denjenigen gewählten der vier Sätze von Programmdurchführungsregistern identifiziert, bei dem eine Unterbrechung anhängig ist. Es sei angenommen, daß der Satz 22 von Programmdurchführungsregistern eine laufende Unterbrechung hat und gewählt wird. Die neue Nummer des Ausgangs PSRN für den Satz 22 im Register PSR gelangt zu den ersten Torgliedern 15, die den Rechner 11 über die Daten- und Steuersignal-Sammelleitung 13 mit dem identifizierten Registersatz 22 verbinden.
Bei 112 schickt der Rechner ein Rücksetzsignal über die Leitung »Unt« und die zweiten Glieder 17 zum identifizierten Anzeigeglied 25, d. h. zu dessen Flipflops 2. Dies geschieht, um die Tatsache zu vermerken, daß die Unterbrechung verarbeitet wird und nicht mehr schwebt. Der Rechner extrahiert über die Leitungen 13 aus dem identifizierten Registersatz 22 die gesamte Information, die für die Durchführung des erforderlichen Steuerprogramms benötigt wird, und er setzt sein Unterbrechungssperr-Flipfiop, um zu verhindern, daß er während der Durchführung des Steuerprogramms unterbrochen wird.
Bei 113 empfängt das Register PSR vom Wähler 30 über die Torglieder 34 und 38 eine neue Identifizierungsnummer. Diese neue Nummer ist eine Zahl, die denjenigen Satz von Steuerprogrammdurchführungsregistern identifiziert, der dazu verwendet wird, die im Registersatz 22 schwebende Unterbrechung zu verarbeiten. Die neue Nummer des Ausgangs PSRN, von der angenommen sei, daß sie die Zahl des Satzes 24 von Steuerprogrammdurchführungsregistem ist, gelangt vom Register PSR zu den ersten Torgliedern 15, um den Rechner über die Sammelleitung 13 mit dem identifizierten Registersatz zu verbinden. Am Punkt 114 des Flußdiagramms konditioniert die Nummer am Ausgang PSRN für den Satz 24 außerdem die zweiten Torglieder 17 so, daß über die Leitung »Tätig« ein Signal zu den Anzeige-Flipflops 26 gelangt. Der Rechner holt sodann den Inhalt eines im adressierten Registersatz 24 enthaltenen Steuerregisters SC heraus. Das Register SC enthält Införmationen, die das Programm, mit dem der Registersatz 24 befaßt ist, beschreiben. . ..-..·.-
Bei 115 nimmt der Rechner eine Prüfung des Inhalts des. Registers SC vor, um sicherzustellen, daß das Programm des Registersatzes 24 ein geeignetes Steuerprogramm ist. Wenn dies nicht der Fall ist, wird in den Schritt 116 eingetreten, um ein Fehler-Suchprogramm durchzuführen. Andernfalls geht es über den Weg 117 zum Punkt 118, wo der Inhalt von Zustandsregistern im Registersatz 24 über die Sammelleitungl3 nach Registem (nicht gezeigt) im Rechner 11 übertragen wird. Der Rechner führt sodann bei 120 die normalen Schritte im Zuge der Ausführung eines Befehls mit einer vom Registersatz 24 abgeleiteten Adresse im Hauptspeicher durch. Die folgenden Befehle im Steuerprogramm werden nacheinander ausgeführt, da das Unterbrechungssperr-Flipflop im Rechner gesetzt ist und der Fluß wiederholt die Schleife mit den Wegen 131 und 119 durchläuft.
Der beschriebene Weg durch das Flußdiagramm nach F i g. 2 wird dann verfolgt, wenn erstens der Rechner während der Durchführung eines Programms mit Hilfe des Satzes 21 von Programmdurchführungsregistem einen Unterbrechungszustand erzeugt und
109 543/298
notiert hat, zweitens der Rechner dann bei 108 gewählt wird, um eine Unterbrechung zu bedienen, die in einem dem Satz 22 von Programmdurchführungsregistern zugewiesenen Programm schwebt, von welchem Registersatz der Rechner die für die Handhabung der Unterbrechung erforderliche Information erhält, und drittens der Rechner das durch die Unterbrechung mit Hilfe des Satzes 24 von Steuerprogrammdurchführungsregistern geforderte Steuerprogramm durchführt.
Wenn der Rechner bei 108 nicht vom Wähler 40 und der Steuerprogrammwählschaltung für die Durchführung eines Steuerprogramms gewählt wird, wird ein zweiter Weg durch das Flußdiagramm eingeschlagen, der über den Weg 121 nach 122 fortschreitet, an welchem Punkt die Identifizierungsnummer im Register PSR erhöht wird. Diese Erhöhung erfolgt mit Hilfe des Wählers 50, der so lange weiter Vorrücksignale »Vorr« über das Torglied 52 zum Register PSR im Rechner schickt, wie der Vergleich bei 123 anzeigt, daß die Nummer des Ausgangs PSRN einem bereits in Gebrauch befindlichen Registersatz entspricht.
Bei 124 holt der Rechner den Inhalt des Steuerregisters SC aus dem adressierten Satz von Programmdurchführungsregistern heraus, und wenn ein Produktions- oder Aufgabenprogramm beschrieben wird, das bereit ist, wird diese Tatsache bei 125 erkannt. Bei 126 schickt der Rechner ein Setzsignal »Tätig« über die zweiten Torglieder 17 zum Anzeigeflipflop 26, das durch die Nummer des Ausgangs PSRN adressiert wird. Der Rechner schickt dann ein Unterbrechungsbeendigungssignal »Untende« (END INT) durch das Torglied 41, :um das Wählausgangssignal S1 des Wählers 10 zu unterbrechen. Sodann geht es über den Flußweg 117 nach 118, um die Zustandsinformation vom identifizierten Satz von Produktionsprogrammdurchführungsregistern zum Rechner zu übertragen. Anschließend erfolgt bei 120 die normale Befehlsausführung.
Ein dritter Flußweg wird eingeschlagen, wenn bei 101 keine Programmunterbrechung auftritt oder bei 103 eine Unterbrechung nicht zugelassen wird und bei 130 eine Unterbrechungssperre ist. Unter diesen Voraussetzungen kehrt' der Zentralteil bei 120 zur normalen Befehlsausführung des durchgeführten Programms zurück.
Die übrigen Kurzschleifenwege im Flußdiagramm nach F i g. 2 sind vorgesehen, um den Rechner nutzbringend beschäftigt zu halten, wenn er daran verhindert ist, einem der drei bereits beschriebenen Wege zu folgen. Wenn bei 130 keine Unterbrechungssperre vorhanden ist, prüft der Rechner bei 132, ob er unterbrochen werden soll, um ein Steuerprogramm durchzuführen. Wenn ja, gibt er bei 133 die Zustandsinformation an das Steuerregister im Programmdurchführungsregistersatz, mit dem er gearbeitet hat, zurück und setzt bei 134 das identifizierte Ingebrauchanzeigeglied 26 zurück. Anschließend folgt der Rechner dem Weg 110 zum beschriebenen Steuerprogrammzweig des Flußdiagramms.
Ein weiterer Kurzschleifenzweigweg vom Punkt 125 über den Zähler 140, den Zähldetektor 141 und den Weg 121 wird beschritten, um das Register PSR vorzurücken, wenn der Inhalt des Steuerregisters SC nicht ein geeignetes Produktionsprogramm vorschreibt. Wird innerhalb eines durch den Zähldetektor 141 bestimmten Zeitraums kein geeignetes Programm aufgefunden, so sendet der Rechner bei 142 ein Unterbrechungsbeendigungssignal »Untende«, um sich bei 143 während eines folgenden Arbeitszyklus des Steuerwerks für die Wahl und Programmzuteilung zur Verfügung zu stellen.
Ein Ausweichweg A von 104 nach 116 ist vorgesehen, um das System sich von einem abnormalen Zustand erholen zu lassen, bei dem ein Rechner, der ein Steuerprogramm durchführt, einem Programmunterbrechungszustand begegnet.
Die beiden in der Computeranlage nach F i g. 1 vorhandenen Rechner 11 und 12 können identisch ausgebildet sein. Man kann aber die Anlage auch so konstruieren, daß der Rechner 11 bei der Durchführung von Steuerprogrammen und der Rechner 12 bei der Durchführung von Benutzer-Produktionsprogrammen besonders wirtschaftlich und leistungsfähig arbeitet. In diesem Falle ist der Wähler 40 so konstruiert, daß er stets den Rechner 11 wählt, außer wenn der Rechner 11, weil er außer Betrieb oder abgeschaltet ist, nicht zur Verfügung steht. Wenn der Rechner 11 außer Betrieb ist, wird der Rechner 12 für die Durchführung von sowohl Steuerprogrammen als auch Produktionsprogrammen gewählt, obwohl er für Steuerprogramme weniger leistungsfähig sein kann als der Rechner 11. Ebenso kann, wenn der Rechner 12 außer Betrieb ist, der Rechner 11 für die Durchführung von Steuerprogrammen sowie von Produktionsprogrammen mit verminderter Leistungsfähigkeit gewählt werden. Auf diese Weise kann die Datenverarbeitungsanlage unter normalen Verhältnissen mit höchstem Wirkungsgrad arbeiten und im Falle des Versagens eines Rechners mit vermindertem Wirkungsgrad weiterarbeiten.

Claims (1)

  1. Patentanspruch:
    Datenverarbeitungsanlage mit Simultanverarbeitung mehrerer Programme mittels mehrerer Rechner, wobei jeder der verschiedenen Rechner Zugriff zu einem Hauptspeicher hat und die Fähigkeit besitzt, entsprechend verschiedener Unterbrechungsanforderungen die Durchführung seines Programms zu unterbrechen, mit mehreren Sätzen von Programmdurchführungsregistern zum Speichern einer entsprechenden Anzahl von auszuführenden Programmen einschließlich wenigstens eines Arbeitsprogramms des Anlagenbenutzers und wenigstens eines Kontrollprogramms, und mit einem gemeinsamen Steuerwerk für die Rechner, dadurch gekennzeichnet, daß das Steuerwerk, welches in der Lage ist, jeden der Programmdurchführungsregistersätze (21, 22, 23, 24) mit jedem Rechner (11, 12) zu verbinden, eine vom Inhalt von jeweils in den Rechnern vorgesehenen Registern (PSR) zur Programmsatzidentifizierung gesteuerte erste Gruppe von Torgliedern (15, 16), die jeweils einen identifizierten Programmdurchf ührungsregistersatz mit einem der Rechner verbinden, enthält, ferner für jeden Programmdurchführungsregistersatz je ein Anzeigeglied (25) zum Anzeigen einer anstehenden Unterbrechung und je ein Tätig-Anzeigeglied (26), eine ebenfalls von den Programmsatzidentifizierungsregistern gesteuerte zweite Gruppe von Torgliedern (17, 18), welche Signale von jedem Rechner zu den vom jeweiligen Register identifizierten Anzeigegliedern (25 und 26) übertragen, sowie fünf Wählglieder (10, 20, 30, 40, 50), von
    denen das erste (10) auf Grund einer Unterbrechungsanforderung von einem Rechner diesen auswählt und veranlaßt, daß er seinen Betrieb mit dem mit ihm verbundenen Programmdurchführungsregistersatz unterbricht und die zugeordneten beiden Anzeigeglieder auf den entsprechenden Stand gebracht werden, während das zweite Wählglied (20) in Abhängigkeit vom Inhalt der Unterbrechungsanzeigeglieder (25) die Adresse des prioritätshöchsten Programmdurchführungsregistersatzes mit einer anstehenden Unter-
    brechung erzeugt, das dritte Wählglied (30) einen für das Kontrollprogramm bestimmten Programmdurchführungsregistersatz wählt, das vierte Wählglied (40) in Verbindung mit einem der Unterbrechungsanzeigeglieder gegebenenfalls einen Rechner, der eine bestimmte Wahlpriorität besitzt, als Kontrollrechner wählt, und das fünfte Wählglied (50) einen vom vierten Wählglied nicht gewählten Rechner mit einem gewählten untätigen Programmdurchführungsregistersatz für ein Arbeitsprogramm des Benutzers verbindet.
    Hierzu 1 Blatt Zeichnungen

Family

ID=

Similar Documents

Publication Publication Date Title
DE1549522B1 (de) Datenverarbeitungsanlage mit simultanverarbeitung mehrerer programme mittels mehrerer rechner
DE1524209B2 (de) Programmgesteuerte datenverarbeitungsanlage
DE2411963C3 (de) Elektronische Datenverarbeitungsanlage mit einer Prioritätssteuerschaltung mit änderbaren Steuerblöcken
DE1178623C2 (de) Programmgesteuerte datenverarbeitende Maschine
DE1900141C3 (de) HilfsSteuerwerk für eine Datenverarbeitungsanlage
DE1279980B (de) Aus mehreren miteinander gekoppelten Datenverarbeitungseinheiten bestehendes Datenverarbeitungssystem
DE3508291A1 (de) Realzeit-datenverarbeitungssystem
DE1524239A1 (de) Verfahren zur Lokalisierung eines Fehlers in einer Anlage mit mindestens zwei parallel arbeitenden Rechengeraeten
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE2908316A1 (de) Multikonfigurierbares modulares verarbeitungssystem, das mit einem vorverarbeitungssystem integriert ist
DE1424732A1 (de) Elektronische Ziffernrechenmaschine
DE2928488A1 (de) Speicher-subsystem
DE1200581B (de) Programmunterbrechungssystem fuer eine elektronische Rechenmaschine
DE1474062B2 (de) Datenverarbeitungsanlage mit einer anzahl von pufferspeichern
DE2015971A1 (de) Datenverarbeitungssystem zur Verarbeitung eines Stromes mehrfacher Operanden
CH637230A5 (de) Einrichtung zur programmunterbrechung und steuerung der programmebenen-umschaltung in einer datenverarbeitungsanlage.
DE2054830A1 (de) Informationsverarbeitungssystem mit wortstrukturiertem Speicher und Verfahren fur einen Zugriff zu einem derar tigen Speicher
DE1237812B (de) Datenverarbeitungsgeraet mit mehreren Speichern
DE2311503A1 (de) Datenverarbeitungsanlage mit mehreren zentraleinheiten
DE2403669C3 (de) SpezialComputer
DE2230727C3 (de) Schaltungsanordnung zur dynamischen Zuteilung von Speicherzyklen mit Vorrangs steuerung
DE1549522C (de) Datenverarbeitungsanlage mit Simultanverarbeitung mehrerer Programme mittels mehrerer Rechner
DE2034423B2 (de) Verfahren zur Fehlersuche in einem programmgesteuerten Vermittlungssystem
DE1499286B2 (de) Datenbearbeitungsanlage
DE2622140C3 (de) Einrichtung zur Steuerung manueller Operationen