DE1574877B1 - Verfahren und Einrichtung zur Kopplung von datenverarbeitenden Anlagen - Google Patents
Verfahren und Einrichtung zur Kopplung von datenverarbeitenden AnlagenInfo
- Publication number
- DE1574877B1 DE1574877B1 DE19611574877 DE1574877A DE1574877B1 DE 1574877 B1 DE1574877 B1 DE 1574877B1 DE 19611574877 DE19611574877 DE 19611574877 DE 1574877 A DE1574877 A DE 1574877A DE 1574877 B1 DE1574877 B1 DE 1574877B1
- Authority
- DE
- Germany
- Prior art keywords
- counter
- computer
- program
- systems
- count
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3433—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/88—Monitoring involving counting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Hardware Redundancy (AREA)
- Control By Computers (AREA)
- Bus Control (AREA)
Description
Die Erfindung betrifft ein Verfahren und eine
Einrichtung zur paarweisen Kopplung von selbständigen datenverarbeitenden Anlagen, von denen jede
eine eigene den Verarbeitungsablauf in dieser Anlage bestimmende Programmsteuereinheit aufweist,
zur wahlweisen unabhängigen oder gemeinsamen, wartezeitarmen Durchführung von Bearbeitungsaufgaben.
Die bekannten datenverarbeitenden Systeme bestehen aus mehreren Grundeinheiten: einer zentralen
verarbeitenden Einheit, einem Speicher, Ein- und Ausgabesteuerungen und den Ein- und Ausgabeeinheiten.
Die für manche Zwecke nötige Erhöhung der Verarbeitungsgeschwindigkeit erfordert in manchen
Fällen eine neue Organisationsform dieser Verarbeitungssysteme. So ist es bekannt, die Lösung
eines vorgegebenen Problems auf eine Reihe von Anlagen aufzuteilen, die demgemäß mehrere der
obengenannten zentralen Einheiten enthalten. Die Frage ist, in welcher Weise diese Anlagen miteinander
gekoppelt werden sollen. Es ist bekannt, zwei Rechner so zusammenarbeiten zu lassen, daß der
«ine der Haupt- und der andere der Hilfsrechner ist. Der Hilfsrechner bleibt dabei so lange in Wartestellung,
bis der Hauptrechner ihm an bestimmten Stellen seines Programms Teilaufgaben zuweisen kann.
Diese Art der Zusammenarbeit erfordert jedoch eine ausgefeilte Programmierung des Hauptrechners,
wenn eine genügende Zeitersparnis erzielt werden soll. Die für den Hilfsrechner unvermeidlichen
Wartezeiten sind jedoch eine nachteilige Folge dieses Systems.
Es ist auch bereits bekannt, die Zusammenarbeit mehrerer gleichzeitig und asynchron wirksamer Verarbeitungseinheiten
einer Datenverarbeitungsanlage durch ein Programmunterbrechungssystem so zu steuern, daß die Anlage auf das Vorliegen außergewöhnlicher
Bedingungen, wie beispielsweise Kapazitätsüberlauf, oder auf Anforderungssignale von
den angeschlossenen Einheiten möglichst umgehend reagiert. Zu diesem Zweck ist jeder Bedingung, die
eine Unterbrechung des gerade laufenden Programmes zur Folge haben soll, ein Unterbrechungsanzeige-Flip-Flop
zugeordnet. Für jeden dieser Flip-Flops ist ein Masken-Flip-Flop vorgesehen, der
in Abhängigkeit vom Programm einstellbar ist, so daß eine Unterbrechungsanzeige nur dann wirksam
werden kann, wenn sich der zugeordnete Masken-Flip-Flop im Einstellzustand befindet. Hierdurch
können für unterschiedliche Programme oder Programmteile unterschiedliche Arten von Unterbrechungsbedingungen
zugelassen oder Unterbrechungsbedingungen generell unterdrückt werden.
Auch bei diesem System sind Wartezeiten nicht zu vermeiden, da die Zulässigkeit von Programmunterbrechungen
durch das Programm der Datenverarbeitungsanlage starr vorgegeben ist. Treten zugelassene
Programmunterbrechungen auf, so wird die Ausführung des unterbrochenen Programms unabhängig
vom Umfang der von diesem zu verarbeitenden Datenmenge, die von Programmlauf zu Programmlauf
verschieden sein kann, gestoppt, bis das entsprechende, die Unterbrechungsbedingung behandelnde
Unterprogramm abgelaufen ist. Im anderen Falle, wenn eine Unterbrechungsanzeige auftritt, für die im
gerade ablaufenden Teil des zu unterbrechenden Programms keine Unterbrechungszulässigkeit programmiert
wurde, muß die Einheit, von der die Anzeige verursacht wird, in Wartestellung gehen, bis
die Unterbrechungszulässigkeit im Programmablauf erscheint.
Aufgabe vorliegender Erfindung ist es, ein Verfahren zur paarweisen Kopplung von selbständigen
datenverarbeitenden Anlagen anzugeben, durch das eine optimale Ausnutzung der Anlagen bei der wahlweise
unabhängigen oder gemeinsamen Durchführung von Bearbeitungsaufgaben erzielt werden kann,
ohne Rücksicht auf Unterschiede in den zu verarbeitenden Datenmengen. Gemäß der Erfindung wird
dies dadurch erreicht, daß jede der Anlagen nach Vollendung bestimmter Abschnitte des Verarbeitungsablaufes
positive bzw. negative Zählwertsignale erzeugt und einem für je zwei Anlagen gemeinsamen
Vor- und Rückwärtszähler zuführt, daß von jeder der Anlagen zu bestimmten Zeiten des Verarbeitungsablaufes
der Zähler abgefragt und sein Zählstand mit in dieser Anlage voreingestellten Grenzwerten
verglichen wird und daß bei Feststellung einer Grenzwertüberschreitung bzw. -unterschreitung die
Ausführung eines Teils der Bearbeitungsaufgaben einer Anlage durch die andere Anlage eingeleitet
oder beendet wird.
Der Inhalt des Vor- und Rückwärtszählers gibt stets eine Anzeige über den relativen Unterschied im
Stand der Verarbeitung in den beiden gekoppelten Anlagen an. Dadurch ist es möglich, daß eine Zusammenarbeit
zwischen den beiden Anlagen nur dann eingeleitet wird, wenn sie erforderlich ist, während
in den übrigen Zeiten jede Anlage unabhängig von der anderen ein selbständiges Programm durchführt.
Die Grenzwerte können zudem so gelegt werden, daß die Steuerung für einen Daten- bzw. Aufgabenaustausch
bereits vorbeugend wirksam wird, noch bevor eine akute Überlastungssituation oder
eine Wartesituation wirklich eingetreten ist. Damit ist einerseits das Warten einer Anlage auf die mögliche
Hilfeleistung für die andere und der damit verbundene Zeitverlust beseitigt, und andererseits ist
eine Hilfeleistung jeder Anlage für die andere möglich. Dies ist unter anderem besonders bei einem
nicht vorhersehbaren unterschiedlich großen Datenanfall während der Ausführung der Bearbeitungsprogramme bedeutungsvoll.
Eine weitere Aufgabe der Erfindung besteht darin, eine vorteilhafte Einrichtung zur Durchführung
des Verfahrens nach der Erfindung anzugeben. Diese Einrichtung kennzeichnet sich erfindungsgemäß dadurch,
daß jede der beiden über einen Vor- und Rückwärtszähler in Ablaufkopplung stehenden Datenverarbeitungsanlagen
mit einer Zählwertsignal-Generatorschaltung verbunden ist, die über das Programm
der betreffenden Anlage in Tätigkeit setzbar ist und die eine Zählwertsignal-Speicherschaltung
aufweist, daß beide Zählwertsignal-Generatorschaltungen über eine Mischerschaltung an den Eingang
des Zählers angeschlossen sind, daß ein Taktgeber vorgesehen ist, der die Zählwertsignal-Speicherschaltungen
nacheinander für eine Signalabgabe an die Mischerschaltung abtastet, und daß zwischen dem
Ausgang des Zählers und den Dateneingängen der beiden Anlagen eine Verbindung besteht, die in Abhängigkeit
vom Programm einer jeden dieser Anlagen für eine Zählstandübertragung zu der betreffenden
Anlage wirksam gemacht wird.
Weitere vorteilhafte Ausgestaltungen der Erfindung sind aus den Ansprüchen zu ersehen. Nach-
folgend sind einige vorteilhafte Ausführungsbeispiele der Erfindung an Hand von Zeichnungen erläutert.
Die Zeichnungen haben folgende Bedeutung:
F i g. 1 a bis Ie sind Blockdiagramme verschiedener
Ausführungsformen der Erfindung;
F i g. 2 zeigt in Blockform die Steuereinrichtungen für die Ausführungsform der F i g. 1 a;
F i g. 3 und 4 zeigen schematisch Einrichtungen, die als Programmgeber der Fig. 2 brauchbar sind;
F i g. 5 zeigt schematisch eine Ausführungsform
des Mischers der Fig. 2;
F i g. 6 zeigt schematisch eine Ausführungsform
des Zählers der F i g. 2;
Fig. 7a, 7b, 8a, 9a und 9b sind Flußdiagramme
für den Operationsablauf der Erfindung.
Allgemeines
Die Erfindung gibt Maßnahmen an, welche es Rechnern erlaubt, für die Lösung eines gegebenen
Problems zusammenzuarbeiten. Das Verfahren ist vergleichbar dem Gebrauch eines Notizblockes, dessen
Aufzeichnungen dazu dienen, den Platz eines Rechners während der Lösung des Problems zu verfolgen.
Die Wirkung dieses Verfahrens besteht darin, daß die Rechner ein gewisses »Zusammengehörigkeitsgefühl«
bei der Ausführung ihrer Arbeit bekommen. Dazu werden in der nachfolgenden Beschreibung
Zähler benutzt, die mehrere Werte annehmen können. Ein solcher Zähler erlaubt den Vergleich
des Zeitablaufs, der durch die beiden Maschinenprogramme dargestellt ist. Ein einfaches Beispiel hierfür
soll mit Hilfe der F i g. 1 a und der Tabelle I gegeben werden.
Programm Λ
1.
1.
Programm B
1. CD i-
2. | CU |
3. | |
4. | |
5. | |
6. | CU |
7. | |
8. | |
9. | |
10. | CU |
11. | |
2.
3.
4.
5._
6.
7.
CD
9._
10.
45
50
55
6o
CD
11.
65
Es sei angenommen, daß zwei Rechner die gleichen in ihren eigenen Speichereinheiten enthaltenen
Daten verarbeiten und daß das Programm der Maschine A diese Daten verarbeiten muß, ehe das Programm
der Maschine B sich damit beschäftigt. Ein Zähler ist zwischen den zwei Maschinen derart eingeschaltet,
daß er jedesmal um Eins aufwärts zählt, wenn ein Bit CU in einem Befehl des Programms A
auftaucht. Derselbe Zähler wird um Eins abwärts zählen, jedesmal wenn ein Bit CD in einem Befehl
der Maschine B auftritt. Der Zähler kann nicht unter Null zählen, mit anderen Worten, er kann nur positive
Zahlen enthalten. Er stellt sicher, daß die Maschine B die Maschine^ bei der Ausführung des
Programms der Maschine Λ( nie überholen kann. Das geschieht durch Überwachung derjenigen Stellen
in den beiden Programmen, wo es unbedingt nötig ist, die MaschineB am Überholen der Maschinell
zu verhindern. An jeder solchen Stelle sind die entsprechenden Befehle mit dem besonderen Bit markiert,
das für diese Zwecke vorbehalten ist. In dem gezeigten Beispiel sind die Befehle 3, 7 und 11 mit
einem Bit Ct/ markiert. Im Programm B sind die
Befehle 2, 5 und 10 mit einem Bit CD markiert.
In dem Beispiel ist es erforderlich, daß der Befehl 3 des Programms A vor dem Befehl 1 im Programm
B ausgeführt wird. Dasselbe gilt für den Befehl 7 im Programm A und Befehl 5 im Programm B
sowie für Befehl 11 im Programm^ und Befehl 10 im Programm B. Beide Programme werden gleichzeitig
durchgeführt, bis ein Bit auftaucht, welches den Zähler über seine Kapazität oder unter Null
fortschalten würde. So wird die Maschine A angehalten, wenn ein Bit CU erscheint, nachdem alle Zählerstellen
auf Eins stehen. Ebenso würde die Maschine B angehalten werden, wenn ein Bit CD erscheint,
wenn der Zähler nur Nullen enthält. Beide Programme laufen gleichzeitig ab, solange der Zähler
zu einem Wert innerhalb dieser Grenzen zurückgekehrt ist.
Bei der Ausführung des Programms A wird also der Zähler je um Eins aufwärts zählen, wenn eine
Markierung angetroffen wird, und er wird um Eins abwärts zählen, wenn im Programm B eine Markierung
angetroffen wird. Beim gleichzeitigen Start der beiden Maschinen mit den zwei vorgegebenen Programmen
ist der Zählerwert Null. Zu diesem Zeitpunkt würde die Maschine B nichts tun, da der Zähler
nicht unter Null zählen kann, aber die Maschine^ wäre an der normalen Abwicklung des Programms
nicht gehindert. Sobald die Maschine A den Befehl 3 ausgeführt hat, würde der Zähler um einen
Schritt erhöht werden und dadurch der Maschine B erlauben, zu starten und den Zähler auf Null zu
bringen. Damit könnte die Maschine B fortfahren zu arbeiten, bis sie den Befehl 5 trifft.
Wenn die Maschine A zu dieser Zeit den Befehl 7 ausgeführt hat, zeigt der Zähler einen Wert größer
als Null, und die Maschine B wird ihn bei ihrem Weiterarbeiten abwärts schalten. Wenn jedoch der
Zähler noch auf Null steht zum Zeitpunkt, wo die Maschine B beim Befehl 5 anlangt, so wird die Maschine
B anhalten und warten, bis der Zähler um Eins erhöht ist.
Falls die Maschine A viel rascher fortschreitet als
die Maschine B, wird der Zähler einen Wert größer als Eins enthalten. Dieser Wert ist eine Art Maßstab
dafür, wie viel die Maschine B gegenüber der Maschine A im Rückstand ist, und wird die Maschine A
anhalten. Das wurde mit der früheren Bemerkung
gemeint, daß der Zähler die relative Zeit bezüglich des Programmablaufs von zwei Maschinen mißt. Es
ist bemerkenswert, daß in dem gegebenen Beispiel die Maschine^ eine frei laufende Maschine ist und
daß auch die Maschine JS frei läuft, solange sie nicht die Maschine .(4 zu überholen droht. Die Kupplung
zwischen den beiden Maschinen ist vollständig bestimmt durch die beiden Bits (CD oder CU) in den
zugehörigen Befehlen, und diese Bits gestatten jeden Grad von Kupplung, der erwünscht ist.
An Hand der Fig. Ib und der Tabellen soll eine
Abwandlung des vorstehend beschriebenen Beispiels, diesmal mit drei Maschinen für dieselbe Aufgabe,
besprochen werden.
6 | III | |
Tabelle | Programm B | |
Programm/i | 1. CD-»Start bei Zwei« | |
1. CU | ||
Programm Λ
1.
1.
Programm B
1.
1.
2.
3.
4.
5.
6.
3.
4.
5.
6.
Programm C 1.
7. TIX
7. TIX
2. CD (V)CU (2) 2. CD (2)
3.
4.CLZ(I)
3.
4.
4.
5.
5.
6. CD(I) CEZ(2) 6.
7. ClZ(I)
7,
7.
9.CEZ(I)
8._
9.
9.
8. CD (2)
9.
9.
10.
10.
11. CD(I) CEZ(2) 11. CD (2)
Hier arbeiten drei Rechner miteinander auf Grund derselben Daten. Die Rechner A und B arbeiten wie
oben beschrieben; der zusätzliche Zähler 2 erlaubt dem Rechner C die Daten zu verarbeiten, nachdem
der Rechner i3 damit fertig ist. Der Zähler 2 wird aufwärts geschaltet (CU2) durch markierte Befehle
des Rechners B und wird abwärts geschaltet {CD 2) durch markierte Befehle des Rechners C. So verhindert
der Zähler 2 den Rechner C am Überholen des Rechners B in genau der gleichen Weise, wie der
Zähler im vorigen Beispiel den Rechner B daran hinderte, den Rechner A zu überholen. Bemerkenswert
ist, daß eis markierter Befehl im Rechner B zwei Zähler beeinflußt. Diese Markierung schaltet
den Zähler 1 abwärts und gleichzeitig den Zähler 2 aufwärts. Dieses Verfahren kann natürlich auf jede
beliebige Zahl von Rechnern ausgedehnt werden, die dasselbe Problem bearbeiten, wenn die Bedingungen
dazu dieselben sind wie im vorigen Beispiel.
Das nächste Beispiel befaßt sich mit rückläufigen Programmen und die Fig. la und Tabelle III wie in
der Erläuterung. »TIX« bedeutet »bedingter Sprung nach Schritt Eins«.
Hier besteht die Schwierigkeit darin, daß die beiden Programme Schleifen bilden und es erwünscht
ist, die beiden Maschinen so zu steuern, daß der Rechner B um einen Schleifendurchlauf hinter dem
Rechner A herläuft. Mit anderen Worten, der Rechner B soll die vom Rechner A benutzten Daten erst
dann verarbeiten, wenn sie der Rechner A erledigt hat. Neu ist also bei dieser Forderung nur, daß die
Programme in Schleifenform und nicht als offene Ketten vorliegen. Es müssen die Startbedingungen in
dem Zählersystem dazu geändert werden. Um die in Tabelle III dargestellte Gegebenheit in Gang zu
setzen, ist ein besonderer Befehl nötig, der am Anfang des Programms B angeschrieben ist: »Start bei
Zwei«. Dieser Befehl ist also eine Abwandlung des besprochenen Zählbits, das aber die Zeit bestimmt,
zu welcher der folgende Programmschritt beginnen kann. Hier erlaubt der Befehl »Start bei Zwei« dem
Rechner B die Weiterarbeit erst dann, wenn im Zähler
der Betrag 2 (oder ein anderer angegebener Wert) erscheint. Das Programm B schaltet den Zähler erst
dann abwärts, wenn die vorgegebene Bedingung erfüllt ist. Beim Erreichen des vorgegebenen Zählwertes
wird der Zählerwert sofort um diesen Betrag (2) vermindert, und dadurch bleibt der Abstand
zwischen den Rechnern A und B immer gleich einer Programmschleife. Wäre der Wert, der vom Befehl
des Rechners B bestimmt wird, 6, so wäre der Abstand zwischen den beiden Maschinen fünf Programmschleifen,
mit anderen Worten, einen konstanten, in Schleifen durchlaufend gezählten Abstand
zwischen den Rechnern A und B. Der »Start«-Befehl
ist eine Art Vorspannung, die dem Zählerinhalt eine Steuerfunktion zuordnet.
Im letzten Falle, wo der Startbefehl mit dem Wert 6 gekoppelt ist, würde der Rechner A den sechsten
Durchlauf seiner Schleife ausführen, während der Rechner B beim ersten Umlauf stünde; der Abstand
(die Differenz zwischen den ausgeführten Umläufen der beiden Rechner) wäre 5. Natürlich kann der Abstand
zwischen den beiden Maschinen nie kleiner sein als 5, jedoch kann er soviel mehr sein als nötig
und würde in diesem Beispiel nur durch die Zählerkapazität begrenzt.
Ein anderer Weg, dasselbe Ziel zu erreichen, wäre der, daß für den Zähler der mit dem Startbefehl gekoppelte
Werte der kleinste, erlaubte Wert ist (im letzten Beispiel 6), bis ein anderer Befehl eintrifft, der
7 8
den Wert nach oben oder unten verändert. Diese Art, Mit Hilfe der Fig. Ib und der Tabelle IV soll
dem Zähler einen Vorspannungspegel zuzuführen, er- die Ausdehnung des letzten Beispiels auf den Fall
laubt einen freizügigeren Umgang mit dem Zähler- von drei oder mehr Maschinen erläutert werden. Die
inhalt, da der Bezugswert auf jeden echten Zähler- Bedingungen sind dieselben wie vor, und es soll nur
wert eingestellt werden kann. 5 der Startvorgang beschrieben werden.
Programm^ 1. CU(I) |
Tabelle IV Programm B 1. CD(l)-»Start bei Zwei«-CZ7(2) |
Programm C 1. CD(2)-»Start bei Zwei« |
2. | 2. | 2. |
3. | 3. | 3. |
4. | 4. | 4. |
5. | 5. | 5. |
6. | 6. | 6. |
7. | 7. | 7. |
8. TIX | 8. TIX | 8. TIX |
Wenn der Rechner A startet, verursacht er im Rest der Kette stillsetzen. Das Beispiel zeigt weiter,
Zähler 1 einen Zählschritt nach oben. Die »Start«- daß so viele Rechner als nötig sind, die gegebenen
Bedingung für die Schleife im Rechner B verhindert 30 Daten verarbeiten können, wenn jeweils ein Zähler
den Rechner B am Start, bis der Zählwert im Zäh- zwischen zwei Rechnern eingefügt wird. Klar ist
ler 1 zwei ist. Beim Beginn des zweiten Schleifen- auch, daß der Abstand, in Schleifendurchläufen gedurchgangs
von Rechner A wird der Zählerwert von messen, zwischen zwei Maschinen auf jeden ge-Zähler
1 um Eins auf zwei erhöht. Der Befehl »Start wünschten Wert gebracht werden kann. Die obenerbei
Zwei« im Rechner B wird dann von dem Zähler- 35 wähnte »Vorspannung« wird bei dem niedrigsten geinhalt
zwei abziehen und dem Zähler B das Fort- gebenen Wert bleiben, und dies wird verhindern, daß
schreiten im Programm erlauben. Zur gleichen Zeit die Schleifendurchläufe in den verschiedenen Mawird
der Rechner B den Zähler 2 um Eins aufwärts schinen zeitlich zu nah beieinanderliegen. Ein prakschalten.
Wenn der Rechner B seinen zweiten Durch- tisches Beispiel für die eben erwähnte Anordnung ist
gang beginnt, bringt er den Zähler 2 auf den Wert 40 die übliche Eingabe-Ausgabe-Operation, wo Daten
Zwei. Der Rechner C wird daraufhin zu arbeiten be- von einem Magnetband gelesen, verarbeitet und in
ginnen und gleichzeitig den Zähler 2 um zwei berichtigter Form auf ein neues Band geschrieben
Schritte abwärts bringen. Im Endeffekt werden also werden sollen, ohne daß man sich um die Syndie
drei Rechner ihre Programmschleifen mit einem chronisierung der Programmschleifen zu kümmern
Abstand von wenigstens einer Schleifenlänge aus- 45 braucht.
führen. Es ist bemerkenswert, daß sich die Maschi- Wieder mit der Fig. Ib und der nachfolgenden
nen gegenseitig nicht überholen können, denn der Tabelle V soll ein ähnliches System beschrieben
Zählwert Null in jedem der beiden Zähler wird den werden.
Programme 1. CU(I) |
Tabelle V Programm B 1. CD(l)-»Start bei Zwei«-CC7(2) |
Programm C 1. CD(2)-»Start bei Drei« |
009586/280 |
2. | 2. | 2. | |
3. | 3. | 3. | |
4. | 4. | 4. | |
5. | 5. | 5. | |
6. | 6. | 6. | |
7. | 7. | 7. | |
8. TIX | 8. TIX | 8. TIX | |
Im Programm C ist hier »Start bei Drei« vermerkt. Die Zähler dieses Beispiels zeigen die Zahl der Aufwärtssignale,
die Zahl der Abwärtssignale und die Gesamtzahl an. Anfangs, wenn der Rechner A startet,
wird der Zähler 1 um Eins erhöht. Der Rechner B schaltet den Zähler 1 um Eins abwärts und den
Zähler 2 um Eins aufwärts. Beginnt der Rechner A seinen zweiten Durchgang, so wird der Zähler 1 um
Eins erhöht. Der Rechner B, der noch wartet, zählt sofort den Zähler 1 um Eins abwärts und den Zähler
2 um Eins aufwärts. Jetzt fängt der Rechner B zu arbeiten an, da der Zähler 1 insgesamt um zwei
Schritte aufwärts geschaltet wurde. Der Rechner A wird beim Beginn seines dritten Durchganges den
Zähler 1 um Eins aufwärts zählen, und wenn der Rechner B seinen zweiten Durchgang beginnt, wird er
den Zähler 1 um Eins abwärts und den Zähler 2 um Eins aufwärts schalten.
Nun hat der Zähler 2 drei Aufwärtsschritte aufgenommen, und der Rechner C wird beginnen. Wenn
die Rechner die gegebene Beziehung aufrechterhalten sollen, darf der Zähler 1 nicht unter Eins und der
Zähler 2 unter Zwei geschaltet werden.
Im Arbeitsablauf der beiden durch die Tabellen IV und V dargestellten Beispiele besteht ein Unterschied.
Im Falle der Tabelle IV muß jede Maschine warten, bis ihr Vorgänger gestartet ist. In der Tabelle V erfolgt
bei jedem Start einer Maschine unmittelbar darauf eine Veränderung im Zählerstand aller Zähler
des Systems. Das hat zur Folge, daß jeder Rechner der Kette jeden Schleifendurchlauf beginnen
kann, nachdem der das Spiel beginnende Rechner seine Durchläufe begonnen hat. Es ist somit die Bedingung,
daß die Maschinen ihre Umläufe nach denen des vorherigen Rechners beginnen, nach wie
vor vorhanden. Die Wirkung ist deshalb immer noch dieselbe, als wenn die benutzten Werte sich auf den
vorangehenden Rechner statt auf den ersten Rechner bezogen.
Kurz zusammengefaßt zeigen die Tafeln IV und V ein System für Start und Aufrechterhaltung eines
Mindestabstandes zwischen Rechenoperationen für den Fall einfacher, rückläufiger Programme in jeder
Maschine und für den Fall, daß mehr als zwei Maschinen in der Kette liegen.
Die durch diese beiden Beispiele aufgezeigte Richtung soll nun auf ein komplizierteres Beispiel ausgedehnt
werden. Das hervorstechende Merkmal des
ίο folgenden Beispiels ist eine höhere Art von Rückläufigkeit
als bei den beiden vorhergehenden Beispielen. Im Beispiel der Fig. Ic ist nämlich das
vorige Beispiel (mit Fig. Ib und der Tabelle V)
durch die zusätzliche Forderung erweitert, daß die Programme jedes Rechners sowohl innere als auch
äußere Schleifen enthalten. Insbesondere erstrecken sich die Schleifen auf die Daten, die von dem vorhergehenden
Rechner bearbeitet wurden. Die wichtige Änderung bei diesem Beispiel besteht darin, daß die
Kette der Rechner eine geschlossene Schleife, nicht eine offene Reihenschaltung ist, wie es bei den vorhergehenden
Beispielen der Fall war. Mit anderen Worten, der Rechner A hat den Rechner C als Vorgänger
mit der Wirkung, daß nach dem Start ein geschlossener Ring von Rechnern eine geschlossene
Schleife von Daten nacheinander bearbeitet. Es besteht also die zusätzliche Bedingung, daß der Rechner
A nach der Bearbeitung der Daten wieder mit denselben Daten seine Arbeit beginnt. Der Rechner A
muß aber daran gehindert werden, diese wiederholte Datenverarbeitung zu beginnen, bevor der Rechner
C diese Daten bearbeitet hat. Denn wenn der Rechner A den zweiten Durchgang beginnt, können
die Daten eventuell durch neue ersetzt worderTsein, und aus diesem Grunde darf der Rechner A den
Rechner C nicht überholen.
Die folgende Tabelle VI zusammen mit der Fig. Ic wird das Beispiel verständlich machen.
Programm^ Programm B Programm C
1. CD(3)-»Start bei NuIk-CEZ(I) 1. CD(l)-»Start bei Zwei«-Ci7(2) 1. CD(2)-»Start bei Drei«-CE/(3)
2. 2. 2.
3. 3. 3.
4. 4. 4.
5. 5. 5.
6. 6. 6.
7. 7. 7.
8. 8. 8.
9. 9. 9.
10. 10. 10.
11. TIX
11. TIX
11. TIX
11 12
Bemerkenswert ist, daß der Rechner A jetzt den schritthalten. Nun wird die Verbindung zum Rech-
Zähler 3 abwärts und gleichzeitig den Zähler 1 auf- ner B hergestellt, der zu arbeiten beginnt, sobald der
wärts schaltet. Dadurch wird die Schleife der Ma- Zähler 2 auf Null gebracht ist und der die dann ein-
schinen geschlossen und eine fortlaufende Bearbei- laufenden Aufzeichnungen verarbeitet. In diesem Bei-
tung der Daten möglich. Die Startbefehle wirken wie 5 spiel können Unterbrechungen dadurch veranlaßt
gewöhnlich mit dem Unterschied, daß »Start bei werden, daß Null-Werte in die Zähler eingetragen
Null« im Rechner A sich auf den Inhalt des Zäh- weiden, so daß der Rechner B an jeder markierten
lers 3 bezieht. In diesem Beispiel wirken die Zähler- Stelle seines Programms unterbrochen werden kann,
stände als Abstandsgrößen zwischen den verschie- wodurch die Frage der Speicherzuordnungen er-
denen Maschinenumläufen. Wenn also der Rech- io leichtert wird. Es können noch viele andere Arbeits-
ner A seinen zweiten Durchgang beginnt, startet der ablaufe von der Stellung der Zähler abhängig ge-
Rechner B seinen ersten Durchgang; wenn Rechner A macht werden.
seinen dritten Durchgang beginnt, startet der Rech- Die Fig. Ie zeigt ein Beispiel für die Bildung eines
ner B seinen zweiten Durchgang und der Rechner C Netzwerkes von Rechnern, unter Verwendung der
seinen ersten Durchgang. Auf diese Weise wird das 15 vorstehend beschriebenen Technik. Diese Rechner
System in Gang gesetzt, und sobald der Rechner C lösen in Gemeinschaftsarbeit ein Problem, das in eine
die Daten verarbeitet, wird der Zähler 3 um Eins Folge von Teilen auflösbar ist, von denen jedes geaufwärts
geschaltet. Sobald der Rechner A bereit ist, trennt bearbeitet wird. Jede Maschine besitzt ihre
die vom Rechner C fertig verarbeiteten Daten in An- eigenen Speicher, Eingabe-Ausgabe-Einheiten usw.
griff zu nehmen, wird der Rechner A bei seinem 20 so weit, wie diese Einrichtungen nötig sind.
Operationsbeginn den Zähler 3 abwärts schalten. Es Zunächst soll die erste senkrechte Spalte von Maist festzuhalten, daß der Rechner A seinen vierten schinen bestehend aus den Redhnern A, B und C beDurchgang nicht beginnen kann, bevor der Rech- trachtet werden. Der Zähler 1 wird vom Rechner A ner C seinen ersten Durchgang vollendet hat. Das ist aufwärts und vom Rechner B abwärts geschaltet, er eine Beschreibung des vorliegenden Beispiels, denn 25 liegt zwischen diesen beiden Redhnern. Der Reches wird dabei aus Gründen der Einfachheit ange- ner A hat die Aufgabe, gewisse Daten zu erzeugen, nommen, daß nur drei Bündel von Daten zu ver- die von dem System zu verarbeiten sind. Wenn also arbeiten sind und daß für jede Maschine die Reihen- der Rechner A solche Daten erzeugt hat, werden sie folge der Bündel 1, 2, 3, 1, 2, 3 ... usw. sein soll. zum Rechner B geleitet. Zur selben Zeit wird der Der Zähler 3 verriegelt die Rechner-Reihenschaltung 30 Zähler 1 um Eins aufwärts geschaltet. Die Aufgabe derart, daß der Rechner A den zweiten Durchgang des Rechners B ist es, die Daten aus dem Rechner A mit dem Datenbündel 1 erst beginnen kann, wenn weiterzuverarbeiten, jedoch in besonderer Weise, der Rechner C seinen ersten Durchgang über das- denn jedesmal wenn der Rechner B eine solche Verselbe Datenbündel erledigt hat. Sind mehr als drei arbeitung beginnt, wird der Zähler 1 um Eins erBündel von Daten, z. B. zehn, im Spiel, so muß der 35 niedrigt. Sobald der Rechner B seine Arbeit beendet Abstand zwischen dem Rechner C und dem Rech- hat, bringt er den Zähler 2 um einen Schritt aufwärts, ner A groß sein, aber in jedem Falle wird der Rech- als Zeichen dafür, daß eine Reihe von Daten für den ner A nie in der Lage sein, den Rechner C zu über- Rechner C bereitsteht. Der Zähler 2 wird abwärts holen. Wenn alle Durchgänge durch alle Daten ab- geschaltet, wenn der Rechner C die Daten aus dem gelaufen sind, muß der Ausgang aller Schleifen einen 40 Rechner B zu verarbeiten beginnt. Der Rechner C letzten Zählvorgang bewirken, welcher der folgenden hat eine andere Eingangsquelle als der Rechner B, es Maschine die Bearbeitung derselben Daten gestattet. sei angenommen, daß es ein Magnetband ist. Wäh-
Operationsbeginn den Zähler 3 abwärts schalten. Es Zunächst soll die erste senkrechte Spalte von Maist festzuhalten, daß der Rechner A seinen vierten schinen bestehend aus den Redhnern A, B und C beDurchgang nicht beginnen kann, bevor der Rech- trachtet werden. Der Zähler 1 wird vom Rechner A ner C seinen ersten Durchgang vollendet hat. Das ist aufwärts und vom Rechner B abwärts geschaltet, er eine Beschreibung des vorliegenden Beispiels, denn 25 liegt zwischen diesen beiden Redhnern. Der Reches wird dabei aus Gründen der Einfachheit ange- ner A hat die Aufgabe, gewisse Daten zu erzeugen, nommen, daß nur drei Bündel von Daten zu ver- die von dem System zu verarbeiten sind. Wenn also arbeiten sind und daß für jede Maschine die Reihen- der Rechner A solche Daten erzeugt hat, werden sie folge der Bündel 1, 2, 3, 1, 2, 3 ... usw. sein soll. zum Rechner B geleitet. Zur selben Zeit wird der Der Zähler 3 verriegelt die Rechner-Reihenschaltung 30 Zähler 1 um Eins aufwärts geschaltet. Die Aufgabe derart, daß der Rechner A den zweiten Durchgang des Rechners B ist es, die Daten aus dem Rechner A mit dem Datenbündel 1 erst beginnen kann, wenn weiterzuverarbeiten, jedoch in besonderer Weise, der Rechner C seinen ersten Durchgang über das- denn jedesmal wenn der Rechner B eine solche Verselbe Datenbündel erledigt hat. Sind mehr als drei arbeitung beginnt, wird der Zähler 1 um Eins erBündel von Daten, z. B. zehn, im Spiel, so muß der 35 niedrigt. Sobald der Rechner B seine Arbeit beendet Abstand zwischen dem Rechner C und dem Rech- hat, bringt er den Zähler 2 um einen Schritt aufwärts, ner A groß sein, aber in jedem Falle wird der Rech- als Zeichen dafür, daß eine Reihe von Daten für den ner A nie in der Lage sein, den Rechner C zu über- Rechner C bereitsteht. Der Zähler 2 wird abwärts holen. Wenn alle Durchgänge durch alle Daten ab- geschaltet, wenn der Rechner C die Daten aus dem gelaufen sind, muß der Ausgang aller Schleifen einen 40 Rechner B zu verarbeiten beginnt. Der Rechner C letzten Zählvorgang bewirken, welcher der folgenden hat eine andere Eingangsquelle als der Rechner B, es Maschine die Bearbeitung derselben Daten gestattet. sei angenommen, daß es ein Magnetband ist. Wäh-
Die grundsätzliche Methode, durch die eine rend der Arbeit der Rechner A und B wurde von
Gruppe von Rechnern zur Bearbeitung eines gege- dem Eingabeband eine Aufzeichnung in den Speicher
benen Problems mit gewissen Bedingungen gebracht 45 des Rechners C gelesen. Dieser Vorgang brachte
werden kann, wurde gezeigt. Die Grundbedingung, gleichzeitig den Zähler 3 um einen Schritt aufwärts,
der das Problem genügen muß, ist die, daß die Lö- Wenn der Rechner C merkt, daß der Zähler 2 einen
sung durch Aufteilung der Arbeit in nacheinander in Wert größer als Null enthält und daß der Zähler 3
fester Folge zu erledigende Teilarbeiten gefunden einen Wert größer als Null enthält, kann er daraus
werden kann. Wenn das möglich ist, dann kann 50 schließen, daß die nächste Aufzeichnung aus jeder
einem Rechner jeder Teil der Arbeiten zugeordnet der beiden Eingänge zur Verarbeitung bereit ist. Die
werden, und die Aufeinanderfolge der Rechner kann Aufgabe des Rechners C ist es, die Daten von dem
dieselbe sein wie die Aufeinanderfolge der verschie- Band mit entsprechenden und dazu passenden Auf-
denen Teile der Arbeit. Es ist deshalb zur Sicher- zeichnungen aus dem Rechner B zu verarbeiten. Das
stellung einer richtigen Lösung nur nötig, sicherzu- 55 Ergebnis dieser Operation wird dann über eine
stellen, daß sich die Rechner nicht gegenseitig über- Leitung als Eingang dem Rechner F zugeführt. Es
holen. Der Abstand zwischen den Redhnern braucht ist bemerkenswert, daß der Rechner C beim Beginn
nicht auf einem Minimum gehalten zu werden, es ist der Verarbeitung der zwei Datengruppen die Zäh-
jedoc'h erwünscht, dies zu tun. Ier 2 und 3 um einen Schritt erniedrigt. Sind die
Die Fig. Id zeigt zwei Rechner, die Informa- 60 Daten vom Rechner C für den Rechner F fertig, so
tionen aus einer äußeren Eingabe-Ausgabe-Einheit wird der Zähler 6 um einen Schritt erhöht. Die beiden
(I/O) verarbeiten. Das ist sinnvoll in den Fällen, Ketten aus den Rechnern D, E und F bzw. G, H
wo die Einheit Aufzeichnungen mit geringer und mit und / arbeiten in gleicher Weise; jede Kette speist
hoher (z. B. Konten-) Bewegung enthält. Während Daten in die obere Zeile von Rechnern. Die Daten
der Teil der Aufzeichnung mit der geringen Bewe- 65 aus dem Band werden so auf Grund der Daten aus.
gung verarbeitet wird, kann der Rechner A leicht jeder der drei Ketten verarbeitet und schließlich auf
die Verarbeitung bewältigen. Sobald ein Teil mit einem weiteren Band ausgegeben. Die Zähler 1, 4
hoher Bewegung auftritt, kann der Rechner A nicht und 7 sind in ihrem Wert begrenzt, um zu verhin-
COPY
13 14
dern, daß die Rechner A, D und G ihren Nachbarn Die Leitung 29 überträgt Programmanforderungen,
überholen. Die Zähler 1, 4 und 7 haben z. B. einen die an den Zähler 10 gerichtet sind. Ebenso überHöchstwert
von 4. Das bedeutet, daß ein Rechner, trägt die Leitung 3O1 Programmanforderungen vom
der um vier Aufzeichnungen seinem Nachbar voraus Rechner A an denselben Zähler 10. Diese Programmist,
angehalten wird, bis der Nachbar den Zähler 5 anforderungen können aus der Forderung bestehen,
wenigstens um einen Schritt erniedrigt hat. daß der Zähler 10 auf- oder abwärts geschaltet wird
Bei diesem Beispiel lösen neun Rechner mit zehn oder daß besondere Stellen des Zählers, oder auch
dazwischengeschalteten Zählern ein Problem, das in alle Stellen, auf Eins oder Null gebracht werden.
Teile aufspaltbar ist; es sind aber keine geschlosse- Der N-stellige Zähler 10 weist keine Besondernen Schleifen von Rechnern gebildet worden. Be- io heiten auf. Er kann binär oder dezimal sein, oder er merkenswert hier ist, daß die Arbeitsabläufe auf der kann so zählen, daß immer nur eine Ausgangsleitung Koinzidenz von Zählern beruhen. Für das Beispiel hohes Potential führt. Es ist nur erforderlich, daß er der Rechner C, F und / heißt dies: der Rechner C aufwärts oder abwärts zählen kann und daß man eine fährt mit seiner Arbeit nur bei einer Koinzidenz der oder alle seiner Bitstellen auf einen bestimmten Wert Zähler 2 und 3 fort; der Rechner F fährt mit seiner 15 bringen kann. Der Einfachheit halber wird ange-Arbeit nur bei einer Koinzidenz der Zähler 5 und 6 nommen, daß er binär zählt und N Bitstellen entfort; der Rechner / braucht die Koinzidenz der Zäh- hält, von denen drei (14-19) in Fig. 2 zu sehen sind, ler 8 und 9. Die Koinzidenz ist hier die einfachste, Überlauf oder Unterschreiten des Nullwertes wird mögliche Lösung; beide Zähler enthalten dabei Zähl- beim Zähler 10 durch die Entschlüsselermatrix 30 werte größer als 1. Hinsichtlich der Zahl der Rechner 20 verhindert, die eine Leitung 31 auf hohes Potential ist zu sagen, daß mangels Schleifenbildung kein Hin- bringt, sobald alle Zählerstellen »0« sind, und eine derungsgrund dafür besteht, zwei benachbarte Rech- Leitung 32 auf hohes Potential bringt, wenn alle ner durch einen neuen Rechner zu ersetzen, der die Zählerstellen »1« sind. Die Sammelleitung 33 verArbeit der beiden ersetzten erledigt. Es spricht auch bindet Matrix und Zähler. Da der Zähler nicht mehr nichts dagegen, eine der Maschinen durch zwei mit 25 weiter abwärts geschaltet werden soll, wenn alle Biteinem Zähler in Reihe geschaltete zu ersetzen. Da- stellen »0« sind, wird über das positive Potential der durch kann das Netzwerk von Maschinen beliebig Leitung 31 und den Inverter 34 die UND-Schaltung erweitert oder beschränkt werden. 35 gesperrt, so daß über die Leitung 13 keine weiteren Anforderungen auf Abwärtsschaltung des Zäh-
Teile aufspaltbar ist; es sind aber keine geschlosse- Der N-stellige Zähler 10 weist keine Besondernen Schleifen von Rechnern gebildet worden. Be- io heiten auf. Er kann binär oder dezimal sein, oder er merkenswert hier ist, daß die Arbeitsabläufe auf der kann so zählen, daß immer nur eine Ausgangsleitung Koinzidenz von Zählern beruhen. Für das Beispiel hohes Potential führt. Es ist nur erforderlich, daß er der Rechner C, F und / heißt dies: der Rechner C aufwärts oder abwärts zählen kann und daß man eine fährt mit seiner Arbeit nur bei einer Koinzidenz der oder alle seiner Bitstellen auf einen bestimmten Wert Zähler 2 und 3 fort; der Rechner F fährt mit seiner 15 bringen kann. Der Einfachheit halber wird ange-Arbeit nur bei einer Koinzidenz der Zähler 5 und 6 nommen, daß er binär zählt und N Bitstellen entfort; der Rechner / braucht die Koinzidenz der Zäh- hält, von denen drei (14-19) in Fig. 2 zu sehen sind, ler 8 und 9. Die Koinzidenz ist hier die einfachste, Überlauf oder Unterschreiten des Nullwertes wird mögliche Lösung; beide Zähler enthalten dabei Zähl- beim Zähler 10 durch die Entschlüsselermatrix 30 werte größer als 1. Hinsichtlich der Zahl der Rechner 20 verhindert, die eine Leitung 31 auf hohes Potential ist zu sagen, daß mangels Schleifenbildung kein Hin- bringt, sobald alle Zählerstellen »0« sind, und eine derungsgrund dafür besteht, zwei benachbarte Rech- Leitung 32 auf hohes Potential bringt, wenn alle ner durch einen neuen Rechner zu ersetzen, der die Zählerstellen »1« sind. Die Sammelleitung 33 verArbeit der beiden ersetzten erledigt. Es spricht auch bindet Matrix und Zähler. Da der Zähler nicht mehr nichts dagegen, eine der Maschinen durch zwei mit 25 weiter abwärts geschaltet werden soll, wenn alle Biteinem Zähler in Reihe geschaltete zu ersetzen. Da- stellen »0« sind, wird über das positive Potential der durch kann das Netzwerk von Maschinen beliebig Leitung 31 und den Inverter 34 die UND-Schaltung erweitert oder beschränkt werden. 35 gesperrt, so daß über die Leitung 13 keine weiteren Anforderungen auf Abwärtsschaltung des Zäh-
Bauart einer bevorzugten Ausführungsform 3<> lers 1 gehen können. Entsprechend wirkt die Leitung
32 über den Inverter 37 auf die UND-Schaltung 36
Die Fig. 2 zeigt, wie das Blockbild der Fig. la ein, wenn alle Bitstellen »1« enthalten. Die Leitung
ausgestaltet werden könnte. Der Rechner B mit dem 2O1 verbindet alle Zählerausgänge über den einge-Bezugszeichen
1 enthält einen Puffer 6, eine Ein- schalteten Zustand mit der Leitung 5.
gangs-Ausgangs-Leitung 2, eine Ausgangsleitung 29, 35 Die Rechner A und B können über die Leitungen eine Leitung 7zu einem monostabilen Multivibrator 8 11 bis 19 (Fig. 2) Änderungen des Zählerstandes und eine Leitung 9, die diesen Multivibrator mit dem fordern. Die zugehörigen Einrichtungen sollen nachPuffer 6 verbindet. Der Rechner B kann irgend- folgend allgemein beschrieben werden. Programmeinem Typ von Datenverarbeitungssystemen ange- anforderungen von den Rechnern B oder A werden hören: parallel, Serie, binär, dezimal usw. Der mit 3 40 von den Programmgebern 22 (B) und 24 (A) in Einbezeichnete Rechner A enthält eine Eingangs-Aus- stellbefehle umgewandelt. Kommen über die Leigangs-Leitung 4 und eine Ausgangsleitung 30. Auch tungen 29 und 3O1 gleichzeitig Anforderungen für dieser Rechner kann von herkömmlicher Art sein. Aufwärtsschaltung der Zähler, so können diese An-Die Leitung 5 überträgt Daten zwischen den Rech- forderungen nicht gleichzeitig, sondern müssen nern A und B und zu anderen Rechnern oder Ein- 45 nacheinander erledigt werden. Die Reihenfolge ist gabe-Ausgabe-Einheiten. Es sei angenommen, daß nicht von Wichtigkeit. Die Programmgeber 22 und 24 der Rechner A eine leistungsfähige Eingangs-Aus- haben hauptsächlich die Aufgabe, die Programmgangs-Übertragungseinheit enthält, die fähig ist, anforderungen zu speichern und gleichzeitig anfal-Daten mit verschiedener Übertragungsgeschwindig- lende Anforderungen nacheinander als Einstellkeit und von verschiedener Form (Serie oder parallel) 50 befehle weiterzugeben. Dazu dienen der Impulsaufzunehmen oder abzugeben. Beim Rechner B wird generator 25 und der Inverter 26, die über die Leieine derartige Einheit nicht vorausgesetzt. Er sei in tungen 27 bzw. 28 mit den Programmgebern verder Lage, Daten aus der Übertragungsleitung 5 in bunden sind. Der Mischer 20 überträgt die zwei Serienform zu übernehmen und sie in seinem Innern Gruppen von nicht gleichzeitigen Eingangssignalen für späteren Gebrauch aufzubewahren. Andererseits 55 aus den Programmgebern auf eine Gruppe von Einbraucht der Rechner B einen Pufferspeicher 6, in dem stelleitungen zum Zähler 10. Daneben erzeugen die serienweise über die Leitung 5 einlaufende Daten Programmgeber 22 und 24 einen Zählimpuls (Leiaufbewahrt werden. Um Daten aus dem Puffer 6 tung 12) jedesmal, wenn ein Aufwärts- oder ein Abzum Speicher des Rechners B zu bringen, muß der wärtseinstellbefehl übertragen wird. Dies ist eine monostabile Multivibrator 8 über Leitung 7 einge- 60 Maßnahme zur Vereinfachung der Schaltung des schaltet werden; die Leitung 9 wird über die Um- Zählers und nicht unbedingt erforderlich,
schaltdauer des Multivibrators positiv gemacht. Wäh- Der Mischer 20 überträgt Einstellbefehle zum Zährend dieser Zeit bleibt der Puffer 6 unverändert, um ler 10. Eine Anforderung an den Programmgeber 22 dem Rechner B die Entnahme des Pufferinhalts für zum Aufwärtszählen möge gleichzeitig mit einer Aninternen Gebrauch zu gestatten. Sobald die Leitung 9 65 förderung an den Programmgeber 24 zum Aufwärtswieder niedriges Potential annimmt, kann der zählen eintreffen. Dann wird zu einem Zeitpunkt auf Puffer 6 weitere Informationen aus der Leitung 5 der Leitung 21 ein Befehl erscheinen, der die Aufaufnehmen, wärtsleitung 11 und die Zählleitung 12 auf hohes
gangs-Ausgangs-Leitung 2, eine Ausgangsleitung 29, 35 Die Rechner A und B können über die Leitungen eine Leitung 7zu einem monostabilen Multivibrator 8 11 bis 19 (Fig. 2) Änderungen des Zählerstandes und eine Leitung 9, die diesen Multivibrator mit dem fordern. Die zugehörigen Einrichtungen sollen nachPuffer 6 verbindet. Der Rechner B kann irgend- folgend allgemein beschrieben werden. Programmeinem Typ von Datenverarbeitungssystemen ange- anforderungen von den Rechnern B oder A werden hören: parallel, Serie, binär, dezimal usw. Der mit 3 40 von den Programmgebern 22 (B) und 24 (A) in Einbezeichnete Rechner A enthält eine Eingangs-Aus- stellbefehle umgewandelt. Kommen über die Leigangs-Leitung 4 und eine Ausgangsleitung 30. Auch tungen 29 und 3O1 gleichzeitig Anforderungen für dieser Rechner kann von herkömmlicher Art sein. Aufwärtsschaltung der Zähler, so können diese An-Die Leitung 5 überträgt Daten zwischen den Rech- forderungen nicht gleichzeitig, sondern müssen nern A und B und zu anderen Rechnern oder Ein- 45 nacheinander erledigt werden. Die Reihenfolge ist gabe-Ausgabe-Einheiten. Es sei angenommen, daß nicht von Wichtigkeit. Die Programmgeber 22 und 24 der Rechner A eine leistungsfähige Eingangs-Aus- haben hauptsächlich die Aufgabe, die Programmgangs-Übertragungseinheit enthält, die fähig ist, anforderungen zu speichern und gleichzeitig anfal-Daten mit verschiedener Übertragungsgeschwindig- lende Anforderungen nacheinander als Einstellkeit und von verschiedener Form (Serie oder parallel) 50 befehle weiterzugeben. Dazu dienen der Impulsaufzunehmen oder abzugeben. Beim Rechner B wird generator 25 und der Inverter 26, die über die Leieine derartige Einheit nicht vorausgesetzt. Er sei in tungen 27 bzw. 28 mit den Programmgebern verder Lage, Daten aus der Übertragungsleitung 5 in bunden sind. Der Mischer 20 überträgt die zwei Serienform zu übernehmen und sie in seinem Innern Gruppen von nicht gleichzeitigen Eingangssignalen für späteren Gebrauch aufzubewahren. Andererseits 55 aus den Programmgebern auf eine Gruppe von Einbraucht der Rechner B einen Pufferspeicher 6, in dem stelleitungen zum Zähler 10. Daneben erzeugen die serienweise über die Leitung 5 einlaufende Daten Programmgeber 22 und 24 einen Zählimpuls (Leiaufbewahrt werden. Um Daten aus dem Puffer 6 tung 12) jedesmal, wenn ein Aufwärts- oder ein Abzum Speicher des Rechners B zu bringen, muß der wärtseinstellbefehl übertragen wird. Dies ist eine monostabile Multivibrator 8 über Leitung 7 einge- 60 Maßnahme zur Vereinfachung der Schaltung des schaltet werden; die Leitung 9 wird über die Um- Zählers und nicht unbedingt erforderlich,
schaltdauer des Multivibrators positiv gemacht. Wäh- Der Mischer 20 überträgt Einstellbefehle zum Zährend dieser Zeit bleibt der Puffer 6 unverändert, um ler 10. Eine Anforderung an den Programmgeber 22 dem Rechner B die Entnahme des Pufferinhalts für zum Aufwärtszählen möge gleichzeitig mit einer Aninternen Gebrauch zu gestatten. Sobald die Leitung 9 65 förderung an den Programmgeber 24 zum Aufwärtswieder niedriges Potential annimmt, kann der zählen eintreffen. Dann wird zu einem Zeitpunkt auf Puffer 6 weitere Informationen aus der Leitung 5 der Leitung 21 ein Befehl erscheinen, der die Aufaufnehmen, wärtsleitung 11 und die Zählleitung 12 auf hohes
COPY ORIGINAL INSPECTED
15 16
Potential bringt. Zu einem anderen Zeitpunkt, früher nur die Leitungen für die beiden ersten Bitstellen
oder später, wird ein Befehl auf Leitung 23 die Auf- gezeichnet. Die abgehenden Leitungen, für deren
wärtsleitung 11 und die Zählleitung 12 ebenfalls auf Zähl dasselbe gilt, sind die Leitungen 216 bis 220.
hohes Potential bringen. Trotz gleichzeitigen Ein- Die von den beiden Programmgebern B und A angangs der Anforderungen resultieren zwei Aufwärts- 5 kommenden Befehlsleitungen für Aufwärts- und Abbefehle. Der Mischer 10 empfängt von den Pro- wärtszählungen (200 und 208 bzw. 201 und 209) wergrammgebern 22 und 24 manche Befehle, die nicht den einfach über ODER-Schaltungen 223 bzw. 224 auf einer der Ausgangsleitüngen 11 bis 19 erschei- mit den abgehenden Leitungen 216 und 218 verbunnen. Nämlich die Befehle, alle Bits des Zählers 10 den. Die Zählleitung 217, mit welcher jeder Zählentweder in den »1«- öder »Ö«-Zustand zu bringen. io Vorgang unabhängig von seiner Richtung registriert Dafür sind keine besonderen Leitungen zum Zähler wird, ist über die ODER-Schaltung 231 und die 10 nötig; der Mischer 20 enthält die nötigen Schal- Verzögerung 232 derart angeschlossen, daß der tungen, um alle Einstelleitungen gleichzeitig zu er- monostabile Multivibrator 233 jeweils erst mit einer regen. Verzögerung für Zählbefehle auf den Leitungen 216
hohes Potential bringen. Trotz gleichzeitigen Ein- Die von den beiden Programmgebern B und A angangs der Anforderungen resultieren zwei Aufwärts- 5 kommenden Befehlsleitungen für Aufwärts- und Abbefehle. Der Mischer 10 empfängt von den Pro- wärtszählungen (200 und 208 bzw. 201 und 209) wergrammgebern 22 und 24 manche Befehle, die nicht den einfach über ODER-Schaltungen 223 bzw. 224 auf einer der Ausgangsleitüngen 11 bis 19 erschei- mit den abgehenden Leitungen 216 und 218 verbunnen. Nämlich die Befehle, alle Bits des Zählers 10 den. Die Zählleitung 217, mit welcher jeder Zählentweder in den »1«- öder »Ö«-Zustand zu bringen. io Vorgang unabhängig von seiner Richtung registriert Dafür sind keine besonderen Leitungen zum Zähler wird, ist über die ODER-Schaltung 231 und die 10 nötig; der Mischer 20 enthält die nötigen Schal- Verzögerung 232 derart angeschlossen, daß der tungen, um alle Einstelleitungen gleichzeitig zu er- monostabile Multivibrator 233 jeweils erst mit einer regen. Verzögerung für Zählbefehle auf den Leitungen 216
Die Fig. 3 zeigt den Programmgeber 22 für den 15 und 218 wirksam werden kann. Bei Betrachtung der
Rechner B. Er enthält einen Kanal für jede Pro- übrigen Schaltelemente für die Einstellung oder
grammanforderung vom Rechner B. Alle diese Ka- Rückstellung bestimmter Zählerstellungen ist zu be-
näle sind identisch, es soll deshalb nur der eine Ka- achten, daß der Zähler 10 so gestaltet ist, daß eine
nal beschrieben werden, der die Leitung 133 für die bestimmte Bitstelle erst auf 0 gebracht werden muß,
Aufwärtszählforderüng und die Leitung 134 für den 20 bevor sie auf 1 gestellt werden kann. Aus diesem
Aufwärtszählbefehl enthält. Grunde sind in die abgehenden Leitungen für die
Der Kanal besteht hauptsächlich aus den beiden »!.«-Stellung einzelner Zählerstellen hinter den
bistabilen Schaltungen 135 und 136, von denen jede ODER-Schaltungen 225 bis 230, die der Vereinigung
eine Einstelleitung 137 und 138, eine Rückstell- der Einstelleitungen (0 und 1) für einzelne Zählerleitung
139 und 140 und je einen »1 «-Ausgang 141 25 stellen oder für alle Zählerstellen dienen, Verzöge-
und 142 enthält. Hohes Potential auf den Leitungen rungsleitungen 234 und 237 eingeschaltet. Dadurch
137 und 138 verursacht hohes Potential auf den Lei- soll sichergestellt werden, daß bei einem gleichzeititungen
141 und 142; hohes Potential auf den Lei- gen Einlaufen eines »0«- und eines »!«-Stellbefehls
tungen 139 und 140 verursacht niedriges auf den der letztere mit einer gewissen Verspätung eintrifft.
Leitungen 141 und 142. Die Ausgänge 141 und 142 30 Die Gleichzeitigkeit einlaufender Stellbefehle, von
der beiden bistabilen Schaltungen 135 und 136 füh- denen eben die Rede war, bezieht sich nur auf Beren
je zu einem Eingang der UND-Schaltung 143 und fehle von demselben Programmgeber, denn die bei-144,
an deren zweiten Eingängen die Leitungen 27 den Programmgeber können, wie früher schon fest-
und 28 (F i g. 2) angeschlossen sind. Wenn der Rech- gestellt, nicht gleichzeitig Befehle abgeben,
ner B eine Aufwärtsschaltung anfordert, so gelangt 35 Der Zähler 10 der Fig. 2 ist in Fig. 6 ausführvon der Leitung 133 über den Kondensator 147 ein licher dargestellt. Er ist, wie gesagt, ein Binärzähler Impuls zu dem Einstelleingang der bistabilen Schal- mit den Eingangsleitungen 216 bis 222, den Austung 135. Die Leitung 141 nimmt hohes Potential an. gangsleitungen des Mischers. Seine Ausgangsleitun-Sobald die Leitung 28 nun hohes Potential bekommt, gen 323 bis 325 stellen die Werte Bit 1 = 1, Bit 2 = 1 wird die UND-Schaltung 143 durchlässig, die bi- 40 usw. bis Bit N = I dar. Jede Zählerstufe enthält eine stabile Schaltung 136 wird eingestellt, und die Lei- bistabile Schaltung 326, 332, 338, jede mit einem Eintung 142 bekommt hohes Potential. Über Leitung 139 stell-, Komplementier- und Rückstelleingang und wird dadurch die bistabile Schaltung 135 rückgestellt, einem »0«- und »1 «-Ausgang. Bei Erregung der Einso daß die Leitung 141 wieder niedriges Potential an- stelleitung 219 (Schaltung 326) nimmt die Ausgangsnimmt. Eine weitere Anforderung zur Aufwärtszäh- 45 leitung 323 hohes Potential an, bei Erregen der lung vom Rechner B kann also verarbeitet werden, Rückstelleitung 220 die Ausgangsleitung 330, und bei obwohl noch kein Einstellbefehl über die Leitung Erregen der Komplementierleitung 217 vertauschen 134 abgegangen ist. Dies geschieht erst, wenn die die beiden Leitungen 323 und 330 ihren Erregungs-Leitung 27 hohes Potential annimmt, die UND- zustand. Entsprechendes gilt auch für die anderen Schaltung öffnet und die Leitung 134 hohes Potential 50 bistabilen Schaltungen.
ner B eine Aufwärtsschaltung anfordert, so gelangt 35 Der Zähler 10 der Fig. 2 ist in Fig. 6 ausführvon der Leitung 133 über den Kondensator 147 ein licher dargestellt. Er ist, wie gesagt, ein Binärzähler Impuls zu dem Einstelleingang der bistabilen Schal- mit den Eingangsleitungen 216 bis 222, den Austung 135. Die Leitung 141 nimmt hohes Potential an. gangsleitungen des Mischers. Seine Ausgangsleitun-Sobald die Leitung 28 nun hohes Potential bekommt, gen 323 bis 325 stellen die Werte Bit 1 = 1, Bit 2 = 1 wird die UND-Schaltung 143 durchlässig, die bi- 40 usw. bis Bit N = I dar. Jede Zählerstufe enthält eine stabile Schaltung 136 wird eingestellt, und die Lei- bistabile Schaltung 326, 332, 338, jede mit einem Eintung 142 bekommt hohes Potential. Über Leitung 139 stell-, Komplementier- und Rückstelleingang und wird dadurch die bistabile Schaltung 135 rückgestellt, einem »0«- und »1 «-Ausgang. Bei Erregung der Einso daß die Leitung 141 wieder niedriges Potential an- stelleitung 219 (Schaltung 326) nimmt die Ausgangsnimmt. Eine weitere Anforderung zur Aufwärtszäh- 45 leitung 323 hohes Potential an, bei Erregen der lung vom Rechner B kann also verarbeitet werden, Rückstelleitung 220 die Ausgangsleitung 330, und bei obwohl noch kein Einstellbefehl über die Leitung Erregen der Komplementierleitung 217 vertauschen 134 abgegangen ist. Dies geschieht erst, wenn die die beiden Leitungen 323 und 330 ihren Erregungs-Leitung 27 hohes Potential annimmt, die UND- zustand. Entsprechendes gilt auch für die anderen Schaltung öffnet und die Leitung 134 hohes Potential 50 bistabilen Schaltungen.
bekommt. Die Rückstellung der bistabilen Schaltung Ausgehend vom Zustand »0« in allen Stufen des
136 geschieht über Leitung 140. Zählers 10, soll nun seine Arbeitsweise an Hand der
Die Fig. 4 zeigt den Programmgeber für den Fig. 6 beschrieben werden. Wegen der Eigenart des
Rechner A und ist ein Spiegelbild der Fig. 3, worin Mischers 20 nimmt die Leitung 217 immer etwas
z. B. die bistabilen Schaltungen 150 und 151 den 55 später als die Leitungen 216 oder 218 ein positives
Schaltungen 135 und 136 der F i g. 3 sowie die UND- Potential an. Wenn der Zähler um einen Schritt aufSchaltungen
152 und 153 den UND-Schaltungen 143 wärts gebracht werden soll, so wird der Leitung 216
und 144 der Fig. 3 entsprechen. Durch den gezeig- ein positives Potential verliehen; der zweite Eingang
ten Anschluß der Leitungen 27 und 28 (F i g. 2) an der UND-Schaltung 347 ist jedoch nicht erregt, so
die UND-Schaltungen der beiden Programmgeber 60 daß diese gesperrt bleibt. Es folgt dann ein Zählwird
sichergestellt, daß beide je gleichzeitig Einstell- impuls auf der Leitung 217, die bistabile Schaltung
befehle abgeben können. 326 schaltet um, und die Leitung 323 ist erregt. Auf
Der Mischer 20 (Fig. 5) dient zur Weiterleitung die Schaltungen 332 und 338 bleibt dieser Impuls
der auf zwei Gruppen von Leitungen von den beiden ohne Einfluß, da die UND-Schaltungen 353 und 354
Programmgebern ankommenden Befehle auf eine 65 gesperrt bleiben; auch die UND-Schaltung 355
Gruppe von Leitungen zum Zähler 10. Die zwei Lei- (Übertragsleitung) bleibt gesperrt. Der nun hinter
tungsgruppen sind die Leitungen 200 bis 207 bzw. der ODER-Schaltung 350 anstehende Impuls kann
208 bis 215. Auch hier sind der Einfachheit halber die UND-Schaltung 353 nicht mehr beeinflussen, da
17 18
der Zählimpuls auf Leitung 217 bereits abgeklun- steht in der automatischen Unterbrechung des Hauptgen
ist. Der Zähler enthält jetzt den binären Programms durch eine Bedingung, welche den Mehr-Wert
0 ... 01. Bei einem neuen Aufwärts-Zähl- kanalbetrieb anfordert.
befehl über Leitung 216 ist nun die UND-Schaltung Wenn in unserem Beispiel in den Mehrkanalbetrieb
347 durchlässig, die ODER-Schaltung 350 speist den 5 eingetreten wird, so verarbeitet der Rechner B die
einen Eingang der UND-Schaltung 353, so daß beim von der Bandeinheit zu ihm eingegebene Information
folgenden Zählbefehl auf Leitung 217 der Komple- und überträgt sie dann an den Rechner^ zur weitementeingang
der Schaltung 332 betätigt und damit ren Verarbeitung vor dem Druck dieser Information,
die Leitung 324 (Bit 2 = 1) erregt wird. Weiter wird Natürlich können noch weitere Eingabe-Ausgabedie
Schaltung 326 komplementiert, die Leitung 330 io Einheiten, z. B. Kartenleser, Kartenlocher und Lochist
erregt. Der Zählerstand ist jetzt 0 ... 10. Streifengeräte benutzt werden. Gemäß F i g. 7 a ist
Ein folgender Zählbefehl in Aufwärtsrichtung auf weiter angenommen, daß ein Befehl »Start S« im
Leitung 216 gefolgt von einem Zählbefehl auf Lei- Hauptprogramm des Rechners B es veranlaßt, daß
tung 217 wird die bistabile Schaltung 326 wiederum Informationen von der Bandeinheit an Leitung 5
komplementieren, die Schaltung 332 wird unver- 15 (Fig. 2) eingegeben werden. Wenn das Hauptproändert
bleiben. Der Zählerinhalt ist nun 0 ... 11. gramm des Rechners B den Befehl »Start 5« ver-Falls
nun ein Abwärts-Zählbefehl auf Leitung 218 langt, wird der Ausgang des Zählers 10 über die Leierscheint,
findet er die UND-Schaltungen 344 und tung 2O1 zum Puffer 6 des Rechners B dem Puffer 6
345 undurchlässig, da beide Schaltungen 326 und (unter Zwischenschaltung der Leitung 5 und 2) über-332
im »1 «-Zustand sind. Durch den Impuls auf Lei- 20 mittelt. Der Inhalt des Puffers 6 wird ausgelesen, sotung
217 wird die Schaltung 326 komplementiert, die bald die Leitung 7 erregt ist und den monostabilen
Leitung 330 wird erregt; da aber die UND-Schaltung Multivibrator 8 zur Erregung der Leitung 9 für eine
blockiert ist, erfolgt keine Wirkung auf die Schaltung gewisse Zeit veranlaßt, während welcher keine wei-332.
Durch weitere Absatzimpulse kann der Zähler tere Information zum Puffer 6 zugelassen wird. Ist
wieder auf »0« gebracht werden. Die Wirkungsweise 25 der Inhalt des Zählers gleich Null, was zu dieser Zeit
bedarf keiner weiteren Erläuterung. zu erwarten ist, so erfolgt eine Prüfung der ersten
... . . Aufzeichnung. Diese Prüfung dient zur Einleitung des Arbeitsweise eines Ausführungsbeispiels 1 Mehrkanalbetriebs und stellt lediglich fest, ob Infor-An
Hand der Flußdiagramme der F i g. 7 a und 7 b mationen auf der Leitung 5 vorhanden sind. Da es
soll nun die Arbeitsweise der in F i g. 2 dargestellten 30 erwünscht war, Information in den Rechner B aus
Einrichtung an einem ersten Beispiel gezeigt werden. der Bandeinheit über die Leitung 5 einzugeben, muß
Es wird angenommen (s. Fig. 2), daß der Rechners das Hauptprogramm einen Befehl enthalten haben,
Daten auf der Leitung 2 von einer Eingabeeinrich- der das Lesen aus der Bandeinheit auf die Leitung 5
tung, z. B. einer Bandeinheit erhält. Weiter möge der zur Folge hat, und die Prüfung der ersten Aufzeich-Rechner
A Daten auf einer Leitung 4 zu einer Aus- 35 nung wird deshalb positiv ausfallen. Lag ein Progabeeinrichtung,
z. B. einem Drucker abgeben. Die grammierungsfehler vor, dann sind auf der Leitung 5
Rechner B und A tauschen auf der Sammelleitung 5 keine Daten enthalten, und das Hauptprogramm wird
Daten aus und sind mittels der Leitungen 2O1 sowie wieder aufgenommen. Wenn in diesem Falle das
29 und 3O1 mit dem Zähler 10 in Verbindung. Hauptprogramm geeignete Befehle für Weiterarbeit
Jeder der Rechner B und A enthält ein Haupt- 40 enthält, wird der Mehrkanalbetrieb zu einem späteren
Überwachungsprogramm mit Befehlen; dieses Pro- Zeitpunkt aufgenommen, oder es kann eine Fehlergramm
ist gewöhnlich in eine Reihe von Unterpro- prüfung vorgenommen werden, um die Ursache für
grammen unterteilt. Ein Unterprogramm kann z. B. das Fehlen von Daten auf der Leitung 5 festzustellen.
Eingabe-Ausgabe-Operationen betreffen, ein ande- Führt jedoch die Leitung 5 Daten, so beginnt ein
res muß sich auf die Verarbeitung dieser Daten be- 45 Lese-Programm. Das Lese-Programm ist ein Unterziehen.
Da die Mehrkanalarbeit der Rechner selbst programm des Mehrkanalbetriebs und dient dazu,
ein Unterprogramm ist, wird diese Mehrkanalarbeit Informationen auf Leitung 5 aus der Bandeinheit in
durch ein getrenntes Unterprogramm gesteuert, das den Speicher des Rechners B einzugeben. Dieses Unneben
dem Hauptprogramm der Rechner A und B terprogramm bewirkt die Eingabe der Daten aus der
herläuft. So kann jeder Rechner A und B ein Haupt- 50 Leitung 5 in Serienform in den Rechner B zu einer
programm durchführen, das ein Problem enthält, solchen Zeit, in der der Rechner für diese Informawelches
Mehrkanalverarbeitung nach Art der vor- tionen aufnahmebereit ist. Es hängt von dem Entwurf
liegenden Erfindung erfordert. Dieser Zustand werde des Rechners B ab, ob das Lese-Programm überlapdann
als Mehrkanalbetrieb bezeichnet. pend mit dem Hauptprogramm ablaufen kann. Die-Die
Fi g. 7 a und 7 b zeigen Flußdiagramme für die 55 ser Punkt ist jedoch nicht wesentlich, wichtig ist nur,
Rechners und A. Die mit Hauptprogramm bezeich- daß die Daten aus der Bandeinheit in den Speicher
neten Blöcke bedeuten die Programme, die normaler- des Rechners B gelangen. Befehle des Lese-Proweise von den Rechnern^ und B ausgeführt werden. gramms verursachen die richtige Steuerung des Puf-Wenn
einer der Rechner an einem gewissen Punkt fers 6 über die Leitung 7. Die einlaufenden Daten aus
seiner Operationen die Hilfe des anderen Rechners 60 der Bandeinheit haben nicht notwendigerweise diebraucht,
so veranlaßt ein Befehl im Hauptprogramm selbe Verschlüsselung, die der Rechner B benutzt,
des ersten Rechners, daß dieser Rechner in den Deshalb wird ein Verarbeitungsprogramm nach Ein-Mehrkanalbetrieb
übergeht. Anschließend wird auch gang einer vorbestimmten Datenmenge im Rechners
der andere Rechner diese Betriebsart annehmen. veranlaßt. Das Verarbeitungsprogramm ist ein Unter-Natürlich
muß durch geeignete Programmierung bei- 65 programm, das in unserem Beispiel die einlaufenden
der Rechner dafür gesorgt werden, daß das richtige Daten vom Bandschlüssel in den Maschinenschlüssel
Unterprogramm verfügbar ist, sobald das Haupt- überführt, gewisse arithmetische Operationen mit dieprogramm
es anfordert. Eine andere Möglichkeit be- sen Daten vornimmt und sie dann in drei Speicher-
bereichen unterbringt. Jedesmal, wenn das Verarbeitungsprogramm anläuft, wird ein Speicherbereich belegt.
Art und Länge des Verarbeitungsprogramms hängen von den Eigenarten der zu verarbeitenden
Daten ab. Dieses Programm ist die Hauptaufgabe des Rechners B und ist ein Teil der Lösung des Problems,
an dem beide Rechner B und A zusammenarbeiten. Sobald das Verarbeitungsprogramm einen
Bereich mit Ergebniswerten belegt hat, läuft eine Programmanforderung vom Rechner B über Leitung
29 zu dem Programmgeber 22. Zu einer durch den Impulsgenerator 25 bestimmten Zeit wird auf Leitung
21, unter der Steuerwirkung der Leitung 27, ein Einstellbefehl (aufwärts zählen und zählen) auf Leitung
21 erscheinen. Der Mischer 20 erregt daraufhin die Leitung 11 und 12. Da der Zähler zu diesem Zeitpunkt
nicht lauter Einsen enthält, wird die UND-Schaltung 36 beide Einstellbefehle zum Zähler 10
durchlassen, wodurch der Zählerwert um Eins erhöht wird. Danach beginnt ein Übertragungsprogramm.
Der Zweck des Übertragungsprogramms eines Unterprogramms ist es, Daten aus den Ergebnisbereichen
des Speichers von Rechner B, die belegt wurden, zu der Leitung 5 zu übertragen. Das Übertragungsprogramm
ist mit dem vorerwähnten Lese-Programm insofern verwandt, als es ebenfalls eine Eingabe-Ausgabe-Operation
ist, die unter Umständen auch in Überlappung mit den Hauptprogrammschritten erfolgen
kann. Das Übertragungsprogramm kann nur ablaufen, wenn die Leitung 5 frei ist. Das wird z. B.
nicht zutreffen, wenn Daten aus einer Bandeinheit oder einem der beiden Rechner Λ, B oder aus einer
anderen Quelle über die Leitung 5 laufen. Das Übertragungsprogramm kann automatisch beginnen, wenn
die Leitung 5 leer ist, oder seine Ausführung kann verschoben werden, bis die Schleife für den Mehrkanalbetrieb
ein zweites Mal durchlaufen wird. In jedem Falle werden durch dieses Programm die Speicherbereiche
des Rechners B entleert. Wenn also ein Speicherbereich beim ersten Durchlauf des Mehrkanalbetriebs
gefüllt war, wird das Übertragungsprogramm dieses Feld auf die Leitung 5 weitergeben.
Die soeben beschriebenen Vorgänge sind ein Umlauf des Mehrkanalbetriebs-Unterprogramms des
Rechners B, wie er in F i g. 7 a angedeutet ist. Ein weiterer Schleifendurchgang findet statt, wenn die
Daten aus den drei Speicherbereichen des Rechners B durch das Übertragungsprogramm zur Leitung 5 gelangt
sind. Es wird wieder der Zustand des Zählers 10 geprüft und dabei der Inhalt des Zählers über die
Leitungen 2O1, 5 und 2 zum Puffer 6 gebracht. Ist der Zählerinhalt 0, so findet eine Prüfung der ersten
Aufzeichnung statt, und das Hauptprogramm wird fortgesetzt, wenn auf Leitung 5 keine Daten anliegen.
Das Hauptprogramm wird auch dann wieder aufgenommen, wenn der Zählerinhalt 3 war. In unserem
Falle dagegen ist der Zählerinhalt 1, und das Lesc- und das Verarbeitungsprogramm werden in der vorstehend
beschriebenen Weise noch einmal durchlaufen. Am Ende des Verarbeitungsprogramms wird
der Zähler aufwärts geschaltet und das Übertragungsprogramm eingeleitet. Diese Vorgänge laufen ab, bis
alle zu verarbeitenden Daten vollständig vorhanden sind.
Jetzt soll der Mehrkanalbetrieb des Rechners A erklärt werden. Das Flußdiagramm dazu ist in Fi g. 7 b
enthalten. Der Ablauf dieses Unterprogramms für den Rechner A ist praktisch identisch mit dem des
Rechners B mit der Ausnahme, daß die Daten auf Leitung 5 diesmal vom Rechner B und nicht von der
Bandeinheit kommen und daß die abzugebenden Daten über Leitung 5 zu einem Drucker anstatt zu einem
Rechner laufen. Es muß nicht notwendigerweise ein Drucker sein, soll aber zur Erklärung im vorliegenden
Beispiel dienen.
Das Hauptprogramm des Rechners A enthält Befehle, welche das Mehrkanal-Unterprogramm etwa
ίο zur selben Zeit einleiten, wie das gleiche Unterprogramm
im Rechner B beginnt. Diese Synchronisierung kann auf verschiedene Weise erhalten werden. Ein
bequemer Weg wäre der, im Hauptprogramm des Rechners A einen Befehl vorzusehen, der prüft, ob
der Zähler 10 einen von Null abweichenden Wert enthält. Wenn also das Hauptprogramm des Rechners B
ein Mehrkanalbetrieb-Unterprogramm begonnen hat, bringt es den Zähler 10 um einen Schritt aufwärts,
und das Hauptprogramm des Rechners A beginnt ebenfalls einen Mehrkanalbetrieb. Es ist aber auch
die umgekehrte Arbeitsweise möglich: das Hauptprogramm des Rechners B enthält Befehle, welche
den Inhalt des Zählers 10 prüfen, um festzustellen, ob der Rechner Λ nach dem Mehrkanalbetrieb verlangt
hat. Das kann verstanden werden, wenn man sich erinnert, daß das Flußdiagramm der Fig. 7a
und 7 b nur eine besondere Art des Mehrkanalbetriebs zeigen, die von den Rechnern verlangt wird, daß aber
jede Kombination von Zählerstellbefehlen von irgendeinem Rechner möglich ist. Es sind Einrichtungen
denkbar, die eine automatische Unterbrechung des Hauptprogramms bei einem von Null abweichenden
Zählerstand verursachen.
Wenn der Rechner A in den Mehrkanalbetrieb eintritt, wird eine Prüfung des Zählerstandes durchgeführt.
Ist der Zähler auf Null, so wird das Hauptprogramm wieder aufgenommen und fortgeführt, bis
weitere Befehle im Hauptprogramm entweder den Mehrkanalbetrieb wieder veranlassen, das Hauptprogramm
fortsetzen lassen oder andere programmierte Operationen ausführen. Mit der Annahme,
daß das Hauptprogramm des Rechners A den Mehrkanalbetrieb in Gang setzte, nachdem eine Prüfung
des Zählers 10 einen Wert größer als Null ergab, wird auf Grund der Prüfung zunächst ein Lese-Programm
einsetzen.
Das Lese-Programm trägt Daten vom Rechner B über Leitung 5 in drei Speicherbereiche des Rechners
A ein, die den drei Ergebnis-Speicherbereichen des Rechners!? entsprechen. An dieser Stelle ist keine
Umschlüsselung erforderlich. Stellt sich zu Anfang des Lese-Programms heraus, daß die Leitung 5 nicht
frei ist für die Übertragung, so läßt sich unter Umständen das Hauptprogramm fortsetzen und das
Lese-Programm solange unterbrechen. Da es üblich ist, Eingabe-Ausgabe-Operationen zu kombinieren,
kann es auch sein, daß das später zu beschreibende Übertragungsprogramm des Rechners A mit Schritten
des Lese-Programms überlappt werden kann. Anschließend an das Lese-Programm des Rechners A
wird das Verarbeitungsprogramm begonnen.
Das Verarbeitungsprogramm des Rechners A kann vielfältig sein. Es kann in der Umformung der vom
Rechner B erhaltenen Daten in eine für den Drucker brauchbare Form bestehen, soweit z. B. in der Funktion
und Abstände für eine lesbare Ausgabe eingefügt werden. Das Verarbeitungsprogramm bringt
seine Ergebnisse nach der Bearbeitung eines der drei
COPY
21 22
vom Lese-Programm gelesenen Felder wieder in den arbeiten kann. Um es zu wiederholen, der Zähler 10
Speicher des Rechners A zurück; der Zähler 10 wird wird nur abwärts geschaltet für Bereiche, die vom
um einen Schritt abwärts geschaltet. Rechner B zum Rechner^ übertragen und dort auf-
Diese Abwärtsschaltung kann durch einen Befehl gearbeitet wurden.
am Ende des Verarbeitungsprogramms verursacht 5 Das Lese-Programm des Rechners B gibt Daten in
werden, der eine Programmanforderung über Leitung den Speicher des Rechners B jedesmal ein, wenn der
3O1 zum Programmgenerator 24 schickt und dort die Rechner A daraus Daten entnommen hat, und der
Ausgabe eines Einstellbefehls über Leitung 23, den Zählwert wird dabei auf kleiner als Drei und größer
Mischer20 und die Zählleilung 12 und die Abwärts- als Null gebracht. Wenn der Rechners aus irgend-
leitung 13 hervorruft. Die Ausführung des einen io welchen Gründen viel rascher fortschreitet als der
Stellbefehls wird möglich, da noch nicht alle Zähler- Rechner A, so füllt er seine drei Speicherbereiche
stellen auf Null sind. Da das Verarbeitungsprogramm mittels der Lese- und Verarbeitungsprogramme und
jeweils nur einen Speicherbereich bearbeitet, wird der bringt den Zähler auf 3, bevor der Rechner A Zeit
Zähler für jedes verarbeitete Feld um einen Schritt hatte, diese Informationen zu verarbeiten. Die Über-
abwärts gebracht. Anschließend an das Verarbei- 15 tragungszeit zwischen den beiden Rechnern ist ohne
tungsprogramm wird ein Übertragungsprogramm ein- Bedeutung, da der Zähler 10 erst nach der Verarbei-
geleitet. rung der Daten durch den Rechner A abwärts ge-
Dieses Übertragungsprogramm dient der Übcrlra- schaltet wird. Wenn einige Zeit später der Rechner A
gung der während des Verarbeitungsprogramms be- einen der drei Bereiche verarbeitet, geht der Zähler
handelten Daten vom Rechner A über die Leitung 5 20 10 um einen Schritt abwärts und erlaubt dem Rechzu
einem Drucker. Die Übertragung erfolgt nur, wenn ner B, den Bereich wieder aufzufüllen. Der Rechner B
die Leitung 5 frei ist. Entnommen werden aus dem kann zu dieser Zeit mit dem Hauptprogramm beSpeicher
diejenigen Stellen, die bei dem letzten Um- schäftigt sein, und unabhängig von der Programmlauf
des Mehrkanalbetriebs von Rechner A belegt gestaltung wird er den Mehrkanalbetrieb zu einem
worden waren. Die Entnahme kann, wie schon ge- 25 späteren Zeitpunkt beginnen.
sagt, in überlappendem Betrieb mit dem Hauptpro- Wenn andererseits der Rechner A viel schneller
gramm oder dem Lese-Programm, möglicherweise vorankommt als der Rechner B, so wird der Zähler
auch mit anderen Programmen stattfinden. Am Ende häufig auf 0 gebracht werden. Zum Beispiel kann der
des Ubertragungsprogramms wird, wie aus F i g. 7 b Rechner B nur Zeit haben, einen Bereich in seinem
hervorgeht, das Mehrkanalbetrieb-Unterprogramm 30 Speicher zu belegen, und der Rechner A verarbeitet
aufgenommen. Steht der Zähler 10 auf Null, so wird diese Daten, bevor der Rechner B einen zweiten Bedas
Hauptprogramm fortgesetzt, bis ein weiterer Be- reich füllen konnte, so ist der Zähler auf 0. In diesem
fehl den Mehrkanalbetrieb für den Rechner A wieder Falle wird das Hauptprogramm des Rechners B wievorzieht.
Bei Zählerwerten größer als Null wird das der aufgenommen bis zu dem Zeitpunkt, wo das Pro-Mehrkanalbetrieb-Unterprogramm
vom Rechner A 35 gramm ein neues Mehrkanalbetrieb-Unterprogramm selbsttätig wiederholt. für den Rechner B vorsieht. Die Prüfung der ersten
Die Wechselwirkung zwischen dem Mehrkanal- Aufzeichnung (F i g. 7 a) wird nur zur Einleitung des
betrieb der Rechner B und A soll nun unter Benut- Mehrkanalbetrieb-Unterprogramms von Rechner B
zung der F i g. 7 a und 7 b sowie von F i g. 2 beschrie- benutzt. Wenn der Zähler auf 0 geht, so nimmt auch
ben werden. Aus der bisherigen Beschreibung ging 40 der Rechner A sein Hauptprogramm auf, da keine
hervor, daß für jeden durch ein Verarbeitungspro- Daten zur Verarbeitung weder im Speicher vom
granim behandelten Speicherbereich des Rechners B Rechner B noch vom Rechner A verfügbar sind. Es
der Zähler 10 um Eins erhöht wird. Weiter wird für liegt auch hier in der Hand der Programmgestaltung,
jeden zum Rechner ^4 übertragenen Bereich, der dort den Zeitpunkt für die Aufnahme des Mehrkanalvom
Verarbeitungsprogramm erfaßt wurde, der Zäh- 45 betriebs von Rechner/4 festzulegen,
ler 10 um Eins erniedrigt. Das Lese-Programm wird Zusammenfassung: Der Zähler 10 stimmt die
vom Rechner B nur dann aufgenommen, wenn der gleichzeitige Arbeit der Rechner B und A unabhän-Inhalt
des Zählers nicht 0 oder 3 ist. Der Rechner Λ gig von deren relativer Arbeitsgeschwindigkeit und
nimmt das Lese-Programm in Angriff, nur wenn der Programmkompliziertheit aufeinander ab. Er verhin-Zähler
mehr als 0 anzeigt. Diese Bedingungen hin- 50 dert jeden Rechner daran, den anderen zu überholen,
dern jeden Rechner am Überholen des anderen. und erlaubt bequeme Verschachtelungen der Haupt-Wenn
also die drei Speicherbereiche des Rechners B programme mit der Verarbeitung und der Übertragefüllt
sind, wäre es unerwünscht, daß der Rechneri? gung von Daten von einem Band zu einem Programm,
in das Lese-Programm eintritt, das ja noch mehr . . . . .... . .
Daten vom Band in den Rechner eintragen würde. 55 Arbeitsweise eines Ausfuhrungsbeispiels 2
Jeder vom Verarbeitungsprogramm des Rechners B In diesem Beispiel soll ein zweiseitiger Informagefüllte
Speicherbereich vermeint den Zähler um tionsfluß zwischen den Rechnern.«4 und B beschrie-Eins.
Wenn alle drei Bereiche durch das Verarbei- ben werden. Es wird auf die Fig. Sa, 8b, 9a und 9b
tungsprogramm gefüllt sind, zeigt der Zähler 3. Für Bezug genommen. Hier soll zur Lösung eines Projeden
dieser drei Bereiche, die durch das Lese-Pro- 60 blems die Zusammenarbeit der beiden Rechner an
gramm des Rechners A und das Übertragungspro- vorbestimmten Punkten erforderlich sein. Der Rechgramm
des Rechners B zum Rechner A übertragen ner A kann die Hilfe des Rechners B zur Lösung
wurden, wird der Zähler um Eins erniedrigt, nach- eines Teils aus einer Zahl unabhängiger Probleme
dem der Bereich vom Rechner A verarbeitet ist. Die anfordern und gleichzeitig die restlichen Probleme
bloße Übertragung vom Rechner B zum Rechner A 65 selbst lösen. Die umgekehrte Situation, Hilfe des
beeinflußt den Zähler noch nicht. Der Grund dafür Rechners A für den Rechner B, ist auch möglich. Unist
klar, wenn man bedenkt, daß es nutzlos ist, Daten abhängigkeit der Probleme bedeutet, daß Ergebnisse,
zum Rechner A zu übertragen, wenn er sie nicht ver- die durch eine Anzahl gleichzeitiger Lösungen erhal-
C1OPY
ORIGINAL INSPECTED
ORIGINAL INSPECTED
23 24
ten werden, nicht von den gleichzeitig erhaltenen an- genau derselben Datenarten enthalten, wie sie der
deren Ergebnissen abhängen. Mit anderen Worten, Rechner B verarbeitet, und er kann ebenfalls den
zur Zeit der Hilfeleistung sind die erforderlichen Da- Rechner B zur Lösung gleichzeitig lösbarer Problemten
bekannt, und Resultate aus den gleichlaufenden teile heranziehen. In dem vorliegenden Beispiel ent-Lösungsarbeiten
sind dafür nicht erforderlich. 5 hält jedoch der Rechner Programme leicht abwei-
Zur Erläuterung sei angenommen, daß das ge- chender Art. Wie aus Fig. 8b hervorgeht, erledigt
meinsam von den Rechnern^ und B zu lösende Pro- der Rechner A normalerweise Fehlersuch- und Beblem
Daten betrifft, die von einer äußeren Quelle, richtigungsprogramme, welche ihn in arbeitsfähigem
z. B. einem Radarempfänger geliefert werden. Diese Zustand erhalten und seinen Speicherinhalt so än-Informationen
gelangen zum Rechner B über die Lei- io dem, daß er laufend geänderten Bedingungen entrungen
5 und 2 in den Puffer 6 (Fig. 2). Sie werden spricht. Der Rechner^ kann auch ein Programm zur
durch ein Lese-Programm der vorher beschriebenen Bestandsüberwachung ausführen, das nicht unmittel-Art
übernommen. Die Verarbeitung dieser Informa- bar mit der Lösung des Radarproblems zusammention
erfolgt durch eine Reihe von Operationen, die in hängt.
Fig. 8a mit Radarprogramm bezeichnet ist und die 15 Wenn es z.B. nötig ist, Zeitkarten, Arbeitskarten
diese Informationen in eine verwertbare Form brin- oder Zahlungsanweisungen für den Radarbetrieb zu
gen. Wenn z. B. die Radarinformation den RechnerB bearbeiten, so kann der Rechner^ dafür herangezoin
der Form von Winkel- und Abstandsmessung gen werden. Die Verarbeitung dieser Daten kann ge-(Polarkoordinaten)
erreicht, können sie dort in wisse iterative Prozesse erfordern, die zwar vonein-AT-F-Werte
(rechtwinkliges Koordinatensystem) ver- 20 ander unabhängig sind, aber von den gleichen Daten
wandelt werden, die von einem Standardrechner im des Bestandsüberwachungsprogramms abhängen. Die
allgemeinen einfacher verarbeitbar sind. Diese Daten erfindungsgemäße Einrichtung erlaubt es dem Rechkönnen
weiterhin durch ein Programm zur Lösung nerA, zur Lösung solcher Iterationen den Rechners
quadratischer Gleichungen (in Fig. 8a mit quadra- zur Parallelarbeit mit seinem eigenen Programmforttische
Gleichungen bezeichnet) behandelt werden. 25 schritt heranzuziehen. Dazu wird die Arbeit des Rech-Dieses
Programm kann z. B. die zukünftige Position ners B an bestimmten vom Zähler festgelegten Punkeines
durch die Radarinformation dargestellten ten unterbrochen, und der Rechner^ überträgt einige
Gegenstandes bestimmen. Ein weiteres Programm der Programme Al, A2 oder A3 zum Rechner B
kann die Lösung von Quadratwurzeln oder sonstige mittels des Programms »Hilfe für A«. Wenn die Hilfenotwendige Berechnungen vornehmen. 30 leistung beendet ist, kann das unterbrochene Pro-
Bis zu diesem Punkt sind im Programm des Rech- gramm am Unterbrechungspunkt fortgesetzt werden,
ners B die Ergebnisse einer Rechnung jeweils abhän- oder es kann von neuem beginnen, oder alle Progig
von der vorhergehenden. Deshalb wäre es nicht gramme des Rechners können von vorn beginnen. In
zweckmäßig, eines der Programme dem Rechner A den letzten beiden Fällen, ohne einen Zähler, wäre es
zur gleichzeitigen Bearbeitung zu übertragen, weil 35 nicht möglich, die Anzahl der durch eine Unterbredann
der Rechner B die Rechenergebnisse des Rech- chung erforderlichen Wiederholungen zu bestimmen,
ners A abwarten müßte, bevor er weiterarbeiten kann. Der Rechner zieht das Erfordernis der Unterbrechung
Wohlverstanden, es besteht kein Grund, abhängige und die Konsequenzen daraus in Betracht.
Teile eines Problems nicht zum Rechner/4 zu über- Der Rechners verarbeitet die Radarinformationen tragen, da das Verfahren nach der Erfindung gün- 40 direkt vom Radarempfänger, während der Rechner A stigste Lösungszeiten zur Folge hat und die Wartezeit Fehlersuch- und Berichtigungsprogramme gleichzeitig des Rechners B verringert. Es ist jedoch bei diesem bearbeitet. Wenn ungewöhnliche, längere Lösungs-Beispiel angenommen, daß nur unabhängig program- arbeiten vorliegen, z. B. Iterationen, kann jeder Rechmierte Probleme für gleichzeitige Lösung zum Rech- ner den anderen zur Übernahme eines Teils der Ar- nerA übertragen werden sollen. 45 beit veranlassen. Die normalen Programme der bei-
Teile eines Problems nicht zum Rechner/4 zu über- Der Rechners verarbeitet die Radarinformationen tragen, da das Verfahren nach der Erfindung gün- 40 direkt vom Radarempfänger, während der Rechner A stigste Lösungszeiten zur Folge hat und die Wartezeit Fehlersuch- und Berichtigungsprogramme gleichzeitig des Rechners B verringert. Es ist jedoch bei diesem bearbeitet. Wenn ungewöhnliche, längere Lösungs-Beispiel angenommen, daß nur unabhängig program- arbeiten vorliegen, z. B. Iterationen, kann jeder Rechmierte Probleme für gleichzeitige Lösung zum Rech- ner den anderen zur Übernahme eines Teils der Ar- nerA übertragen werden sollen. 45 beit veranlassen. Die normalen Programme der bei-
Aus F i g. 9 a (sie zeigt Einzelheiten des mit den Rechner haben unterschiedliche Gewichte. Das
»Fig. 9a« bezeichneten Blockes der Fig. 8a) geht Radarprogramm des RechnersB sollte selten unterhervor,
daß die Ergebnisse, die während der Durch- brachen werden für Lösungen und Probleme des
führung des Quadratwurzelprogramms erhalten wur- Rechners A, da Radarinformationen dadurch verden,
mit einer Anzahl unabhängiger Unterprogramme So lorengehen könnten. Andererseits können Fehlersuch-
Bl, B 2 und B 3 verarbeitet werden. Diese Programme und Berichtigungsprogramme des Rechners A zukönnen
Iterationen enthalten, deren Ausgangswerte gunsten des Rechners B eher unterbrochen werden,
nur von den Ergebnissen des Quadratwurzelpro- da eine solche Unterbrechung keinen Verlust von
gramms abhängen und deren Ergebnisse ebenfalls Daten zur Folge hätte. Den unterschiedlichen Genur
von diesem Quadratwurzelprogramm abhängig 55 wichten dieser Programme wird Rechnung getragen
sind. Die Ergebnisse der ProgrammeBl, B2 und B3 durch Befehle (s. Fig. 2), die den Zähler beeinflussind
also unabhängig. Es ergibt sich also eine Zeit- sen. Diese Einstellbefehle schalten den Zähler eine
ersparnis, wenn die Programme Bl, B2 und B3 Reihe von Malen auf- oder abwärts für jede vom
gleichzeitig statt nacheinander erledigt werden. Die Programm verarbeitete Aufzeichnung. So wird der
vorliegende Erfindung gestattet es dem Rechner B, 60 Zähler 10 für jede verarbeitete Aufzeichnung des
den Rechner^ zur Hilfeleistung bei der Bearbeitung Radarprogramms um drei Schritte abwärts geschaldieser
drei Programme zuzuziehen mittels des in tet, während er für jede verarbeitete Aufzeichnung
Fig. 8b gezeigten Programms »Hilfe für B«. Der des Fehlersuchprogramms nur zwei Schritte aufwärts
Punkt, wo diese Hilfe einsetzt, wird vom Zähler 10 geschaltet wird. Wenn der Zähler ursprünglich bei 0
der F i g. 2 bestimmt. Er hängt von mehreren nach- 65 stand, so wird ein Schleifendurchgang des Radarprofolgend
erläuterten Faktoren ab. gramms seinen Stand um 3 erniedrigen. Wenn der
Das für den Rechner B Gesagte gilt ebenso für den Rechner^ gleichzeitig das Fehlersuchprogramm ab-
Rechnery4. Dieser kann Programme zur Bearbeitung wickelt, so wird der Zähler um zwei Schritte aufwärts
25 26
geschaltet. Das effektive Ergebnis ist also — 1, d. h., minderung des Zählerstandes um 3 ist die Wiederaufder
Rechners schaltete den Zähler um einen Schritt nähme des Radarprogramms. Fig. 8 ist dargestellt
abwärts. Dies trägt den Gewichten der beiden Pro- durch die Linie, die den Block »Zähler abwärts 3 X«
gramme Rechnung. Bei Beendigung eines Programms mit dem Block »Start B« verbindet. Der Rechner B
für quadratische Gleichungen wird der Zähler um 5 kann fortfahren, die Radardaten zu verarbeiten, bis
zwei Schritte abwärts geschaltet und für das Quadrat- es nötig ist, ein anderes Programm aufzunehmen. Der
Wurzelprogramm drei Schritte. Die Erledigung eines Befehl zum Überwechseln aus einer geschlossenen
Berichtigungsprogramms bringt zwei Aufwärts- Schleife zu einem neuen Programm kann in dem Verschritte
und eines Bestandsüberwachungsprogramms arbeitungsprogramm enthalten sein oder von außen
drei Aufwärtsschritte. Wenn der Rechner B vom Start io kommen. Das Beispiel für ein zusätzliches Programm
bis zum Quadratwurzelprogramm glatt durchläuft, ist das Programm »quadratische Gleichungen«,
wird der Zähler insgesamt achtmal nach abwärts ge- Das Programm »quadratische Gleichungen« beschaltet worden sein. Nimmt man gleichzeitig an, handelt Daten aus dem Radarprogramm und gibt die daß der Rechner Λ bei glattem Durchlauf bis zum Ergebnisse an eine bestimmte Speicherstelle des Bestandsüberwachungsprogramm gekommen ist, dann 15 Rechners B ab. Nach Ablauf des Programms ist der Zähler siebenmal aufwärts geschaltet worden. »quadratische Gleichungen« wird der Zählerstand Auch hier entsteht ein Nettobetrag von — 1. Die rela- um 2 vermindert; die gesamte Abnahme des Zählertiven Gewichte, Längen und Schwierigkeiten aller Standes ist dann dreimal die Zahl von Radarpro-Programme der beiden Rechner sind so berücksich- gramm-Wiederholungen + 2. Das Programm tigt. Die Rechner können außerdem Befehle ent- 20 »quadratische Gleichungen« kann vom Rechner^ in halten, welche die Gewichte ändern, auch wenn die derselben Weise unterbrochen werden wie das Radar-Probleme dieselben bleiben. Die einzelnen in den programm. In dem Programm »quadratische Glei-F i g. 8 a bis 9 b angegebenen Zählbeträge sind nur chungen« kann ein Befehl für die weitere Behandlung für dieses Beispiel gewählt. Der Zähler kann auch der aus diesem Programm gewonnenen Daten entdurch Befehle voreingestellt werden. Aus der bis- 25 halten sein.
wird der Zähler insgesamt achtmal nach abwärts ge- Das Programm »quadratische Gleichungen« beschaltet worden sein. Nimmt man gleichzeitig an, handelt Daten aus dem Radarprogramm und gibt die daß der Rechner Λ bei glattem Durchlauf bis zum Ergebnisse an eine bestimmte Speicherstelle des Bestandsüberwachungsprogramm gekommen ist, dann 15 Rechners B ab. Nach Ablauf des Programms ist der Zähler siebenmal aufwärts geschaltet worden. »quadratische Gleichungen« wird der Zählerstand Auch hier entsteht ein Nettobetrag von — 1. Die rela- um 2 vermindert; die gesamte Abnahme des Zählertiven Gewichte, Längen und Schwierigkeiten aller Standes ist dann dreimal die Zahl von Radarpro-Programme der beiden Rechner sind so berücksich- gramm-Wiederholungen + 2. Das Programm tigt. Die Rechner können außerdem Befehle ent- 20 »quadratische Gleichungen« kann vom Rechner^ in halten, welche die Gewichte ändern, auch wenn die derselben Weise unterbrochen werden wie das Radar-Probleme dieselben bleiben. Die einzelnen in den programm. In dem Programm »quadratische Glei-F i g. 8 a bis 9 b angegebenen Zählbeträge sind nur chungen« kann ein Befehl für die weitere Behandlung für dieses Beispiel gewählt. Der Zähler kann auch der aus diesem Programm gewonnenen Daten entdurch Befehle voreingestellt werden. Aus der bis- 25 halten sein.
herigen Beschreibung wird ersichtlich, daß die Wahr- Ein Beispiel eines solchen weiteren Programms ist
scheinlichkeit einer Programmunterbrechung für das Programm »Quadratwurzel«. Mit diesem Proeinen
Rechner durch den anderen und dem relativen gramm werden aus den Resultaten des Programms
Fortschritt abhängt, den er bei der Ausführung seines »quadratische Gleichungen« die Wurzel gezogen und
Programms gemacht hat. 30 in bestimmten Speicherplätzen des Rechners B abge-
Der Zählerstand wird von den beiden Rechnern legt. Der Zähler wird für jede Wiederholung des
geprüft, wie im Beispiel 1 ausgeführt wurde. Im vor- Quadratwurzelprogramms um drei Schritte erniedrigt,
liegenden Beispiel sind 0 und 6 kritische Werte. Beim Der Zählerstand wird also insgesamt um dreimal die
Zählerstand 0 wird der Rechner A zur Lösung bezug- Zahl der Wiederholungen des Radarprogramms + 5
lieh der ProgrammeBl, Bl und B3 beigezogen. 35 erniedrigt. Auch das Quadratwurzelprogramm kann
Beim Zählerstand 6 muß der Rechner B bei der Be- vom Rechner A in gleicher Weise wie die beiden vorarbeitung
der Programme A1, Al und A3 Hilfe hergehenden Programme unterbrochen werden,
leisten. Bei Zählerständen zwischen 1 und 5 bear- Nachdem also der Zähler um drei Schritte abwärts
leisten. Bei Zählerständen zwischen 1 und 5 bear- Nachdem also der Zähler um drei Schritte abwärts
beitet jeder Rechner sein Programm allein. geschaltet wurde, nimmt der Rechner B die Pro-
Nachstehend sollen Einzelheiten des Flußdia- 40 grammeBl, Bl und B3 auf (s. Fig. 9a mit den
gramms der Fig. 8a besprochen werden. Beim Start Einzelheiten des in Fig. 8a mit Fig. 9a bezeichder
Rechners B wird das Radarprogramm behandelt. neten Blocks). Jedes der Programme Bl, Bl und B 3
Es verarbeitet Daten, die aus einer Radareinheit bearbeitet Ergebnisse des Quadratwurzelprogramms
ankommen, und die Ergebnisse werden in bestimmte und bildet daraus drei Sätze von Ergebnissen, eines
Speicherstellen des Rechners B abgegeben. Sobald 45 für jedes Programm. Zum Beispiel kann das Proder
Zähler den Wert6 zeigt, kann das Radar- grammBl die Ergebnisse des Quadratwurzelproprogramm
unterbrochen und das Programm »Hilfe gramms mehrfach addieren, das Programm B1 sie
für A«. aufgenommen werden. wiederholt subtrahieren, und das Programm B3 kann
Das Programm »Hilfe für A« des Rechners B ver- sie additiv und subtraktiv verwerten. Normalerweise
arbeitet Daten, die vom Rechner^ zum RechnerB 50 müßte der RechnerB die ProgrammeBl bis B3
zwecks gleichzeitiger Lösung voneinander unabhän- nacheinander bearbeiten, da ein Rechner immer nur
giger Probleme übertragen werden. Die Unter- ein Programm ausführen kann. Wenn die Einrichtunbrechung
des Radarprogramms durch den Rechner A gen dafür vorhanden sind, können die Programme
erfolgt selbsttätig jederzeit, nachdem der Zähler auf Bl bis B3 wegen ihrer Unabhängigkeit jedoch
den Wert 6 gelangt ist. Da es unerwünscht ist, Radar- 55 gleichzeitig verarbeitet werden. Das Programm »Hilfe
daten infolge der Unterbrechung des Radarpro- für B« der F i g. 8 b dient dazu, dem Rechner A die
gramms zu verlieren, kann der Zähler durch Befehle Übernahme von einem oder mehreren der Programme
in dem Radarprogramm auf einen Vorgabewert ein- Bl bis B 3 zu gestatten, während der Rechner B
gestellt werden. Dadurch läßt es sich vermeiden, daß gleichzeitig die restlichen bearbeitet. Dieses Proder
Rechner A das Radarprogramm an kritischen 60 gramm tritt jedoch in Aktion, wenn der Zähler einen
Stellen unterbricht. Jedesmal, wenn die Verarbeitung Betrag von 6 enthält.
einer Radaraufzeichnung vollendet ist, wird der Zäh- Der Zähler (Fig. 9a) wird um einen Schritt erler
um drei Schritte abwärts geschaltet. Diese Maß- niedrigt und dann auf seinen Inhalt geprüft; wenn der
nähme soll die unterschiedliche Wichtigkeit der Pro- Zählerstand größer als 0 ist, wird das Programm Bl
gramme zur Wirkung kommen lassen. Die relativen 65 vom Rechner B in Angriff genommen. Die Prüfung
Geschwindigkeiten bei Bearbeitung der Programme auf erste Aufzeichnung ist positiv, es wurde noch
in den Rechnern^ und B können dadurch über- keines der ProgrammeBl bis B3 vorher bearbeitet,
wacht werden. Der normale Schritt nach der Ver- Wenn der Zählerstand 0 ist, wird das Programm Bl
27 28
über die Leitung 5 zum Rechner .4 übertragen, wo es müßte der Rechner B den Zähler wenigstens um vier
vom Programm »Hilfe für B«. durchgeführt wird. Da Schritte erniedrigt haben, bevor das letztgenannte
die Übertragung des Programms B1 stattfand, als der Programm unterbrochen werden kann. Deshalb ist
Zählerstand 0 war, ist aus F i g. 8 b klar ersichtlich, die Wahrscheinlichkeit einer Programmunterbrechung
daß jedes beliebige Programm des Rechners A zu- 5 geringer, sowie der Rechner mit der Bearbeitung
gunsten von B unterbrochen wird. Das nächste Pro- seiner Programme fortschreitet. Das ist wünschensgramm
des Rechners B, das Programm B 2, wird wert bei Aufgaben, wo eine Unterbrechung den Begleichzeitig
mit der Durchführung des Programms Bl ginn von vorn erforderlich machen würde. Die unabim
Rechner A erledigt. Nach Durchführung des Pro- hängigen Programme Al, A 2 und A 3 werden nur
gramms B 2 wird der Zähler wieder um einen Schritt io aufgenommen, wenn der Zähler um drei Schritte erabwärts
geschaltet und eine neue Prüfung durchge- höht worden ist.
führt. Diese Prüfung findet jedesmal nach Durchfüh- Die F i g. 9 b zeigt in Einzelheiten das Flußdiarung
eines der ProgrammeBl, B2 oder B3 durch gramm für den Inhalt des in Fig. 8b mit »Fig. 9b«
den Rechner B statt, und eine neue Prüfung des Zäh- bezeichneten Blocks. Dieses Flußdiagramm ist mit
lerstandes folgt. Die ProgrammeBl oder B2 können 15 dem der Fig. 9a übereinstimmend, mit dem Unterzum
Rechner A zur Bearbeitung übertragen werden, schied, daß es die Durchführung von drei unabhänsobald
der Zähler zu irgendeiner Zeit vor der Prüfung gigen Programmen, die mit dem Rechner A zusamdes
Zählerstandes auf 0 gebracht worden war. Die menhängen, zeigt. Der Rechner Λ kann Programme
Durchführung eines der übertragenen Programme be- A1 oder A 2 zum Rechner B übertragen, wo sie
einflußt den Zählerstand nicht. Ein Beispiel: Wenn 20 gleichzeitig mit der Bearbeitung von nicht übertrader
Zähler auf 1 gestellt ist, wird die erste zu ver- genen Programmen durch den Rechner A behandelt
arbeitende Aufzeichnung vom Programm Bl des werden. Wenn z.B. der Zählerstand bei 5 ist, so wird
Rechners B erledigt. Erfolgreiche Durchführung des die erste Aufzeichnung vom Rechner A mittels
Programms B1 wird dann den Zähler auf 0 bringen. Durchführung des Programms A1 erledigt. Am Ende
Wenn die vom Rechner/1 zu dieser Zeit verarbeiteten 25 dieses Programms wird der Zähler um 1 erhöht; er
Programme den Zählerstand nicht erhöhen, bevor hat jetzt den Wert 6. Die zweite Aufzeichnung wird
eine Prüfung dieses Standes ausgeführt wird, zeigt die jetzt durch das Programm A 2 vom Rechner B vernächste
Zählerprüfung 0 an. Es wird dann die zweite arbeitet, während der Rechner A gleichzeitig das ProAufzeichnung,
die vom Programm B 2 zu behandeln gramm A3 bearbeitet. Danach wird ohne Rücksicht
ist, zum Rechner,4 übertragen und dort verarbeitet, 30 auf den Zählerstand der Rechner/! neu gestartet,
während das Programm B 3 gleichzeitig vom Rech- wie aus den F i g. 8 b und 9 b hervorgeht,
ner B bearbeitet wird. Nach Durchführung des Pro- Zusammengefaßt kann festgestellt werden, daß die gramms B 3 wird der Zähler wiederum nach unten Rechner A und B verschiedene abhängige und unabgeschaltet. Da dies die vierte Aufzeichnung wäre, ist hängige Programme bearbeiten, deren Vorrangsteles unwesentlich, ob die Zählerprüfung 0 oder mehr 35 lung durch den Betrag bestimmt wird, um den der anzeigt, da in jedem Falle der Rechner B wieder ge- Zähler am Ende eines der Programme verändert startet wird, wie aus den F i g. 9 a und 8 a hervor- wird. Je größer der Zählerschritt ist, um so geringer geht. Der Start des Rechners A (F i g. 8 b) verursacht wird die Wahrscheinlichkeit, daß das folgende Prodie Durchführung eines Fehlersuchprogramms, das gramm des Rechners vom anderen Rechner unter-Fehler im Rechner A feststellen soll. Dieses Pro- 40 brachen werden kann.
ner B bearbeitet wird. Nach Durchführung des Pro- Zusammengefaßt kann festgestellt werden, daß die gramms B 3 wird der Zähler wiederum nach unten Rechner A und B verschiedene abhängige und unabgeschaltet. Da dies die vierte Aufzeichnung wäre, ist hängige Programme bearbeiten, deren Vorrangsteles unwesentlich, ob die Zählerprüfung 0 oder mehr 35 lung durch den Betrag bestimmt wird, um den der anzeigt, da in jedem Falle der Rechner B wieder ge- Zähler am Ende eines der Programme verändert startet wird, wie aus den F i g. 9 a und 8 a hervor- wird. Je größer der Zählerschritt ist, um so geringer geht. Der Start des Rechners A (F i g. 8 b) verursacht wird die Wahrscheinlichkeit, daß das folgende Prodie Durchführung eines Fehlersuchprogramms, das gramm des Rechners vom anderen Rechner unter-Fehler im Rechner A feststellen soll. Dieses Pro- 40 brachen werden kann.
gramm kann unterbrochen werden, um den Rech- Im folgenden soll die gegenseitige Abhängigkeit
ner B bei der Ausführung der Programme B1 bis B 3 der Flußdiagramme der F i g. 8 a bis 9 b besprochen
irgendwann nach dem Zählerstand 0 zu unter- werden. Der Zähler möge einen Wert zwischen 0
stützen. Am Ende des Fehlerprogramms wird der und 6 enthalten. Der Wert 0 wurde willkürlich ge-Zähler
um 2 erhöht und das Berichtigungsprogramm 45 wählt als der Punkt, bei dem der Rechner B den
aufgenommen. Dieses Programm dient dazu, Daten Rechner^ für die Ausführung gewisser Programme
im Speicher des Rechners A, die durch Zeitablauf zu Hilfe rufen kann. Der Wert 6 wurde willkürlich
einer Änderung unterworfen sind, zu berichtigen. gewählt als der Punkt, in dem der Rechner A den
Dieses Programm kann jederzeit beim O-Stand des Rechner B zu Hilfe rufen kann. Bei allen Zwischen-Zählers
unterbrochen werden, wie früher beschrieben 5° werten führen die Rechner gleichzeitig ihre eigenen
wurde. Nach dem Durchlauf des jetzigen Berichti- Programme durch. Der RechnerB schaltet den Zähgungsprogramms
wird der Zählerstand um 2 erhöht ler abwärts, und der Rechner A schaltet den Zähler
und entweder das Fehlersuchprogramm wieder aufge- aufwärts, jeweils nach Durchführung gewisser Pronommen
oder ein Bestandsüberwachungsprogramm gramme. Die Zahl der Schaltschritte hängt jeweils
begonnen. 55 von der Vorrangstellung dieses Programms ab. Da Gewöhnlich werden das Fehlersuchprogramm und die Grenzen 0 und 6 des Zählerstandes eine Prodas
Berichtigungsprogramm abwechselnd durchge- grammunterbrechung hervorrufen, ist die Schaltführt.
Zu gewissen Zeiten kann es erforderlich schrittzahl des Zählers wichtig für die Festlegung, ob
werden, den Rechner Λ für die Verarbeitung der ein Programm unterbrochen wird oder nicht. Jedes
Daten für Zahlungsanweisungen u. dgl. heranzu- 60 Programm kann durch den anderen Rechner unterziehen.
In diesem Fall wird das Programm Bestands- brachen werden, aber die Wahrscheinlichkeit der
überwachung durchlaufen, und der Zähler wird für Unterbrechung hängt wie gesagt von dem Gewicht
jede verarbeitete Aufzeichnung um drei Schritte er- dieser Programme ab. Obwohl also, wie schon gehöht.
Dieses Programm kann unterbrochen werden, sagt wurde, das Radarprogramm des Rechners B
wenn der Zähler auf 0 geht, wie früher erklärt wurde. 65 wichtig ist, kann es trotzdem nach Einleitung des
Da der Zähler unmittelbar vor der Aufnahme des Bestandsüberwachungsprogramms durch Rechner A
Programms Bestandsaufnahme um zwei und noch noch wichtiger sein, die Programme A1 bis A 3 zu
vorher ebenfalls um zwei Schritte erhöht wurde, bearbeiten, als das Radarprogramm. Das Gewicht
COPY
eines Programms gegenüber anderen hängt davon ab, was der Rechner vorher bearbeitet hat. Wenn z. B.
der Rechner B während einer gewissen Zeit nichts als Radarprogramme bearbeitet hat, während der
Rechner^ Fehlersuch-, Berichtigungs-Bestandsüberwachungsprogramme durchführte, kann es unter Umständen
nicht schädlich sein, das Radarprogramm zu unterbrechen. Obgleich Information infolge der
Unterbrechung des Radarprogramms verlorengeht, ist der Umfang der verlorenen Information vernachlässigbar
gegenüber dem Gesamtinformationswert. Der Zähler erlaubt selbsttätige Ausführung von logischen
Entscheidungen.
Das Radarprogramm kann Befehle enthalten, welche den Zähler zu bestimmten Zählerstellungen
hinführt. Wenn in einem solchen Fall der Zähler am Ende des Radarprogramms um drei Schritte abwärts
gezählt wird, so wird diese Abwärtsschaltung nicht zusätzlich erfolgen, sondern es wird eher in der Form
geschehen, daß der Zähler um denselben Betrag abwärts geschaltet wird, unabhängig von der Zahl der
Radarprogrammdurchläufe. Wenn deshalb der Rechner B das Radarprogramm wiederholt durchläuft
und der Rechner^ alle seine Programme nacheinander glatt erledigt, so wird an einem bestimmten
Punkt der Rechner A Vorrang über das Radarprogramm des Rechners B haben. Dieser Punkt ist dann
erreicht, wenn der Rechner A den Zähler so oft aufwärts geschaltet hat, daß er die Abwärtsschaltung
durch den Rechner B um 6 übertrifft. Das wäre z. B. der Fall, wenn der Rechner A den Zähler um neun
Schritte aufwärts schaltet und das Radarprogramm durchlaufen ist oder wenn er ihn um sechs Schritte
aufwärts geschaltet hat, ehe das Radarprogramm zu Ende ging.
Wenn das Radarprogramm einen Befehl zur Rückstellung des Zählers auf 1 enthält und wenn das Bestandsüberwachungsprogramm
im Rechnern! durchgeführt ist vor dem Ende des Radarprogramms, dann
wird der Zähler auch bei 6 stehen. Nachdem dann das Flußdiagramm der Fig. 9b zur Wirkung gekommen
ist, wird ein weiterer Aufwärtsschritt des Zählers bei der Prüfung immer noch den Wert 6 ergeben.
Das Radarprogramm des Rechners B wird dann unterbrochen, die erste Aufzeichnung mittels
des Programms »Hilfe für A« vom RechnerB erledigt,
während der Rechner A seinerzeit gleichzeitig das Programm A 2 durchführt. Andererseits kann der
Rechner B das Übergewicht bekommen, solange der Rechner A eine Schleife durchläuft, die das Fehlersuch-
und das Berichtigungsprogramm enthält, und jedes dieser Programme unterbrechen, sobald der
Zähler bei 0 ist. Wenn das Fehlersuch- und Berichtigungsprogramm Befehle enthält, die den Zähler vor
jedem Schleifendurchgang auf einen Anfangswert bringen, so wird der Zählerwert nicht durch die Vorschrift
»Zähler aufwärts 2 X « dauernd wachsen, vielmehr wird der Zähler zwar bei jedem Durchlauf
um 2 erhöht, aber er wird danach wieder auf seinen Ausgangswert gebracht. Aber auch wenn kein solcher
Befehl in dem Fehlersuch- und Berichtigungsprogramm enthalten wäre, könnte der Rechner B immer
noch das Programm des Rechners A unterbrechen, wenn er in der Lage wäre, den Zähler rascher abwärts
zu schalten, als jener ihn aufwärts schaltet. Der den Zähler rascher beeinflussende Rechner wird also
die Vorhand gewinnen. Es wurden in dem Beispiel nur die Programme Al, Al, Bl und B 2 für übertragbar
bezeichnet. Es können natürlich mehr solcher Programme zur Übertragung auswählbar sein.
Bemerkenswert ist, daß die Programme der Rechner A und B zur Unterstützung des anderen Rechners
nur unterbrochen werden können, wenn das der Unterstützung bedürftige Programm erreicht ist. So
kann der Zähler den Wert 6 erreichen, während im Rechner B das Radarprogramm in Bearbeitung ist,
ohne daß der Rechner B unterbrochen wird, vorausgesetzt, daß das Programm, das der Rechner Λ zu
der Zeit bearbeitet, das Bestandsüberwachungsprogramm ist. Wenn jedoch beim Rechner .,4 die Programme
Al bis A3 erreicht sind, so wird jedes beliebige
vom Rechner B durchgeführte Programm unterbrochen.
Der Rechner, der seine Daten rascher bearbeitet, sei es wegen der charakteristischen Eigenschaften des
Rechners oder wegen der Einfachheit seiner Programme, ist nicht notwendigerweise im Vorrang und
zum Hilferuf an den zweiten Rechner berechtigt. Der Vorrang hängt nicht nur von der Arbeitsgeschwindigkeit
ab, sondern auch von dem Betrag, um den der Zähler nach Durchführung jedes Programms verändert
wird. So kann ein langes schwieriges Programm auf den Zähler mehr Wirkung haben als ein
einfaches kurzes, eben aus diesem Grunde. Wenn der Zähler beim Start des Rechners B jeweils auf Null
gestellt werde, muß dieser Umstand nicht notwendigerweise ein Programm des Rechners A unterbrechen,
da keine Unterbrechung stattfinden kann, ehe die Programme B1 bis B 3 erreicht sind. Ebenso
kann der Zähler beim Start des Rechners A auf den Wert 6 voreingestellt werden. Der Zähler kann trotzdem
sich zwischen Weiten von 0 bis 6 bewegen, ohne je einen Rechner zur Hilfeleistung für den anderen zu
veranlassen und die Durchführung der Programme Bl bis B3 und Al bis A3 nicht mit der Zählerbewegung
gleichlaufend ist.
Der Zähler sollte nicht außerhalb der Grenzen, die durch die Werte 0 und 6 gesetzt sind, zählen. Er
ist vom Zählen unter 0 durch die Elemente der Entschlüsselungsmatrix 30 in Fig. 2 gehindert. Er kann
über 6 zählen, aber ein solcher Zählwert hat denselben Effekt wie 6, wenn alle Ausgänge für 6 und
mehr miteinander verbunden werden.
Claims (14)
1. Verfahren zur paarweisen Kopplung von selbständigen datenverarbeitenden Anlagen, von
denen jede eine eigene, den Verarbeitungsablauf dieser Anlage bestimmende Programmsteuereinheit
aufweist, zur wahlweisen oder gemeinsamen wartezeitarmen Durchführung von Bearbeitungsaufgaben, dadurch gekennzeichnet, daß
jede der Anlagen nach Vollendung bestimmter Abschnitte des Verarbeitungsablaufes positive
bzw. negative Zählwertsignale erzeugt und einem für je zwei Anlagen gemeinsamen Vor- und
Rückwärtszähler zuführt, daß von jeder der Anlagen zu bestimmten Zeiten des Verarbeitungsablaufes
der Zähler abgefragt und sein Zählstand mit in dieser Anlage voreingestellten Grenzwerten
verglichen wird und daß bei Feststellung einer Grenzwertüberschreitung bzw. -unterschreitung
die Ausführung eines Teiles der Bearbeitungsaufgaben einer Anlage durch die andere Anlage eingeleitet
oder beendigt wird.
COPY
2. Verfahren nach Anspruch 1, dadurch gegekennzeichnet, daß drei oder mehr datenverarbeitende
Anlagen eine Kette bilden, in der je zwei benachbarte Anlagen durch einen Vor- und
Rückwärtszähler in Ablaufkopplung stehen.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Kette über einen die
beiden äußeren Anlagen koppelnden weiteren Vor- und Rückwärtszähler geschlossen wird.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß mindestens
eine datenverarbeitende Anlage einer Kette derartiger Anlagen über einen zusätzlichen Vor- und
Rückwärtszähler mit einer weiteren datenverarbeitenden Anlage oder einer weiteren Kette
solcher Anlagen in Ablaufkopplung steht.
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß wenigstens
eine Anlage einer Kette datenverarbeitender Anlagen als Ein- und/oder Ausgabeeinheit ausgebildet
ist.
6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß dem Vor- und Rückwärtszähler
von der einen Anlage Vorwärtszählwertsignale und von der anderen Anlage Rückwärtszählwertsignale
zugeführt werden, daß der Absolutbetrag der Zählwertsignale in Abhängigkeit vom Umfang und/oder Vorrang der Bearbeitungsabschnitte, dessen Beendigung sie anzeigen, bemessen
wird und daß die Steuerwirkung des Zählers in Tätigkeit tritt, sobald der Zählerstand
einen vorbestimmten oberen oder unteren Grenzwert erreicht hat.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet,
daß beim Auftreten des dem unteren Grenzwert entsprechenden Zählstandes die eine von zwei einem Vor- und Rückwärtszähler
gemeinsam zugeordneten datenverarbeitenden Anlagen unter Hintanstellung ihres eigenen
Programms Bearbeitungsaufgaben der anderen Anlage übernimmt und daß beim Auftreten des
dem oberen Grenzwert entsprechenden Zählstandes der umgekehrte Vorgang eintritt.
8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß die Steuerwirkung
zweier Vor- und Rückwärtszähler einer Kette von miteinander in Ablaufkopplung stehenden
datenverarbeitenden Anlagen gemeinsam in Tätigkeit tritt, sobald ihre Zählstände gleichzeitig
einen vorbestimmten oberen und/oder unteren Grenzwert erreicht haben.
9. Verfahren nach einem der Ansprüche 1 bis 8 mit mindestens je zwei datenverarbeitenden
Anlagen, von denen jede mehrere Programme in einer vorgegebenen Reihenfolge zu durchlaufen
hat, dadurch gekennzeichnet, daß in jeder Programmfolge wenigstens eine die Aufgabenteilung
ermöglichende Stelle vorgesehen ist, daß jede Anlage nach Beendigung eines ihrer Programme dem
eine Ablaufkopplung zwischen den Anlagen herstellenden Vor- und Rückwärtszähler einen in
seiner Höhe vom Umfang und/oder Vorrang des Programms abhängigen Zählwert zuführt und daß
von jeder Anlage vor Aufnahme des folgenden Programms jeweils der Zählstand des Vor- und
Rückwärtszählers geprüft und bei Vorhandensein eines vorgegebenen Zählstandes Bearbeitungsaufgaben
von der anderen Anlage übernommen werden, falls oder sobald die andere Anlage eine
zur Aufgabenteilung vorgesehene Stelle ihres Programms erreicht hat.
10. Verfahren nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, daß der Vor- und
Rückwärtszähler durch einen Befehl in den Programmen der zugeordneten Anlagen auf einen bestimmten
Zählstand eingestellt wird.
11. Verfahren nach einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, daß die Zählkapazitäten
der Vor- und Rückwärtszähler, die vorbestimmten Grenzwerte sowie die Absolutbeträge
der von den datenverarbeitenden Anlagen in die Zähler einzugebenden Zählwertsignale nach
dem erforderlichen Spielraum und Vorrang in der Zusammenarbeit zwischen den datenverarbeitenden
Anlagen festgelegt werden.
12. Einrichtung zur Ausführung des Verfahrens nach einem der Ansprüche 1 bis 11, dadurch
gekennzeichnet, daß jede der beiden über einen Vor- und Rückwärtszähler (10) in Ablaufkopplung
stehenden Datenverarbeitungsanlagen mit einer Zählwertsignal-Generatorschaltung (22, 24)
verbunden ist, die über das Programm der betreffenden Anlage in Tätigkeit setzbar ist und die
eine Zählwertsignal-Speicherschaltung (136, 151) aufweist, daß beide Zählwertsignal-Generatorschaltungen
über eine Mischerschaltung (20) an den Eingang des Zählers angeschlossen sind, daß
ein Taktgeber (25) vorgesehen ist, der die Zählwertsignal-Speicherschaltungen nacheinander für
eine Signalabgabe an die Mischerschaltung abtastet, und daß zwischen dem Ausgang des Zählers
und den Dateneingängen der beiden Anlagen eine Verbindung (20) besteht, die in Abhängigkeit
vom Programm einer jeden dieser Anlagen für eine Zählstandübertragung zu der betreffenden
Anlage wirksam gemacht wird.
13. Einrichtung nach Anspruch 12, dadurch gekennzeichnet, daß der Vor- und Rückwärtszähler
(10) eine Voreinstellschaltung (14 bis 19) aufweist und daß die Zählwertsignal-Generatorschaltungen
(22, 24) zur Erzeugung und die Mischerschaltung (20) zur Übertragung von Zählstand-Voreinstellsignalen
eingerichtet sind.
14. Einrichtung nach Anspruch 12 oder 13, dadurch gekennzeichnet, daß der Vor- und Rückwärtszähler
(10) eine Überlaufsperre (30, 32, 37, 36) sowie eine Sperre (30, 31, 34, 35) für eine
Null-Unterscheidung aufweist.
Hierzu 3 Blatt Zeichnungen 009 586/280
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US40091A US3219980A (en) | 1960-06-30 | 1960-06-30 | Computer multiplexing apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
DE1574877B1 true DE1574877B1 (de) | 1971-02-04 |
Family
ID=21909043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19611574877 Withdrawn DE1574877B1 (de) | 1960-06-30 | 1961-06-29 | Verfahren und Einrichtung zur Kopplung von datenverarbeitenden Anlagen |
Country Status (3)
Country | Link |
---|---|
US (1) | US3219980A (de) |
DE (1) | DE1574877B1 (de) |
GB (1) | GB905614A (de) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3350689A (en) * | 1964-02-10 | 1967-10-31 | North American Aviation Inc | Multiple computer system |
US3364472A (en) * | 1964-03-06 | 1968-01-16 | Westinghouse Electric Corp | Computation unit |
US3416139A (en) * | 1966-02-14 | 1968-12-10 | Burroughs Corp | Interface control module for modular computer system and plural peripheral devices |
US3634830A (en) * | 1969-06-13 | 1972-01-11 | Ibm | Modular computer sharing system with intercomputer communication control apparatus |
US3896418A (en) * | 1971-08-31 | 1975-07-22 | Texas Instruments Inc | Synchronous multi-processor system utilizing a single external memory unit |
IT1055645B (it) * | 1975-10-24 | 1982-01-11 | Elsag | Multielaboratore elettronico associativo per elabobazioni multiple contemporanee di dati in tempo reale |
US4322716A (en) * | 1976-11-15 | 1982-03-30 | Environmental Research Institute Of Michigan | Method and apparatus for pattern recognition and detection |
EP0016523B1 (de) * | 1979-02-13 | 1984-09-26 | The Secretary of State for Defence in Her Britannic Majesty's Government of the United Kingdom of Great Britain and | Datenverarbeitungseinheit und Datenverarbeitungssystem, das mehrere dieser Datenverarbeitungseinheiten enthält |
SE430106B (sv) * | 1979-06-18 | 1983-10-17 | Ibm Svenska Ab | Hierarkiskt datorsystem |
EP0172038B1 (de) * | 1984-08-16 | 1991-10-23 | Sharp Kabushiki Kaisha | Informationsprozessor |
US5025369A (en) * | 1988-08-25 | 1991-06-18 | David Schwartz Enterprises, Inc. | Computer system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2968696A (en) * | 1956-06-01 | 1961-01-17 | Gen Dynamics Corp | Electronic telephone system |
-
1960
- 1960-06-30 US US40091A patent/US3219980A/en not_active Expired - Lifetime
-
1961
- 1961-06-21 GB GB22393/61A patent/GB905614A/en not_active Expired
- 1961-06-29 DE DE19611574877 patent/DE1574877B1/de not_active Withdrawn
Non-Patent Citations (1)
Title |
---|
None * |
Also Published As
Publication number | Publication date |
---|---|
GB905614A (en) | 1962-09-12 |
US3219980A (en) | 1965-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2819571C2 (de) | ||
DE1900141C3 (de) | HilfsSteuerwerk für eine Datenverarbeitungsanlage | |
DE2839726C2 (de) | Multiprozessoranlage mit verteilter Steuerarchitektur | |
DE2119063C2 (de) | Datenverarbeitungseinrichtung mit einer Einrichtung zur Steuerung von Programmunterbrechungsanforderungen | |
DE2817183C2 (de) | Datenverarbeitungsanlage mit einer durch Mikroprogramm gesteuerten Zentraleinheit | |
DE2523399A1 (de) | Datenverarbeitungssystem mit eingabe/ausgabeprozessoren | |
DE1499288B2 (de) | Datenverarbeitungsanlage | |
CH650600A5 (de) | Zentralprozessoreinheit einer datenverarbeitungsanlage mit operationscode-erweiterungsregister. | |
DE2457612B2 (de) | Mikroprogrammier-Steuereinrichtung | |
DE2712224A1 (de) | Datenverarbeitungsanlage | |
DE1774870C3 (de) | Einrichtung zur Adressierung einer Speicherzelle eines Speichers in einer Datenverarbeitungsanlage | |
DE1574877B1 (de) | Verfahren und Einrichtung zur Kopplung von datenverarbeitenden Anlagen | |
DE3400723A1 (de) | Vektorprozessor | |
DE2556617A1 (de) | Datenverarbeiter zum rotierbaren verschieben von bits eines datenwortes | |
DE3432524A1 (de) | Mehrfach genutzter datenschreiberregler und verfahren | |
DE1190706B (de) | In zwei abwechselnden Zyklen arbeitende programmgesteuerte elektronische digitale Rechenmaschine | |
DE2935101C2 (de) | ||
DE3113188C2 (de) | Vorrichtung zur Verwaltung der Informationsüberführung in einer Informationsverarbeitungsanlage | |
DE2054941C2 (de) | Anordnung zur Auswahl von Datensätzen | |
DE69031361T2 (de) | Taktsignalgeneratorsystem | |
DE1499224C3 (de) | Datenverarbeitungsanlage mit Kellerspeichereinrichtungen | |
DE1574877C (de) | Verfahren und Einrichtung zur Kopp lung von datenverarbeitenden Anlagen | |
DE1499286B2 (de) | Datenbearbeitungsanlage | |
DE1808678B2 (de) | Verfahren und schaltungsanordnung fuer elektronische daten waehlvermittlungsanlagen mit einem zentralen speicher | |
DE2845218B1 (de) | Mikroprogrammgesteuerte Ein-/Ausgabeeinrichtung und Verfahren zum Durchfuehren von Ein-/Ausgabeoperationen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E77 | Valid patent as to the heymanns-index 1977 | ||
EHJ | Ceased/non-payment of the annual fee |