-
Vorrangschaltung Die Erfindung bezieht sich auf eine Vorrangschaltung
zur Herstellung von Verbindungen zwischen mehreren verhältnismäßig langsam arbeitenden
peripheren Geräten einerseits, die, gegebenenfalls gleichzeitig, Betriebsbereitschaftssignale
an die Vorrangschaltung abgeben, und einer elektronischen Rechenanlage andererseits
in einer durch eine vorgegebene Vorrangordnung der peripheren Geräte untereinander
festgelegten zeitlichen Reihenfolge.
-
Rechenanlagen mit mehreren Peripheriegeräten benötigen Schaltmittel,
mit deren Hilfe der Datenfiuß bei gleichzeitigem Betrieb mehrerer peripherer Geräte
koordiniert wird, d. h. die Folge durchzuschaltender, gleichzeitig eingriffwünschender
Geräte festgelegt wird.
-
Eine bekannte Rechenanlage löst die Koordinationsaufgabe, indem ein
Ringzähler vorgesehen ist, der laufend alle peripheren Geräte (im folgenden kurz
»Geräte« genannt) abfragt und bei jedem eingriffwünschenden Gerät stehenbleibt.
Der Zählerstand gibt dann über die Gerätenummer Auskunft und bleibt so lange erhalten,
bis der Transport (eines Wortes, eines Zeichens od. ä.) ausgeführt ist. Dann läuft
der Zähler auf der Suche nach eingriffwünschenden Geräten weiter. In anderen Anlagen
beginnt der Ringzähler nach jedem Eingriff wieder von einem bevorzugten Zustand
an zu wählen, so daß Geräte mit großer Transportgeschwindigkeit diesem oder einem
benachbarten Zustand zugeordnet werden und somit öfter abgefragt werden als andere
Geräte. Eine dritte Möglichkeit besteht darin, daß der Ringzähler nicht stehenbleibt,
sondern ein eingriffwünschendes Gerät nur ansteuert, das seinerseits dafür sorgt,
daß der Zähler kein weiteres Gerät ansteuern kann, solange er selbst die Anlage
noch besetzt hält. Auf diese Weise wird ein nahezu statistischer Abruf der peripheren
Geräte gewährleistet. Als weitere bekannte Lösungen seien noch die gleichzeitige
Bearbeitung aller Geräte auf mehreren parallelen Rechen- und Speicherkanälen genannt,
die jedoch in den meisten Fällen aus Aufwandsgründen vermieden wird, und die Koordination
mittels einer aufwendigen rein passiven Logik, die jeweils ein eingriffwünschendes
Gerät durchschaltet.
-
Durch die Erfindung wird die vorliegende Aufgabe mit einem sehr geringen
Aufwand an Schaltmitteln unter Einsparung eines Ringzählers und unter Verringerung
der Durchschaltezeit gelöst. Sie ist dadurch gekennzeichnet, daß jedem peripheren
Gerät ein als Schaltverstärker oder bistabiles Element ausgebildetes Glied zugeordnet
ist, daß diese Glieder zu einer die zeitliche Vorrangfolge bestimmenden Kettenschaltung
in der Weise vereinigt sind, daß die Wirkausgänge jeweils mit den Erregungseingängen
der Nachbarglieder der Kette derart verbunden sind, daß beginnend von einem Glied,
dessen zugeordnetes Gerät ein Betriebsbereitschaftssignal abgegeben hat, dieses
und alle nachgeschalteten Kettenglieder asynchron in einen bestimmten Binärzustand
geschaltet werden oder daß beginnend vom Kettenanfang alle Kettenglieder bis zu
dem ersten Glied, dessen zugeordnetes Gerät ein Bereitschaftssignal abgegeben hat,
asynchron in den bestimmten Binärzustand geschaltet werden und daß Schaltmittel
vorgesehen sind, die in Abhängigkeit von den derart eingestellten Binärzuständen
der Kettenglieder, die Verbindung mit demjenigen peripheren Gerät herstellen, dessen
in den bestimmten Binärzustand geschaltetes Kettenglied die höchste bzw. die niedrigste
Ordnungszahl in der zeitlichen Vorrangfolge besitzt.
-
Diese und weitere Merkmale der Erfindung werden im folgenden an Hand
zweier bevorzugter Ausführungsbeispiele mit Hilfe der F i g. 1 bis 5 erläutert,
dabei zeigt F i g. 1 das Blockschaltbild einer Rechenanlage mit mehreren peripheren
Geräten, F i g. 2 eine Vorrangschaltung nach der Erfindung, F i g. 3 einen bekannten
bistabilen Baustein, der in der Anlage vielfach verwendet wird, F i g. 4 die technische
Ausführung des in F i g. 2 verwendeten Negatorverstärkers und F i g. 5 eine weitere
Ausführungsform der Vorrangschaltung gemäß der Erfindung.
-
Das Blockschaltbild einer Rechenanlage, wie es in F i g. 1 dargestellt
ist, enthält eine zentrale Recheneinheit 1, mehrere periphere Geräte (von denen
zwei
Magnetbandgeräte 2 und 3 gezeichnet sind) sowie Steuermittel
4, die die Aufeinanderfolge durchzuschaltender peripherer Geräte besorgen. Die zentrale
Recheneinheit enthält unter anderem Rechenregister und die Rechenwerkslogik, die
beide in einem Kästchen 5 zusammengefaßt sind; weiter enthält sie einen addressierbaren
Datenspeicher 6, der Einzelzeichen oder ganze Zeichengruppen (Worte) von den Rechenregistern
5 empfängt bzw. dorthin transportiert. Die zugehörige Adresse steht binär verschlüsselt
in einem Adreßregister 7, das wiederum mit einem Adreßrechenwerk, insbesondere mit
einer Zählwerkslogik 8 verbunden ist. Die Funktionen der beschriebenen Bauteile
werden gesteuert durch den Inhalt eines Befehlsregisters 9, dessen Zustandsfolge
von einer Befehlswerklogik 10, z. B. einem Mikroprogrammsteuerwerk zusammen mit
denn eingegebenen Programm bestimmt wird.
-
Die soweit beschriebenen Teile der zentralen Recheneinheit werden
ergänzt durch mehrere periphere Geräte, z. B. zwei Geräte 2 und 3, deren Steuerung
Gegenstand der Erfindung ist. Im allgemeinen enthalten solche Steuerungen eine Meldeleitung
11 bzw. 12 für jedes periphere Gerät, auf der dann ein Meldepotential liegt, wenn
das zugehörige Gerät zur Übernahme bzw. Übergabe einer Datengruppe bereit ist. Das
Meldesignal entsteht beispielsweise bei einem Magnetbandgerät durch disjunktive
Verknüpfung aller (z. B. fünf) Informationskanäle, in denen. Zeichen nach dem Fernschreibcode
verschlüsselt sind, da in einem solchen Code nie auf allen Kanälen gleichzeitig
eine Null vorkommen kann.
-
Ein (nicht gezeichnetes) Pufferregister ist insbesondere für schnelle
Parallelrechenmaschinen vonnöten, um möglichst viele Geräte gleichzeitig betreiben
zu können, ohne mit den geringen Pufferzeiten der peripheren Geräte in Konflikt
zu geraten. Man ist bestrebt, die Magnetbandgeräte kontinuierlich zu betreiben,
da häufige Starts und Stops Verluste an Ma- . gnetband und aufwendige mechanische
Steuerungen bedingen. Bei der Verarbeitung von Blocktransportbefehlen (ein Block
= eine Mehrzahl von im Speicher in aufeinanderfolgenden Adressen abgespeicherten
Zeichen oder Worten) arbeitet die zentrale Recheneinheit in vorteilhafter Weise
an anderen Befehlen, solange das Pufferregister noch nicht vollgeschrieben bzw.
völlig entleert ist, d. h., solange die Meldeleitung noch nicht erregt ist. Nach
Erregung dieser Leitung jedoch muß der anderweitige Befehl innerhalb einer nach
oben begrenzten Zeitspanne unterbrochen werden, da das Magnetbandgerät sonst bereits
neue Zeichen liefert bzw. dieselbe Information noch einmal aufzeichnet. Weiter muß
bei einer derartigen Befehlsart für jedes periphere Gerät ein Adreßregister vorgesehen
sein (hier 13 und 14), in dem die laufende Speicheradresse bezogen auf den internen
Speicher 6 registriert ist, 'solange kein Eingriffswunsch vorliegt. Liegt jedoch
ein solcher Wunsch vor (wobei ein Transport vom Rechner in das periphere Gerät im
Prinzip ebenso behandelt wird wie .der umgekehrte Transport), dann wird etwa ein
bistabiles Element 15 bzw. 16 eingeschaltet, das mehrere Informationswege öffnet.
Die Richtung des Informationstransports wird durch ein in jedem peripheren Gerät
vorhandenes Operationsregister 42 und 4.3 festgelegt, in dem neben der Art des auszuführenden
Befehls (Lesen Moder Schreiben) die Art der Blockbegrenzung (Blockeridez@iehegn
usw,) geupeiebert ist und das die Bandbewegung usw. steuert, Dieses Operationsregister
wird bei erstmaligem Auftreten des Blocktransportbefehls (im Befehlregister 9) eingestellt
und wird gelöscht, wenn auf dem -Qbertr-agungslzanal eine Blocklücke festgestllt
Wird q der wenn das verabredete Blockendezeichen aus dem - Internspeicher gelesen
wurde.
-
Aus dem zusätzlichen Adreßregister 13 bzw. 14 gelangt die laufende
Adresse im Eingriffsfall in das eigentliche Adreßregister 7. Gleichzeitig wird der
Informationskanal zwischen den Rechenregistern 5 und dem eingriffwünschenden Gerät
geöffnet, so daß das Zeichen in den oder aus dem Speicher gelangen kann. Die Adresse
wird um Eins erhöht und wieder in das zusätzliche Adreßregister gebracht.
-
Wenn nur ein Gerät vorgesehen ist, dann erübrigt sich jede über diese
bekannten Elemente hinausgehende Steuerung. Wegen der großen Unterschiede in der
Verarbeitungsgeschwindigkeit (schnelle Verarbeitung in. der rein elektronischen
zentralen Recheneinheit 1, geringe Geschwindigkeit in den teils mechanischen peripheren
Geräten) ist gleichzeitiger Betrieb mehrerer peripherer Geräte erwünscht. In diesem
Fall muß dafür gesorgt werden, daß die zentrale Recheneinheit nicht gleichzeitig
auf zwei periphere Geräte durchgeschaltet ist, vorausgesetzt, daß sie nicht zwei
getrennte Verarbeitungskanäle besitzt.
-
Die bekannten Rechenanlagen benutzen zu diesem Zweck einen Zähler,
der die einzelnen Geräte abfragt. Dieser Zähler hat jedoch neben dem Schaltungsaufwand
den Nachteil, daß durch die Abfrage nicht eingeschalteter Geräte einige Zeit verstreicht,
bis der Zähler auf ein eingriffwünschendes Gerät stößt. Da wie erwähnt der Eingriffswunsch
in einer bestimmten nicht zu überschreitenden Zeitspanne erfüllt werden muß, hängt
die Anzahl gleichzeitig einschaltbarer Geräte von dem Unterschied der Verarbeitungsgeschwindigkeiten
und von der Schnellib keit ab, mit der ein besetztes Gerät gefunden wird. Die Erfindung
betrifft also die Steuerung der von den Meldeleitungen 11, 12 angesteuerten bistabilen
Elemente 15 und 16, .die aus Gründen der Übersichtlichkeit jedoch in F i g. 1 nicht
dargestellt ist, F i g. 2 zeigt stellvertretend für sechs periphere Geräte die sechs
bistabilen Steuerelemente 15, 16, 17, 18, 19, 20. Sie sind in üblicher Symbolik
.dargestellt und besitzen zwei Eingänge und zwei Ausgänge. Die Elemente werden von
einem zentralen Takt der Frequenz f synchronisiert; sie verändern ihren bistabilen
Zustand nur synchron. mit diesem Takt und auch nur, wenn eine Eins an .einem der
Eingänge liegt. An den Eingängen 11, 12 und 21
liegen die Meldeleitungen der
zugeordneten Geräte und stellen die bistabilen Elemente auf Eins, wenn ein Eingriffswunsch
vorliegt. Die negierten Ausgänge solcher Elemente zeigen dann .eine Null. Gemäß
der Erfindung führen .diese Ausgänge auf je .eine Konjunktion 2Z bis 27, .deren
Ausgang m mit je einem Inverterverstärker 28 bis 33 verbunden ist.
-
Der Verstärker ist in F i g. 4 angegeben. Er besitzt einen Eingang,
einen Normalausgang und einen negierten Ausgang. an -dem stets die invertierte Binärinformation,
bezogen auf den Normalausgang und bezogen auf .den Eingang, liegt. Es handelt sich
also um Einen zweistufigen Verstärker. Der Normalaus-. gang des Verstärkers ist
mit .dem zweiten Eingang der Konjunktion des in der Zeichnung (F i g. 2)
rechts
danebenliegenden peripheren Geräts verbunden, während der negierte Ausgang auf je
eine weitere Konjunktion 34 bis 39 führt, deren zweite Eingänge durch einen Takt
t=
gebildet werden (p =2 oder 3 oder usw.). Der Ausgang dieser weiteren Konjunktionen
ist auf den Löscheingang des bistabilen Elements des in der Zeichnung jeweils rechts
danebenliegenden peripheren Geräts geschaltet.
-
Diese Schaltmittel gemäß der Erfindung arbeiten folgendermaßen: Wenn
zu einem bestimmten Zeitpunkt mehrere periphere Geräte Eingriff wünschen, dann soll
das Gerät mit der höchsten Ordnungszahl durchgeschaltet werden. Die Ordnungszahlen
I-VI seien etwa steigend analog zu den Indexzahlen 15 bis 20 der bistabilen Elemente
gegeben.
-
Zu einem vor der Durchschaltung liegenden Zeitpunkt sind z. B. mehrere
bistabile Elemente eingeschaltet. Gehörte das Element mit der höchsten Ordnungszahl
dazu, dann zeigen alle Konjunktionen 22 bis 27 am Ausgang eine Null; die negierten
Ausgänge der zugehörigen Inverter schalten alle Konjunktionen 34 bis 39 mit dem
Takt t ein und löschen somit alle Elemente der Ordnungszahlen I-V. Komplizierter
ist der Vorgang, wenn das höchste Element nicht beteiligt ist, also am negierten
Ausgang eine Eins zeigt; dann wird der zugehörige Verstärker 28 eingeschaltet, dessen
Ausgang eine der Bedingungen für die Konjunktion 23 der nächstniedrigeren peripheren
Geräts darstellt. Ist dieses Gerät ebenfalls nicht beteiligt, dann wird daraufhin
auch diese Konjunktion und der dazugehörige Verstärker 29 eingeschaltet. Letzterer
wirkt auf die nächste Konjunktion 24 usw., bis ein Gerät gefunden wird, das einen
Eingriff wünscht. Dort ist die Konjunktionsbedingung erst- ; mals nicht mehr erfüllt,
der Verstärker nicht mehr eingeschaltet und die dem Verstärker nachgeschaltete Konjunktion
demnach erfüllt. Diese und alle Konjunktionen mit niedrigerer Ordnungszahl werden
dann mit dem Takt t eingeschaltet und löschen alle bistabile Elemente, mit Ausnahme
des zuerst als eingeschaltet gefundenen.
-
Der ganze Vorgang setzt sich zeitlich lediglich aus den Schaltverzögerungen
der Konjunktionen 22 bis 27 und der Verstärker 28 bis 33 zusammen, er läuft also
ungetaktet (asynchron) und dadurch wesentlich schneller als jeder getaktete Zähler.
Mit jedem Taktimpuls t wird das höchste eingeschaltete bistabile Element durchgeschaltet.
Es muß dafür gesorgt werden, daß nach jedem Takt t eine Eingriffsmöglichkeit in
die zentrale Recheneinheit besteht. Andererseits muß der Eingriffswunsch jedes peripheren
Geräts zeitlich so lange vor dem Takt t bekannt sein, daß die Gesamtschaltverzögerungszeit
für alle peripheren Geräte zur Verfügung steht. Man erkennt jetzt, daß die Verstärker
28 bis 33 neben der invertierenden Funktion auch einen nicht invertierenden, verstärkenden
Ausgang besitzen müssen, da im angeführten Beispiel bis zu sechs (passive) Konjunktionen
ohne Zwischenschaltung eines (aktiven) bistabilen Elements hintereinandergeschaltet
sind.
-
Ein weiterer Vorteil der erfindungsgemäßen Vorrangschaltung ergibt
sich aus der einfachen Abfrage des Tatbestands, daß kein Gerät einen Eingriff wünscht.
Ohne Zeitverzögerung läßt sich dies am positiven Ausgang 40 des Verstärkers mit
der niedrigsten Ordnungszahl 1 feststellen. Dieser Ausgang ist nach dem Abklingen
des Schaltvorgangs nur dann erregt, wenn alle Konjunktionen 22 bis 27 erfüllt sind,
d. h., wenn die bistabilen Elemente 15 bis 20 alle als Null stehen.
-
Zur technischen Realisierung dieses und eines weiteren Ausführungsbeispiels
sind in den folgenden F i g, 3 und 4 die notwendigen Bausteine angegeben. F i g.
3 zeigt ein bekanntes getaktetes bistabiles Element, wie es unter anderem für die
Elemente 15 bis 20 brauchbar ist. Es besitzt zwei Transistoren, einen Stell- und
einen Löscheingang, zwei Ausgänge, einen Eingang für den Takt f sowie einen die
Taktsynchronisierung umgehenden direkten Eingang e, während F i g. 4 den erwähnten
Inverterverstärker zeigt. Die Erfindung ist jedoch nicht auf die Realisierung mit
diesen Bausteinen beschränkt, wie bei dem hochentwickelten Stand der Bausteintechnik
ohne weiteres einzusehen ist.
-
Weiter beschränkt sich die Erfindung auch nicht auf das dargestellte
Ausführungsbeispiel. Vielmehr sind mehrere ebenso vorteilhafte Anordnungen denkbar,
in denen die asynchrone Kette anders ausgeführt wird. In einem weiteren Beispiel,
das in der abschließenden F i g. 5 dargestellt ist, wird die Kette aus den bistabilen
Elemente 44 bis 49 gebildet, die den über die Leitungen 11, 12, 21 ankommenden Eingriffswunsch
speichern. Auf diese Weise wird die Verstärkerkette überflüssig (Ersparnis an Bauelementen).
Das Durchschaltesignal kann jedoch hier nicht direkt von den bistabilen Elementen
entnommen werden. Vielmehr muß je eine Konjunktion 50 zur Auswertung des Kettenzustandes
den bistabilen Elementen nachgeschaltet werden. Für den Kettenschaltvorgang sind
die in F i g. 3 mit e bezeichneten direkten Eingänge der bistabilen Elemente mit
dem Eins-Ausgang des Elements jeweils nächsthöherer Ordnung verbunden. Die Auswertung
des Kettenzustands wird wie im ersten Ausführungsbeispiel mit dem Takt t synchronisiert,
der an allen Konjunktionen 50 anliegt. Diese Konjunktionen besitzen je zwei Eingänge,
von denen der erste mit dem Eins-Ausgang des bistabilen Elements des zugeordneten
Kettengliedes und der zweite mit dem Null-Ausgang des bistabilen Elements nächsthöherer
Ordnungszahl verbunden ist. Mit dem Takt t ist also nur am Ausgang der Konjunktion
eine Eins verfügbar, die dem Eingriffswunsch höchster Ordnung entspricht.
-
Wenn die Eingriffswünsche der Elemente nicht von der vorliegenden
Schaltung gespeichert werden müssen, kann man die bistabilen Elemente durch (noch
einfachere) Negatorverstärker (wie in F i g. 4) ersetzen.
-
Diese Anordnung besitzt wie die zuerst beschriebene die vorteilhafte
Eigenschaft, daß die Schaltmittel für alle Geräte gleich sind. Im Gegensatz zu einem
bekannten Vorrangzähler, dessen Zyklus nur durch Schaltungseingriffe geändert werden
kann, genügt es hier, bei Anschließen oder Abtrennen eines zusätzlichen Geräts den
zugehörigen Baustein mit den Schaltmitteln hinzuzufügen oder zu entfernen. Man muß
nur dafür sorgen, daß die verbleibenden Geräte fortlaufende Ordnungszahlen aufweisen.
Vorteilhaft sind deshalb manche überflüssigen Elemente in den Gliedern höchster
und niedrigster Ordnungszahl insbesondere in F i g. 2 vorhanden (z. B. Verstärker
33, Konjunktion 39).
-
In der Schaltung nach F i g. 5 steht ebenso wie in der zuerst beschriebenen
natürlich wieder ein Ausgang 40 aus dem Glied der niedrigsten Ordnungszahl
zur
Verfügung, der nur dann eine Eins zeigt, wenn gar kein peripheres Gerät einen Eingriff
wünscht.
-
Die Erfindung läßt sich gleichermaßen auf Rechenanlagen mit serienmäßigem,
mit serienparallelem oder mit rein parallelem Informationstransport anwenden. Im
allgemeinen werden jedoch gleichzeitig mehrere Binärzeichen zwischen Gerät und zentraler
Recheneinheit transportiert, entsprechend der Anzahl von Spuren auf dem Magnetband.
In vielen Fällen empfiehlt sich auch ein Pufferspeicher, der mehrere Binärzeichen
zu einem »Wort« sammelt und dann erst den Eingriff anmeldet und daraufhin serienmäßig
oder parallel mit der Recheneinheit korrespondiert, wobei die Meldeleitung 11 bzw.
12 abhängig vom Besetztzustand des Pufferregisters erregt wird.