DE2754890A1 - Einrichtung zur programmunterbrechung - Google Patents

Einrichtung zur programmunterbrechung

Info

Publication number
DE2754890A1
DE2754890A1 DE19772754890 DE2754890A DE2754890A1 DE 2754890 A1 DE2754890 A1 DE 2754890A1 DE 19772754890 DE19772754890 DE 19772754890 DE 2754890 A DE2754890 A DE 2754890A DE 2754890 A1 DE2754890 A1 DE 2754890A1
Authority
DE
Germany
Prior art keywords
program
program level
control
signals
signal
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.)
Granted
Application number
DE19772754890
Other languages
English (en)
Other versions
DE2754890C2 (de
Inventor
Walter F Beismann
Hans Hermann Lampe
Werner Herbert Pohle
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
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by IBM Deutschland GmbH filed Critical IBM Deutschland GmbH
Priority to DE2754890A priority Critical patent/DE2754890C2/de
Priority to FR7830983A priority patent/FR2411442B1/fr
Priority to CH1117378A priority patent/CH637230A5/de
Priority to JP53142429A priority patent/JPS6046737B2/ja
Priority to US05/962,549 priority patent/US4247894A/en
Priority to AU41924/78A priority patent/AU518925B2/en
Priority to SE7812174A priority patent/SE7812174L/xx
Priority to IT30248/78A priority patent/IT1160270B/it
Priority to ES475616A priority patent/ES475616A1/es
Priority to CA317,422A priority patent/CA1115851A/en
Priority to GB7847445A priority patent/GB2009981B/en
Priority to BR7808126A priority patent/BR7808126A/pt
Publication of DE2754890A1 publication Critical patent/DE2754890A1/de
Application granted granted Critical
Publication of DE2754890C2 publication Critical patent/DE2754890C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4825Interrupt from clock, e.g. time of day
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Description

Anmelderint IBM Deutschland GmbH
Pascalstraße 100 7000 Stuttgart 80
jo-bd Einrichtung zur Programmunterbrechung
Die Erfindung betrifft eine Einrichtung zur Programmunterbrechung nach dem Oberbegriff des Anspruchs 1.
Zur Durchführung von Prograinmunterbrechungen und zur Steuerung der prioritätsgerechten Programmebenen-Umschaltung gibt es bei bekannten Datenverarbeitungsanlagen im wesentlichen zwei Prinzipien!
1. das periodische Abfragen von asynchronen» für den Prozessor externen Vorgängen auf eventuell notwendige Bedienung und
2. das direkte Eingreifen der asynchronen externen Vorgänge in den Prozessor-Ablauf (Steuerung durch Masken und Prioritätssteuerung).
Das erste Prinzip findet hauptsächlich Anwendung in Prozessorer mit nur einer Programmebene (d.h. mit nur einem Instruktions-Adressenregister, nur einem Bedingungsooderegister und nur einem Arbeitsspeicher), um la Bedarfsfälle d.h. beim Erkennen einer asynchronen, externen Anforderung! auf die für die externe Bedienung vorgesehenen Programme umzuschalten.
Im Gegensatz hierzu sind die nach dem zweiten Prinzip betriebenen Prozessoren an bestimmte Voraussetzungen ihrer Schaltkreisstruktur gebundent
GE 976 023
909824/0322
275A890
- Prioritätsschaltungen zum Bestimmen der jeweils in der Priorität höchsten Anforderung bei gleichzeitigem Auftreten mehrerer Anforderungen und
- die den einseinen Prioritätsebenen zugeordenten Instruktionsadressenregister, Badingungscoderegister und Arbeitsspeicher.
ei den nun folgenden Betrachtungen wird ein Prozessor zugrunde gelegt, der nach dem zweiten Prinzip arbeitet. Dieser Prozessor möge acht Unterbrechungsebenen mit den dazugehörigen Instruktionsadressenregistern, Bedingungscoderegistarn und Arbeitespei ehern besitzen. Diese acht Unterbrechungsebenen sind mit 0 bis 7 bezeichnet, wobei der Ebene 0 die höchste und der Ebene 7 die niedrigste Priorität zugeordnet ist.
Zur Steuerung der acht Unterbrechungs-, oder wie noch zu sehen sein wird, Programmebenen, besitzt der Prozessor die erforderichen Prioritätsschaltungen sowie verschiedene Masken, um die rioritätsBchaltungen in begrenzten Bereichen zu übersteuern.
ei bekannten Datenverarbeitungsanlagen dieser Art sind den seht PrograjBMbanan die verschiedenen, für die Bedienung der externen Vorgang vorgesehenen MikroprograssM ««geordnet. In Pig. 3 ist dargestellt, welche Funktionen den einzelnen Progranrnbenan zugeordnet werden können, wenn der Prozessor in wesentlichen Serviceaufgaben zu erfüllen hat. Einem solchen Service-Prozessor sind im allgemeinen die Aufgaben der anfänglichen Progrannladung, der Fehlererkennung und Diagnose, der Bedienung bestirnter Sys tankOpponenten, wie beispeilaweise Konsole mit Tastatur und Bildschirmgerät und, bei höher intelligenten Datenvararbaitungaanlagen auch der Systemumstrukturier|ing vorbehalten. Die vorstehend genannten Aufgaben, die aolahe Servios-Prozessoren zu erfüllen haben, sind hier keineswegs
976 023
909824/0322
!erschöpfend aufgeführt, sondern sie stellen nur einen Auszug aus einem Katalog von Aufgaben dar, die Service-Prozessoren übertragen werden können.
Im Beispiel der Fig. 3 beherbergt die Programmebene 0 mit der höchsten Priorität alle Mikroprogramme zur Analyse und Behandlung von durch Fehlerprüfschaltungen entdeckte Prozessor-Fehler (EA) .
Die Programmebene 1, die durch Fehler (PSF) in der internen Stromversorgung aktiviert werden kann, hat die Aufgabe, die verschiedenen internen Stromversorgungsgeräte unter Einhaltung einer bestimmten Sequenz abzuschalten.
In der Programmebene 2 befindet sich das Mikroprogramm für die !Betreuung eines Fernwartungsanschlußes (RS) , mit dessen Hilfe ider Serviceprozessor, der sich in einer Wartungszentrale befindet, für Servicezwecke auf entsprechende andere Prozessoren, die mit dem zentralen Service-Prozessor zu einem Stern zusammenschaltbar sind, über Modems oder dergleichen Koamunikationsadapter anschliefibar ist.
bie Programmebene 3 enthält beispielsweise die Mikroprogramme für die Bedienung von Tastatur und Bildschirm (DISPL) der Prozessorkonsole.
Die Prograamebene 4 enthält das Mikroprogramm eine« Sammelleitungsadapters (BBA), Ober den der Service-Proieeeor mit dem Übrigen System verbunden ist.
Daa Mikroprogramm zur Bedienung einer Diskette (DISK), beispielsweise für da« Sammeln von Fehlerdaten für Diagnose- und Wartungszwecke ist, wie Fig. 3 seift, in der Programmebene 5 untergebracht.
GB 976 023
309824/0322
Die Mikroprogramme zur Abfrage des Systemstatus (SYST) und zur Messung der internen Betriebsspannungen liegen in der Programmebene 6.
Schließlich liegen alle transienten Mikroprogramme (TRANS) auf der niedrigsten Ebene 7.
Diese verschiedenen, hier nur kurz erwähnten Aufgaben können parallel, d.h. asynchron ablaufen, so daß auch ihre Anforderungen an die Mikroprogramme asynchron zum jeweils laufenden Mikroprogramm aktiv werden können.
Die Anforderung mit der jeweils höchsten Priorität hat das Recht, ein laufendes Programm niedrigerer Priorität in der Lücke zwischen zwei Mikroinstruktionen zu unterbrechen. Die Mikro-Folgeadresse und der zuletzt gültige Bedingungscode sowie der dazugehörige gesamte Arbeitsspeicherinhalt bleiben bis zur Wiederaufnahme dieses Programms unverändert erhalten.
Generell bedeutet dieses, daß beim Auftreten einer neuen externen, asynchronen Anforderung und bei Beendigung der Bedienung einer Programmebene eine neue Prioritätsüberprüfung mit der notwendigen Entscheidung, welche Anforderung die höchste Priorität aufweist, stattfindet, so daß dieser die Steuerung des Prozessors übertragen werden kann.
Hieraus ist zu erkennen, daß sich die Mikroprogramme auf den verschiedenen Programmebenen die Steuerung des Prozessors gegenseitig wegnehmen. Diese allgemein übliche Methode bei Prozessoren, die nach dem zweiten Prinzip, also unterbrechungsgesteuert arbeiten, hat drei gravierende Schwächen:
- Sie ist sehr störanfällig, da fehlerhafte asynchrone Anforderungen, die durch fehlerhafte Schaltkreise entstehen können, entsprechend ihrer Priorität ein Umschalten der laufenden Programme veranlassen können, wobei Sekundäreffekte durch fehlerhaft aufgerufene Programme erzeugt werden.
GE 976 023
909824/0322
- Bin "stationärer Zustand" läßt sich nur schwer oder gar nicht vorherbestimmen, so daß diese Methode zu nicht vorhersehbaren "Oberlaufen" führt.
- Schaltkreis- oder Mikroprogramm bedingte Fehler lassen sich in dieser "unkontrollierten" Anordnung sehr schwer und nur unter beträchtlichen leitaufwand analysieren.
Die Aufgabe der Erfindung besteht deshalb darin, die vorsteh« genannten Nachteile zu vermeiden. Unterbrechungen externer Anforderungen sollen nicht mehr zu asynchronen, d.h. unkontrollierten AblOsungen/Unterbrechungen von Programmen führen. Ferner sollen bei der Durchführung von Unterbrechungen (Programmablösungen) nur bestimmte Steuerblöcke und nicht die Mikroprogramme selbst umgeschaltet werden. Außerdem sollen die Steuerblöcke im Bereich einer verwendeten höheren Sprache für die jeweilige Programmebene erlaubte Instruktion typen und Speicherbereiche festlegen.
Gelöst wird diese Aufgabe der Erfindung durch die im Hauptanspruch angegebenen Merkmale.
Weitere vorteilhafte Ausgestaltungen» Weiterbildungen und Markmale des Gegenstände· der Erfindung «lad den Unteranaprflchen in entnehmen.
Durch die Erfindung werden im weseatlicfeen twei Vorteile erreicht:
1. Bs werde» aaymettrone Programmmterbrechuagen bsw. -
aaf«nmd von asynchron auftretenden externen Unterbrechungaamforderungen s.B. durch die Bin-Aosgabegeräte, wlaread dar Ausführung von Programmen verhindert.
GB 97« 023
909824/0322
2. Das nunmehr synchronisierte Umschalten von den einzelnen Programmebenen zugeordneten Kontrollblöcken erfolgt an einem speziellen, vorgegebenen Punkt In der Interpretationsphase eines Befehls.
(Im folgenden wird die Erfindung anhand eines durch Zeichnungen
!erläuterten Ausführungsbeispieles näher beschrieben. Ss zeigen:
Pig. 1 das Blockschaltbild der Programmunterbrechungs
einrichtung sowie ihre Anschaltung an den Hauptdatenverarbeitungskomplex,
'ig. 2 als Blockschaltbild ein Ab lauf diagramm zur
Veranschaulichung der notwendigen Steuerfunktionen, während der Interpretations- und Ausführungsphase zur Durchführung oder Unterdrückung einer Programmebenenumschaltung,
PIg. 3 eine Prinzipdarstellung möglicher Programmebenen und deren Prioritätsrangzuteilung,
«•ig. 4 das Blockschaltbild des in Fig. 1 dargestellten Steuersignalgeneratore 203,
ig. 5 ein Zeitdiagramm zur Veranschaulichung der Wirkungsweise der in Fig. 1 dargestellten Einrichtung,
ig. 6, 6A bis D ein Blockschaltbild der in Fig. 1 dargestellten Steuerung 202 für den Prograomeb«nen-•chaltar,
GE 976 023
909824/0322
2754330
Fig. 7 das Blockschaltbild des in Fig. 1 dargestellten Programmebenenschalters 201,
JFig. 8 ein Zeitdiagramm zur Veranschaulichung der I Wirkungsweise des Programmebenenschalters
I bei einer Programmebenenumschaltung und
Fig. 9 das Blockschaltbild der in Fig. 1 dargestellten Ablaufsteuerung 204.
In Fig. 1 ist als Blockschaltbild eine Einrichtung zur Programmjunterbrechung und Steuerung der prioritätsgerechten Programmebenenumschaltung dargestellt. Sie besteht aus einem Programmebenenschalter (PL-SW) 201, einer Steuerung für diesen Programmebenenschalter (PL-SW-C) 202, einem Steuersignalgenerator (CSG) 203 sowie einer Abschlaufsteuerung (SC) 204, die an den Hauptdatenverarbeitungskomplex (MDC) 200 angeschlossen sind.
Der eigentliche Kern dieser Einrichtung ist der Programmebenenschalter 201, der, wie im Zusammenhang mit Fig. 2 noch ausführlicher erläutert wird, bei asynchron auftretenden Anforderungen eine synchrone Programmebenenumschaltung vornimmt.
Hierzu erzeugt die Steuerung für den Programmebenenschalter sine Reihe von Steuersignalen ST-PLO bis ST-PL7 sowie LV-PLO bij» [jV-PL7. Außerdem werden dem Programmebenenschalter 201 auch die seiden Zeitsteuersignale TI und T2, auf die noch im Rahmen der ausführlichen Erläuterung des Prograramebenenschalters näher äingegangen wird, zugeführt.
ftie Fig. 1 weiter zeigt, benötigt auch die Steuerung 202 für äen Programmebenenschalter eine Reihe von Eingangssignalen, die iiesem Schalter teils über ein Kabel 20 aus dem Hauptdatenver-Eirbeitungskoaplex, zum Teil aber auch über den Steuersignal-
GE 976 023
909824/0322
generator 203 zugeführt werden. Die Aufgabe dieses Steuersignal. generators besteht darin, der Steuerung 202 für den Programmebenenschalter geeignete Steuersignale PIRRO bis PIRR7, CMO biü CM7 und HMS zuzuführen. Diese Steuersignale werden ihrerseits 'aus den Bitsignalen 0 bis 7, den Steuersignalen SO bis S3 sowie j den Taktsignalen T1 und T2 erzeugt, die von der Ablaufsteuerung I204 geliefert werden. Diese Ablaufsteuerung erzeugt die letzt-1 genannten Signale aus Instruktionen, die vom Hauptdatenverarbeitungskomplex 200 über die Steuerleitung 205 zur Ablaufsteuerung 204 übertragen werden.
Die Erzeugung dieser primären Steuersignale, die in Fig. 1 als Ausgangssignale dieser Ablaufsteuerung 204 erscheinen, werden noch ausführlich im Zusammenhang mit Fig. 9 erläutert.
Fig. 2 zeigt nun einen Ausschnitt des Interpretierers, der, wi es üblich ist, den Programmablauf in einer Sequenz von Interpretations- und Exekutionsphasen steuert, wobei jeweils einer Interpretationsphase I-Φ eine Exekutionsphase E-Φ, auch Ausführungsphase genannt, nachfolgt. Im oberen Teil der Fig. 2 isi bei 4eine Operation dargestellt, mit deren Hilfe eine Hauptmaske HM aktiviert wird, die den Programmebenen O bis 7, dargestellt in Fig. 3, die Steuerung der Maschine übertragen kann Welchem Programm letztlich die Maschinensteuerung für eine bestimmte Dauer überlassen wird, richtet sich nach den auftretenden externen Programmunterbrechungen sowie den programmierten Programmunterbrechungen und bestimmten Bedingungen, die noch ausführlich erläutert werden.
Den verschiedenen ünterbrechungsanforderungen, denen die eingangs aufgeführten Programmebenen zugeordnet sind, wird nur an einer Stelle im Interpretierer stattgegeben, die, wie bereits erwähnt wurde, unter Operation 4 in Fig. 2 angegeben ist. Es handelt sich hierbei um zwei direkt "benachbarte" Mikroin-
GE 976 023
909824/0322
2754800
struktionen die für die Dauer einer Mikroinstruktion die Hauptmaske (HM) des verwendeten Prozessors einschalten und dann wieder ausschalten. Mit dieser Hauptmaske läßt sich die Auswirkung aller Unterbrechungsanforderungen« nämlich das Umschalten der
rogramme grundsätzlich unterdrücken bzw. erlauben. Eine Synchronisation des an sich asynchronen Vorgangs wird also dadurch erreicht, daß nur hier an dieser Stelle die Hauptmaske für die Dauer einer Mikroinstruktion aktiviert wird. Die unterschiedlichen Aufgaben EA bis TRANS der acht Programnebenen werden von demselben Interpretierer durchgeführt. Um dieses zu erreichen, wexjden mittels der den verschiedenen Programmebenen zugeordneten
rogrammstatuswörter PSW die entsprechenden Befehlsadressen den Interpretierer angeboten.
Bei den Unterbrechungsanforderungen kann es sich um solche der extern angeschlossenen Peripheriegeräte, den sogenannten Ein-/ Ausgabegeräten, als auch um solche handeln, die von Programmen ausgelöst werden.
Im vorliegenden Beispiel wird angenommen, daß sich in der Programmebene PL6 ein internes Oberwachungsprogramm befindet, welches nach einer bestimmten Anzahl von Interpretierer-Durchläufen seibat anlaufen soll. OH dieses zu erreichen, setzt der letzte Befehl der laufenden Prograomebene einen Intervallzähler auf, der mit jedem "Durchlauf" des Interpretierers heruntergezählt wird (vgl. die bei 16, 17 und 1 dargestellten Operationen).
«ach jedem Herunterzählen die··· Intervallzählers, dargestellt als Operation 1 In Fig. 2, wird getestet, ob er den Wert O erreicht hat (vgl. Oparation 2 in Fig. 2). Wann dieses der Fall 1st, wird mit Hilfe einer programmierten Unterbrechungeanforderung PIRR dl· Anforderung für die Programmebene PL6 aufgesetzt.
GB 976 023
909824/0322
- 16 -Diese Funktion ist als Operation 3 dargestellt.
Unabhängig von diesem Vorgehen/ wird nun die Hauptmaske HM aktiviert, um einen Programmebenenwechsel, wie bereits erwähnt wurde, nur an dieser Stelle des Interpretierers zu ermög-l liehen. Dieses ist durch die Operation 4 in Fig. 2 angedeutet. ,
Falls die gerade aktive oder laufende Programmebene in ihrer Priorität tiefer liegt, als eine möglicherweise in Erscheinung getretene neue Unterbrechungsanforderung, dann wird das Programmstatuswort LFD-PSW der laufenden Programmebene abgespeichert, um das Programmstatuswort der neuen Programmebene zu übernehmen (vgl. Operationen 5 und 6 in Fig. 2).
Wie die Operationen 7 bis 10 erkennen lassen, erfolgt die Berücksichtigung der neuen Programmebene gemäß ihrer Priorität, wobei der Programmebene O (PLO) die höchste und der Programmebene sieben (PL7) die niedrigste Priorität zugeordnet ist.
Nachdem also der Prioritätsrang der Unterbrechungsanforderungen überprüft worden ist, wird die Hauptmaske HM wieder deaktiviert wie ·■ unter Operation 11 in Fig. 2 dargestellt ist. Somit kann sich nach der Deaktivierung der Hauptmaske die normale und an sich bekannte Befehlsverarbeitung anschließen, die, wie unter Operation 12 dargestellt iat, mit der Decodierung des Befehls
egonnen wird. Daran schließen sich die verschiedenen Ausführungsphasen E-Φ 1, E-Φ 2, E- Φ3 an (vgl. Operationen
13 bis 15).
iie schon zuvor erwähnt wurde, wird in der letzten Ausführungsphase eines Befehl· der Intervallzähler eingestellt, und danach iie laufende Prograraeieben· zurückgestellt (vgl. Operationen s 17).
GE 976 023
909824/0322
Es ist diesem Ablaufschema zu ersehen, daß nach der Deaktivierung der Hauptmaske die nachfolgende Ausführung einer Interpretiererj-Instruktion ununterbrochen erfolgt. Erst nach der vollständigen Ausführung eines Interpretiererbefehls kann in der darauffolgenden I-Phase ein neuer Programmebenenwechsel vollzogen werden. |
Eine Besonderheit dieses Ablaufs liegt auch darin, daß in der ! Ausführungsphase des letzten Interpretiererbefehls einer jeden { Programmebene die laufende Programmebene durch Löschen ihrer Unterbrechungsanforderung (IR oder PIRR) abgeschaltet/Operation 17) wird.
Die Programmebene PL6 setzt in der Ausführungsphase ihrer letzten Interpretiererinstruktion, wie eingangs bereits erwähnt wurde, den Intervallzähler erneut auf seinen Anfangswert (Operation 16).
Dieser besondere Ablauf, der asynchrone Programmunterbrechungen bzw. Programmebenenwechsel während der Interpretation von Programmen verhindert und das synchrone Umschalten von den einzelnen Ebenen zugeordneten Kontrollblöcken an einem ausgezeichneten Punkt in der sogenannten I-Phaae des Interpretierers ermöglicht, wird durch die in den Pign. 4, 6A bis D, 7 und 9 dargestellten Anordnungen gesteuert. Diese Anordnungen sind zusätzlich zu den in der verwendeten Datenverarbeitungsanlage vorhandenen Schaltkreisen erforderlich.
Zunächst ist in Fig. 4 die Erzeugung der verschiedenen Steuersignale PIRRO bis PIRR7 sowie CMD bis CM7 gezeigt, die als Eingangssignale für die in den Fign. 6A bii D dargestellte Steuerschaltung dienen, die die synchrone Umschaltung der verschiedenen Programmebenen vornimmt.
Die in der Datenverarbeitungsanlage vorhandenen Programmunterbrechungsquellen IS, die mit Hilfe ihrer Unterbrachungsanfor- GE 976 023
909824/0322
2754830
derungssignale IRO bis IR7 eine stete Änderung des Programmablauf s hervorrufen, sind In Flg. 1 pauschal als Block 21 dargestellt, über Individuelle Leitungen des Kabels 20 (übertragen ksle Ihre Unterbrechungsanforderungssignale IRO bis IR7 zu der ^Ln den Flgn. 6A bis D dargestellten Steueranordnung.
Diese erste Gruppe von Unterbrechungsanforderungsslgnalen IRO bis IR7 können von speziellen Adapterschaltungen erzeugt werden die allerdings Im einzelnen nicht dargestellt sind. Diese ünterf arechungsanforderungssignale IRO bis IR7 können auch, wie die späteren Ausführungen noch zeigen werden, von der Ablaufsteuerung zurückgesetzt werden.
Die zweite Gruppe von Steuersignalen, deren Erzeugung In Flg. 4 dargestellt 1st, sind die Steuersignale PIRRO bis PIRR7, die von der Ablaufsteuerung sowohl gesetzt als auch zurückgesetzt werden können. Das Steuersignal SO dient In Verbindung mit den JND-Toren 22a bis h zum Aufsetzen des Registers 1 (23), In dem äie Bits O bis 7, die mit den Steuerkommandos vom Hauptdatenverarbeitungskomplex 200 zur Ablaufsteuerung 204 übertragen «erden, zwischengespeichert werden. Diese Bits 0 bis 7, dienen zusammen mit dem Steuersignal S1, das ebenso wie das Steuersignal SO von der Ablaufsteuerung erzeugt wird, dem Setzen der ?IRR-Flip-Flops 0 bis 7, die mit 25a bis h bezeichnet sind und äie genannten Steuersignale PIRRO bis PIRR7 erzeugen.
Mt Hilfe des Steuersignals SO gelangen die Bits 0 bis 7 über iie UND-Tore 22a bis h zur Zwischenspeicherung in das Register 23. Mit Hilfe des Steuersignals S1, das stets ein Eingangssignal für alle UND-Tore 24a bis h bildet, werden die im Register 1 (23) zwischengespeicherten Bits 0 bis 7 über den jeweils anderen Eingang der genannten UND-Tore 24a bis h in die ?IRR-Flip-Flops 0 bis 7 (25a bis h) übertragen, was mit dem Uifsetzen dieser Flip-Flops gleichbedeutend ist. Dieses bedeutet aber auch, daß nur die aufgesetzten PIRR-Flip-Flops an GE Ϊ7ΊΓ023
909824/0322
Ihrem Ausgang das gewünschte Steuersignal (PIRRO bis 7) erzeugen .
Schließlich ist auch noch eine dritte Gruppe von Steuersignalen
bis CM7 erforderlich, deren Erzeugung von einer identisch aufgebauten Anordnung Übernommen wird.
lese Anordnung besteht wieder aus UND-Toren 26a bis h sowie einem nachgeschalteten Register 2 (27). Das Steuersignal SO, das wie bereits erwähnt wurde, von der Ablaufsteuerung generier *ird, und zwar zu Zeitpunkten, die der Fig. 5 zu ersehen sind, ermöglicht auch hier über die UND-Tore 26a bis h die Eingabe der Bits 0 bis 7 in das Register 2 (27).
3Urch das Steuersignal S2 wird dann der Inhalt dieses Registers über eine Anordnung von UND-Toren 28a bis h in individuelle Iferriegelungsschaltungen CM-FLO bis CM-FL7 /29 a bis h) überlommen. Die Ausgangssignale der genannten Flip-Flops bilden dan|i die Steuersignale CMO bis CM7, die in der eigentlichen Steuerschaltung nach den Fign. 6A bis D eine wichtige Steuerfunktion [übernehmen.
Schließlich ist in Fig. 4 noch zu sehen, daß mit Hilfe des Steuersignals S3, das ebenfalls von der Ablaufsteuerung 204 erzeugt wird (Zeitpunkt gemäß Fig. 5) ein Hauptmasken-Flip-Flop 30 (HM-FL) gesetzt wird, das im eingestellten Zustand das Ausgangssignal HMS erzeugt.
)ie Wirkungen der Steuersignale IRO bis IR7, PIRRO bis PIRR7 iowie CMO bis CM7 und HMS werden noch im Zusammenhang mit den Plgn. 5 und 6A bis D näher beschrieben.
Se sei noch einmal daran erinnert, daß die asynchron eintreffen len Unterbrechungsanforderungen, die durch die Signale IRO bis
QK 976 023
909824/0322
IR7 charakterisiert sind, mittels der Hauptmaske HM in der sogefnannten I-Phase des Interpretierers synchronisiert werden, indem nur an dieser Stelle die Hauptmaske HM kurzzeitig aktiviert wird.
Die Fign. 6A bis D zeigen nun die für die Programmauswahl vorgesehene Schaltungsanordnung. In dieser Schaltungsanordnung werden die asynchron eintreffenden Unterbrechungsanforderungen der Steuerung durch die Hauptmaske unterworfen und bei einer aktivierten Hauptmaske nach ihrer Priorität geordnet. Die Unterbrechungsanforderung mit der jeweils höchsten Priorität zeugt dann ein Startsignal ST-PLi, das dem ihm zugeordneten Programm PLi in Verbindung mit dem Programmebenenschalter nach Fig. 7 die Steuerung der Datenverarbeitungsanlage für eine bestimmte Dauer, die noch ausführlich erläutert wird, überträgt.
Eine Programmumschaltung von einem Programm mit einer niedrigeren Priorität auf ein solches mit einer höheren Priorität setzt auch eine Schaltungsanordnung voraus, die das gegenwärtig operierende Programm einer bestimmten Priorität dazu veranlaßt, seinen Betrieb einzustellen und sein zuletzt gültiges Programmstatuswort LFD-PSW in dem Programmstatus-Wortregister PSWi-R seiner zugehörigen Programmebene zu retten. Diese Schaltungsanordnung ist ebenfalls in den Fign. 6A bis D dargestellt; sie erzeugt die Steuersignale LV-PLO bis LV-PL7.
Zur Erläuterung der Wirkungsweise der genannten Schaltungsanordnungen kann am besten das folgende Beispiel dienen, bei dem angenommen wird, daß erstens die Programmebene PL4 aktiv und zweitens die gemeinsame Maske für die Programmebene PL2 aktiviert ist. Fig. 8, die ein Zeitdiagramm zur Veranschaulichung eines Programmebenenwechsels darstellt, zeigt in der zweiten Zeile von oben das asynchrone Auftreten einer Unterbrechungsanforderung, der das Unterbrechungsanforderungssignal IR2 zu-
976 023
909824/0322
275A890
geordnet ist. Diese Unterbrechungsanforderung führt, wie Fig. ί zeigt, trotz ihrer um zwei Stufen höheren Priorität als die Prc grairanebene PL4 mit der Priorität 4 nicht zu einem Programmebenenwechsel, da die zu diesem Zeitpunkt noch nicht aktivierte Hauptmaske HM dieses verhindert.
In der nächsten I-Phase des Interpretierers wird nun die Hauptmaske HM aktiviert, wodurch das Signal HMS erzeugt wird (das bereits im Zusammenhang mit Fig. 4 erläutert wurde), um einen eventuellen Programmebenenwechsel zu ermöglichen.
Die Schaltungsanordnung zur Auswahl der jeweils aktiven Programmebene, die in den Fign. 6A bis D dargestellt ist, besteht zunächst aus einem Satz ODER-Toren 60a bis h, einem ersten Satz von UND-Toren 70a bis h, einem zweiten Satz von UND-Toren 80a bis g, einem dritten Satz von UND-Toren 90a bis h, einem Satz von Flip-Flop Schaltungen 100a bis h, einem vierten Satz von UND-Toren 110a bis h sowie einem ODER-Tor 87.
Die UND-Tore 70a und 80a bis g erzeugen, wenn ihre Eingangsbedingungen erfüllt sind, die Programmebenen-Startsignale ST-PLO bis ST-PL7. Da das UND-Tor 70a der höchsten Programmebene PJLO zugeordnet ist, erzeugt dieses UND-Tor das Signal ST-PLO schon beim Vorhandensein der Eingangssignale IRO oder PIRRO und CMO, da "Sperreignale" als Folge der Überprüfung des zugeordneten Prioritätsrangs von einem UND-Tor mit noch höherer Priorität nicht vorliegen können. Wegen dieser Prüfung des Prioritätsrangs können aber die UND-Tore 70b bis h nicht direkt die Programmebenen-Startsignale ST-PL1 bis ST-PL7 erzeugen. Deshalb sind diesen UND-Toren weitere UND-Tore 80a bis g nachgeschaltet die diese Programmebenen-Startsignale ST-PL1 bis ST-PL7 erzeugen, wenn erstens ein Ausgangssignal ihres zugeordneten UND-Tores aus der Gruppe 70b bis h und zweiten· ein "Sperrsignal" von «inem mit höherem Prioritätsrang ausgestatteten
GE 976 023
909824/0322
UND-Tor der Gruppe 70a bis h nicht vorliegt. Unter "Sperrsignal ist hier das jeweils inverse Ausgangssignal der UND-Tore 70a bis h zu verstehen, das eine binäre Eins ist, wenn das zugeordnete UND-Tor geöffnet und eine binäre Null ist, wenn es geschlossen ist. Diese Signale sind allgemein mit ST-PLO bis ST-PL7 bezeichnet.
Für eine Programmebenenablösung ebenfalls erforderlich sind die Steuersignale LV-PLO bis LV-PL7, zum Verlassen der laufenden Programmebene, die von dem vierten Satz von UND-Toren 110a bis h erzeugt werden. Eine weitere maßgebliche Rolle bei der Erzeugung der letztgenannten Signale spielen die Flip-Flops 100a bis h, die von den Steuersignalen ST-PLO bis ST-PL7 zum Starten der neuen Programmebene aufgesetzt werden. Die Rückstellung dieser Flip-Flops erfolgt über den dritten Satz von UND-Toren 90a bis h zur Zeit des Taktsignales T2.
Fig. 5 zeigt in Verbindung mit den Fign. 6A bis D ein weiteres Beispiel zur Erläuterung eines Arbeitsspiels der einzelnen Komponenten der Schaltungsanordnungen.
Wie Fig. 5 zeigt, wird in diesem Beispiel davon ausgegangen, daß die Bits CMO bis CM7 der gemeinsamen Maske sowie das PIRR7-Bit gesetzt sind, was einer aktiven Programmebene PL7 entspricht. Die von der Steuerschaltung insgesamt generierten Signale entsprechen somit der zur Taktzeit CL1 in Fig. 5 dargestellten Konfiguration.
Das Hauptmaskensignal HMS wählt innerhalb des hier dargestellten Abschnitte von Taktzeit CL1 bis CL27 diejenigen signifikanten Zeitpunkte aus, zu denen Programmebenenablöeungen, je nach Internen oder externen Bedingungen, stattfinden können. Auf den detaillierten zeitlichen Ablauf während eines Programmebenenwecheels wird später noch einmal im Zusammenhang
GE 976 023
909824/0322
2754830
- 23 -mit dem bereits erwähnten ersten Beispiel eingegangen (Fig. 8)
Ein erster möglicher Programmebenenwechsel könnte zur Taktzeit CL2 erfolgen. Da aber keine weiteren Unterbrechungsanforderungejn vorliegen, was dadurch angezeigt ist, daß Signale IRO bis IR7 nicht erzeugt wurden, sondern vielmehr nur das Steuersignal PIRR7 vorliegt, wird der Programmebene PL7, also der Programmebene mit der niedrigsten Priorität weiterhin die Steuerung der Datenverarbeitungsanlage übertragen bleiben, d.h. die Programmebene PL7 wird su diesem Zeitpunkt nicht unterbrochen .
Zur Taktzeit CL3 wird von einer der Unterbrechungsquellen 21 eine Unterbrechungsanforderung ausgelöst, indem sie ihr Unterbrechungeanforderungssignal IR5 erzeugt.
Während der Taktzeit CL4 kann kein Programmebenenwechsel erfolgen, da die Hauptmaske, wie Fig. 5 in der zweiten Zeile von oben zeigt (fehlendes Signal HMS), zu diesem Zeitpunkt noch nicht aktiviert ist.
Zur Taktzeit CL5 erst wird die Hauptmaske aktiviert und das Hauptmaskensignal HMS erzeugt, indem da* Steuersignal S3 das Hauptaasken Flip-Flop 30 für die Dauer der Taktzeit aufsetzt. Dieses Haupfssken-Fllp-Flop 30 kann beispielsweise ein monostabiler Multivibrator sein, dessen instabile Phase etwa der Dauer einer Taktzeit entspricht. Hie Fig. 5 ferner zeigt, sind su diesem Zeitpunkt auch noch die Bits CMO bis CM7 der ge-
lihsamen Maske aufgesetst. Da so auch de« Bit CM5 aufgesetzt ist» kann ein Prograsaebenenwechsel von Programmebene PL7 nach PL5 erfolgen.
In der Schaltungsanordnung nach den Fign. 6A bis D ergeben sich diese Vorginge auf folgende Weiset zu Beginn der Betrachtung,
OB 976 023
909824/0322
also zu Beginn der Taktzeit CL1 hat eine Programmebenenauswahl stattgefunden, durch die das Programmstatuswort PSW7 das laufen de PSW wurde. Danach wird die Datenverarbeitungsanlage von Befehlen der Programmebene PL7 gesteuert. Von der in Fig. 4 dargestellten Schaltungsanordnung wird als Ausgangssignal des PIRR-Flip-Flops 7 (25h) das PIRR7-Bit erzeugt. Dieses liegt an Idem ODER-Tor 60h in Fig. 6B an. Außerdem liegt an dem UND-Tor '70h das Steuerbit CM7 der gemeinsamen Maske an. Mit dem nächsten eintreffenden Hauptmaskensignal HMS zur Taktzeit CL2 wird dann dieses UND-Tor 70h für die Dauer der Taktzeit CL2 geöffnet. Dieses UND-Tor 70h hat, wie alle UND-Tore 70a bis h des ersten Satzes von UND-Toren zwei Ausgänge, von denen der linke bei erfüllter UND-Bedingung stets das Signal ST-PLi zum Starten der neuen Programmebene erzeugt. Der rechte Ausgang erzeugt gleichzeitig das hierzu inverse Signal ST-PLi.
Das dem UND-Tor 70h nachgeschaltete UND-Tor 80g verfügt über weitere Eingänge, die dieses Tor mit den jeweils rechten Ausgängen der UND-Tore 70a bis g verbinden. Da zur gleichen Taktzeit CL2, während der ja die Hauptmaske aktiviert wird, kein weiteres UND-Tor 70a bis g durchgeschaltet ist, ist zu diesem Zeitpunkt nur die UND-Bedingung für das UND-Tor 80g im zweiten Satz von UND-Toren 80a bis g erfüllt, so daß nur dieses UND-Tor 80g ein Ausgangssignal erzeugen kann. In der Schaltungeanordnung in den Fign. 6A bis D, in der die Signale LV-PLO bis LV-PL7 für das Verlassen der laufenden Programmebene erzeugt werden, kann zu dieser Zeit nur der Flip-Flop 100h gesetzt werden, der gemeinsam mit dem nachgeschalteten UND-Tor 110h da* Signal LV-PL7 erzeugt. Damit wird das Programmstatuswort [PSW7 der Programmebene PL7 wieder zum laufenden Programmstatuswort LFD-PSW, wie noch im einzelnen im Zusammenhang mit den Fign. 7 und 8 erläutert werden wird. Ein Programmebenenwechsel findet also nicht statt, die laufende Programmebene bleibt also die Programmebene PL7. Zur Taktzeit CL3 erscheint dann das
GE 976 023
909824/0322
- 25 -
Unterbrechungsanforderungssignal IR5, das von nun an an dem ODER-Tor 6Of anliegt. Zu dieser Zeit ist das PIRR5-Bit noch Inicht gesetzt. Das Bit CM5 der gemeinsamen Maske ist, wie auch die übrigen Bits dieser gemeinsamen Maske eingeschaltet. Das UND-Tor 7Of ist somit für seine öffnung vorbereitet, die erst | erfolgen kann, wenn das nächste Hauptmaskensignal HMS erschein Zur Taktzeit CL4 ergeben sich, wie auch Fig. 5 zeigt, keine Statusänderungen. Erst zur Taktzeit CL5 wird über das Steuer- | signal S3 das Hauptmaskensignal HMS erzeugt, dessen Dauer ■ der Aktivierungsdauer der Hauptmaske HM entspricht. Dieses | ist auch der Zeitpunkt, zu dem das UND-Tor 7Of durchgeschaltet wird. Da nun einerseits die UND-Bedingung für das UND-Tor 8Oe erfüllt, andererseits aber die UND-Bedingung für das UND-Tor 80g nicht mehr erfüllt ist, wird das neue Signal ST-PL5 erzeugt wohingegen die Erzeugung des Signales ST-PL 7 zu dieser Zeit unterbleibt. Es wird somit nicht mehr der Flip-Flop 100h, sondern der Flip-Flop 10Of gesetzt. Auf diese Weise wird über das UND-Tor 11Of das Signal LV-PL5 erzeugt.
Wie Fig. 7 zeigt, wird dadurch das laufende Programmstatuswort LFD-PSW, das zur Programmebene PL7 gehört in sein zugeordnetes Register 130h zurückübertragen und das Programmstatuswort PSW5 der Programmebene PL5 aus dem entsprechenden Register 13Of zum laufenden Programmstatuswort gemacht, indem es in das zugeordnete Register 13Oi für das laufende Programmstatuswort übertragen wird. Dieses bedeutet, daß etwa von der Mitte der Taktzeit CL5 an Befehle der Programmebene PL5 die Maschinensteuerung übernommen haben.
Die Programmebenenablösung konnte also erfolgen, weil durch die Aktivierung des UND-Tores 7Of das Steuersignal ST-PL5 abgeschaltet wurde, so daß infolge dieses fehlenden Eingangssignals am UND-Tor 80g dieses geschlossen wurde. Damit war es nicht mehr möglich, den Flip-Flop 100h aufzusetzen.
GE 976 023
909824/0322
Nach dem Programmebenenwechsel, wie er In Flg. 5 dargestellt 1st, 1st nun von etwa der Mitte der Taktzelt CL5 an die Programmebene PL5 aktiv. Zur Taktzelt CL6 wird das Steuersignal SO aktiviert, mit dessen Hilfe die von der Ablaufsteuerung übertragenen Bits O bis 7 über die UND-Tore 22a bis h in das Register 23 eingegeben werden. Zur nachfolgenden Taktzeit CL7 wird das Steuersignal S1 erzeugt, das zusammen mit dem Bit 5, das im Takt zuvor in das Register 23 übertragen wurde, nun über das UND-Tor 24f den Flip-Flop 25f setzt, der das PIRR5-Bit erzeugt. Wie Fig. 5 zeigt, ist dieses PIRR5^1t kurz nach Beginn der Taktzeit CL7 verfügbar.
Im Verlauf der Taktzeit CL8 wird das Unterbrechungsanforderungssignal IR5 von der zugeordneten Unterbrechungsquelle 21 wieder abgeschaltet, da der dieser Unterbrechungsquelle zugeordnete Anlagenteil keine spezielle Maschinenbedienung mehr benötigt.
Dafür wird aber zur Taktzeit CL9 von der Unterbrechungsquelle 21 eine Unterbrechungsanforderung gemeldet, indem das Signal IR6 erzeugt wird. Dieses Signal bleibt aber zunächst noch ohne Wirkung, weil eine Programmebenenablösung erst mit der nächsten Aktivierung der Hauptmaske HM erfolgen kann, die, wie Fig. 5 zeigt, frühestens zur Taktzeit CL10 möglich ist, in der wieder das Steuersignal HMS erzeugt wird (vgl. S3; Fig. 5). Obzwar nun das Unterbrechungsanforderungssignal IR5 nicht mehr vorliegt, kann trotzdem kein Programmebenenwechael zur nächstniedrigeren Programmebene PL6 erfolgen, da ja in der Taktzeit CL7 das PIRR5-Bit aufgesetzt worden war, das nun die Funktion des Steuersignals IR5 übernimmt. Zur Taktzeit CL1O erfolgt somit kein Programnebenenwechsel, und zur Taktzeit CL11 eingeben sich auch keine Veränderungen, wie Fig. 5 zeigt. Zur Taktzeit CL12 wird aber von der Unterbrechungsquelle 21 wieder ein neues Unterbrechungsanforderungssignal erzeugt, das Signal
GE 976 023
909824/0322
IR3, welches die Anforderung einer Unterbrechungsquelle angibt die zum gegenwärtigen Zeitpunkt die höchste aktivierte Priorität aufweist.
Zur Taktzeit CL13 wird wieder die Hauptmaske aktiviert, die allein einen Programmebenenwechsel herbeiführen kann. Zu dieser Taktzeit sind folgende Signale aktiv: HMS, IR3, IR6, S3, PIRR5, PIRR7 sowie die Bits der gemeinsamen Maske CMO bis CM7.
Kurz nach der Aktivierung der Hauptmaske hat sich erwartungsgemie die höhere Priorität der dem Unterbrechungsanforderungs* signal IR3 zugeordneten Quelle durchgesetzt und die Programmebene PL5 abgeschaltet.
In der Schaltungsordnung nach den Fign. 6A bis D stellt sich diese Situation auf folgende Weise dart
Zunächst bleibt bei Auftreten des Hauptmaskensignals HMS die UND-Bedingung für das UND-Tor 7Of auch bei abgeschaltetem Untex brechungsanforderungaaignal IR5 erfüllt, da zu dieser Zeit an des ODER-Tor 6Of das PIRR5-Bit in seiner "T-Lage anliegt. Zur Zeit der Aktivierung der Hauptmaske HM ist somit auch die UND-Bedingung für das UND-Tor 80e erfüllt, da keines der vorbei gehenden UND-Tore 70a bis e aktiv ist. Ein Programmebenenwechsel kann also nicht erfolgen.
Zur Taktselt CL12 erscheint das Unterbrechungsanforderungssignefl IR3, da* über das ODER-Tor 6Od an einem Eingang des UND-Tores 7Od anliegt. Auch das Bit CM3, das sich in seiner "1"-Lage befindet« liegt an diesem UND-Tor an. Folglich kann beim Auftreten des Hauptmaskensignals zur Taktseit CL13 das UND-Tor 70< durchschalten und das nachgeschaltete UND-Tor 60c öffnen, das nun das Signal ST-PL3 erseugt. Über den Flip-Flop 10Of und das UND-Tor 11Of sowie über den Flip-Flop 10Od und das UND-
GB 976 023
909824/0322
Tor 11Od wird dann in der bereits zuvor erläuterten Weise ein Programmebenenwechsel vorgenommen.
In der Taktzeit CL14 wird wieder das Steuersignal SO erzeugt, mit dessen Hilfe das Register 23 erneut mit den anliegenden Bits O bis 7 geladen wird. Durch das nachfolgende S1-Signal wird dann zur Taktzeit CL15 der selektierte Flip-Flop 25d gesetzt/ der nun das PIRR3-Bit erzeugt.
Im folgenden wird ein sehr vorteilhafter Operationsablauf der in den Fign. 4, 6A bis D dargestellten Schaltungsanordnung erläutert.
Wie bereits im Zusammenhang mit Fig. 5 erwähnt wurde, findet zur Taktzeit CL13 ein Programmebenenwechsel von PL5 nach PL3 statt. Da eich aber das Programm der Programmebene PL3 nicht durch Unterbrechungsanforderungen einer Unterbrechungsquelle unterbrechen lassen möchte, die z.B. von einem Programm der Programmebene PL2 gesteuert wird, schaltet das Programm der Ebene PL3 zu Beginn der Taktzeit CL15 bis zum Beginn der Taktzeit CL18 das Bit CM2 der gemeinsamen Maske, das der Programmebene PL2 zugeordnet ist, ab.
In der Schaltungsanordnung nach den Fign. 6A bis D ist zu erkennen, daß ein Unterbrechungsanforderungssignal IR2, das über das ODER-Tor 60c an das UND-Tor 70c angelegt wird, beim nächsten Auftreten des Hauptmaskensignale HMS keine Wirkung hat, da die dritte Bedingung für das UND-Tor 70c nicht erfüllt ist, weil das Signal CM2 fehlt. Auf diese Weise hat die Programmebene PL3 dafür gesorgt, daß sie nicht von einer Unterbrechungalanforderung dieser Unterbrechungsquelle für die genannte Zeitdauer unterbrochen werden kann.
Zu Beginn der Taktzeit CL18 werden mit Hilfe des Signals SO die
GE 976 023
90982A/0322
neuen Blta O bis 7 in die Register 23 und 27 eingegeben. Zur Taktzeit SO wird dann, weil auch das Bit 2 in das Register 27 eingegeben wurde, der Flip-Flop 29c in Fig. 4 gesetzt, der nun wieder daa Signal CM2 erzeugt. Dieses bedeutet, daß beim nächsten Aktivieren der Hauptmaske daa Unterbrechungsanforderungs-I signal IR2 durchgreifen und einen Programmebenenwechsel herbeiführen kann. Dieses ist zur Taktzeit CL2O der Fall, in der dann endgültig der Programmebenenwechsel von der Programmebene PL3 auf PL2 erfolgt.
Mit Hilfe der Steuersignale SO und S1 wird auch wieder das Signal PIRR2 erzeugt, das den Programmbetrieb in dieser Programmebene zunächst aufrecht erhält, selbst dann, wenn das Unterbrechungssignal IR2 abgeschaltet wird.
Wie dem Diagramm in Fig. 5 weiter zu entnehmen ist, wird das PIRR2-Bit über das Steuersignal S1 zu Beginn der Taktzeit CL24 wieder abgeschaltet.
Da aber das mit Beginn der Taktzeit CL7 aufgesetzte PIRR5-Bit noch gesetzt ist, kann die zur Taktzeit CL9 abgegebene Unterbrechungsanforderung der Unterbrechungsquelle, die das Unterbrechungsanforderungssignal IR6 erzeugt, zur Taktzeit CL25, dem Zeitpunkt der nächsten Hauptmaskenaktivierung, nicht durchgreifen, d.h. einen solchen Programmebenenwechsel herbeiführen das anstelle der Progrannebene PL2 nun die Programmebene PL6 operativ würde. Es setzt sich vielmehr das Signal PIRR5 durch, welches dafür sorgt, daß ein Programm seiner Ebene also der Programmebene PL5 die Maschinensteuerung erhält. Dieses bleibt auch so, bis zum Ende der Taktzeit CL27, mit der auch die Betrachtung dieaes Ausführungsbeispiela endet.
Im folgenden sei noch einmal ausführlicher auf den Austausch der Programmstatuswörter PSO bis PSW7 und die hierfür erfor-
GE 976 023
909824/0322
2754330
derliehe Schaltungsanordnung eingegangen, die in Fig. 7 dargestellt ist. Fig. 8 zeigt als Zeitdiagramm ein AusfUhrungsbeispiel, bei dem angenommen wird, daß die Programmebene PL4 aktiv sei und das Bit CM2 der gemeinsamen Mask« in binären Einszustand sei.
In der zweiten Zeile von oben in Fig. 8 ist zu erkennen, daß vom Zeitpunkt ti an das Unterbrechungsanforderungssignal IR2 seinen oberen Pegelwert einnimmt, dieses Signal also von diesem Zeitpunkt an aktiv ist.
In der dritten Zeile ist das Bit CM2 der gemeinsamen Maske dargestellt, das vereinbarungsgemäß bereits eingeschaltet sein sol L
Zum Zeitpunkt t2 wird das Signal HMS erzeugt, das für die Aktivierung der Hauptmaske HM Indikativ ist. Dieses Signal wird zum Zeitpunkt t12 abgeschaltet. Wie früher bereits erwähnt wurde, ist ein Programmebenenwechsel nur während der Dauer des Signals HMS möglich.
Die in den Zeilen 5 und 6 dargestellten Steuersignale T1 und Γ2 werden von der Ablaufsteuerung 204 in Relation sum Signal
erzeugt. Das Signal T1 beispielsweise beginnt zum Zeitpunkt 3, der zeitlich etwas gegenüber dem Zeitpunkt t2 verzögert ist d dauert bis zum Zeitpunkt t6.
as Steuersignal T2 wird zum Zeitpunkt t8 erzeugt und dauert is zum Zeitpunkt t11. Es ist also zu erkennen, daß das Steuersignal T2 später als das Steuersignal T1 erzeugt wird, aber noch vor dem Ende des Hauptnaskensignals HMS beendet ist. Die Zeitpunkte t3 und t8, die den Beginn der Steuersignale T1 und Γ2 markieren, liegen weit auseinander, um sicherzustellen, daß das Register (LFD-PSW-R) 13Oi, welches das laufende Progr
GE 976 023
909824/0322
statuewort LFD-PSH stets beinhaltet, geleert ist, bevor ein neues Programmstatuswort PSWi in dieses Register übertragen wird.
Da alle Bedingungen am UND-Tor 70c in Fig. 6A für einen Progamn ebenenwechsel von der laufenden Programmebene PL4 auf PL2 erfüllt sind, wenn das Hauptmaskensignal HMS eintrifft, wird übez das UND-Tor 80b in der bereits erläuterten Weise das Signal ST-PL2 erzeugt. In der siebten Zeile in Fig. 8 ist dieser Zeitpunkt mit t2 bezeichnet, es ist also der gleiche Zeitpunkt, zu dem auch das Hauptmaskensignal HMS beginnt. Beide Signale verschwinden auch wieder zur gleichen Zeit t12, weil mit dem Abfall des Hauptmaskensignals auch die UND-Bedingung am UND-Tor 72 entfallt.
Gleichzeitig mit den beiden Signalen HMS und ST-PL2 wird auch zur Zeit t2 das Signal LV-PL4 erzeugt, das angibt, daß die laufende Programmebene verlassen werden darf. Dieses Signal wird, wie bereite im Zusammenhang mit den Fign. 6A bis D erläutert wurde, von dem Flip-Flop 10Oe erzeugt und über das UND-Tor 110· an dessen Ausgang bereitgestellt.
Das Aufsetzen des Flip-Flops 10Oe ist deshalb möglich, weil zum Zeitpunkt des Einschalten« oder des Aktivierens der Hauptmaske HM auch die UND-Bedingung für das UND-Tor 7Oe und für das UND-Tor 8Od aufgrund geringer Laufzeitverzogerungen noch erfüllt war. Nachdem das Flip-Flop 10Oe einmal aufgesetzt ist, hält es sich solange, bis es von der Vorderflanke des Steuersignals T2 über das UND-Tor 9Oe zurückgesetzt wird. Diese Verhältnisse sind in Fig. 8 in der achten Ζ·!1· von oben dargestellt. Der Zeltpunkt t8 für das Ende des Signals LV-PL4 stimmt, von geringen LaufseitverzOgerungen abgesehen, mit der Zeitlage t8 der Vorderflanke des Steuersignals T2 überein.
976 023
909824/0322
- 32 -
jwie Fig. 7 zeigt, spielen die Signale ST-PLO bis ST-PL7, LV-JPLO bis LV-PL7 sowie T1 und T2 die entscheidende Rolle für die Durchführung eines Programmebenenwechsels. Das zentrale Element in der Schaltungsanordnung nach Fig. 7 ist der Satz von Registern (PSWO-R) 13Oa bis (LFD-PSW-R) 13Oi, in denen die Programmstatuswörter der jeweiligen Programmebene zwischengespeichert sind. Geladen werden diese Register über einen Satz von UND-Toren 120a bis i und ausgelesen über den Satz von UND-Toren 140a bis i.
! Beim angenommenen Beispiel wird die Datenverarbeitungsanlage zunächst von Befehlen der Programmebene PL4 gesteuert. Das laufende Programmstatuswort befindet sich somit im Register 130ji Bei einem Programmebenenwechsel von Programmebene PL4 zu Programmebene PL2 werden zunächst Steuersignale LV-PL4 sowie ST-PL4 erzeugt. Daran anschließend folgt, wie Fig. 8 zeigt, das Steuersignal T1. Mit Hilfe des Signals LV-PL4 wird zunächst das Eingangs-ÜND-Tor 12Oe für eine übertragung in das Register 13Oe vorbereitet. Beim Eintreffen des Steuersignals T1 wird ferner das Ausgangs-UND-Tor 14Oi des Registers 13Oi für das laufende Programmstatuswort geöffnet, so daß dieses in das Programmstatuswortregister 12Oe gelangen kann. Damit ist das Register 13Oi für das laufende Programmstatuswort frei geworden und zur Übernahme eines neuen Programmstatuswortes bereit. Mit Hilfe des nachfolgenden Steuersignals T2 wird dann über das noch immer von dem Signal ST-PL2 geöffnete Ausgangs-UND-Tor 140c des Programmstatuswortregisters 130c für die Programmebene PL2 und das über das Steuersignal T2 geöffnete Eingangs-UND-Tor 12Oi das Programmstatuswort PSW2 in das Register 13Oi für das laufende Programmstatuswort eingegeben. Damit obliegt nun die Steuerung der Datenverarbeitungsanlage Befehlen der Programmebene PL2.
GE 976 023
909824/0322
275A890
Wie Fig. 8 zeigt, wurde zur Zeit t5 die Programmebene PL4 abgeschaltet und zur Zeit t10 die Programmebene PL2 eingeschaltet. Wie diese Figur ferner zeigt, beginnt zum Zeitpunkt t4 die übertragung des Inhalts des laufenden Programmstatuswortregisters 13Oi in das Programmstatuswortregister 13Oe, die zum Zeitpunkt t7 beendet ist.
Zum später liegenden Zeitpunkt t9 beginnt dann die Übertragung des Inhalts des Programmstatuswortregisters 130c in das Register 13Oi, die zum Zeitpunkt t11 beendet ist.
Das Hauptmaskensignal HMS und das Signal ST-PL2 werden, wie Fig. 8 zeigt, zum Zeitpunkt t12 abgeschaltet.
Da bei sehr vielen elektronischen Datenverarbeitungsanlagen auch Programmebenen existieren, die nicht durch Unterbrechungsanforderungssignale IRi einen Programmebenenwechsel anfordern können, müssen besondere Vorkehrungen getroffen werden, um diesen Programmebenen die Möglichkeit zu geben, ihr Programm, zumindest zeitweise, auszuführen.
Im Laufe der vorstehenden Beschreibung wurde wiederholt auf die Bedeutung der PIRRi-Bits hingewiesen, die eine Unterbrechungsanforderung einer Unterbrechungsquelle aufrechterhalten, die längst ihr Unterbrechungeanforderungssignal abgeschaltet hat.
Um nun die Ausführung und den Ablauf solcher Programme zu garar tieren, mu6 unabhängig von allen anderen Programmabläufen der Start dieser Programme ermöglicht werden. Dieses wird dadurch erreicht, daß, wie eingangs bereits erwähnt wurde, in der Interpretationsphase eines Befehls ein Intervallzähler für diese Art von Programmen aktiviert wird, indem ein in einer Ausführungsphase eines zuvor abgearbeiteten Befehls aufgesetzter Anfangswert dieses Zählers heruntergezählt wird.
GB 976 023
909824/0322
Wie Fig. 2 zeigt, wird im Funktionsblock 2 in der Interpretationsphase eines Befehls stets getestet, ob der Intervallzähler den Zählerstand O erreicht hat. Wenn dieses der Fall ist, wird, wie Funktionsblock 3 in Fig. 2 zeigt, das PIRR6-Bit für die Programmebene PL6 gesetzt. Dadurch wird garantiert, daß nach
! ι
ivorübergehender Inaktivität der Programmebenen PLO bis PL5 die Programmebene PL6 noch vor der Programmebene PL7 aktiviert wird).
Die Wahl dieser bzw. die Bevorzugung bestimmter Programmebenen kann mit der vorstehend beschriebenen Einrichtung zur Programmunterbrechung mühelos an die jeweiligen Gegebenheiten einer bestimmten Datenverarbeitungsanlage oder an ganz bestimmte Aufjgaben, die in einer Datenverarbeitungsanlage bearbeitet werden, angepaßt werden. Diese Anpassung kann entweder durch programmier bare Kommandos oder durch besondere Steuerschaltungen vorgenommen werden. Hierbei wirken die Kommandos oder die von der automatischen Steuerung erzeugten Steuersignale auf die Ablaufsteuerung 204 in Fig. 1 ein, die ausführlicher in Fig. 9 dargestellt ist.
Der Einfachheit halber sei hier auf programmierbare Kommandos eingegangen, die von dem Hauptdatenverarbeitungskomplex 200 in Fig. 1 in stetiger Folge über die Leitung 205 zur Ablaufsteuerung 204 übertragen werden. Im Minimalausbau kann man mit drei Typen von Kommandos auskommen, die für komplexere Strukturen sowohl der Datenverarbeitungsanlage, als auch der zu lösenden Aufgaben ohne weiteres erweiterbar sind.
Die Kommandos haben folgendes Format:
TYP I
01 (01234567) SO S1 S2 χ χ χ TYP II
10 xxxxxxxx χ χ χ χχχ
TYP III
Tf/
11 fa xxxxxxx χ χ χ χχχ
GE 976 023
909824/0322
275A890
(χ kann beliebig sein, da diese Position unberücksichtigt bleibt).
Zur Unterscheidung von T1 und T2 wird T1 eine binäre 1 und T2 eine binäre 0 zugeordnet.
Die obige Darstellung der verschiedenen Kommandotypen zeigt, daß die ersten beiden Bits jedes Kommandotyps als Operationscode betrachtet werden können. Der Typ I ist durch den Operationscode 01, der Typ II durch den Operationscode 10 und der Typ III durch den Operationscode 11 definiert.
ommandos aller drei Typen werden vom Hauptdatenverarbeitungskomplex über die Leitung 205 in der erforderlichen Reihenfolge zur Ablaufsteuerung 204 übertragen. Die im einfachsten Falle xiehradrige Steuerleitung 205 führt mit ihren ersten beiden Leitungen, die den sogenannten Operationscode übertragen, auf einei ommandodecodierer (COM-DEC) 300 an dessen Ausgängen I, II, III jeweils dann eine binäre 1 erzeugt wird, wenn der entsprechende Operationscode am Eingang des Kommandodecodierers 300 anliegt.
Die folgenden 14 Steuerleitungen, von denen die letzten drei Deim Typ I beliebige Signale führen können, da diese von der Anordnung nicht mehr ausgewertet werden, führen zu einer UND-roranordnung, die aus 11 UND-Toren 301a bis k besteht, deren jeweils einer Eingang mit einer der 11 Adern und dessen anderer 3ingang mit dem Ausgang I des Kommandodecodierers 300 verbunlen sind. Der Ausgang I gibt an, daß ein Kommando des Typs I anliegt. Je nach Vorliegen von binären Eingangssignalen auf den 11 Adern, wobei die erste Ader der dritten Bitstelle, die Eweite Ader der vierten und schließlich die 11. Ader der viert-
GE 976 023
909824/0322
letzten Bitstelle des Kommandos zugeordnet 1st, ergeben sich die Ausgangssignale O bis 7 sowie SO, S1 und S2 am Ausgang der UND-Toranordnung 301a bis k. Eine Decodierung des Operationscodes eines Kommandos des Typs II erzeugt am Ausgang II des Kommandodecoders 300 ein Ausgangssignal, das einer binären 1
entspricht und direkt das Steuersignal S3 darstellt. j
Bei Decodierung des Operationscodes eines Kommandos des Typs lift genügt es nur die dritte Bitstelle des Kommandos auszuwerten, die dann als Taktsignal T1 definiert 1st, wenn sie eine binäre 1 oder als Taktsignal T2 definiert ist, wenn sie eine binäre 'enthält. Die aus den UND-Toren 302 und 303 sowie dem Negator j304 bestehende Schaltungsanordnung führt diese Unterscheidung durch, wobei das UND-Tor 302 an seinem Ausgang das Taktsignal T1 und das UND-Tor 303 an seinem Ausgang das Taktsignal T2 erzeugt.
Die soeben erwähnten Steuersignale werden dem in Fig. 4 dargestellten Steuersignalgenerator 203 zugeführt, wo sie für eine genau definierte Zeitspanne in den Registern 23 bzw. 27 sowie in Flip-Flopspeichern 25a bis h bzw. 29a bis h zwischen- j gespeichert werden. Sie dienen dort in Verbindung mit den Steuersignalen S1 bis S3 zur Erzeugung der in der Steuerung 202 für den Programmebenenschalter benötigten Steuersignale PIRRO bis PIRR7, CMO bis CM7 sowie HMS.
GE 976 023
909824/0322
3*
Leerseite

Claims (1)

  1. PATENTANSPRÜCHE
    Einrichtung zur Programmunterbrechung und Steuerung der prioritätsgerechten Programmebenen-Umschaltung In einer elektronischen Datenverarbeitungsanlage, dadurch gekennzeichnet f daß zur überführung asynchron auftreten-* der Unterbrechungsanforderungen (IRl) In synchrone Programmzuteilungen ein Programmebenen-Schalter (201; Flg. 1) vorgesehen 1st, der von einer Steuerschaltung (202) betätigt wird, welch letztere die asynchron ein-
    treffenden Unterbrechungsanforderungen hinsichtlich ihrejs Prioritätsrangs und gegebenenfalls weiterer Bedingungen (PIRRi, CMl) stets nur zu einer ganz bestimmten Zeit (während der Dauer des Signals HMS) in der Interpretationsphase (I-Φ) eines Befehls, die noch vor der Decodierung des Operationscodes dieses Befehls liegt, überprüft und bei höherer Priorität und Erfüllung der weiteren Bedingungen einen Programmebenen-Wechsel auslöst, indem sie entsprechende Steuersignale (LV-PLi) für das Verlassen der laufenden Programmebene und Steuersignale (ST-PLj) zum Start der neuen Programmebene an den Programmebenen-Schalter überträgt, welcher das laufende Programm-Statuswort (LFD-PSW) gegen das neue (PSWj) austauscht.
    |2. Einrichtung nach Anspruch 1, gekennzeichnet durch eine Ablaufsteuerung (204; Fign. 1,9), welche Steuerkommandos, die ihr von einem Hauptdatenverarbeitungs-Komplex (20O) zugeführt werden, mittels eines Kommandodecodierers (300) und einer aus UND-Toren (301a bis k, 303) sowie einen Negator (304) bestehenden logischen Schaltung in Steuersignale umsetzt, derart, dafi ein erstjes komplexes UND-Tor (301a bis k), dem Bitsignale (0 bis 7) Steuersignale (SO bis S2) und ein Auegangssignal des
    GE 976 023
    ORIGINAL INSPECTED
    Kommandodecodierers zuführbar sind, die genannten Bitsignale und Steuersignale zu einem Steuersignal-Generator (203) überträgt, daß ferner ein zweites UND-Tor (302) , dem Taktsignale (T1/T2) und ein anderere Ausgangsjsignal des Kommandodecodierers zuführbar sind, ein erstes Taktsignal (T1) zu dem Programmebenen-Schalter
    (201) überträgt und das schließlich ein drittes UND-Tor (303), dem ebenfalls die Taktsignale (T1/T2) und über einen Negator (304) das andere Ausgangssignal des Kommandodecodierers zuführbar sind, ein zweites Taktsignal (T2) zu dem Programmebenen-Schalter und zu der Steuerung
    (202) des Programmebenen-Schalters überträgt und schließ- ! lieh ein letzter Ausgang des Kommmandodecodierers ein weiteres Steuersignal (S3) zu dem Steuersignal-Generatoi
    ; überträgt.
    !3. Einrichtung nach Anspruch 1 und/oder 2, dadurch gekennzeichnet, daß zur garantierten Umschaltung auf eine Pro- { grammebene niedrigerer Priorität als die höchste, ein Intervallzähler (1, 2, 16; Fig. 2) vorgesehen ist, der gleichzeitig mittels einer der letzten Operationen (16) einer Befehlsaueführungsphase (E-Φ) auf einen vorgebbar ei η Wert einstellbar, mittels der ersten Operation (1) jedez Interpretationsphase um den Wert 1 vermindert und danach auf seinen Nullwert abgefragt wird (2), wobei, wenn dieser Nullwert erreicht ist, ein Steuerbit (PIRRi) erzeugt wirjd (3), das eine Programmebenen-Umschaltung des Prograramebenen-Schalters (201) gestattet.
    Einrichtung nach einem oder mehreren der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß in der Ablaufsequenz (Fig. 2) die Oberprüfung auf da s Vorliegen der Voraussetzung für eine Programmebenen-Umechaltung und die gegebenenfalls erforderliche Programmebenen-Uaechaltung
    GE 976 023
    909824/0322
    durch die Aktivierung (4) einer Hauptmaske (HM) eingeleitet und durch deren Inaktivierung (11) beendet wird.
    Einrichtung nach einem oder mehreren der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß erste Steuersignale { (PIRRO bis PIRR7) die Steuerung (202) des Programmebenenl-Schalters (201) derart einstellen, daß dieser eine zuge-j ordnete Programmebene aktiv hält, selbst dann, wenn das zugeordnete Unterbrachungs-Anforderungssignal (IRO bis IR7) bereits wieder abgeschaltet ist.
    Einrichtung nach einem oder mehreren der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß zweite Steuersignale (CMO bis CM7) die Steuerung (202) des Programmebenen-Schalters derart einstellen, daß dieser eine Umschaltung von einer Programmebene niedrigerer Priorität auf eine solche vorgebbarer höherer Priorität solange unterdrückt bis diese zweiten Steuersignale wieder unwirksam gemacht sind.
    Einrichtung nach einem oder mehreren der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß der Steuersignal- Generator (203) Fig. 4) für die Erzeugung der ersten Steuersignale (PIRRO bis PIRR7) über UND-Tore (22a bis h) verfügt, die von den genannten Bitsignalen (0 bis 7) und einem Steuersignal (SO) von der Ablaufsteuerung (204) beaufschlagt werden und während der Dauer des Steuersignals (SO) die anliegende Kombination von Bitsignalen in ein Register (23) zur Zwischenspeicherung übertragen daß ferner ein Satz von Verriegelung··chaltungen (25a bis h) vorgesehen ist, dem ein Satz von UND-Toren (24a bl· h) vorgeschaltet ist, wobei jeder Bitstelle im Register eine Verriegelung··chaltung zugeordnet ist, so daß über diese UND-Tore während der Dauer eines anderen
    GE 976 023
    909824/0323
    Steuersignals (S1) die Verriegelungsschaltungen je nach Informationsinhalt der zugeordneten Registerbitstelle, aufgesetzt werden und jede aufgesetzte Verriegelungsschaltung ein bestimmtes (PIRRl) der ersten Steuersignale abgibt.
    8. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 7, dadurch gekennzeichnet, daß der Steuersignal-Generator (203; Fig. 4) für die Erzeugung der zweiten Steuersignals (CMO bis CM7) über UND-Tore (26a bis h) verfügt, die von den genannten Bitsignalen (0 bis 7) und einem Steuersignal (SO) von der Ablaufsteuerung (204) beaufschlagt werden und während der Dauer des Steuersignals (SO) die anliegende Kombination von Bitsignalen in ein Register (27) zur Zwischenspeicherung übertragen, daß ferner ein Satz von Verriegelungsschaltungen (29a bis h) vorgesehen ist, dem ein Satz von UND-Toren (28a bis h) vorgeschaltet ist, wobei jeder Bitstelle im Register eine Verriegelungsschaltung zugeordnet ist, so daß über diese UND-Tore während der Dauer eines anderen Steuersignals (S2) die Verriegelungsschaltungen, je nach Informationsinhalt der zugeordneten Registerbitstelle, aufgesetzt werden und jede aufgesetzte Verriegelungsschaltung «in bestimmtes (CMi) der zweiten Steuersignale abgibt.
    9. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß das Hauptmaskensignal (HMS) zur Aktivierung der Hauptmaske von einer weiteren Verriegelungsschaltung (30) erzeugt wird, wenn diese von einem weiteren Steuersignal (S3) aufgesetzt wird.
    10. Einrichtung nach einem oder mehreren der Anspruch· 1 bis 9, dadurch gekennzeichnet, daß die Steuerung (202t Fign. 6A bis D) des Programmebenen-Schalters (201) aus
    GE 976 023
    909824/0322
    einer Anordnung (60a bis h) zur Prüfung des Vorliegens von Unterbrechungsanforderungen (IRO bis IR7) und wei- j terer Bedingungen (CMO bis CM7) und eine Anordnung (80a j bis g) zur Prüfung des Prioritätsrangs der Unterbrechungpanforderungen besteht, wobei die erstgenannte Anordnung j Startsignale (ST-PLO bis ST-PL7) für eine Programroebenenürasehaltung und die zweitgenannte Anordnung Signale > (LV-PLO bis LV-PL7) zum Verlassen der laufenden Programmjebene für den Austausch von Programmstatuswörtern im Zuge einer Programmebenen-Umschaltung erzeugt.
    11. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 10, dadurch gekennzeichnet, daß der Programmebenenschalter (201; Fig. 7) aus einem Programmstatuswort-Rregister (130a bis h) je Programmebene (PLO bis PL7), sowie einem Programmstatuswort-Register (13Oi) für die laufende Programmebene besteht, wobei jedem dieser Programmstatuswort-Register ein UND-Tor (120a bis i) vor- und ein UND-Tor (140a bis i) nachgeschaltet ist, derart, daß das Programmstatuswort-Register (13Oi) für die laufende Programmebene mit allen übrigen parallel geschalteten Programmstatuswort-Registern (130a bis h) zu einem Ring zusammengeschaltet ist, daß ferner bei einem | Programmebenenwechsel zunächst zu einer ersten Taktzeit (T1) und beim Vorliegen eines Steuersignals (LV-PLi) zum Verlassen der laufenden Programmebene das laufende Programmstatuswort au* seinem Programmstatuswort-Register in das Programmstatuswort-Regietor (PSHi-R) der zu verlassenden Programmebene (PLi) übertragen und dann zu einer zweiten Taktseit (T2) und einem vorliegenden Steuersignal (ST-PLj) sun Starten der neuen Programmebene, das neue Programmstatuswort (PSWj) aus dem zugehOrigen PrograssMtatuswort-Register (PSWj-R) in das Prograanstatuswort-Register (13Oi) für das laufende Programmstatuswort übertragen wird, von wo aus es die
    GE 976 023
    909824/0322
    Steuerung der Maschine über eine Steuerleitung (STL) übernimmt.
    023
    909824/0322
DE2754890A 1977-12-09 1977-12-09 Einrichtung zur Programmunterbrechung Expired DE2754890C2 (de)

Priority Applications (12)

Application Number Priority Date Filing Date Title
DE2754890A DE2754890C2 (de) 1977-12-09 1977-12-09 Einrichtung zur Programmunterbrechung
FR7830983A FR2411442B1 (fr) 1977-12-09 1978-10-24 Dispositif traitant les interruptions de programmes dans un systeme de traitement de donnees
CH1117378A CH637230A5 (de) 1977-12-09 1978-10-30 Einrichtung zur programmunterbrechung und steuerung der programmebenen-umschaltung in einer datenverarbeitungsanlage.
JP53142429A JPS6046737B2 (ja) 1977-12-09 1978-11-20 プログラム・レベル切替え方式
US05/962,549 US4247894A (en) 1977-12-09 1978-11-20 Arrangement for program interruption
AU41924/78A AU518925B2 (en) 1977-12-09 1978-11-24 Programme interrupt & priority switching
SE7812174A SE7812174L (sv) 1977-12-09 1978-11-27 Anordning for programavbrott
IT30248/78A IT1160270B (it) 1977-12-09 1978-11-28 Struttura circuitale per l'interruzione di programmi
ES475616A ES475616A1 (es) 1977-12-09 1978-12-01 Una disposicion para interrupcion de programa y para contro-lar la conmutacion de nivel de programa dependiente de prio-ridad en un sistema electrico de tratamiento de datos
CA317,422A CA1115851A (en) 1977-12-09 1978-12-05 Arrangement for program interruption
GB7847445A GB2009981B (en) 1977-12-09 1978-12-06 Data processing apparatus
BR7808126A BR7808126A (pt) 1977-12-09 1978-12-11 Disposicao para interrupcao de programa

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2754890A DE2754890C2 (de) 1977-12-09 1977-12-09 Einrichtung zur Programmunterbrechung

Publications (2)

Publication Number Publication Date
DE2754890A1 true DE2754890A1 (de) 1979-06-13
DE2754890C2 DE2754890C2 (de) 1982-10-28

Family

ID=6025710

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2754890A Expired DE2754890C2 (de) 1977-12-09 1977-12-09 Einrichtung zur Programmunterbrechung

Country Status (12)

Country Link
US (1) US4247894A (de)
JP (1) JPS6046737B2 (de)
AU (1) AU518925B2 (de)
BR (1) BR7808126A (de)
CA (1) CA1115851A (de)
CH (1) CH637230A5 (de)
DE (1) DE2754890C2 (de)
ES (1) ES475616A1 (de)
FR (1) FR2411442B1 (de)
GB (1) GB2009981B (de)
IT (1) IT1160270B (de)
SE (1) SE7812174L (de)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0059293B1 (de) * 1981-02-27 1985-07-03 International Business Machines Corporation Verfahren und Vorrichtung zur selektiven Bereitstellung von Teilen einer Befehlseinheit für einen von einer Mehrzahl von Benutzern
US4736318A (en) * 1985-03-01 1988-04-05 Wang Laboratories, Inc. Data processing system having tunable operating system means
US5021945A (en) * 1985-10-31 1991-06-04 Mcc Development, Ltd. Parallel processor system for processing natural concurrencies and method therefor
US4809218A (en) * 1986-01-29 1989-02-28 Digital Equipment Corporation Apparatus and method for increased system bus utilization in a data processing system
FR2604543B1 (fr) * 1986-09-30 1989-04-07 Sfena Procede et dispositif pour l'optimalisation des performances de primitives temps reel d'un noyau d'executif temps reel sur des structures multiprocesseurs
US4823304A (en) * 1987-01-15 1989-04-18 International Business Machines Incorporated Method of providing synchronous message exchange in an asychronous operating environment
US5291581A (en) * 1987-07-01 1994-03-01 Digital Equipment Corporation Apparatus and method for synchronization of access to main memory signal groups in a multiprocessor data processing system
US5193179A (en) * 1988-08-09 1993-03-09 Harris Corporation Activity monitor system non-obtrusive statistical monitoring of operations on a shared bus of a multiprocessor system
US5201052A (en) * 1989-02-10 1993-04-06 Fujitsu Limited System for transferring first and second ring information from program status word register and store buffer
US5057997A (en) * 1989-02-13 1991-10-15 International Business Machines Corp. Interruption systems for externally changing a context of program execution of a programmed processor
JPH0399145U (de) * 1990-01-29 1991-10-16
US5291603A (en) * 1991-03-14 1994-03-01 Westinghouse Electric Corp. Microprocessor system with multiple interrupts masked for use in electronic control or monitoring of various solid-state products
US5469571A (en) * 1991-07-15 1995-11-21 Lynx Real-Time Systems, Inc. Operating system architecture using multiple priority light weight kernel task based interrupt handling
JP2685712B2 (ja) * 1994-03-30 1997-12-03 株式会社サンポウロック ハンドルロック
DE19535546B4 (de) * 1995-09-25 2004-04-08 Siemens Ag Verfahren zum Betreiben eines durch ein Realzeit-Betriebssystem gesteuerten Realzeit-Computersystems
US5905913A (en) * 1997-04-24 1999-05-18 International Business Machines Corporation System for collecting a specified number of peripheral interrupts and transferring the interrupts as a group to the processor
US5961622A (en) * 1997-10-23 1999-10-05 Motorola, Inc. System and method for recovering a microprocessor from a locked bus state
US20050021894A1 (en) * 2003-07-24 2005-01-27 Renesas Technology America, Inc. Method and system for interrupt mapping
US7386642B2 (en) * 2005-01-28 2008-06-10 Sony Computer Entertainment Inc. IO direct memory access system and method
US7680972B2 (en) * 2005-02-04 2010-03-16 Sony Computer Entertainment Inc. Micro interrupt handler
JP2006216042A (ja) * 2005-02-04 2006-08-17 Sony Computer Entertainment Inc 割り込み処理のためのシステムおよび方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL294820A (de) * 1962-07-03
US3290658A (en) * 1963-12-11 1966-12-06 Rca Corp Electronic computer with interrupt facility
GB1105244A (en) * 1964-09-04 1968-03-06 Automatic Telephone & Elect Improvements in or relating to data processing systems
US3643229A (en) * 1969-11-26 1972-02-15 Stromberg Carlson Corp Interrupt arrangement for data processing systems
US3789365A (en) * 1971-06-03 1974-01-29 Bunker Ramo Processor interrupt system
GB1397438A (en) * 1971-10-27 1975-06-11 Ibm Data processing system
GB1381885A (en) * 1972-01-05 1975-01-29 Robotron Veb K Data processing unit
US3828325A (en) * 1973-02-05 1974-08-06 Honeywell Inf Systems Universal interface system using a controller to adapt to any connecting peripheral device
RO58198A2 (de) * 1973-03-13 1975-06-15
JPS50140230A (de) * 1974-04-26 1975-11-10
US4086626A (en) * 1974-10-07 1978-04-25 Fairchild Camera And Instrument Corporation Microprocessor system
US3984813A (en) * 1974-10-07 1976-10-05 Fairchild Camera And Instrument Corporation Microprocessor system
FR2296221A1 (fr) * 1974-12-27 1976-07-23 Ibm France Systeme de traitement du signal
US3984820A (en) * 1975-06-30 1976-10-05 Honeywell Information Systems, Inc. Apparatus for changing the interrupt level of a process executing in a data processing system
US4047161A (en) * 1976-04-30 1977-09-06 International Business Machines Corporation Task management apparatus
US4103329A (en) * 1976-12-28 1978-07-25 International Business Machines Corporation Data processing system with improved bit field handling
US4104721A (en) * 1976-12-30 1978-08-01 International Business Machines Corporation Hierarchical security mechanism for dynamically assigning security levels to object programs

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
1957 Western Computer Proceedings, Seiten 156 bis 160 *
pdp 11/45 processor handbook, digital equipment corporation, 1971, Seiten 1 bis 24 und Seiten 205 und 218 *

Also Published As

Publication number Publication date
IT1160270B (it) 1987-03-11
GB2009981B (en) 1982-02-10
US4247894A (en) 1981-01-27
FR2411442B1 (fr) 1986-01-31
SE7812174L (sv) 1979-06-10
BR7808126A (pt) 1979-07-31
JPS6046737B2 (ja) 1985-10-17
AU518925B2 (en) 1981-10-29
CH637230A5 (de) 1983-07-15
GB2009981A (en) 1979-06-20
IT7830248A0 (it) 1978-11-28
DE2754890C2 (de) 1982-10-28
ES475616A1 (es) 1979-04-01
AU4192478A (en) 1979-06-14
FR2411442A1 (fr) 1979-07-06
CA1115851A (en) 1982-01-05
JPS5480640A (en) 1979-06-27

Similar Documents

Publication Publication Date Title
DE2754890A1 (de) Einrichtung zur programmunterbrechung
DE2209136A1 (de) Steuer- und Anpassungsschaltung für Datenverarbeitungsanlagen
DE2735397C2 (de) Überwachungseinrichtung für eine programmgesteuerte Maschine
DE2855673C2 (de)
EP0190554B1 (de) Verfahren und Schaltungsanordnung zum Umschalten einer taktgesteuerten Einrichtung mit mehreren Betriebszuständen
DE2157982A1 (de) Digitales Multiprozessor-Datenverarbeitungssystem
DE4101623A1 (de) Informationsverarbeitungssystem
DE3727017C2 (de)
DE2145709B2 (de)
EP0048991B1 (de) Verfahren und Anordnung zur Behandlung von Unterbrechungsbedingungen während des Arbeitsablaufes in Datenverarbeitungsanlagen mit Mikroprogrammsteuerung
DE19744071A1 (de) Eine programmierbare Logiksteuervorrichtung verwendendes Steuerungssystem
DE3235762A1 (de) Verfahren und vorrichtung zur synchronisation von datenverarbeitungsanlagen
EP0012185A1 (de) Prüfschaltung für synchron arbeitende Taktgeber
DE1424793A1 (de) Verfahren zur Auswertung von Analogsignalen in Systemen der Datenverarbeitung
DE2100443B2 (de) Einrichtung zum Prüfen einer logischen Funktionsschaltung in einer Adapter-Steuereinheit einer Datenverarbeitungsanlage
DE2622140C3 (de) Einrichtung zur Steuerung manueller Operationen
DE2756764C3 (de) Einrichtung zur Synchronisation von Prozessor und Speicher in einer elektronischen Datenverarbeitungsanlage
DE2838887C2 (de) Datenverarbeitungsanlage mit einer Schaltung für Unterbrechungsanforderungen zur Übernahme des gemeinsamen Busses
DE3123379C2 (de)
EP0010193A1 (de) Einrichtung zur Steuerung der Zykluszeit für einen Mikroprozessor mit Steuerspeichern unterschiedlicher Verarbeitungsgeschwindigkeit
CH640959A5 (en) Dependable multi-computer system with high processing speed
DE19701322C2 (de) Verfahren zur Aktualisierung der Betriebssoftware
DE1958747C3 (de) Einrichtung zur mikroprogrammgesteuerten Fehlerprüfung
DE2715983C2 (de) Schaltungsanordnung in einem Digitalrechner zur Überwachung und Prüfung des ordnungsgemäßen Betriebs des Digitalrechners
DE1549522C (de) Datenverarbeitungsanlage mit Simultanverarbeitung mehrerer Programme mittels mehrerer Rechner

Legal Events

Date Code Title Description
OAP Request for examination filed
OD Request for examination
D2 Grant after examination
8339 Ceased/non-payment of the annual fee