DE1935258C3 - Programmumschalteinrichtung für Datenverarbeitungsanlagen mit mehreren AnschluBeinheiten - Google Patents

Programmumschalteinrichtung für Datenverarbeitungsanlagen mit mehreren AnschluBeinheiten

Info

Publication number
DE1935258C3
DE1935258C3 DE19691935258 DE1935258A DE1935258C3 DE 1935258 C3 DE1935258 C3 DE 1935258C3 DE 19691935258 DE19691935258 DE 19691935258 DE 1935258 A DE1935258 A DE 1935258A DE 1935258 C3 DE1935258 C3 DE 1935258C3
Authority
DE
Germany
Prior art keywords
program
register
circuit
main memory
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE19691935258
Other languages
English (en)
Other versions
DE1935258B2 (de
DE1935258A1 (de
Inventor
Johann 7031 Holzgerlingen; Knauft Günter 7030 Böblingen; Painke Helmut 7032 Sindelfingen; Reichl Leopold; Vogt Edwin Dipl.-Ing. Dr.; 7030 Böblingen Hajdu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IBM Deutschland GmbH
Original Assignee
IBM Deutschland GmbH
Filing date
Publication date
Application filed by IBM Deutschland GmbH filed Critical IBM Deutschland GmbH
Priority to DE19691935258 priority Critical patent/DE1935258C3/de
Priority to JP4813970A priority patent/JPS5624300B1/ja
Priority to CA087838A priority patent/CA932471A/en
Priority to GB3350570A priority patent/GB1313951A/en
Publication of DE1935258A1 publication Critical patent/DE1935258A1/de
Publication of DE1935258B2 publication Critical patent/DE1935258B2/de
Application granted granted Critical
Publication of DE1935258C3 publication Critical patent/DE1935258C3/de
Expired legal-status Critical Current

Links

Description

Die Erfindung bctiiüt eine Programmumsehaltcinrichtung für Datenverarbeitungsanlagen mit mehreren Anschlußeinheiten, wie Ein- und Ausgabeeinheiten
jnd oder peripheral Speichereinheiten, mit einer ientralen Verarbeitungseinheit, die einen Hauptspeicher zur Aufnahme wenigstens eines Verarbeitungsprogramms und mehrerer den Anschlußeinheiten zugeordneter Steuerprogramme sowie zur Speicherun« der zu verarbeitenden Daten aufweist, mit einem schnellen Arbeitsspeicher zur Aufnahme der jeweils in Behandlung befindlichen Operanden und Ooerandenudressen. der in Bereiche unterteilt ist. von denen jeder die beim jeweiligen Stand eines Verarbeitung- oder Stcuernrogramms benötigten Daten, wie Befchls- und Operandenadressen, Operanden. Teilresultate. Wortlängenangaben usw.. enthält und die entsprechend einer vorgegebenen Vorranganordnun» über eine Programmumschaltsteuerung auf Anforderung durch eine der Anschlußeinheiten oder durch das Verarbeitungsprogramm einzeln auswählbar sind.
Datenverarbeitungsanlagen, die aus einer zentralen Verarbeitungseinheit und mehreren, an dieser angeschlossenen Fin- und Ausgabeeinheiten sowie periphereii Speichereinheiien bestehen, verwenden üblicherweise zur Lösung einer Verarbeitungsaufgabe mehrere Programme. Eines dieser Programme führt die eigentliche Verarbeitung der Daten aus. während die anderen Programme den Datentransport zwischen der zentralen Verarbeitungseinheit und den Anschlußeinheiten steuern und bestimmte zusätzliche Funktionen, wie die Auslösung \on Steueroperationen in den Anschhißeinheiten oder Fehlerdiagnose bzw. -registrierung ausführen. Fs ist bei derartigen Anlagen von erheblicher Bedeutung, daß die Umschaltung von einem auf das andere Programm möglichst schnell erfolgt. Solche ProgrammumschaUimgen können sehr häufig sein. Beispielsweise wird das Verarbeitungsprogramm stets dann durch eine Anforderung von der Karteneinheit unterbrochen, wenn von dieser eine von der jeweils in Behandlung befindlichen Lochkarte gelesene Datenbitgruppe zum Speieher der Zentraleinheit übertragen werden soll. Nachdem diese Übertragung ausgeführt ist. kehrt die Steuerung der Zentraleinheit zum Verarbeitungsprogramm zurück, das so lange fortgesetzt wird, his die nächste Lochkarlenspalte gelesen ist und die gelesenen Daten wiederum zur Zentraleinheit zu übertragen sind.
Da alle Programme unter Steuerung der zentralen Verarbeitungseinheit ablaufen, muß bei jedem Programmwechsel der Arbeitsspeicher bzw. der Arbeitsregistersatz der Zentraleinheit von den Daten des laufenden Programms frei gemacht --verden. Diese Daten, zu denen z. B. der BefeMszählerstand, Operandenadressen, Operanden, der Akkunuilatoiinhalt, der Inhalt verschiedener Indexregister usw. gehören, sind für die spätere Fortsetzung des Programms aufzubewahren. Sie werden deshalb durch eine Reihe von Abspeicherimgsopcrationen zum Hauptspeicher der Zentraleinheit übertragen und von dort wieder geholt, wenn das Programm fortgesetzt wird. Diese Abspeicherungs- und Entnahmeoperationen werden bei den bekannten Anlagen durch feste oder variable Unterprogramme vorgenommen (F7. P. Brooks jun.: A Program-Controlled Prograrn-Interruptio.i System, in Proceedings of the Fastern Computer Conference. Washington D. C, Dezember 1457). die wertvolle Maschinenzeit erfordern.
In der vorgenannten Veröffentlichung wird auch die Möglichkeit erwähnt, mehrere Befehlszähler vorzusehen, von denen ieder einem der verschiedenen Programme zugeordnet ist. Hierdurch ist es nicht mehr nötig, bei einem Programme echsel die Befehlsadresse des unterbrochenen Programms abzuspeichern. Diese bleibt vielmehr in dem betreffenden Befehlszähler stehen, bis das unterbrochene Programm zu einem späteren Zeitpunkt forlgesetzt wird. Die übrigen Programmdaten, wie Operandenadressen, im Akkumulator stehende Teilresultate, der Inhalt von Indexregistern. Feldlängcnangaben usw., sind jedoch auch in einer derartigen Anordnung jeweils bei Unterbrechung eines Programms abzuspeichern und bei der späteren Fortsetzung des gleichen Programms wieder aus djm Speicher zu entnehmen und in die betreffenden Register einzustellen.
Eine Möglichkeit zur Vermeidung derartiger, an der eigentlichen Verarbeitung nicht beteiligter Leerlaufzeiten bestände darin, jede der Anschlußeinheiten mit einer eigenen Verarbeitungseinheit auszurüsten. Dies würde jedoch einen sehr hohen Aufwand erfordern, der insbesondere bei Datenverarbeitungsanlagen der niedrigen Preisklasse nicht vertretbar wäre.
Fs ist deshalb auch bereits eine zur zeitlich verschachtelten Ausführung mehrerer Programme geeignete Datenverarbeitungsanlage bekanntgeworden, die einen in Bereiche unterteilten Programmarbeitsspeicher enthält (USA.-Patentschrift 3 373 40K). Jeder Bereich besteht aus mehreren Registern, die Programmdaten eines bestimmten Programms enthalten. Fines der Register speichert den ßefehlszählerstand des beireffenden Programms, und die anderen Register sind Mehrzweekregisler. Gleitkommaregister und Statusregister. Diese Register werden vom betrclfenden Programm zur Speicherung von Adressen. Operanden oder Zwischenergebnissen benutzt. Wenn die Programmsteuerung der Datenverarbeitungsanlage in Abhängigkeil vom jeweiligen Verarbeitungsprogramm oder auf Anforderung von einer Anschlußeinheit auf ein anderes Programm umschaltet, wird lediglich die Bereichsadressierung des Arbeitsspeichers gelindert, während sich eine Abspeicheiunu von Programmdaten erübrigt. Der Arbeitsspeicher ist koordinatenförmig aufgebaut, wobei die dem Programm zugeordneten Bereiche der einen Koordinate und die Register innerhalb eines jeden Bereiches der anderen Koordinate zugeordnet sind. Die Adressierung der Bereiche erfolgt über ein Register, in das der jeweilige Bereiehsadressenwerl entweder direkt durch die Programmsteuerung oder beim Auftreten bestimmter privilegierter Befehle eingestellt wird, sofern deren Ausführung \om Statusregister des gerade wirksamen Bereiches gesperrt wird. Die Umschaltung gehorcht jedoch nur dem durch das Programm vorgegebenen Vorrang, der vom Programmierer festgelegt wurde. Hinsichtlich der durch"das Auftreten bestimmter Maschinenbedingungen angeforderten ProgrammumschalUingen, wie z.B. die Bedienungsanforderung \on einer angeschlossenen Eingabe Ausgabeeinheit, weist die bekannte Einrichtung keine Vorrangsteuerung auf. In solchen !"allen wird unabhängig von der Bedeutung des gerade laufenden Programms eine Programmumschaltung vorgenommen, wenn die Anforderung hierzu auftritt. Hierdurch kann es vorkommen, daß auf Grund häufiger Programmumschaltungen nur geringe Fortschritte in der Abarbeitung der verschiedenen Programme gemacht werden oder daß Anschlußeinheiten länijere Zeit im Wartezustand vcr-
bleiben, da das zu ihrer Bedienung aufgerufene Steuerprogramm immer wieder durch andere Umsehallanforderungen unterbrochen wird.
Aufgabe der Erfindung ist es, für Datenverarbeitungsanlagen der letztgenannten Art eine Programmumschalteinrichtung anzugeben, die unter Vermeidung der genannten Nachteile eine Verringerung der Zahl der Programmumschaltungen auf diejenigen Fälle gestattet, wo die angeforderte Programmumschaltung in bezug auf das gerade in Betrieb befindliche Programm eine hohe Dringlichkeit besitzt.
Bei einer Einrichtung der eingangs beschriebenen Art wird dies dadurch erreicht, daß eine Bereichsadressierschaltung des Arbeitsspeichers aus einer zweistufigen Registerschaltung besteht, von der die erste Stufe zur Speicherung des zur Bereiehsadressierung verwendeten Bereichsadressenwertes und die zweite Stufe zur Speicherung aller von den Anschlußeinheiten eingehenden Programmumschalt-Anforderungen dient, und daß eine Übertragungssteuerschaltung vorgesehen ist, die die erste Stufe entsprechend der ranghöchsten der in der zweiten Stufe enthaltenen Anforderungsmarkierungen einstellt, wenn diese eine andere als die in der ersten Stufe stehende Bereichsadresse bezeichnet.
Weitere vorteilhafte Ausgestaltungen der Erfindung sind aus den Unteransprüchen zu ersehen.
Nachfolgend ist ein Ausführungsbeispiel der Erfindung an Hand von Zeichnungen dargestellt. Es zeigt
F i g. 1 ein verallgemeinertes Blockdiagramm einer mit der erfindungsgemäßen Programmumschalteinrichtung ausgestatteten Datenverarbeitungsanlage,
F i g. 2 die Zusammengehörigkeit der Fig. 3 A und 3 B,
Fig. 3A und 3B ein Blockschaltbild der Programmumschaltsteuereinnchtung und der Adressierung des Arbeitsspeichers der in F i g. 1 dargestellten Datenverarbeitungsanlage,
F i g. 4 ein Blockschaltbild einer Programmstufenzuordnungsschaltung, wie sie in der Programmumschaltsteuereinrichtung von F i g. 3 A und 3 B zur Übertragung der Programmunterbrechungsanforderungen von den Anschlußeinheiten zum Programmstufenregister Verwendung findet,
F i g. 5 ein Blockschaltbild der Registereingangsschaltung, des Programmstufenregisters-neu und der Prioritätslogik in der Programmschaltsteuereinrichtung von Fig. 3 A und 3B,
F i g. 6 ein vereinfachtes Blockschaltbild der Befehlsdekodierung in der Datenverarbeitungsanlage von Fig. 1,
F i g. 7 ein Blockschaltbild des !Comparators von Fig. 3A,
F i g. 8 ein vereinfachtes Blockschaltbild der Taktgeberschaltung der Datenverarbeitungsanlage von Fig. 1,
F i g. 9 ein Blockdiagramm des die Steuersignale für die Programmumschaltung erzeugenden Teiles der Operationssteuerschaltung von Fig. 1,
Fig. 1OA und 1OB ein vereinfachtes Zeitdiagramm und eine schematische Darstellung des die auszuführenden Programme enthaltenden Hauptspeichers zur Erläuterung eines Programmumschaltvorganges,
Fig. 11 ein vereinfachtes Flußdiagramm eines Umschaltsteuerprogramms für den Fall, daß mehrere Arten von Programmumschaltanforderungen einer gemeinsamen Programmstufe der zentralen Verarbeituneseinheit zugeordnet sind, und
Fig. 12 die Zusammengehörigkeit der Fig. 13A und 1 3 B,
Fig. 1 3 A und 1 3 B eine schematische Darstellung von Datenübertragungen, die in der zentralen Verarbeitungseinheit der Datenverarbeitungsanlage nach Fig. 1 bei Ausführung bestimmter, beispielsweise gewählter Programmteile erfolgen.
Allgemeine Beschreibung
ίο Die in Fig. 1 dargestellte Datenverarbeitungsanlage besteht aus einer zentralen Verarbeitungseinheit 10 und mehreren mit dieser zusammenarbeitenden Anschlußeinheiten 12, die wahlweise entsprechend dem jeweiligen Verwendungszweck mehrere gleiche und/oder unterschiedliche Ein- und Ausgabeeinheiten 19 bis 22 sowie mehrere periphere Speichercinheitcn, wie eine MagnctplaUeneinheit 15 und drei Magnetbandeinheitcn 16 bis 18 umfassen. In der zentralen Dalenverarbeitungseinheit befindet sich ein Hauptspeicher 26, der die über die Anschlußeinheiten eingelesenen und zu verarbeitenden Daten enthält. Im Hauptspeicher 26 werden ferner die Programme gespeichert, nach denen die Datenveiarbeitungsanlage eine bestimmte Verarbeitungsaufgabe ausführt. Zu diesen Programmen gehören auch Steuerprogramme, die den Betrieb der Anschlußeinheiten 12 steuern und überwachen. Die Programme und die Daten sind in verschiedenen Abschnitten des Hauptspeichers 26 untergebracht. Die Adressierung des Hauptspeichers erfolgt über ein Speicheradressenregister 28, und die dem Speicher entnommenen Informationen werden in ein Speicherdatenregister 30 eingegeben. Das Einschreiben in den Hauptspeicher 26 erfolgt über Treiberschaltungen 32. Zur arithmetischen und logischen Verknüpfung der zu verarbeitenden Daten dient eine arithmetische und logische Einheit 34, deren Ausgang über eine Sammelleitung 36 mit dem Eingang der Treiberschaltung 32 und über eine weitere Sammelleitung 37 mit dem Speicheradressenregister 28 verbunden ist. Die arithmetische und logische Einheit 34 erhält Daten von einem ersten Operandenregister 38 über eine Verschiebeeinheit 40 auf einem ersten Eingang und von einem zweiten Operandenregister 42 über eine Invertierschaltung 44 auf einem zweiten Eingang zugeführt. Die beiden Operandenregister, die in F i g. 1 auch mit TDR und FDR bezeichnet sind, werden mit den Daten geladen, die aus dem Hauptspeicher 26 entnommen und in das Speicherdatenregister 30 eingegeben worden sind.
Die zentrale Verarbeitungseinheit 10 enthält des weiteren einen Arbeitsspeicher 48, der als Speichel mit sehr schnellem Zugriff, beispielsweise in monolithischer Halbleitertechnik, ausgebildet ist. Dci Arbeitsspeicher ist im dargestellten Beispiel in ach' Bereiche 0, 1 bis 7 unterteilt. Jeder der Bereiche 1 bis 7 ist wenigstens einer Anschlußeinheit 15 bis Vi zugeordnet. Der Bereich 0 ist für das Verarbeitungs programm der zentralen Verarbeitungseinheit reser viert. Jeder dieser Bereiche besteht aus einer Anzah je 18 Bitstellen umfassender Wortspeicherplätze bzw Register. Im dargestellten Beispiel enthält jeder Be reich acht derartige Register. Eines der Register dien zur Speicherung der Befehlsadresse des jeweils al: nächsten auszuführenden Befehls. Im Bereich 0 is dies der nächste Befehl des Verarbeitungsprogramms das im Hauptspeicher 26 zur Ausführung durch dii zentrale Verarbeitungseinheit gespeichert ist. In dei übrigen Bereichen sind dies die Befehlsadressen de
ύ?
Slcucrprogramme für die zugeordnelen Anschlußcinheilcn. Die übrigen Register eines joden Bereiches dienen der Zwischenspeicherung der in der arithmetischen und logischen Einheil 34 gegebenenfalls mehrmals zu verarbeitenden Daten oder zur Speicherung von Adressen von solchen oder anderen Daten. Diese Register können aber auch als Pufferspeicher für die von den Anschlußeinheiten 12 zur zentralen Verarbeitungseinheit übertragenen Daten oder von dieser zu den Anschlußeinheiten übertragenden Daten dienen. In die Register können außerdem Steuerdatei!, wie Wortlängcnangaben, lndexierungskonstanten usw. eingespeichert werden.
Die Adressierung der Bereiche des Arbeitsspeichers 48 kann einerseits durch das gerade ablaufende Verarbeitungsprogramm und zum anderen durch eine Anforderung von einer der Anschlußeinheiten 12 erfolgen. Jede dieser Anschlußeinheiten ist einer oder mehreren der Programmstufen /'.V 1 bis l'S 7 fest zugeordnet, deren Priorität in bezug auf einen Zugriff zum Arbeitsspeicher mit ansteigender Numerierung wächst. Zum Beispiel hat die Ein- und Ausgabeeinheit 21, die der Programmstufe 1 zugeordnet ist, die niedrigste Priorität und die Ein- und Ausgabeeinheit 22, die der Programmstufe PS 7 zugeordnet ist. die höchste Priorität. Eine Programmumschaltsteucrung 50 dient dazu, aus einer von einer Ar.sehlußeinheit 12 kommenden Anforderung nach Bedienung durch die zentrale Verarbeitungseinheit eine Adresse für den Bereich des Arbeitsspeichers 48 zu erzeugen, dem die betreffende Anschlußeinheit zugeordnet ist.
Wenn die zentrale Verarbeitungseinhcit mit dem Ablauf eines Bearbeitungsprogramms beschäftigt ist, wird durch die Programmumschaltsteuerung automatisch der Bereich 0 adressiert. Die zentrale Verarbeitungseinhcit benutzt daher bei der Programmausführung nur diesen Teil des Arbeitsspeichers 48. Dieser Bereich hat die Programmstufe 0, d. h. die niedrigste aller möglichen Programmstufen.
Das Verarbeitungsprogramm kann daher nur dann ablaufen, wenn von keiner der Anschlußeinheiten 12 eine Anforderung vorliegt. Tritt eine solche auf, dann führt die Programmumschaltsteuerung 50 eine Umschaltung in der Adressierung des Arbeitsspeichers 48 durch, so daß der von der zentralen Verarbeitungscinheit als nächster auszuführende Befehl nicht der durch das Befehlsadrcsscnregister des Bereiches 0 bezeichnete Befehl, sondern der Befehl ist, dessen Adresse im Befehlsadressenregister des Arbeitsspeicherbereiches der anrufenden Anschlußeinheit enthalten ist. Es findet somit eine Programmumschaltung statt, wobei die zum Zeitpunkt der Unterbrechung des Verarbeitungsprogramms im Arbeitsspeicher 48 enthaltenen, zu diesem Programm gehörenden Daten im Bereich 0 reserviert bleiben. Die Verarbeitung wird mit dem Steuerprogramm der anrufenden Anschlußeinheit fortgesetzt, bis dieses eine Rückumschaltung zum Verarbeitungsprogramm zuläßt.
Um die einzelnen Bereiche des Arbeitsspeichers 48 wahlweise auch vom Verarbeitungsprogramm her adressieren zu können, beispielsweise, um nach Erledigung eines Steuerprogramms eine Rückumschaltung zu einem rangniedrigeren Bereich durchzuführen, werden der Programmumschaltsteuerung 50 über eine Sammelleitung 56 Adreßdaten in Abhängigkeit von einem Befehl des Verarbeitungsprogramms zugeführt. Die Befehle des Verarbeitungsprogramms werden nacheinander in einem Operationsregister 52 eingestellt, dem ein Operationsdecodierer 54 nachgeschaltet ist. Die Sammelleitung 56 ist mit dem Ausgang des Operationsdccodierers 54 verbunden; die in ihr enthaltenen Adern werden jedoch nur von einem Teil der Bitstellcn des Operationsregisters 52 gesteuert.
Ein anderer Teil dieser Bitstellen steuert über den Operationsdccodierer und die Sammelleitung 58 die Adressierung der Register im jeweils adressierten Bein reich des Arbeitsspeichers 48. Außerdem werden die Ausgangssignale des Operationsdecodierers 54 auch noch einem allgemeinen Stellerteil (Opcrationssteuerschaltung) 60 zugeführt, der Steuersignale für die arithmetisch und logische Einheit 34, die Vcrschiebeeinheit 40, die Inverterschaltung 44 und andere Teile der zentralen Verarbeitungseinheit erzeugt.
Die Eingangssammcllcitung62 des Arbeitsspeichers, die allen Bereichen parallel zugeordnet ist, ist einerseits mit dem Ausgang der arithmetisch logischen Einheit 34 und zum anderen mit einer Sammelleitung 64 verbunden, auf der Daten von den Anschlußeinheiten 12 zur zentralen Verarbeitungseinheit 10 übertragen werden. Eine Ausgangssammcllcitung 66 des Arbeitsspeichers führt zum Spcicheradresscnrcgister 28 sowie zu den Operandenregistern 38 und 42. Außerdem ist diese Ausgangssammellcilung mit einem Modifizicradreßregistcr 68 verbunden, dem eine Inkrcmcnticr/Dekrementierschaltung 70 nachgcschallet ist. Der Ausgang dieser Schaltung ist an den Eingang 62 des Arbeitsspeichers 48 angeschlossen. Das Modifizicradreßregistcr 68 und die lnkremcntier/ Dekremcntierschaltung 70 dienen zur Inkrementierung bzw. Dckrementicrung von Operandenadressen bei Befehlen mit variabler Wortlänge. Eine andere wesentliche Verwendung dieser Schaltungsteile besteht darin, die im Bcfchlsadresscnregister des gerade wirksamen Bereiches des Arbeitsspeichers 48 enthaltene Befehlsadresse während eines jeden Bcfehlsausführungszyklus um einen festen Betrag zu inkrcmentieren, um so eine Einstellung des Befehlsadresscnregisters auf den jeweils nächsten Befehl im Programm vorzunehmen.
Die Anschlußeinheiten 12 erhalten von der zentralen Datenverarbeitungseinheit 10 Daten über eine Sammelleitung 72 zugeführt. Die Sammelleitung 72 und die Sammelleitung 64 bilden eine Ringleitung, in welche alle Anschlußeinheiten Il eingeschaltet sind. Die Datenübertragung von der Zentraleinheit 10 zu den Anschlußeinheiten 12 erfolgt über das Operandenregister 38. Werden Daten vom Hauptspeicher 26 zu den Anschlußeinheiten 12 übertragen, so geschieht dies über die Register 30 und 38. Werden dagegen aus dem Arbeitsspeicher Daten zu einer dei Anschlußeinheiten übertragen, so geschieht dies übei die Ausgangssammclleitung66 und das Operanden registers 38. Die von den Anscblußeinheiten 12 zu zentralen Verarbei'ungseinheit übertragenen Datei können wahlweise über die Sammelleitung 62 zi einem ausgewählten Register eines adressierten Be reiches im Arbeitsspeicher 48 übertragen oder übe die Sammelleitung 36 und die Treiberschaltung 3 direkt zum Hauptspeicher 26 gebracht werden.
Die Programmumschaltsteuerung
In den Fig. 3A und 3B ist ein vereinfachte Blockschaltbild der Programmumschaltsteuerscha tung 50 von F i g. 1 dargestellt. Diese Schaltung en hält einen Programmstufenzuordner 80, über den d
509 686/41
Zuordnung der Anschlußeinheiten 15 bis 22 von Fig. 1 zu den einzelnen Programmslufen der zentralen Verarbeitungseinheit IO erfolgt. Der Aufbau des Programmstufenzuordners ist aus F i g. 4 ersichtlich und wird in einem späteren Abschnitt beschrieben. Vom Programmstufenzuordner werden Programmstufen-Anforderungssignale über eine Sammelleitung 82 und eine Rcgistercingangsschaltung 84 zu einem Programmstufenregister 86 geliefert. In diesem Register werden die neu eingehenden Programmstufen-Anforderungssignale gespeichert. An die Ausgänge des Programmstufenregisters ist eine Prioritätslogik-Schaltung 88 angeschlossen, die von den im Programmstufenregistcr 86 enthaltenen Programmstufen-Anforderungssignalcn jeweils dasjenige mit der höchsten Priorität aussondert und alle übrigen unterdrückt. Das ausgesonderte Aniorderungssignal gelangt über eine Sammelleitung 89 und eine Gruppe von UND-Schaltungen 90 zu einem weiteren Programmstufenregister 92, in welchem die jeweils wirksame Programmstufe PS gespeichert ist. Um die Programmstufenregistcr 86 und 92 für die nachfolgende Darstellung besser voneinander unterscheiden zu können, wird das die neuen Programmstufcn-Anforderungssignale enthaltende Register 86 auch mit 2. Programmstnfenregister und das die laufenden Programmstufen speichernde Register 92 mit 1. Programmstufenregister bezeichnet.
Eine Sammelleitung 94 führt vom I. Programmstufenrcgisler zu einem Komparator 96. dessen zweiter Eingang über eine Sammelleitung 98 mit dem Ausgang der Prioritätslogik-Schaltung 88 verbunden ist. Im Komparator 96 wird die jeweils im Register 92 eingestellte Programmstufe mit dem neu eingegangenen Programmstufen-Anforderungssignal aus der Prioritätslogik 88 verglichen. Der Komparator 96 liefert ein Ausgangssignal auf Leitung 100, wenn das Signal aus der Prioritätslogik 88 eine höhere Programmstufe anzeigt als im Programmstufenregister 92 eingestellt ist. Das Signal auf Leitung 100 konditioniert die UND-Schaltung 90, so daß das neue Programmstufen-Anfo'dcrungssignal über die Sammelleitung 89 und die UND-Schaltung 90 zum Programmstufcnrcgistcr 92 gelangen kann. Zuvor wurde über einen Leitungszweig 102 durch das auf Leitung 100 auftretende Ausgangssignal des Komparators 96 der bisherige Inhalt des Registers 92 gelöscht. Auf die detaillierte Arbeitsweise des Komparators 96 wird in Verbindung mit F i g. 6 näher eingegangen.
Der jeweilige Inhalt des Programmstufenregisters 92 dient zur Adressierung des Arbeitsspeichers 48 (Fig. 3B). Hierzu gelangt "der Inhalt des Registers 92 über eine Sammelleitung 104, eine Gruppe von UND-Schaltungen 106, eine Gruppe von ODER-Schaltungen 108 und eine Sammelleitung 110 zu Spaltcnadressierleitungen VO. Kl bis Yl des Arbeitsspeichers 48. Die Adressierleitung YO ist der Proerammstufe 0 zugeordnet, d. h.. diese Leitung steht über die genannten Schaltungsteile mit der eine Anzeige für die Programmstufe 0 speichernden Stufe 93 des Registers 92 in Verbindung, die jeweils dann in den F.inschaltzustand gebracht wird, wenn das Recister86 kein Programmstufcnanforderungssignal enthält. In der entsprechenden Weise sind die Adressierlcitunecn Vl bis Y 1 den Programmstufen PS 1 bis PSl zugeordnet.
Der Arbeitsspeicher 48 ist in acht spaltenförmige Bereiche ß0. Bl bis ß8 unterteilt. Jeder dieser Bereiche umfaßt acht Register K (70, RGl bis RGT, von denen jeder IH binäre Bitstellen aufweist. Der Speicher 48 ist in monolithischer Halbleitertechnik ausgeführt, wobei jede Bitspeicherstelle aus einer bistabilen Veriiegelungssiufe besteht. Die Adressierung aller Bitspeicherstufen eines Registers erfolgt parallel, indem die V-AdressicrleiUing des Bereiches, in welchem sich das Register befindet, mit allen Stufen der Register dieses Bereiches verbunden ist, und jeweils eine von acht A'-Adressierleitungen mit allen Bitspeichcrstellen der gleichgeordneten Register aller Bereiche verbunden ist. Eine jede Bitspeicherstelle eines Registers ist nur dann für eine Werteingabe oder Wertentnahme adressiert, wenn an ihr sowohl ein y-Adressicrsignal als auch ein Af-Adressiersignal anliegt. Zum Beispiel erfolgt eine Adressierung des Registers RG4 im Bereich Bl durch gleichzeitiges Anlegen eines Signals an die Adressierleilung Yl und an die Adressicrleitung XA.
Dem Arbeitsspeicher 48 werden Daten von einer ODER-Schaltung 114 über eine Sammelleitung 62 zugeführt. Die ODER-Schaltung 114 besteht aus einer Gruppe einzelner ODER-Schaltungen, von denen jede drei Eingänge aufweist. Einer dieser Eingänge ist mit einer zugeordneten UND-Schaltung in einer Gruppe von UND-Schaltungen 116, der zweite mit einer entsprechenden UND-Schaltung aus einer Gruppe von UND-Schaltungen 118, und der dritte Eingang ist mit einer entsprechenden UND-Schaltung aus einer Gruppe von UND-Schaltungen 120 verbunden. Über die UND-Schaltungen 116 werden dem Arbeitsspeicher 48 bei Auftreten eines Steuersignals »ASE ZU ASP« Daten von einer der Anschlußeinheiten 12 über die Sammelleitung 64 zugeführt.
Über die UND-Schaltungen 118 werden dem Arbeitsspeicher 48 bei Auftreten eines Steuersignals y>ALE ZU ASP« Daten von der arithmetisch-logischen Einheit 34 (F i g. 1) zugeführt. Über die UND-Schaltungen 120 gelangen bei Auftreten eines Stcucrsignals »MAR ZU ASP« Daten von der Inkremcntier Dekrcmentierschaltung 70 zum Arbeitsspeicher 48. Die genannten Steuersignale werden von der Operationssteuerschaltung 60 in für sich bekannter Weise in Abhängigkeit von den jeweiligen Ausgangssignalen des Operationsdccodierers 54 erzeugt. Die dem Arbreitsspeicher 48 zuzuführenden Daten gelangen über die Sammelleitung 62 parallel zu allen Bitspeichcrstellen des Speichers. Eine Einspeicherung findet jedoch nur in die Bitspeicherstellen des in der bcschric-
so benen Weise adressierten Registers RG statt.
Zur Datenentnahme aus dem Arbeitsspeicher 48 dient die Sammelleitung 66, die, wie beschrieben, mit dem Speicheradreßregister 28 (Fig. 1), dem Modifizieradreßregistcr 68, dem TDR-Operandenregister 3f und dem FDR-Operandenregister 42 über nicht dargestellte Torschaltungcn verbunden ist. Diese Tor schaltungen werden ebenfalls in für sich bekannte Weise durch den Operationssteuerteil 60 in Abhängig kcit vom jeweiligen im Operationsregister 52 (Fig. 6 stehenden Befehl veranlaßt. Obwohl die Sammel leitung 66 mit allen Bitstellen des Arbeitsspeichers 4! in Verbindung steht, erfolgt eine Datenentnahme stet nur aus den Bitstellen des gerade adressierten Regi stcrsRC;. Dementsprechend besitzt die Sammelleitun 66 wie auch die Sammelleitung 62 je 18 Adern.
Die .V-Adressierung des Arbeitsspeichers 48 erfolj durch den Operationsdccodierer 54 über eine Samme leitung 122 in Abhängigkeit vom jeweiligen Inha
des Operationsregisters 52. Die Sammelleitung 122 führt zu zn ei Gruppen von UND-Schaltungen 124 und 126. Die einander gleichgeordneten Adressensteilen im Ausgang dieser beiden Gruppen von UND-Schaltungen bilden den Eingang einer ODF.R-Schaltung in einer Gruppe von ODER-Schaltungen 128. Mit den Ausgängen dieser ODER-Schaltungen sind die Adressierleitungen AO, X1 bis Xl verbunden. Die Sammelleitung 122 enthält 16 Adern, die vom Operationsdecodierer 54 (Fig. I und 6) mit Adres- \o siersignalen beaufschlagt werden. Acht dieser Leitungen sind an die UND-Schaltungen 124 angeschlossen. Diese Signale bezeichnen die Adresse eines Registers RG, aus dem eine Datenentnahme während des betreffenden Befehlsausführungszyklus erfolgen soll. Die anderen acht Adern der Sammelleitung !22 führen zur UND-Schaltung 126 und dienen zur Definition der Adresse eines Registers RG, in welches während der Befehlsausführung Daten einzugeben sind. Die UND-Schaltungen 124 werden von einem Steuersignal »ASP ENTNAHME« konditioniert, und die UND-Schaltungen 126 werden von einem Steuersignal »ASP EINGABE« konditioniert. Beide Steuersignale werden vom Operationssteuerteil 60 der zentralen Verarbeitungseinheit in noch zu beschreibender Weise erzeugt. Die Adressierlcitung Xl ist zusätzlich mit einem A'-Adressengencrator 129 verbunden, der am Anfang eines jeden Uefchlszyklus wirksam gemacht wird zur Adressierung der Register RGO. Diese Register dienen im dargestellten Beispiel als Befehlsadrcsscnrcgister; sie werden deshalb nachstehend auch mit BAR bezeichnet.
Der Programmsiufcnzuordncr
Aus F i ti. 4 ist ersichtlich, in welcher Weise die Ansehlußeinheiten 12 den Programmstufen /'.Sl bis PSl zugeordnet sind. Wie bereits erwähnt, hat die Programmslufc PS7 die höchste Priorität und die Programmslufc PSQ die niedrigste Priorität. Die letzte Prügrammstufe ist dem jeweils in der zentralen Verarbeilungseinheit laufenden Verarbeitungsprogramm fest zugeordnet. Die Anschlußeinheilen 15 bis 22 sind entsprechend der Dringlichkeit, die die von ihnen ausgelösten Bedienungsani ordeiungen haben, auf die übrigen Programmstufen PSl PSl verteilt. Die Art der betroffenen Zuordnung ist aus der nachstehenden Tabelle ersichtlich.
Tabelle
Bezeichnung Art Pro-
Bczugsz. der der granim-
Anschlußcinheii Anforderung stiife
22 Knrteneinheit Drucken: Daten PSl
übertragung von
der Zentraleinheit
zur Karteneinheit
15 Platten Schreiben — PS β
speicher Lesen: Daten
übertragung von
Zentraleinheit zu
Platteneinheit und
umgekehrt
22 Karteneinheit Lesen — Lochen: PS 5
Datenübertragung
von Karteneinheit
zur Zentraleinheit
und umgekehrt
Tabelle ( Fortsetzung) Pro
Bezeichnung All gramm
Bezugs/. der der stufe
Anschlußeinheil Anforderung PS 4
16 Bandeinheil; 1 Schreiben — RS 4
17 Bandeinheit II Lesen: Daten PS 4
18 Bandeinheit: III übertragung von
der Zentraleinheit
zur betreffenden
Bandeinheit und
umgekehrt PSi
19 Drucker Drucken: Daten
übertragung von
Zentraleinheit zu
Drucker PS 2
20 Schreib Schreiben: Daten
maschine übertragung von
Zentraleinheit zu
Schreibmaschine PSl
21 Serialc Hin- Lesen: Daten
und Ausgabe übertragung vom
einheit, optischen Leser
z. B. optischer zur Zentraleinheit
Leser PSl
19 Drucker Papiertransport:
Stcucrinformation
von Zentraleinheit
zu Drucker PSl
20 Schreib Papierwagcn-
maschine stcuerung: Steuer
information von
Zentraleinheit zu
Schreibmaschine ' PSl
22 Kartencinheit PSl
15 Platten
speicher PSl
16 Bandeinheit I Fehler PSl
17 Bandeinheit Il markierung: PSl
IH Bandeinheit III Übertragung von PSl
19 Drucker Fehlcrdaten zur Pol
20 Schreib Zentraleinheit
maschine PSl
21 Optischer
Leser
Jede der Anschlußeinheiten 15 bis 22 von F i g. 4 ist über Anforderungsleitungen mit der betreffender Programmstufe im Register 86 verhunden. Zum Beispiel führt von der Karteneinheit 22 eine erste An forderungsleitung 132 ein Anforderungssignal »PS' ANF". das eine Umschaltung der Steuerung auf dii Programmstufe 7. also auf die Programmstufe mi der höchsten Priorität auslöst. Eine weitere Anfor derungsleitung 134 der Kartcncinheit 22 ist der Pro grammstufe PS 5 zugeordnet und führt das Sigm »PS5 ANFv. Schließlich ist eine dritte Anforderung; leitung 136 der Kartencinheit über eine ODER-Scha tung 138 mit einer Leitung PSl ANF verbunden. Di Anforderungsleitungen 132, 134 und 136 sind unte schiedlichen Funktionen in der Karteneinheit zugi ordnet. Auf der Anforderungsleitung 132 tritt jewei dann ein Signal auf, wenn die in der Karteneinhe vorgesehene Druckeinrichtung zum Abdruck ve
13 14
Daten auf der jeweils in Behandlung befindliche Programmstufenregister, Prioritätslogik und
Lochkarte eine neue Datengruppe benötigt. Diese Programmstufenvergleich
Anforderung hai eine hohe Dringlichkeit, da bei der
NichtVerfügbarkeit von Daten die Transporteinrich- Die F i g. 5 zeigt ein Blockschaltbild des Programmtungen in der Karteneinheit gestoppt werden müssen, 5 stufenregister-neu 86 sowie der an dieses angeschloswodurch für den Wiederanlauf kostbare Zeit ver- senen Prioritätslogik 88. Das Register 88 besteht aus lorengeht. Aus diesem Grunde ist das Drucken- 7 bistabilen Verricgelungsschaltungen FF, von denen Anforderungssignal auf Leitung 132 auf die Pro- jede einen Einstelleingang S, einen RückstelleingrammstufePS? geschaltet. Auf der Anfordcrungs- gang/?, einen 1-Ausgang und einen O-Ausgang aufleitung 134 tritt ein Steuersignal auf, wenn die Kar- io weist. Jede dieser Vcrriegelungsschaltungen ist einer teneinheit eine Lochkartenspalte gelesen hat und die der Programmstufen PSl bis PSl fest zugeordnet, gelesenen Daten zur zentralen Verarbeitungseinheit Zum Beispiel ist die Verriegelungsschallung 152 der übertragen werden sollen, oder wenn die Stanzein- Programmstufe PSl zugeordnet. Die Einstellung richtung der Karteneinheit eine Lochkartenspaltc ge- einer jeden der Verriegelungsschaltungen erfolgt locht hat und danach neue Daten für die Lochung 15 über eine von zwei UND-Schaltungen. Für die Verder nächsten Kartenspalte benötigt. Eine derartige ricgelungsschaltung 152 sind dies die UND-Schaltun-Lesen-Lochen-Anforderung hat eine geringere Dring- gen 154 und i56. Über die UND-Schaltung 154 wird lichkeit als die oben erläuterte Druckanforderung, das Signal PS 1 ANF von der Anfordcrungslcitung weshalb die Leitung 134 der Programmstule PSS 132 der Karteneinheit 22 bei Vorhandensein eines zugeordnet ist. Auf der Anforderungsleitung 136 tritt 20 Anforderungsabtragesignals auf Leitung 158 zur Vcrjeweils dann ein Signal auf, wenn die in der Karten- riegclungsschaltung 152 übertragen und dort geeinheit22 enthaltenen Fehlerprüfeinrichtungcn einen speichert. Über die UND-Schaltung 156 erfolgt eine Fehler in den Funktionseinheiten der Karteneinheit Einstellung der Verriegelungsschaltung 152 in Ab- oder in den zu lesenden, zu lochenden oder zu druk- hängigkeil vom Programm der zentralen Verarbeikenden Daten feststellen. In diesem Falle müssen von 25 tungscinheit. Dies geschieht durch einen im Operader Kartcncinheit entsprechende Fehlerdaten zur tionsregistcr 52 stehenden Befehl über den Opera-Zentraleinheit übertragen werden, die dort auch zur tionsdecodiercr 54 und die Leitung /'.V 7 EINST. Wie Erleichterung der Fehlersuche durch den Wartungs- die F i g. 6 zeigt, enthält der Decodierer 54 drei Teildienst aufgezeichnet werden. Das Fchlcrmarkicrungs- schaltungen 150, 151 und 153. Die Dccodierschaltung Anforderungssignal auf Leitung 136 hat eine sehr 30 150 empfängt den Operationscode aus dem Operageringe Dringlichkeit, da im allgemeinen Fehler nur tionsregistcr 52, decodiert diesen und liefert entvcrcinzelt auftreten, so daß genügend Zeit für einen sprechende Ausgangssignalc zur Operationssteuer-Abruf der Fehlerdaten durch die Zentraleinheit zur schaltung 60. Die Decodierschaltung 151 empfängt Verfügung steht. Die Anforderungsleitung 136 ist vom Operationsregister 52 die Regislcradrcsse, die deshalb der Programmstufe PS 1 zugeordnet, die die 35 der jeweils im Operationsregister stehende Befehl niedrigste Priorität von allen den Anschlußeinheiten enthält. Aus dieser Rcgistcradresse bildet die Dc-12 zugeordneten Programmstufen aufweist. codicrschaltung 151 die A'-Adresse zur Adressierung In der entsprechenden Weise sind Anfordcrungs- der Register des Arbeitsspeichers 48. Diese Adresse leitungen von den übrigen Anschlußeinheiten 15 bis gelangt über die Sammelleitung 122 zu den UND-21 entsprechend der obigen Tabelle mit den cinzcl- 40 Schaltungen 124 bzw. 126 in Fig. 3B. Die Dccodicrnen Programmstufen verbunden. Jede der Anschluß- schaltung 153 empfängt schließlich die Anschlußeinheiten besitzt eine Fchlermarkicrung-Anfordc- einhcitsadresse, die der im Befehlsregister 52 stehende rungsleitung, die über die UND-Schaltung 138 mit Befehl enthält. Aus dieser Adresse bildet die Dcder Leitung PSi ANF gekoppelt ist. In all den Fäl- codierschaltung 153 die Signale »PS I bis PSl len, wo mehrere Anschlußeinheiten einer Programm- 45 EINST«., die der Registereingangsschältung von stufe zugeordnet sind, wie im Falle der Programm- F i g. 5 zugeführt werden. Ein Steuersignal PS-Einstufe PSi und PS4, sind die betreffenden Anschluß- stellen von der Opcrationssteucrschaltung 60 auf einheiten mit Anzcigeschaltungcn ausgerüstet, die Leitung 160 dient zur Konditionierung der UND-durch ein Umschaltstcuerprogramm zur Idenlifizic- Schaltung 156 für die Übertragung der PS-EINST-rung der anfordernden Anschlußeinheit abgetastet 50 Signale zu den Verriegelungsschaltungen des Regiwerden. So weist jede der Anschlußeinheiten einen stcrs 86. Das Signal auf Leitung PSl EINST gelangt Fehlermarkierungsanzeiger FMA i40 auf. Die drei auch zu einer UND-Schaltung 162, deren Ausgang Bandeinheiten IfS, 17 und 18 besitzen je einen Band- mit dem Rückstellcingang der Verriegelungsschaleinheits-Anzeiger BEA 142. Der Drucker 19 besitzt tung 152 verbunden ist. Diese UND-Schaltung wird einen Drucksteuerungsanzeiger DSA 144, die Schreib- 55 für eine Signalübertragung konditioniert, wenn eine maschine einen Papierwagen - Steucrungsanzciger über ein PS Λ/VF-Signai zu einem früheren Zeitpunkt PSA 146 und der optische Leser 21 einen optischen eingestellte Verricgelungsschaltung des Registers am Lesen-Anzeiger OLA 148. Die Anzeiger 140, 142, Ende des die Anforderung erledigten Steucrprogramms 144, 146 und 148 sind bistabile Schaltungen, die zurückgestellt werden soll. Dies geschieht durch ein durch ein Signal auf der betreifenden Anforderungs- 60 PS-RSI -Signal auf Leitung 164, das eine Rückleitung in den EIN-Zustand geschaltet werden. Zum stellung der Verricgelungsschaltung 152 in den AusBeispiel wird der Fehlermarkicrungsanzeigcr 140 der Zustand veranlaßt, sofern kein Anforderungssignal Karteneinheit 22 durch ein von dieser auf der Anfor- für die Programmstufe P,S'7 von der Karteneinheit 22 derungsleitung 136 geliefertes Fehlermarkierungs- vorliegt. In diesem Falle ist auch die Leitung P37 Anforderungssignal in den EIN-Zustand geschaltet. 6S ANF signalführcnd, so daß ein Rückstcllsignal am Die Auswertung der in den Anzeigern 140, 142, 144, Ausgang der UND-Schaltung 162 erzeugt wird. Die 146 und 148 gespeicherten Informationen wird in Eingänge der übrigen Vcrriegelungsschaltungen des einem späteren Abschnitt beschrieben. Registers 86 sind in der gleichen Weise über UND-
S1D
Schaltungen an die entsprechenden Eingangs- und Steuerleitungen angeschlossen.
Die Ausgänge der VcrricgelungsschaHungen des Registers 86 führen zur Prioritätslogik 88, die aus einer Reihe von UND-Schaltungen, z.B. 166, besteht. Jede der Verriegelungsschaltungen der Programmstufen PSi bis PS 6 ist mit ihrem 1-Ausgang mit einer derartigen UND-Schaltung verbunden. Zur gleichen UND-Schaltung führen außerdem alle O-Ausgänge der ranghöheren Verriegelungsschaltungen des Registers 86. Zum Beispiel sind an die UND-Schaltung 168 der 1-Ausgan» der /\S3-Verriegelungsschaltung und die O-Ausgänge der Verriegclungsschaltungen PS 4, PSS, PS 6 und PSl angeschlossen. Die UND-Schaltung 168 liefert daher nur dann ein Ausgangssignal, wenn die Verriegelungsschaliting PS3 im !-Zustand und die Verriegelungsschaltungen/V> 4 bis/'S 7 alle im Aus-Zustand stehen. Das Ausgangssignal der UND-Schaltung 168 gelangt über eine Leitung PSRN 3 zum Programmslufenregister 92 oder dient auch in noch zu beschreibender Weise direkt zur Adressierung der Bereiche des Arbeitsspeichers 48. In der entsprechenden Weise werden die Ausgangssignalc der übrigen UND-Schaltunsen sowie .las 1-Ausgangssignal der Verriegelungsschaltung 152 verwendet. Eine zusätzliche UND-Schaltung 170 dient zur Erzeugung des Signals PSRN-O. wenn sich keine der Vcrriegclungsschaltungen des Registers 86 im Einschaltzustand befinden. Die Eingänge dieser UND-Schaltung sind mit allen O-Ausgängcn der Vcrriegelungsschaltungcn PS I bis RS'7 verbunden. Das Ausgangssignal PSRN-O wird über die zusätzliche Vcrricgclungsschaltiing 93 im Register 92 oder direkt zur Adressierung des Bereiches ßO im Arbeitsspeicher 48 verwendet. Dieser Bereich ist dem Vcrarbeilungsprogrnmm der Zentraleinheit zugeordnet und ist stets dann wirksam, wenn kein Anforderungssignal von den Anschlufkinhcitcn 12 vorliegt.
In Fig. 7 ist der Komparator 96 von Fig. 3 A dargestellt. Er enthält eine Gruppe UND-Schaltungen 172, von denen jede ein P.S7?/V-Signa! von der Prioritätslogik 88 (F i g. 5) und das O-Ausgangssignal der gleichrangigcn Verriegclungsschaltung im Programmstufcnrcgister 92 empfängt. Zum Beispiel werden der UND-Schaltung 174 das Signal PSRN-6 von der UND-Schaltung 166 und das Signal PS5 (\.PSR) von der betreffenden Vcrriegelungsschaltung des Registers 92 zugeführt. Die UND-Schaltung 174 liefert daher nur dann ein Signal, wenn der Schaltzustand der Verriegelungsschalturigcn PS6 in den Registern 86 und 92 voneinander abweicht. Die Ausgänge der UND-Schaltungen 172 sind mit einer ODER-Schaltung 176 verknüpft, deren Ausgang zu einer UND-Schaltung 180 führt. Am Ausgang der ODER-Schaltung 176 erscheint somit stets ein Signal »PSR UNGLEICH«, wenn der Inhalt des Registers 92 mit der am Ausgang der Prioritätslogik 88 angezeigten Programmstufe nicht übereinstimmt. Sofern die UND-Schaltung bei Vorliegen eines PSR-UN- GLEICH-Sigmxh über eine UND-Schaltung 182 ein Konditionierungssignal zugeführt erhält, wird eine bistabile Verriegelungsschaltung 184 in den Einstellzustand gebracht. Die Vcrriegelungsschaltung 184 liefert in diesem Zustand ein Signal »1. Programmstufenregister rückstellen« (1. PSR RST), aus dem über einen Inverter 186 ein Steuersignal »Programmstufenregister-alt einstellen« (]. PSR EINST) abgeleitet wird. Während das Signal »l.PSRRST« den Verriegelungsschaltungen des Programmstufenregisters 92 direkt zugeführt wird und diese vor Einstellung eines neuen Programmstufenwertes in den
Aus-Zustand zurückstellt, gelangt das Signal »1. PSR EINST« zu den UND-Schaltungen90 (Fig.3A) und konditioniert diese, so daß der am Ausgang der Prioritätslogik 88 vorliegende neue Programmstufenwert zu den Verriegelungsschaltungen des Registers
ίο 92 übertragen wird.
Der Rückstelleingang der Verriegelungsschaltung 184 ist mit einer UND-Schaltung 188 verbunden. Die Eingangssignale der UND-Schaltungen 182 und 188 werden von der Taktgeberschaltung geliefert, die im nächsten Abschnitt beschrieben wird. Aus dem Obigen ist ersichtlich, daß eine Änderung des Inhaltes des Registers 92 nur jeweils dann erfolgen kann, wenn im Register 88 ein Programmstufenwert eingestellt wird, der einen höheren Prioritätsrang als der im Register 92 bereits enthaltene Wert hat. Wird dagegen im Register 86 ein gegenüber dem Inhalt des Registers 92 rangniedrigerer Programmslufcnwert neu eingestellt, so bleibt durch die Wirkung der Prioritätslogik 88 der im Register 92 stehende Wert unver- ändert, solange die entsprechende Programmstufenmarkierung im Register 86 nicht gelöscht wird.
Taktgeber- und Steuerschaltungcn
Die F i g. 7 zeigt ein vereinfachtes Blockschaltbild der Taktgeberschaltung, die Teil der Operationsstcucrschaltung 60 (Fig. 1) ist und die Taktsignalc zum Betrieb der zentralen Verarbeitungseinheit 10 liefert. Die Schaltung weist einen Oszillator 192 auf, der kontinuierlich zeitlich versetzte Taktsignale A und B liefert. Diese Signale gelangen einerseits zu einer Kurzzeitzyklus-TaktgeberschuHuüg 194, die 8 verschiedene Taktsignale"KO, Kl, Rl, R3, WO, Wl, Wl und W2 erzeugt. Diese Taktsignale sind zeitlich gestaffelt, wie aus dem in F i g. 7 rechts oben dargestellten Impulsdiagramm ersichtlich ist. Die Taktsignale A und B aus dem Oszillator 92 gelangen außerdem zu verschiedenen Steuerschaltungcn im Operationssteuerteil 60. Die Impulse A und B treten synchron mit den Taktsignalen R und W auf, sind jedoch nur halb so lange wie diese.
Die Taktsignalleitungcn Wl und 1^3 der Taktgeberschaltung 194 sind mit einer Langzeitzyklus-Taktgebcrschaltung 196 verbunden, die Langzeitzyklus-Taktsignalc ZYK I, ZYK 1,ZYK3 und ZYK4 erzeugt. Jedes dieser Langzeitzyklus-Taktsignalc überdeckt zeitlich eine vollständige Serie der von der Taktgebcrschaltung 194 erzeugten Kurzzeitzyklus-Taktsignalc RO, R I, Rl, R3, WO, Wl, Wl, W3. Die Langzeilzyklus-Taktsignalc sind zueinander ebenfalls zeitlich gestaffelt» und am Ende eines jeden derartigen Signals liefert die Schaltung 196 einen kurzen Zyklus-Ende-Impuls 198. Die Taktgeberschaltung 196 ist mit einer Zyklus-SteucrschalUing 200 verbunden, die ihrerseits über eine Sammelleitung 202 mit der Openitionsdccodicrerschallung 150 (F i g. 6) in Verbindung steht. Die Zyklussteuerschaltung liefert in Abhängigkeit von dem jeweils im Operationsregister 52 stehenden Befehl über eine Sammelleitung 204 Überspring-Steuersignale zur Taktgeberschaltung 196. Durch diese Signale wird bewirkt, daß die Taktgebcrschaltung 196 in der zeitlichen Staffelung der Signale ZYKl, ZYK3 und ZYK 4 eines oder mehrere überspringt bzw. unter-
irückt. Dies geschieht deshalb, um bei Befehlen, die weniger als 4 Langzeitzyklen zu ihrer Ausführung aenötigen. unnötige Leerlaufzeit zu vermeiden. Zum Beispiel benötigt der an Hand von Fig. 11 noch näher zu erläuternde Befehl »Addiere Register zu Register« nur einen einzigen Langzeitzyklus, so daß die Langzeitzyklen 2 bis 4 unterdrückt werden können und unmittelbar nach Beendigung des Taktsignals ZYKl ein neues Taktsignal ZYKl erzeugt werden kann. Die Steuersignale, die zur Ausführung dieser Unterdrückung benötigt werden, werden von dem zu dieser Zeit im Operationssteueregister 52 stehenden Addieren-Befehl über die Operationsdecodiererschaltung 150 und die Zyklussteuerschaltung 200 erzeugt.
Die Schaltungen 200 und 196 sind in herkömmlicher Weise aufgebaut. Sie sind nicht Gegenstand vorliegender Erfindung, so daß der Einfachheit halber auf eine detaillierte Darstellung ihres Aufbaues verzichtet wurde.
Die F i g. 9 zeigt einen weiteren Teil der Operationssteuerung 60 der Zentraleinheit 10. Es handelt sich dabei um diejenigen Steuerschaltungcn, die zur Erzeugung der Steuersignale für den Betrieb der in F i g. 3 A und 3 B dargestellten Programmumschaltsteuereinrichtung benötigt werden. So wird das Steuersignal »ASP-ENTNAHME« zur Konditionierung der UND-Schaltung 124 (Fig. 3B) für die A'-Adressierung des Arbeitsspeichers durch eine ODER-Schaltung 208 gebildet bei Auftreten der Kurzzeitzyklus-Taktsignale «0, WO und WX. Das ASP-ENTN AH ME-S\g\vA wird außerdem noch bei Auftreten von Steuersignalen auf Eingangsleitungen 210 der ODER-Schaltung 208 erzeugt. Diese Steuersignale werden bei Vorliegen bestimmter Programmbefehle zu den Kurzzeilzyklus-Taktzeitcn R bzw. W in nicht dargestellter Weise iniOperationssieuertcil 60 gebildet. Eine ODER-Schaltung 212 liefert das Steuersignal λ Arbeitsspeicher-Eingabe« (ASP-EIN- GABE)IuY die UND-Schaltung 126 (F i g. 3 B), wenn an ihrem Eingang eines der Taktsignale "0, Rl, Rl oder Ri anliegt. Auch hier werden über Leitungen 214 zusätzliche Steuersignale in Abhängigkeit von bestimmten Programmhefehlen zugeführt. Dies geschieht zu einer der Taktzeiten R bzw. W. Das Zyklus-Ende-Ausgangssignal der Langzeitzyklus-Taktgcberschaltung 196 dient als Anforderungsabfragc-Signal, das der Leitung 158 in F i g. 5 zugeführt wird, um die I'ND-Schaltungen 154 am Eingang des Programmstufonrcgistcrs-neu 86 /.u konditioniercn. Durch dieses Signal werden die Anfordcrungsleitungcn von den Ansclilußeiiiheiten 12 auf das Vorliegen neuer Programmuinschaltanforderungen abgetastet. Das Konditionierungssiiinal \.PSR- AI)RFSSE wird von einer ODER-Schaltung 216 geliefert zu den Kurzzeitzykhis-Taktzeitcn Rl. Rl, R 3, WO, Wl, Wl, und' Wi. Dieses Signal dient zur Konditionierung der UND-Schaltungen 106 (Fig. 3A), um den Programmstufenwert aus dem Programmstufenregister-ait 92 über die Sanimelleitung HO zu den V'-Adressierungsleilungcn des Arbeitsspeichers 48 zu übertragen. Ein entsprechendes Steuersignal »2. PSR-ADRESSE« wird zur Taktzeit «0 erzeugt. Das Signal »2. PSR-ADRESSE« gelangt zu einer UND-Schaltung 107 und konditioniert diese für eine Übertragung des vom Ausgang der Prioritätslogik 88 gelieferten neuen Programmstufenwcrtes über die ODER-Schaiiung 108 und die Sammelleitung 110 zu den K-Adressierungsleitungen des Arbeitsspeichers 48.
Die Arbeitsweise der Programmumschalteinrichtung
Nachfolgend wird an Hand der Fig. 1OA, 103, 11, 13 A und 13 B die Arbeitsweise der erfindungsgemäßen Programmumschalteinrichtung erläutert. Es soll dabei zuerst auf das vereinfachte Impulszeitdiagramm von Fig. 1OA Bezug genommen werden. Dort ist der zeitliche Ablauf einer Programmumschaltung von der Programmstufe 0 auf die Programmstufc 6 und von da wieder zurück auf die Programmstufe 0 dargestellt. Es sei angenommen, daß die Zentraleinheit 10 mit einem Verarbeitungsprogramm beschäftigt ist, so daß die Programmstufe 0 wirksam ist. Im ProgrammsU'.fenregister 92 ist der Programmstufenwert 0 enthalten, während im Programmstufenregisler 86 alle Verriegelungsschaltungen im Auszustand stehen. Bei Auftreten der Steuersignale 1. PSR-ADRESSE wird daher der Programmstufenwert 0 übei die ODER-Schaltung 108 und die Sammelleitvng 110 (Fig. 3A) zur Adressicrungsleilung r0 des Arbeitsspeichers 48 (F i g. 3 B) übertragen. Es ist somit der Bereich B 0 adressiert, und bei Auftreten der Signale »AFI'-ENTN«, »ASP-EING«, werden über die A'-Adressierungsleitungen die von den Befehlen 1 bis 5 des Bearbcitungsprogrammes bestimmten Register dieses Bereichs adressiert. Während jedem ßefchlszyklus erfolgt in für sich bekannter Weise eine Inkrementierung der Befehlsadresse, die im Register RGd des Bereiches ß0 gespeichert ist. Es sei ferner angenommen, daß während des 5. Befehlszyklus des Bearbcitungsprogramms ein Programmumschalt-Anfordcrungssignal »PS 6 ANl-'« von der Plattencinhcil 15 (Fig. 4) erzeugt wird. Dieses Signal wird durch das jeweils am Ende eines Befehlszyklus auftretende Anforderungs-Abfragesignal abgelastet und im Programmstufenregister 86 gespeicheil. Bei dem folgenden Vergleich des Inhaltes des Programmstufenregisters 92 mit dem des Registers 86 wird eine Nichtübereinstimmung festgestellt, die durch ein PSR-UNGLEICH-SignvA vom Ausgang der ODER-Schaltung 176 (Fig. 6) angezeigt wird. Bei dem nächsten zur Taktzeit Rl auftretenden Signal /'.S'-Umschalten wird der Inhalt des Registers 86 in das Register 92 übernommen, so daß ab diesem Zeitpunkt "durch die folgenden Steuersignale 1. PSR- ADRESSE nicht mehr der Programmstufen wert 0, sondern der Programmstufenwert 6 zu den V-Arcssierleitungen des Arbeitsspeichers 48 übertragen wird. Hierdurch erfolgt eine Adressierung des Bereiches Ii 6. Im folgenden wird somit nicht mehr die Befehlsadresse aus dem Bereich/?0 für die Entnahme des nächsten Befehls aus dem Hauptspeicher 26 benutzt, sondern die in das entsprechende Register I) 6 zu einem früheren Zeitpunkt eingestellte Adresse des ersten Befehls des Steuerprogramms der Plattcneinhcit 15. Es handelt sich dabei um den Befehl 22. Die Fin. K)B zeigt schematisch die Anordnung des Bearbcitungsprogramms und des Sleuerprogramms für die Plattenemhcit im Hauptspeicher 26. Während der folgenden Bel'ehlszyklen werden nunmehr die Befehle 22, 23. 24, 25 und 26 des Steuerprogramms der Platteneinheit ausgclührt. Der Befehl 26 ist der letzte Befehl dieses Stcuerprogntmms. Dieser Befehl bewirkt eine Rückumsehaltung auf die Programmstul'e 0, indem er veranlaßt, daß der Operationssteuerteil 60 (F ig. 1) ein Rüekstellsignal PS-RST auf
935
Leitung 164 (Fig. 5) und gleichzeitig ein Signal auf Leitung PS 6 EJNST erzeugt. Da zur Zeit des Befehls la d2s Auforderungssignal &PS6ANF« nicht mehr vorliegt, so daß also am Eingang der UND-Schaltung 155 auch das Signal PS6/INF anliegt, wird die Verriegelungsschaltung 153, die bis dahin den Programmstufenvvert 6 gespeichert hatte, gelöscht. Da keine weiteren Verriegelungsschaltungen des Registers S6 im Einschaltzustand waren, erzeugt nun die UND- Schaltung 170 ein Ausgangssignal PSRNO. Der Komparator stellt daraufhin eine Ungleichheit der Programmstufenwerte in den Registern 86 und 82 fest und beim nächsten Signal »PS-UMSCH ALTEN« von der UND-Schaltung 182 wird das Register 92 auf den Programmstufenwert 0 umgeschaltet. Damit wird am Beginn des nächsten Befehlszyklus der Bereich ßO im Arbeitsspeicher 48 adressiert, womit nun wieder die Befehlsadresse aus dem Befehlsadressenregister dieses Bereiches für die Entnahme des nächsten Befehles aus dem Hauptspeicher 26 wirksam wird. Es handelt sich dabei um den (S. Befehl des Bearbeilungsprogramms, das nun in der normalen Weise weitergeführt wird.
Da die Programmstufe 6 tier Plattcnspeichercinhcit 15 allein zugeordnet ist, kann die im Befehlsadressenregister BAR des Bereiches B6 stehende Befehlsadresse die Adresse des ersten Befehles des Steuerprogramms sein, das die Anforderung der Platteneinheit 15 behandelt. Zum Beispiel kaü.n das Steuerprogramm der Programmstufe 6 die Übertragung eines im Plattenspeicher 15 gelesenen Datenwortes zur Zentraleinheit 10 bewirken. Sofern jedoch einer Programmstufe mehrere Anschlußeinheiten zugeordnet sind, bezeichnet die im Befehl der Adressenregister des betreuenden Arbeitsspeicherbereiches stehende Befehlsadresse den ersten Befehl eines Umschaltstcuerprogramms, welches durch Abtastung der Anzeigcschallungen. z. B. 140. feststellt, von welcher Anschiußeinheit die Anforderung ausgehl. Dies trifft z. B. für die Programmstufe 1 zu, welche 4" auf eine Datenübertragungsanforderung vom optischen Leser 21, auf Steuersignalanfordcrungcn vom Drucker 19 und von der Schreibmaschine 20 sowie auf Fehlermarkicrungsanforderungen von allen der Anscblußeinheiten 15 bis 22 wirksam wird.
Die Fig. 11 zeigt eine vereinfachte Darstellung des Umschallsteuerprogramms für Programmstufe 1. Dieses Programm wird wirksam, wenn als Folge einer Programmumschaliung der Bereich B1 des Arbeitsspeichers adressiert worden ist. Der am Beginn des nächsten Bcfchlszyklus mit der im Befchlsadressenregister BAR des Bereiches/JO enthaltenen Befehlsadresse aus dem Hauptspeicher 96 entnommene Befehl ist der erste Befehl des Umsehaltslcuerprogramms Tür die Programmstufe 1. Innerhalb dieses Programms wird als erstes die Drucksteuerungsanzeigeschaltung 144 auf ihren Einstellzusland abgetastet. Befindet sich diese bislabile Schaltung im 1-Zustand, so verzweigt das Umschallsteuerprogramm zum ersten Befehl einer Drucksteuerung*- 6« routine, die auf die Anforderung des Druckers 19 eingeht und beispielsweise einen Papieriransport auslöst. Befindet sich dagegen die Anzeigeschaltung 144 im Schaltzustand 0, so wird als nächstes eine Abtastung des Papierwagensteiieran/.eigers 146 der Schreibmaschine 20 vorgenommen. Im Falle eines 1-Schaltzustandes dieser bistabilen Schaltung findet eine Verzweigung zu einer Schreibmaschinensteuerungsroutine statt, die auf die Anforderung der Schreibmaschine eingeht und die notwendigen Steueroperationen für den Papierwagen einleitet. Im Falle eines 0-Zustandes der Anzeigeschaltungen 146 wird als nächstes die Optische-Leser-Anzeigeschäitung 148 auf ihren Schaltzustand abgetastet. Wieder um erfolgt im Falle, daß diese Anzeigeschaltung eine 1 enthält, eine Verzweigung zum Steuerprogramm des optischen Lesers 21, das eine Übertragung eines gelesenen Datenwortes zur Zentraleinheit veranlaßt. Bei einer 0 schreitet das Umschaltsteuerprogramm weiter zur Abtastung der Fehlermarkierungsanzeiger FMA. Als erstes wird der Fehlermarkierungsanzeiger 140 der Karteneinheit 22 abgefragt. Befindet sich dieser im Aus-Zustand, so werden in der gleichen Weise nacheinander alle übrigen Anzeigeschaltungen FMA abgefragt. Befindet sich eine dieser Anzeigeschaltungen im 1-Zustand, so erfolgt eine Verzweigung zum ersten Befehl einer Fehlermarkierungsroutine, die eine Übertragung von Fehlermarkierungsdaten von der betreffenden Anschlußeinheit zur Zentraleinheit bewirkt. Die Verzweigungen zu den einzelnen Steuerroutinen erfolgen in einer Weise, wie sie bei Datenverarbeitungsanlagen zur Ausführung bedingter Verzweigungen allgemein bekannt sind. Am Ende einer jeden Steuerroutir.e findet eine Verzweigung zu einem Rückstellbefehl 222 statt, der die Programmstufenmarkierung PSl im Register 86 in der beschriebenen Weise löscht. Die Daten der verschiedenen Steuerroutinen, wie Hauptspeicheradressen, Feldlängenangabcn u. dgl. können im gleichen Arbeitsspeicherbereich, für das Umschaltsteuerprogramm von Fig. Il also im Bereich Bi, gespeichert werden.
In der gleichen Form weist auch die Programmstufe 4 ein Umschaltsteuerprogramm für die Identifizierung einer Anforderung von einer der Bandeinheiten 16, 17 und 18 auf.
Im folgenden soll an Hand der Fig. 13 A und 13 B ein Beispiel für die einzelnen Operationen erläutert werden, die vor und nach einer Programmumschaltung unter Verwendung der jeweils adressierten Bereiche B des Arbeitsspeichers ausgeführt werden. Hierzu sind untereinander als langgezogene Rechtecke der Hauptspeicher 26 zusammen mit dem Speicherdatenregister 30, das Operandenregister 38, das Operandenregister 42, die arithmetische und logische Einheit 34, der Arbeitsspeicher 48, das Modilizicradressenregistcr 68, das Spcichcradressenregister 28 sowie der Datenkanal von und zu den Anschlußeinheiten 12 (Sammelleitung 64 in Fig. I) dargestellt. Am oberen Rand der Fig. 13A und 13B sind die jeweils auszuführenden Befehle sowie die Programmstufe, in welcher diese Befehle auszuführen sind, eingetragen. Darunter sind die Kurzzcilzyklus-Takte angegeben (F i g. 8), zu denen die verschiedenen Operationen in der Zentraleinheit ausgeführt werden. Am unleren Rand der Fig. II A und 11 B sind die V'-Adressen bezeichnet, mit denen während den einzelnen Kurzzeitzyklus-Takten der Arbeitsspeicher 48 adressiert wird.
In den Fig. 11 A und MB ist die nachstehende Befehlsfolge veranschaulicht:
1. Addiere Inhalt von Register I zum Inhalt vor
Register 2.
2. Übertrage Datcnbilgruppe von Karlcneinhei zum Hauptspeicher.
3. Programmslufe PSS rückstellen.
4. Subtrahiere Inhalt des Registers 3 vom Inhalt des Registers 2.
In dieser Befchlsfolge sind die Befehle 1 und 4 Befehle der Programmstufe 0, d. h.. sie gehören dem in der Zentraleinheit laufenden Bearbeitungsprogramm an. Der Befehl 2 ist ein Befehl der Programmstufe S und bezieht, sich auf eine Datenübertragung von der Kartencinheit 22 zur Zentraleinheit. Der Befehl 3 gehört ebenfalls noch der Programmstufe 5 an und dient zum Löschen der Programmstufenmarkierung PSS und damit zur Umschaltung der Steuerung auf eine rangniedrigere Programmstufe. Die Befehle 2 und 3 sind Teile des Steuerprogramms, das in der Programmstufe 5 zur Bedienung der Karteneinheit 22 läuft.
Am Beginn des Befehls »Addiere RG1 zu RG1« zur Taktzeit RO wird durch die A'-Adresscngeneratorschaltung 129 (Fig. 3B) die Befehlsadresse aus dem über die Leitung KO adressierten Bereich ßO entnommcn und zum Speichcradresscnrcgislcr 28 übertragen. Gleichzeitig wird diese Adresse in das Modifizicradressenrcgister 68 gebracht. Der über das Speicheradressenregister 28 im Hauptspeicher adressierte Befehl wird zur Taktzeit R 2 aus dem Hauptspeicher übernommen und in das Speicherdatenregister 30 eingegeben. Von dort gelangt er zur Taktzeit/i 3 in das Operationsregister 52. Zur gleichen Zeit wird auch die Befehlsadresse aus dem Modifizieradrcsscnregistcr 68 in der Inkremcntier/Dckrcmentierschaltung 70 um 2 erhöht und in das Befchlsadressenregistcr des Arbcitsspcichcrbcreiches ßO übertragen. Auf Grund des im Operationsregister 52 stehenden Addieren-Befehls liefert der Opcrationsdecodicrcr 54 die entsprechenden Steuersignale zu der Operationsstcuerschaltung 60, welche zu den Taktzeiten IfO den Inhalt des Registers 1 im Arbeitsspeicherbcrcich BO zum Operandenregister 42 und zur Taktzeit W\ den Inhalt des Registers 2 des gleichen Arbeitsspeicherbereiches zum Operandenregister 38 überträgt. Daraufhin wird der Inhalt beider Operandenregister zur Taktzeit Wl der arithmetischen und logischen Einheit 34 zugeführt, die von der Operationssteuerschaltung 60 zur Ausführung einer Addition gesteuert wird. Diese Addition dauert noch an, wenn zur Taktzeit If 3 der laufende Befehlszyklus zu Ende geht. Während des Addieren-Befehls ist ein Lesen-Anfordcrungssignal von der Karteneinheit 22 aufgetreten, das mit dem Anforderungsabfragesignal auf Leitung 158 am Ende dieses Befehls als P55-Markierung in das Programmstufenregister 86 eingegeben wird. Das Register 86 enthält daher am Ende des Addieren-Befehlszyklus einen anderen Programmstufenwert als das Programmstufenregister 93. Es wird deshalb zur Taktzeit R 2 des nächsten Befehlszyklus eine Programmstufcnumschaltung vorgenommen, wie sie in Verbindung mit Fi g. 9 A erläutert wurde. Dessen ungeachtet wird jedoch bereits im Takt R θ der von der Prioritätslogik 88 angezeigte neue Programmstufenwert zur y-Adressierung des Arbeitsspeichers 48 benutzt. Dies geschieht unter Wirkung des Steuersignals »2. PSR- ADRESSE«, durch das die UND-Schaltung 107 konditioniert wird, wodurch das Ausgangssignal »PSRN 5« von der Prioritätslogik direkt zur Adressierleitung YS des Arbeitsspeichers 48 übertragen wird. Das zur gleichen Taktzeit RO durch die A'-Adressengcneratorschaltung 129 adressierte Bcfchlsadressenregister ist somit das Befehlsadressenadressenregister des Bereiches B5. Durch den Inhall dieses Registers wird der Befehl »ÜBERTRAGE VON KA ZU HSPk über das Speicheradressenrcgister 28 im Hauptspeicher 96 aufgerufen. Dicsei Befehl gelangt zur Taktzeit/?2 zum Speicherdatcnlegister 30 und zur Taktzeit R 3 in das Operationsregister 52. Zur Taktzeil R 0 des zweiten Bcfehlszyklus wurde außerdem die Adresse aus dem BAR zum Modifizicradressenregistcr 68 übertragen.
Die Taktzeit/?2 des zweiten Bcfehlszyklus ist der Resultatabspeicherung des ersten Bcfehlszyklus zugeordnet. Zu dieser Zeil wird das Resultat des vorausgehenden Additionsbefehlcs am Ausgang der arithmetischen und logischen Einheit 34 und wird zum Register 2 im Bereich BQ des Arbeitsspeichers 48 übertragen. Der Arbeitsspeicher wird hierzu über den noch im Programmstufcnrcgisler 92 stehenden Programmslufenwcrt 0 adressiert, der durch das Steuersignal 1. PSR-ADRESSE von der UND-Schaltung 216 (Fig. 8) zur Adressierlcitung YO des Arbeitsspeichers 48 übertragen wird. Die X-Adressicrung des Arbeitsspeichers geschieht über die aus dem vorangegangenen Befchlszyklus noch im Operationsregister 52 stehende A'-Adresse. Am Ende des Taktes Rl erfolgt die Übertragung des neuen Programmstufenwcrtcs in das Register 92, so daß während der Taktzeit R 3 der Bereich BS des Arbeitsspeichers adressiert wird, wenn die um 2 inkrcmenticrlc Adresse zum Befehlsregister dieses Bereiches zurückgebracht wird. Zur Zeit WO gelangt die von der Kartencinheit 22 zum Dalcnkanal 64 gelieferte Datenbitgruppe in das Operanden! egisler 38. von wo sie zur Taktzeit WI zur arithmetischen und logischen Einheit 34 geleitet wird. Zur gleichen Taktzeit wird das Register RG6 des Bereiches BS des Arbeitsspeichers über die UND-Schaltung 124 adressiert. Im Register RG6 steht die Adresse des Hauptspcicherplatzcs. auf den die Daten von der Plattencinheil zu über!ragen sind. Diese Adresse wird vom Register RG 6 in das Spcichcradrcssenrcgistcr 28 gebracht und außerdem auch in das Modifizicradressenregistcr 68 übertragen. Während der folgenden Taktzcitcn werden die empfangenen Daten über die arithmetische und logische Einheit 34, die zu diesem Zweck zur Ausführung der Operation EXKLUSIVODER gesteuert wird, zur Sammelleitung 36 geführt. Zur Taktzeit H-O des zweiten Langzeitzyklus des Übertragen-Befehls erscheinen diese Daten am Ausgang der Einheit 34 und werden über die Treiberschaltungen 32 in den Hauptspeicher 26 eingeschrieben. Zuvor wurde zur T;iktzcit R 1 des zweiten Langzeitzyklus die um 1 inkrementierte Datenadresse zurück zum Register RG 6 des Bereiches BS des Arbeitsspeichers übertragen. Mit Ablauf seines zweiten Langzeitzyklus endet der Befehl »ÜBERTRAGE VON KA ZU HSP«.
Am Beginn des folgenden Befehls erfolgt die y-Adressierung des Arbeitsspeichers 48 wiederum direkt von der Prioritätslogik 88 in Abhängigkeit vom Inhalt des Registers 86. Da dieses nach wie vor eine Markierung für die Programmstufc 5 enthält, wird zur Taktzeit RO die Adrcssicrungsleitung Y 5 wirksam. Der nächste aus dem Hauptspeicher zu entnehmende Befehl ist daher ein Befehl der Programmstufe 5. der Teil des mit dem vorausgehenden Befehl aufgerufenen Steuerprogramms ist. Es handelt sich dabei um den Befehl ^PROGRAMMSTUFE PSS
RÜCKSTELLEN«. Dieser Befehl wird zur Taktzeit R 2 dem Hauptspeicher entnommen und zur Taktzeit R 3 in das Operationsregister 52 eingegeben. Zur gleichen Taktzeit wird die Befehlsadresse, die zur Zeit WO aus dem Befchlsadrcssenregister BAR des Arbeitsspcichcrbereichcs WS zum Modifizieradressenregistcr 68 übertragen worden war, um zwei inkremcnticrt in das gleiche ß/1/i-Register zurückgeschrieben. Während der folgenden Taktzeit Wl wird von der Operationssteucrschallung das Signal PS-RST auf Leitung 164 erzeugt. Dieses Signal bewirkt, daß das zur gleichen Zeit vom Operationsregister 52 über die Anschlußeinheit-Adrcssendecodierschallung 153 an der Registercingabcschaltung84 anliegende Signal PSS EINST anliegende Signal zum Rückstellcingang der Verriegelungsschaltung 161 übertragen wird. Hierdurch wird die Programmstufenmarkierung für die Programmstufe PS5 gelöscht. Da das Programmstufenregister 86 nun keine weitere Programmstufcnmarkicrung enthält, wird über die UND-Schaltung 170 ein Signal PSRNO erzeugt. Durch den Komparator 96 wird die Ungleichheit im Inhalt der Register 92 und 86 festgestellt, wodurrch eine Umschaltung des Inhaltes des Registers 92 vom Programmstufenwert PS5 auf den Programmstufenwerl PSO eingeleitet wird.
Am Anfang des nächsten Bcfehlszyklus wird mit dem Ausgangssignal der UND-Schaltung 170 über die UND-Schaltung 107, die ODER-Schaltung 108 und die Sammelleitung 110 die Adrcssierleitung Y 0 des Arbeitsspeichers 48 signalführend. Zur Zeit/?0 dieses Befehlszyklus wird daher die Befehlsadresse aus dem ß/l/i-Rcgistcr des Arrbeitsspeicherbereichs BO zur Entnahme des Befehls »SUBTRAHIERE RG3 VON /«72« benutzt. Es handelt sich dabei um einen Befehl der Programmstufe 0. Nachdem zur Zeit R 3 dieses Befehls auch das Programmstufenrcgister 92 auf den neuen Programmstufenwcrt umgeschaltet worden ist, werden zu den Zeilen WO und W\ die Inhalte der Register 3 und 2 des ArbcitsspcicherbereichsßO zu den Operandenregistern 38 bzw. 42 übertragen. Der Arbeitsspeicher erhält hierbei über die UND-Schaltung 106 die K-Adresse FO und von der Registeradressendecodicrschaltung 151 über die UND-Schaltung 124 die ^-Adressen X 3 und Xl. Zur Zeit Wl beginnt durch Übertragung der Operanden aus den Registern 38 und 42 zur arithmetischen und logischen Einheit 34 die Subtraktionsoperation, deren Resultatabspeicherung in der beschriebenen Weise erst während des folgenden Bcfehlszyklus erfolgt.
Durch die Überlappung der einzelnen Bcfehlszyklen bei der Benutzung des Arbeitsspeichers in unterschiedlichen Programmstufen wird ein zusätzlicher Zeitvorteil erhalten. Am Anfang eines jeden Befehlszyklus erfolgt die Bereichsadressierung des Arbeitsspeichers unter Verwendung des neuen Programmstufenwertes, wodurch die Entnahme eines dei betreffenden Programmstufe angehörenden Befehls aus dem Hauptspeicher eingeleitet wird. In der Zeil, die für diese Entnahme benötigt wird, können jedoch noch abschließende Operationen des vorausgehenden einer anderen Programmstufe angehörenden Befehl; ausgeführt werden. Zu diesem Zweck erfolgt in dei beschriebenen Weise die Bcrcichsadrcssierung während der Taktzeiten R 1 und R 2 durch den bis dahir noch unveränderten alten Programmstufenwert in' Register 92.
Hierzu 12 blatt Zeichnungen

Claims (7)

Patentansprüche:
1. Programmumschalteinrichtung für Datenverarbeitungsanlagen mit mehreren Anschlußein- S heiten, wie Ein- und Ausgabeeinheiten und/oder peripheren Speichereinheiten, mit einer zentralen Verarbeitungseinheit, die einen Hauptspeicher zur Aufnahme wenigstens eines Verarbeitungsprogramrns und mehrerer den Anschlußeinheiten zugeordneter Steuerprogramme sowie zur Speicherung der zu verarbeitenden Daten aufweist, mit einem schnellen Arbeitsspeicher zur Aufnahme der jeweils in Behandlung befindlichen Operanden und Operandenadressen, der in Bereiche unterteilt isi, von denen jeder die beim jeweiligen Stand eines Verarbeitungs- oder Steuerprogramms benötigten Daten, wie Befehls- und Operandenadressen, Operanden, Teilresultate. Wortlängenangaben usw., enthält und die entsprechend einer vorgegebenen Vorranganordnung über eine Programmumschaltsteuerung auf Anforderung durch eine der Anschlußeinheiten oder durch das Verarbeitungsprogramm einzeln auswählbar sind, dadurch gekennzeichnet, daß eine Bereichsadressierschaltung des Arbeitsspeichers aus einer zweistufigen Registerschaltung (92. 86) besteht, von der die erste Stufe (92) zur Speicherung des zur Bereiehsadressierung verwendeten Bereichsadressenwertes und die zweite Stufe (86) zur Speicherung aller von den Anschlußeinheiten eingehenden Programmumschalt-Anforderungen dient, und daß eine Ubertragungssteuerschaltung (88, 96) vorgesehen ist. die die erste Stufe entsprechend der ranghüchsten der in der zweiten Stufe enthaltenen Allforderungsmarkierungen einstellt, wenn diese eine andere als die in der ersten Stufe stehende Bereichsadresse bezeichnet.
2. Hinrichtung nach Anspruch 1. dadurch gekennzeichnet, daß die erste Stufe (92) der Bereichsadressierschaltung eine zusätzliche Speicherstelle (93) aufweist, die durch die Ubertragungssteuerschaltung (88, 96) stets dann in den l-.iiischaltzustand gebracht wird, wenn in der /weiten Stufe keine Programmumschaltanforderung gespeichert ist. und daß die zusätzliche Speichersteile zur Erzeugung der Adresse (VO) des Arbeitsspeicherbereiches (IH)) dient, der dem Verarbeiiungsprogramm zugeordnet ist.
3. Einrichtung nach den Ansprüchen ! und 2. dadurch gekennzeichnet, daß das erste Programmstufenregister (92) den Programmslufenwert des laufenden Programms enthält und als Adressierungsregisler für den Arbeitsspeicher (48) dient, indem jeder Programmstufenwert eine Bereichsadresse des Arbeitsspeichers bezeichnet, daß das zweite Programmstufenregislcr (86) zur Aufnahme aller von den Anschlußeinheiten (12) eingehenden Programiiiumschal tan f orderungen dient, die bestimmten Programmstufen fest zu- fio geordnet sind, daß zwischen die beiden Register die Prioritätslogik (88) geschaltet ist. die jeweils nur die höchsten der im /weiten Programmstufenregister eingestellten Anforderungsmarkierungen anzeigt, und daß der Komparator (96) die von der Priorilätslogik angezeigten Anforderungsmarkierungen mit dem Inhalt des eisten Programmslufenregisiers vergleicht und bei Ungleichheit eine Umschaltung dieses Registers auf den von der Prioritätslogik angezeigten Programmstufenwert einleitet.
4. Einrichtung nach einem der Ansprüche i bis 3, dadurch gekennzeichnet, daß über eine Befehlsdecodierschaltung (54) der Zentraleinheit eine vom jeweiligen Programmbefehl bezeichnete Programmstufenmarkierung in das zweite Programmstufenregister einstellbar oder eine zu einem früheren Zeitpunkt dort durch eine nicht mehr vorliegende Programmumschaltanforderung von einer der Anschlußeinheiten (12) eingestellte Markierung auslöschbar ist.
5. Einrichtung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Prioritätslogik (88) unter Umgehung des 1. Programmstufenregisters (92) über Torschaltungen (107) mit den Bereichsadressierungsleitungen (Y) des Arbeitsspeichers (48) verbunden ist, daß die Torschaltungen (107) jeweils am Anfang eines Befehlszyklus zur Adressierung eines neuen Arbeitsspeichcrbcreichcs gesteuert werden, während in einem späteren Teil des gleichen Befehlszyklus nochmals der im ersten Programmstuienregister (92) stehende alte Programmstufenwert zur Bereichs'idressierung benutzt wird, um einzelne Operationen des vorangegangenen Befehls zu Ende zu führen, und daß die Umschaltung des ersten Programmstufenregisters auf einen neuen Programmstufenwert erst nach diesem Teil des Befehlszyklus erfolgt.
6. Einrichtung nach einem der Ansprüche 1 bis 5. dadurch gekennzeichnet, daß einem Arbeitsspeicherbereich (IH). HI bis IiI) mehrere der Anschlußeinheiten (12) zugeordnet sind, daß die Anschlußeinheiten für jede Anl'orderungsleitung (136) die mit anderen Anforderungsleitungen zur gleichen Programmstufe vereinigt sind, einen Anforderungsanzeiger (140) enthalten, und daß ein Register in dem dieser Programmstufe zugeordneten Arbeitsspeicherbereich die Anfangsadresse eines Umschaltsteuerprogramms enthält, das durch Abfrage der Anforderungsanzeiger die anfordernde Anschlußeinheit ermittelt und das zur ßedienuPii dieser Einheil vorgesehene Steuerprogramm zur Wirkung bringt, während andere Register des gleichen Arbeitsspeicherbereiches Daten der verschiedenen Stcuerprogramme enthalten.
7. Einrichtung nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß von einer Anschlußeinheit (22) Anforderungen (132, 134) zu mehreren Programmstufen führen und daß für jede dieser Programmstufen im zugeordneten Arbeitsspeicherbereich (B0, BX bis Bl) die Adressierungsdaten fur den ZugrilT zu einem Stcuerprogramm enthalten sind, das zur Ausführung der von den AnschlulJeinheiten gelordertcn unterschiedlichen Operationen dient.
DE19691935258 1969-07-11 1969-07-11 Programmumschalteinrichtung für Datenverarbeitungsanlagen mit mehreren AnschluBeinheiten Expired DE1935258C3 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE19691935258 DE1935258C3 (de) 1969-07-11 Programmumschalteinrichtung für Datenverarbeitungsanlagen mit mehreren AnschluBeinheiten
JP4813970A JPS5624300B1 (de) 1969-07-11 1970-06-05
CA087838A CA932471A (en) 1969-07-11 1970-07-10 Program switching unit for multi-attachment data processing systems
GB3350570A GB1313951A (en) 1969-07-11 1970-07-10 Data processing systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19691935258 DE1935258C3 (de) 1969-07-11 Programmumschalteinrichtung für Datenverarbeitungsanlagen mit mehreren AnschluBeinheiten

Publications (3)

Publication Number Publication Date
DE1935258A1 DE1935258A1 (de) 1971-01-14
DE1935258B2 DE1935258B2 (de) 1973-05-17
DE1935258C3 true DE1935258C3 (de) 1976-02-05

Family

ID=

Similar Documents

Publication Publication Date Title
DE1499182C3 (de) Datenspeichersystem
DE1424732C3 (de) Einrichtung zum gegenseitigen Austausch von Angabenwörtern zwischen einem unmittelbar zugänglichen Hauptspeicher eineT Ziffernrechenmaschine und einem an diese angeschlossenen Sekundärspeicher vergleichsweise längerer Zugriffszeit
DE1474062B2 (de) Datenverarbeitungsanlage mit einer anzahl von pufferspeichern
DE1499206C3 (de) Rechenanlage
DE1774870C3 (de) Einrichtung zur Adressierung einer Speicherzelle eines Speichers in einer Datenverarbeitungsanlage
DE1524111C3 (de) Elektronische Datenverarbeitungsanlage
DE2363846A1 (de) Verfahren zum steuern des transfers von daten zwischen einem speicher und einem oder mehreren peripheren geraeten und nach diesem verfahren arbeitende datenverarbeitungsanlage
DE2350229A1 (de) Datenverarbeitungsanlage, insbesondere als steuereinrichtung fuer fernsprechvermittlungsanlagen
DE2245284A1 (de) Datenverarbeitungsanlage
DE2221926C3 (de) Datenverarbeitungsanlage mit wenigstens einem in Verbindung mit mehreren Peripheriegeräten stehenden Prozessor
DE2704560C2 (de) Datenverarbeitende Anlage mit paralleler Bereitstellung und Ausführung von Maschinenbefehlen
DE2530887C3 (de) Steuereinrichtung zum Informationsaustausch
DE1935258C3 (de) Programmumschalteinrichtung für Datenverarbeitungsanlagen mit mehreren AnschluBeinheiten
DE2500841A1 (de) Verfolgungseinrichtung
DE1163579B (de) Steuerwerk einer digitalen programmgesteuerten Rechenmaschine
DE1474090B2 (de) Datenverarbeitungsanlage
DE1524264C3 (de) Einrichtung zur Erzeugung einer Bildaufzeichnung
DE2735874C2 (de)
DE2402875A1 (de) Steuersystem, insbesondere fuer verriegelungseinrichtungen fuer den eisenbahnbetrieb
DE1914576C3 (de) Programmgesteuerte Datenverar beitungsanlage, insbesondere fur die Abwicklung von Vermittlungsvorgangen in einer Fernsprechvermittlung
EP0026460A1 (de) Schaltungsanordnung zum Adressieren von Daten für Lese- und Schreibzugriffe in einer Datenverarbeitungsanlage
DE2419836B2 (de) Schaltungsanordnung zur durchfuehrung von unterprogramm-sprungbefehlen in datenverarbeitungsanlagen
DE1935258B2 (de) Programmumschalteinrichtung fuer datenverarbeitungsanlagen mit mehreren anschlussleisten
DE1774866C3 (de) Schaltung zur Bestimmung der Adresse einer in einem Speicher einer Datenverarbeitungsanlage enthaltenen, gesuchten Information
DE2551793C2 (de) Indirekt gesteuerte Vermittlungsanlage, insbesondere Fernsprechvermittlungsanlage, und Verfahren zu deren Betrieb