DE1549522C - Datenverarbeitungsanlage mit Simultanverarbeitung mehrerer Programme mittels mehrerer Rechner - Google Patents
Datenverarbeitungsanlage mit Simultanverarbeitung mehrerer Programme mittels mehrerer RechnerInfo
- 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
Links
- 230000000875 corresponding Effects 0.000 claims description 18
- 230000015654 memory Effects 0.000 claims description 13
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000001276 controlling effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000000034 method Methods 0.000 description 3
- 210000001331 Nose Anatomy 0.000 description 1
- 101700087092 RERE Proteins 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001419 dependent Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000001771 impaired Effects 0.000 description 1
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-
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
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-
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
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-
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
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)
- 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), vondenen 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 |