DE2428013C2 - Periphere Unterbrechungssteuereinheit - Google Patents

Periphere Unterbrechungssteuereinheit

Info

Publication number
DE2428013C2
DE2428013C2 DE2428013A DE2428013A DE2428013C2 DE 2428013 C2 DE2428013 C2 DE 2428013C2 DE 2428013 A DE2428013 A DE 2428013A DE 2428013 A DE2428013 A DE 2428013A DE 2428013 C2 DE2428013 C2 DE 2428013C2
Authority
DE
Germany
Prior art keywords
signal
interrupt
register
generated
peripheral
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
DE2428013A
Other languages
English (en)
Other versions
DE2428013A1 (de
Inventor
Angelo Ivrea Turin/Turiono Subrizi
Ettore Ivrea Turin/Torino Violino
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.)
Telecom Italia SpA
Original Assignee
Ing C Olivetti and C SpA
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 Ing C Olivetti and C SpA filed Critical Ing C Olivetti and C SpA
Publication of DE2428013A1 publication Critical patent/DE2428013A1/de
Application granted granted Critical
Publication of DE2428013C2 publication Critical patent/DE2428013C2/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Bus Control (AREA)
  • Computer And Data Communications (AREA)

Description

Die vorliegende Erfindung betrifft eine periphere Unterbrechuugssteuereinheit zum wahlweisen Weiterleiten von Unterbrechungssignalen von einer Vielzahl von peripheren Einheiten zu einer Zentraleinheit gemäß dem Oberbegriff des Patentanspruchs 1.
Es ist bekannt, mehrere periphere Einheiten mit einer zentralen Datenverarbeitungsanlage mitteis entsprechender Steuergeräte zu verbinden, die den Verkehr des Datenflusses zwischen dem Zentralrechner und den peripheren Einheiten abwickeln (US-PS 34 47 135).
Die Lösung hierfür weist jedoch für Maschinen, bei denen Größe und Kosten gegenüber der Verarbeitungsgeschwindigkeit Vorrang haben, trotzdem die Nachteile einer großen Kostenaufwendigkeit und Unhandlichkeit auf.
Darüber hinaus ist es bekannt, mehrere periphere Einheiten mittels eines einzigen Mehrfachsteuergeräts zum so Festlegen der Vorrangigkeit unter den peripheren Einheiten an den Zentralrechner anzuschließen (US-PS 76 542).
Ein Mehrfachsteuergerät dieser Art weist ein Register zum Speichern der Unterbrechungen und eine Verzögerungsschaltung auf, durch die verhindert wird, daß eine Unterbrechung niedriger Priorität in einem solchen Register während einer festen Zeitspanne solange nicht gespeichert wird, bis der Verarbeitungsablauf im Hinblick auf die Unterbrechungen höherer Priorität beendigt wurde.
Ein derartiges Steuergerät hat jedoch den Nachteil, daß es bei der Abwicklung der Unterbrechungen langsam arbeitet, da die Zeit für die Blockierung des Registers gleich sein muß der Zeit, die zur Bearbeitung einer Unterbrechung erforderlich ist Aus diesem Grunde ist also die Zeit entweder langer oder gleich lang der, die für die Durchführung des Verarbeitungsvorgangs maximaler Länge erforderlich ist
Auch ist ein Mehrfachsteuergerät bekannt(GB-PS 12 17 355), bei dem ein die Unterbrechungen speicherndes Register zyklisch von einem Zeitgeber abgetastet wird. Eine Unterbrechung wird behandelt sobald sie vom Zeitgeber erkannt wird, wonach der Zeitgeber die Registerabtastung fortsetzt, indem er mit der Stelle beginnt, die auf die der abgewickelten Unterbrechung entsprechenden Stelle folgt.
Eine derartige Anordnung hat jedoch den Nachteil, daß der Befehl höherer Priorität, der auftritt, nachdem der b5 Zeitgeber bereits die diesbezügliche Registerstelle abgetastet hat, nur erkannt wird, wenn der Zeitgeber den Abtastzyklus beendet hat.
Weiter ist aus der DE-AS 15 74 668 eine Unterbrechungssteuereinheit bekanntgeworden, die eine Vielzahl von Zellen zum einzelnen Speichern der Unterbrechungssignale, die von zugeordneten peripheren Einheiten
erzeugt werden, und einen Prioritätsdecodierer zum Decodieren des Unterbrechungssignals mit der höchsten Priorität einschließt, um die entsprechende Codekombination an die Zentraleinheit zu liefern. Die Zelle, die das von der Zentraleinheit empfangene Unterbrechungssignal speichert, wird dann von einem Zeitsignal in Verbindung mit dem gerade decodierten Unterbrechungssignal gelöscht Diese bekannte Steuereinheit hat den Nachteil, daß sie zusätzliche Steuerungen durch die Zentraleinheit benötigt, um zu verhindern, daß ein neues Unterbrechungssignal vorzeitig decqdiert wird.
Demgegenüber ist die von der Erfindung zu lösende technische Aufgabe darin zu sehen, eine periphere Unterbrechungssteuereinheit der im Oberbegriff des Patentanspruchs 1 angegebenen Art zu schaffen, bei der auch während der Ausführung eines Mikroprogramms, das einer zu der Zentraleinheit übertragenen Codekombination entspricht, Unterbrechungssignale in Zellen des Unterbrechungsregisters gespeichert werden können, ohne daß dabei eine aufwendige Steuerung erfordert wird, um ein vorzeitiges Wirken dieser Unterbrechungssignale in der Zentraleinheit zu verhindern.
Diese Aufgabe wird erfindungsgemäß mit den im Kennzeichen des Patentanspruchs 1 angegebenen Mitteln gelöst
Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
Die Erfindung ist anhand eines nachstehend im Zusammenhang mit den Zeichnungen beschriebenen Ausführungsbeispiels dargestellt Es zeigt
F i g. 1 ein Blockdiagramm einer das erfindungsgemäße Steuergerät verwendenden Anlage,
F i g. 2 das Format des Mikrobefehls IOF, das von dem erfindungsgemäßen Steuergerät verwendet wird,
F i g. 3 ein Schaltschema des Steuergeräts nach der Erfindung und F i g. 4 das Steuerungsdiagramm.
Die periphere Unterbrechungssteuereinheit 1 nach der Erfindung liegt über den drei Kanälen 2,3 und 9 an der Zentraleinheit bzw. dem Zentralrechner 4 herkömmlicher Bauart der die von dem Steuergerät 1 empfangenen Daten mit der Durchführung der über einen Kanal 18 zugeführten »Mikrobefehle« verarbeiten kann, die sich permanent im Speicher 5 befinden (der hiernach mit ROM bezeichnet). Der Speicher ROM 5 ist ein reiner Lesespeicher, d. h. die Bedienungsperson kann seinen Inhalt nicht verändern. Der ROM 5 enthält die Menge Mikrobefehle zur Durchführung der Operationen, die von der Bedienungsperson durchgeführt werden sollten. Eine von dem Zentralrechner 4 auf bekannte Weise festgelegte Folge von Mikrobefehlen (Mikroprogramm) entspricht jedem Arbeitsgang.
Der Zentralrechner 4 liegt über einem Kanal W an einem Speicher 6 (hiernach mit RAM bezeichnet), in den und aus dem Daten geschrieben bzw. gelesen werden können.
RAM 6 wird als Speicher für unveränderliche Daten oder für solche Daten verwendet die sich während des Verarbeitungsprozesses ändern können.
Der Anschluß und der zwischen dem Zentralrechner 4, ROM 5 und RAM 6 stattfindende Datenaustausch wird hier nicht näher beschrieben, da dies nicht in den Bereich fällt der Gegenstand dieser Erfindung ist Für diesbezügliche Einzelheiten wird auf die DE-OS 20 59 341 verwiesen. Es soll hier nur erwähnt werden, daß der Zentralrechner 4 ein Rechner mit mehreren Prioritätsstufen ist Insbesondere weist er wenigstens zwei Prioritätsstufen auf, und zwar eine Stufe für die Durchführung der Verarbeitungsoperationen und eine Stufe zur Steuerung des Verkehrs mit den peripheren Einheiten.
Die periphere Unterbrechungssteuereinheit 1 ist über einem Kanal 10 an eine Gruppe peripher er Einheiten angeschlossen, die z.B. eine Tastatur 11, eine automatische Einzugsvorrichtung 12, einen Drucker 13, eine magnetische Kartenlese/Schreibeinheit 14 und eine Funktionstaste 16 umfassen kann.
Selbstverständlich ist die Liste dieser peripheren Einheiten nur beispielshalber angeführt denn es können auch andere Vorrichtungen an das Mehrfachsteuergerät 1 angeschlossen werden.
Die Tastatur ist bekannter Bauart z. B. eine solche, wie sie in der DE-OS 22 44 438 beschrieben wurde.
Die 8-Bitkodierung nach dem ISO-Code der über die Tastatur eingegebenen Daten erfolgt auf herkömmliche Art z. B. auf die in »Pulse, digital and switching waveform« von Millman-Taub (McGraw Hill Inc. 1965) auf Seite 349, F i g. 9—43, beschriebene Art und Weise. Solche Daten werden nach den Anforderungen der Bedienungsperson vom Zentralrechner 4 zur Verarbeitung verwendet.
Der Drucker 13 ist auch bekannter Bauart z. B. nach der DE-OS 21 05 875, und ist geeignet, die vom so Zentralrechner 4 erkannten Daten über das Mehrfachsteuergerät 1 auszudrucken.
Die Einzugsvorrichtung 12 entspricht dem in der DE-OS 22 83 876 beschriebenen Aufbau und ist geeignet Bankkarten und Vordruckhefte gegenüber dem Drucker 12 einzuführen und in die richtige Stellung zu bringen, sollte diese Anlage mit einer Buchungsmaschine verwendet werden.
Die magnetische Kartenlese/Schreibeinheit 14 entspricht der in der DE-OS 22 20 329 beschriebenen. Durch sie können die Daten auf einer Magnetkarte geschrieben bzw. von ihr abgelesen werden.
Schließlich hat die Funktionstasteneinheit die Aufgabe, die Durchführung des Programms auf eine Weise zu steuern, die nachstehend beschrieben wird. Der Daten- und Befehlsaustausch zwischen dem Zentralrechner 4 und dem Steuergerät 1 wird durch einen besonderen Input-Output-Mikrobefehl, einen IOF-Befehl, durchgeführt
Der Mikrobefehl besteht aus zwei Worten von je acht Bit (oder einem Byte), die jedesmal während der Durchführung des IOF im Funktionsspeicher 8 und im Sammelregister 7 des Zentralrechners 4 (F i g. 1) aufgezeichnet werden.
Auf eine Beschreibung des Erkennens und der Durchführung des Mikrobefehls IOF seitens des Zentralrechners 4 sowie die Übertragung von ROM 5 an den Zentralrechner 4 wird hier nicht näher eingegangen, da dies nicht Gegenstand dieser Erfindung ist Es soll nur vermerkt werden, daß beiläufig zur Durchführung des Mikrobefehls IOF durch den Zentralrechner 4 das erste und zweite Byte des Mikrobefehls IOF in den Speichern 8 bzw. 7 aufgezeichnet werden.
Tabelle A (Register 8)
IOF
durchgerührte Funktion
FUOO 0 1 0 0 0
FUOi 0 1 0 0 1
FUO 2 0 1 0 1 0
FUO 4 0 1 1 0 0
10 FUO 5 0 1 1 0 1
FUO 6 0 1 1 1 0
RÜCKSTELLEN Zeichenausgabe
desgl. Befehlsausgabe
desgl. Auswahlausgabe
desgl. Zeicheneingabe
desgl. Statuseingabe
desgl. Nameneingabe
Es sind insbesondere die Bits by und bt (Tabelle A) des ersten Byte des Mikrobefehls, die die 1OF unter den möglichen Mikrobefehlen festlegen. Das Bit O6 = 0 besagt, daß der Datenaustausch vom Zentralrechner 4 zu einer peripheren Einheit als Output iOF oder mit i>6 - 1 als Input IOF stattfindet Die Bits bz und £>* zeigen an, ob die durch das zweite Byte spezifizierte Information ein »Zeichen«, einen »Befehl«, den »Status« irgendeines Schalters der peripheren Einheiten, falls der Zentralrechner eine solche Einheit wählt, oder einen »Namen« der peripheren Einheit betrifft, sollte es tatsächlich eine periphere Einheit geben, die den Betrieb des Zentralrechners 4 unterbrochen hat.
Die Wahl einer peripheren Einheit durch den Zentralrechner 4 kommt zustande mit der Durchführung eines besonderen Output-Mikrobefehls IOF, der gekennzeichnet ist durch das Bit bi - 0, dasBit f>4 - 1, und das Bit be - 0, die alle zum ersten Byte gehören. In diesem Falle liegt die Bedeutung der Bit bi und bi des zweiten Bytes so wie die nachstehende Tabelle B dies anzeigt.
Tabelle B (Register 7) Wahl der peripheren Einheit
Drucken 0 0 1
Automatischer Vorschub 1 0 1
Magnetkarte 0 1 1
Das Ergebnis dieses Wahl-IOF ist der Anschluß des Zentralrechners an die vom zweiten Byte gewählte periphere Einheit
Im Falle einer durch eine periphere Einheit determinierten Unterbrechung führt der Zentralrechner einen besonderen Mikrobefehl zum Erkennen der unterbrechenden peripheren Einheit durch. Ein derartiger IOF heißt Nameninput und umfaßt die Bits bi = 0, bA = 1, t* = 1. In einem derartigen Falle identifizieren die Bits A2,63,64 und bi des zweiten Bytes die Codekombination, die dem Typ der Unterbrechungsursache nach Tabelle C entspricht
Tabelle C (Register 7)
Unterbrechungsursache Unterbrechung bi bi b< 0
Frei 71 1 1 1 0
Fehler 72 0 1 1 0
Zeichen bereit 73 1 0 1 0
Transportzahn 74 0 0 1 0
Zyklusanfang 75 1 1 0 0
Kartenausstoß 76 0 1 0 0
Zeilenvorschubstrobe 77 1 O 0 0
Ende des Kartenausstoßes 78 0 0 0 1
Ende des Kartenzeilenvorschubs 79 0 0 0 1
Kartentaktgeber 80 1 0 0
Die Aufzählung der Unterbrechungsursachen wurde hier nur beispielshalber angeführt Selbstverständlich können je nach Maschinentyp in Entsprechung der unterschiedlichen zugeordneten peripheren Einheiten auch hier Änderungen vorgenommen werden.
Nachstehend wird in bezug auf Fig.3 eine besondere Beschreibung des Teils der peripheren Unterbrechungssteuereinheit 1 gegeben, die die von den peripheren Einheiten empfangenen Befehle betreffen.
Die peripheren Einheiten 11,12,14 und 16 sind über den aus den Leitungen 71—80 bestehenden Kanal 100 an die Befähigungs- oder Freigabeinputs einer Flipflopgruppe 101—110 eines Unterbrechungsregisters 25 angeschlossen.
Das Register 25 speichert die Unterbrechungen, indem es die Signale auf den Leitungen 61—70 wirksam werden läßt die den die Unterbrechung erforderlich machenden peripheren Einheiten entsprechen.
Wenn z. B. die Tastatur 11 ein Signal »Zeichen bereit« auf der Leitung 73 erzeugt, wird der Flipflop 103 erregt
Die Ausgänge 61—70 liegen über einen Kanal 27 am Register 26, der für diese Unterbrechungen die dynamischen Größen in statistische umwandelt Ein derartiger Umwandlungsvorgang wird durch eine Leitung 88
Tabelle D SEM20 angeschlossene
periphere Einheit
SEMiO O
1
1
Tastatur
Kanal 38
Statustasten
1
O
1
ermöglicht, die ein Steuersignal führt, das auf nachstehend beschriebene Art und Weise gebildet wird.
Das Register 26 ist über einen Kanal 36 mit dem Decodierer verbunden, dessen Ausgang eine Codekombination aus vier Bits liefert, die sich auf die Bezeichnung der Unterbrechungsursache nach der in Tabelle C aufgestellten Prioritätsordnung bezieht.
Auch hier soll kurz erwähnt werden, daß die in der Tabelle C erwähnten Unterbrechungsursachen und die wiedergegebene Prioritätsordnung nur beispielshaften Charakter hat. Nach Bedarf und Typ der Maschine mit der das Steuergerät 1 verwendet wird, können andere Unterbrechungsursachen und Prioritätsordnungen festgelegt werden. Der Prioritätsdecodierer 37 kann von einer beliebigen Bauart sein. Er kann z. B. aus einem Kombinationsnetz bestehen, das zehn Eingänge und vier Ausgänge hat, die in der Lage sind, die Schaltfunktion zu erzeugen um, die nach einer erstellten Prioritätsordnung an die Eingänge gelegten Unterbrechungsursachen zu ordnen.
Ober einen Kanal 38 liegt der Decodierer 37 an einer Multiplexschaltung 21, zu deren Eingängen die Tastatur 11 über einen Kanal 98 und die Statustasten über einen Kanal 96 Zugang haben.
Die Multiplexschaltung 21 hat die Funktion, eine der erwähnten peripheren Einheiten mit dem Kanal 2 zu verbinden, der am Sammeiregister 7 des Zcntralrechners 4 (F i g. 1) liegt.
Die Wahl, welche der erwähnten Kanäle 38,96 und 98 über den Kanal 2 mit dem Zentralrechner 4 verbunden werden sollten, wird auf der Basis der Codekombinationen der Signale SEM 10 und SEM 20 von der Multiplexschaltung 21 ausgeführt, wobei die erwähnten Signale gemäß der folgenden Tabelle D an die beiden Leitungen 94 bzw. 95 gegeben werden.
Die Signale SEM 10 und SEM20 werden von den beiden UND-Schaltungen 92 bzw. 93 erzeugt, die an den Ausgängen 91,90,89 des die Signale FUO 4, FUO 5 und FUO 6 tragenden Decodierers 20 liegen.
Der vom Funktionsregister 8 des Zentralrechners 4 ausgehende Kanal 3 steht mit dem Decodierer 20 in Verbindung, der wahlweise die Signale FUOO, FUO1, FUO 2, FUO 4, FUO 5 und FUO 6 aufgrund der Codekombination erzeugen kann, die in Übereinstimmung mit dem Inhalt der Tabelle A mit dem ersten Byte des Mikrobefehls in Beziehung steht
Wird ein Mikrobefehl einer Zeicheneingabe dekodiert befindet sich das Signal FUO4 auf der Stufe EINS, wodurch die Signale SEMiO und SEM 20 die Wertigkeit 1 und 0 aufweisen. Auf diese Weise verbindet die Multiplexschaltung 21 die Tastatur 11 mit dem Kanal 2, so daß das eingestellte Zeichen zur Steuereinheit überführt werden kann. Gleichermaßen werden durch die Signale FUO 5 und FUO 6 die Statustasten und der Kanal 38 mit dem Kanal 2 verbunden.
Das von der Ausgabeleitung 89 des Decodierers 20 geführte Signal FUO 6 wird an einen Eingang der UND-Schaltung 89 gelegt deren anderer Eingang die Leitung 35 ist Die UND-Schaltung 89 erzeugt ein Signal auf der Leitung 88, das, wie bereits oben gezeigt das Register 26 steuert so daß die Unterbrechungen als dynamische Größe in statische umgewandelt werden. Da die Multiplexschaltung 21 und der Funktionsdecodierer 20 bekannter Bauart sind, erübrigt sich hier eine detaillierte Beschreibung.
Zusätzlich zum Anschluß an das Register 26 liegt der Ausgangskanal 27 des Registers 26 noch an der ODER-Schaltung 28, deren Ausgang an die Erregerleitung 29 eines Flipflops 82 angeschlossen ist. Der Flipflop 82 wird wirksam, wenn er durch ein Taktsignal Φι konditioniert wird, das über der Leitung 30 des Kanals 9 zyklisch erzuegt wird.
Demgegenüber stellt die Blockierleitung 31 des Flipflops den Ausgang einer UND-Schaltung 113 dar, deren Eingänge aus einer ein Signal PCFW führenden Leitung 1!2 und einer ein Signal PES30 führenden Leitung !!1 bestehen.
Das Signal PCF11 kommt von einer Leitung 112 des Kanals 3. Die Leitung 112 führt das Bit b\ des ersten Mikrobefehl-Bytes. Aus der Tabelle A geht hervor, daß das Bit b\ den Mikrobefehl IOF zur Rückstellung bestimmt
Demgegenüber wird das Signal PES 30 während der Durchführung jedes Mikrobefehls (F i g. 4) zyklisch vom Zentralrechner erzeugt Der Ausgang 32 von Flipflop 82 erzeugt ein Signal INT, das über den Kanal 9 dem Zentralrechner 4 zugeführt und zur Vermittlung oder Übertragung der bestehenden Unterbrechungen verwendet wird.
Der Ausgang 32 Hegt am Eingang einer UND-Schaltung 83, deren anderer Eingang ein Signal LEV 2 führt, das dann vom Zentralrechner 4 erzeugt wird, wenn letzterermit der Prioritätsstufe »2« betrieben wird.
Der Ausgang der UND-Schaltung 83 weist eine Leitung 35 auf, die auf den Eingang der UND-Schaltung 86 trifft und darüber hinaus mit der UND-Schaltung 87 verbunden ist Ihre anderen Eingänge sind die Leitungen 33 und 112 sowie eine Leitung 114, die das Taktsignal PES 20 (F i g. 4) führt
Der Ausgang 81 der UND-Schaltung 87 liegt an den Eingangsleitungen 81]... 8110 eben so vieler UND-Schaltungen 151—160. Die Eingänge 51—60 und UND-Schaltungen 151 — 160 liegen an einem Ausgangskanal 40 eines Decodierers 39, der die vier auf dem Kanal 38 geführten Ausgangsbits des Prioritätsdecodlerers 37 entschlüsseln kann und eine entsprechende Codekombination aus zehn Bits erzeugt
Der Decodierungsvorgang läuft so ab, daß immer nur einer der Ausgänge 51 —60 erregt ist Welcher es ist, hängt von der über Kanal 38 geführten Unterbrechungsursache ab. Die Ausgänge 41 —50 der UND-Schaltungen 15 ί — 160 liegen an den Blockierleitungen der Flipflop 101—110. Es folgt nun die Beschreibung der Funktionsweise der peripheren Unterbrechungssteuereinheit 1.
Beispielshalber sei angenommen, daß zwei Unterbrechungssignale von den peripheren Einheiten aasgehen. z. B. von der Tastatur 11 und von der Einzugsvorrichtung 12. Drückt die Bedienungsperson nun eine Taste der Tastatur 11, so sendet diese ein »Zeichen bereit«-Signal, das einen auf die Leitung 73 von Kanal 100 (F ■ g. 3) gegebenen Strom darstellt, und überträgt über den Kanal 98 die Codekombinationen der gedrückten Taste. Es gilt für die gleiche Zeit die Annahme, daß die Einzugsvorrichtung 12 ein »Ende der Karteneinführung«-Sigiial
ίο über die Leitung 79 des Kanals 100 gibt. Ein derartiges Signal wird durch einen nicht in der Figur dargestellten Mikroschalter erzeugt, wenn die Karte richtig in die Einzugsvorrichtung 12 eingeführt ist Auch werden diese Signale im Unterbrechungsregister 25 gespeichert, das den Flipflop 103 bzw. 109 erregt
Auf diese Weise ergibt sich eine Codekombination 0010000010 auf den Leitungen 61—70. Diese Codekombination wird dem Register 26 zur Umwandlung in statische Größen und über den k ar.ai 27 der ODER-Schaltung 28 zugeführt
Das an die Ausgangsieitung 29 der ODER-Schaltung 28 gegebene Signa! erregt den Flipflop 82 zu dem Zeitpunkt in dem das Taktsignal über die Leitung 30 des vom Zentralrechner 4 ausgehenden Kanals 9 empfangen wird. Auf diese Weise wird ein auf der Ausgangsleitung 32 des Flipflops 82 erscheinendes Signal auf der Stufe EINS überführt.
Das auf die Leitung 32 gegebene Signal ist das Unterbrechungssignal und wird über den Kanal 9 dem Zentralrechner 4 zugeführt, der von diesem Signal konditioniert wird, so daß das Signal von der Prioritätsstufe, auf der die Rechenmikrobefehle durchgeführt werden, auf eine höhere Prioritätsstufe überführt wird, auf der die peripheren Einheiten behandelnden Mikroprogramme durchgeführt werden. Als Folge dieses Überführungsvorgangs gibt der Zentralrechner 4 über den Kanal 9 ein Signal LEV2 an die Leitung 33, das die Überführung auf eine höhere Prioritätsstufe bezeichnet und führt gleichzeitig den Nameneingabe-Mikrobefehl IOF zu dem
Zwecke durch, daß der Kanal 2 frei ist um den Namen der die Unterbrechung darstellenden peripheren Einheit
in das Register 7 des Zentralrechners 4 zu schreiben und die Codekombination des Mikrobefehls IOF selbst in den Decodierer 20 einzugeben.
Das Signal LEV2 der Stufe zwei auf der Leitung 33 erregt gemeinsam mit dem Unterbrechungssignal /A/Tauf
der Leitung 32 die UND-Schaltung 83, die über die Leitung 35 das Signal derStufe »1« erzeugt Gleichzeitig wird das erste Byte des auf dem Kanal 3 vorhandenen Nameneingabe-Mikrobefehls IOF vom Funktionsdecodierer 20 entschlüsselt wodurch auf der Leitung 89 das Signal FUO 6 erzeugt wird, das zusammen mit dem auf der Leitung 35 anstehenden Signal die UND-Schaltung erregt Durch diese beiden Signale wird das Register 26 über die UND-Schaltung befähigt das auf dem Kanal 27 vorhandene Unterbrechungssignal von einer dynamischen in eine statische Größe umzuwandeln.
Die zehn Ausgänge des Registers 26 werden durch den Kanal 36 an den Eingang des Prioritätsdecodierers 37 gegeben, der dem Kanal 38 eine Codekombination aus vier Bits zuführt die dem »Namen« der peripheren Einheit entspricht welche gemäß der Tabelle C gegenüber den unterbrochenen eine höhere Prioritätsstufe aufweist
In unserem Beispiel besitzt die Tastatur 11 als periphere Einheit eine höhere Priorität Es ist diese Tastatur, die das »Zeichen bereit«-Signal erzeugt hat das eine höhere Priorität besitzt als das von der Einzugsvorrichtung 12 hervorgebrachte Signal, weshalb die vom Prioritätsdecodierer auf dem Kanai 38 erzeugte Codekombination nach der Tabelle C folgende Zusammensetzung hat: 62 ■»= 1,63 ·« 0,64 = 1, £»5 = 0. Eine derartige Codekombination wird der Multiplexschaltung 21 zugeführt die durch die auf den Leitungen 94 und 95 geführten Signale durchschaltet und gelangt über den Kanal 2 zum Zentralrechner 4.
Die auf den Leitungen 95 und 94 geführten Signale werden entsprechend der auf den Ausgängen 89,90 und 91 des Kodierers 20 vorhandenen Wertigkeit der Signale als Folge des Erkennens eines Namenausgabe-Mikrobefehls IOF von den UND-Schaltungen 93 und 92 erzeugt Der Name der vom Kanal 2 geführten peripheren Einheit wird im Sammelregister 7 des Zentralrechners 4 gespeichert, so daß die Mikroprogrammzone von ROM 5 zugänglich gemacht wird, durch die die »Zeichen bereit«-Anforderung der Tastatur 11 bearbeitet werden kann.
Wähfeiid des Ablaufs diese» BearbeirüngsniikroprograrRins der Tastatur 11 rnuß der Zentralrechner 4 zur Annahme des von der Tastatur 11 stammenden Zeichens einen Zeichen-Eingabemikrobefehl durchführen. Somit überträgt der Zentralrechner über den Kanal 3 das erste Byte des Zeichen-Eingabemikrobefehls IOF. Das Byte wird vom Decodierer 20 dekodiert der ein Signal FUO 4 gemäß Tabelle A dem Ausgang 91 zuführt Durch dieses Signal FUO 4 wird mittels der UND-Schaltung 92 die auf den Leitungen 94 und 95 vorhandene Codekombination verändert, so daß die Multiplexschaltung den von der Tastatur 11 kommenden Kanal 98, auf dem das von der Tastatur eingegebene Zeichen vorhanden ist mit dem Kanal 2 verbinden kann. Der auf dem Kanal 2 liegende Code wird demzufolge an das Sammelregister 7 des Zentralrechners 4 gegeben.
Wenn das eingegebene Zeichen unter vermittelnder Durchführung der nicht beschriebenen Mikrobefehlsfolge
vom Zentralrechner angenommen wird, führt der Rechner 4 einen genetischen Mikrobefehl IOF durch, bei dem b\ = 1 ist Dies bedeutet (Tabelle A), daß dieser Mikrobefehl der letzte Befehl des dem »Zeichen bereit«-Signal zugeordneten Mikroprogramms ist
Allgemeiner ausgedrückt, konditioniert jede in der Tabelle C aufgeführte Unterbrechungsursache den Zen-
tralrechner 4, so daß letzterer ein entsprechendes Mikroprogramm durchführt, durch das die Unterbrechungsursache selbst bearbeitet werden kann. Die sich aus der Durchführung des zugeordneten Mikroprogramms ergebende Bearbeitung jeder Unterbrechungsursache endet immer mit dem Rückstellungsmikrobefehl IOF, der gekennzeichnet ist durch das Bit b\ — \, wodurch genau angegeben ist daß die Unterbrechungsursache vom
Zentralrechner 4 bearbeitet wurde. Es ist dabei wichtig klarzustellen, daß das Ende seiner Bearbeitung immer durch einen Mikrobefehl 1OF charakterisiert ist, bei dem das Bit b\ des ersten Bytes gleich 1 ist, wodurch das Ende des Bearbeitungsvorgangs in keiner Weise an die Art der Unterbrechungsursache gebunden ist.
Das Bit b\ wird unmittelbar vom Kanal 3 auf der Leitung 112 aufgenommen, so daß zusammen mit dem Befähigungs- oder Freigabesignal auf der Leitung 35 auch ein Signal PCF11 erzeugt wird, wobei das Stufe zwei 5 (LEV 2) Signal auf der Leitung 33 zusammen mit dem auf der Leitung 114 des Kanals 9 vorhandenen Synchronsignal PES20 die UND-Schaltung 97 erregt, die auf der Leitung 81 ein RÜCKSTELLUNGS-Signal erzeugt. Wie bereits oben erwähnt, ist diese Leitung 81 mit allen Eingängen 8I1 ...8I10 der UND-Schaltungen 151 — 160 verbunden. Da alle anderen Eingänge 51—60 der UND-Schaltungen 151 — 160 den Wert »0« haben, ausgenommen der Eingang 53, der der Unterbrechung des »Zeichenbereit«-Signals der Tastatur 11 entspricht, hat nur die Blockierleitung 43 des Flipflops 103 den Wert »1«. Demzufolge ist der Inhalt des Registers OOOOOOOOIO. Tatsächlieh ist der der »Ende der Karteneinführung«-Unterbrechung entsprechende Flipflop 109 nicht betriebsunfähig, da die Leitung 59 kein Signal führt, weil der Decodierer 39 das Signal nur auf der Leitung 53 führt, die der vom Prioritätsdecodierer 37 gewählten Unterbrechung mit höherer Priorität entspricht
Das Signal PCFIl auf der Leitung 112 erregt zusammen mit dem über Kanal 9 vom Zentralrechner 4 stammenden Taktsignal PESVi auf der Leitung 111 die UND-Schaltung J13, die auf die Leitung 3! ein Signal gibt, welches den Flipflop 88 umschaltet, wodurch das Unterbrechungssignal INT auf der Leitung 32 gelöscht wird.
Hierdurch wird der Zentralrechner jedoch nicht zur Überführung auf die Stufe eins konditioniert, da bei dem nächsten darauffolgenden auf die Leitung gegebenen Taktsignal Φ2 das auf die Leitung 69 gegebene Unterbrechungssignal der Einzugsvorrichtung erneut den Flipflop 82 erregt, wodurch das Signal INT der Leitung 32 erneut die Wertigkeit »1« annimmt Wie bereits oben ausgeführt, konditioniert dieses Signal den Zentralrechner 4, um das Mikroprogramm im Hinblick auf die der Leitung 79 zugeordnete Unterbrechung durchzuführen, da sie ils einzige im Register 25 vorhanden und demzufolge auch mit der höheren Priorität behaftet ist.
Wenn während der Durchführungsfolge eines derartigen Mikroprogramms eine Unterbrechung oder deren mehrere erzeugt werden, so werden diese durch Erregen der entsprechenden Flipflop 61—70 im Register 25 gespeichert, um später gemäß der von der Steuereinheit 1 (siehe Tabelle C) aufgestellten Reihenfolge vom Zentralrechner 4 aufeinanderfolgend bearbeitet zu werden.
Die zeitliche Abstimmung, mit der die Signale Φ2, PES 20, PES30, INTund »Rückstellung« auf der Leitung 81 und die Unterbrechungsursache auf den Leitungen 73 und 79 auftreten, ist im einzelnen aus F i g. 4 zu entnehmen.
Es wird somit die Wirkungsweise klar, nach der der Zentralrechner 4 eine für die Behandlung der Unterbrechungsfolge geeignete Operation nach einer Prioritätsordnung durchführt und wonach das am Ende der Bearbeitung der Unterbrechung von höherer Priorität erzeugte Signal PCF11 von der bearbeiteten Unterbrechung unabhängig ist Die nächste Wahl der zu bearbeitenden Unterbrechung wird von der erfindungsgemäßen peripheren Unterbrechungssteuereinheit automatisch durchgeführt, indem die die verarbeitete Unterbrechung betreffende Zelle des Unterbrechungsregisters 25 von der peripheren Unterbrechungssteuereinheit automatisch gelöscht wird, wenn das Endesignal PCFIl auf der Leitung 112 erscheint wobei die in den anderen Zellen gespeicherten Unterbrechungssignale weiterhin wirksam bleiben.
40
Hierzu 3 Blatt Zeichnungen

Claims (5)

Patentansprüche:
1. Periphere Unterbrechungssteuereinheit zum wahlweisen Weiterleiten von Unterbrechungssignalen von einer Vielzahl von peripheren Einheiten zu einer Zentraleinheit, die in einem Speicher gespeicherte Mikro-
programme ausführen kann, wobei die periphere Unterbrschungssteuereinheit ein Unterbrechungsregister mit einer Vielzahl von Zellen zum einzelnen Speichern eines zugeordneten Unterbrechungssignals, das von einer der peripheren Einheiten erzeugt wird, während die verschiedenen Unterbrechungssignale unterschiedliche Prioritäten haben und ein mit dem Unterbrechungsregister verbundener Prioritätsdecodierer das gespeicherte Unterbrechungssignal mit der höchsten Priorität decodieren und durch Erzeugen einer entspre-
chenden Codekombination angeben kann, und eine Vorrichtung zum Übertragen der erzeugten Codekombination zu der Zentraleinheit umfaßt, um die Zentraleinheit zum Auswählen eines entsprechenden Mikroprogramms anzusteuern, das in Verbindung mit der peripheren Einheit, die das Unterbrechungssignal erzeugte, ausgeführt werden soll, dadurch gekennzeichnet, daß ein Kommandospeicher (82) durch ein Unterbrechungssignal, das in irgendeiner der Zellen (101—110) gespeichert ist, gesetzt wird, um die Zentraleinheit (4) zu veranlassen, das gerade ausgeführte Mikroprogramm zu unterbrechen, wobei die Zentraleinheit ein Ende-Signal (PCFW) am Ende der Ausführung des von der Codekombination ausgewählten Mikroprogramms erzeugt, um zuerst in Verbindung mit der erzeugten Codekombination eine Löschschaltung (39, 40, 151—160) zum Löschen der das Unterbrechungssignal der höchsten Priorität speichernden Zelle (101—110) des Unterbrechungsregisters (25) anzusteuern und um dann den Kommandospeicher (82) zurückzusetzen.
2. Steuereinheit nach Anspruch 1, bei der jede der Zellen aus einem Flip-Flop besteht, die von den Unterbrechungssignalen einzeln gesetzt werden können, wobei die Löschschaltung eine Vielzahl von UND-Schaltungen umfaßt, die den Flip-Flops zugeordnet und zum Zurücksetzen des zugeordneten Flip-Flops ansteuerbar sind, gekennzeichnet durch einen zweiten Decodierer (39), der von der vorbestimmten Codekombination zum Erzeugen eines entsprechenden Löschsignals angesteuert wird, wobei die UND-Schaltungen (151 160) durch das entsprechende Löschsignal und durch das Ende-Signal einzeln angesteuert werden.
3. Steuereinheit nach Anspruch 2, bei der die Ausgänge der Flip-Flops eine ODER-Schaltung erregen, dadurch gekennzeichnet, daß der Kommandospeicher ein Binärregister (82) umfaßt, das von der ODER-Schaltung (28) und einem von der Zentraleinheit erzeugten Zeitsignal (Φι) gemeinsam gesetzt wird.
4. Steuereinheit nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß das Ende-Signal (PCF 11) mittels eines festgelegten Mikrobefehls (IOF mit b\ — 1) von der Zentraleinheit (4) erzeugt wird.
5. Steuereinheit nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß das Unterbrechungssignal (INT)At Zentraleinheit (4) ansteuert, damit diese einen Mikrobefehl (NAME-EINGABE, FUO 6) durchführt, durch den die vorbestimmte Codekombination zur Auswahl des ihr zugeordneten Mikroprogramms erkannt wird.
DE2428013A 1973-06-12 1974-06-11 Periphere Unterbrechungssteuereinheit Expired DE2428013C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT25092/73A IT988956B (it) 1973-06-12 1973-06-12 Governo multiplo

Publications (2)

Publication Number Publication Date
DE2428013A1 DE2428013A1 (de) 1975-01-09
DE2428013C2 true DE2428013C2 (de) 1985-09-26

Family

ID=11215688

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2428013A Expired DE2428013C2 (de) 1973-06-12 1974-06-11 Periphere Unterbrechungssteuereinheit

Country Status (3)

Country Link
US (1) US4027290A (de)
DE (1) DE2428013C2 (de)
IT (1) IT988956B (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4263650B1 (en) * 1974-10-30 1994-11-29 Motorola Inc Digital data processing system with interface adaptor having programmable monitorable control register therein
US4268906A (en) * 1978-12-22 1981-05-19 International Business Machines Corporation Data processor input/output controller
IT1140233B (it) * 1981-10-20 1986-09-24 Italtel Spa Unita' di controllo dei circuiti di interfaccia di ingresso-uscita di un elaboratore elettronico
JPS62154146A (ja) * 1985-12-27 1987-07-09 Mitsubishi Electric Corp デ−タ処理装置
US5129078A (en) * 1988-08-19 1992-07-07 Groves Stanley E Dedicated service processor with inter-channel communication features
JPH0268632A (ja) * 1988-09-05 1990-03-08 Toshiba Corp 割込み制御装置
US5249287A (en) * 1990-08-31 1993-09-28 Advanced Micro Devices, Inc. General keyboard interface for operating with two types of keyboards
US9645823B2 (en) 2011-03-03 2017-05-09 Hewlett-Packard Development Company, L.P. Hardware controller to choose selected hardware entity and to execute instructions in relation to selected hardware entity
US9189283B2 (en) 2011-03-03 2015-11-17 Hewlett-Packard Development Company, L.P. Task launching on hardware resource for client
US8738830B2 (en) * 2011-03-03 2014-05-27 Hewlett-Packard Development Company, L.P. Hardware interrupt processing circuit

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US815105A (en) * 1904-07-15 1906-03-13 Eclipse Railway Supply Co Life-guard fender for cars.
US825902A (en) * 1904-10-14 1906-07-17 Ben A Gomme Apparatus for teaching time.
US863225A (en) * 1904-12-02 1907-08-13 Gen Electric Prepayment mechanism.
US832692A (en) * 1905-08-21 1906-10-09 John William Mcconnell Attachment for ice-cream-freezing machines.
US836889A (en) * 1906-04-21 1906-11-27 Alice M Parkhill Invalid's bed.
US866181A (en) * 1906-06-14 1907-09-17 Cottrell C B & Sons Co Paste-fountain for printing-presses.
US3447135A (en) * 1966-08-18 1969-05-27 Ibm Peripheral data exchange
US3421150A (en) * 1966-08-26 1969-01-07 Sperry Rand Corp Multiprocessor interrupt directory
US3543246A (en) * 1967-07-07 1970-11-24 Ibm Priority selector signalling device
US3702462A (en) * 1967-10-26 1972-11-07 Delaware Sds Inc Computer input-output system
DE1574668B1 (de) * 1968-03-01 1972-04-27 Licentia Gmbh Einrichtung zur unterbrechung eines programmablaufes bei einer programmgesteuerten, elektronischen rechenanlage
US3576542A (en) * 1968-03-08 1971-04-27 Rca Corp Priority circuit
US3641505A (en) * 1969-06-25 1972-02-08 Bell Telephone Labor Inc Multiprocessor computer adapted for partitioning into a plurality of independently operating systems
US3643229A (en) * 1969-11-26 1972-02-15 Stromberg Carlson Corp Interrupt arrangement for data processing systems
US3815099A (en) * 1970-04-01 1974-06-04 Digital Equipment Corp Data processing system
US3665404A (en) * 1970-04-09 1972-05-23 Burroughs Corp Multi-processor processing system having interprocessor interrupt apparatus
US3771137A (en) * 1971-09-10 1973-11-06 Ibm Memory control in a multipurpose system utilizing a broadcast
US3778780A (en) * 1972-07-05 1973-12-11 Ibm Operation request block usage
US3886524A (en) * 1973-10-18 1975-05-27 Texas Instruments Inc Asynchronous communication bus
US3889237A (en) * 1973-11-16 1975-06-10 Sperry Rand Corp Common storage controller for dual processor system

Also Published As

Publication number Publication date
US4027290A (en) 1977-05-31
IT988956B (it) 1975-04-30
DE2428013A1 (de) 1975-01-09

Similar Documents

Publication Publication Date Title
DE2411963C3 (de) Elektronische Datenverarbeitungsanlage mit einer Prioritätssteuerschaltung mit änderbaren Steuerblöcken
DE2113890C2 (de) Zentrale Verarbeitungseinrichtung für Datenverarbeitungsanlagen
DE2835320C2 (de) Schaltungsanordnung für die Einstellung des linken Randes bei einem Textverarbeitungsgerät
DE2711413C2 (de)
DE2134402B2 (de) Vorrichtung zum Abfragen der Verfügbarkeit eines Kommunikationsweges zu einer Eingabe-Ausgabeeinheit
DE2533403A1 (de) Datenverarbeitungssystem
DE1524102C3 (de) Elektronische, aus Baueinheiten aufgebaute Datenverarbeitungsmaschine
DE1285220C2 (de) Datenverarbeitungssystem mit mehreren selbstaendigen Recheneinheiten
DE2458098C2 (de) Schreibmaschine
DE2635592A1 (de) Multiprozessor-abrufsystem
DE2846117A1 (de) Informationsverarbeitungsvorrichtung
CH554749A (de) Schreibmaschine mit loeschvorrichtung.
DE2428013C2 (de) Periphere Unterbrechungssteuereinheit
DE1499206C3 (de) Rechenanlage
DE2152884A1 (de) Verfahren zum Steuern eines Druckers
DE3027734A1 (de) Folgesteuereinrichtung
DE3432524A1 (de) Mehrfach genutzter datenschreiberregler und verfahren
DE2218630C3 (de) Schaltungsanordnung zur Steuerung von Unterbrechungssignalen in Datenverarbeitungsanlagen
DE2829972A1 (de) Schnittstelle einer datenverarbeitungsanlage
DE2609698C2 (de) Elektronischer Rechner
DE2221926C3 (de) Datenverarbeitungsanlage mit wenigstens einem in Verbindung mit mehreren Peripheriegeräten stehenden Prozessor
DE2343501B2 (de) Steuerschaltung für zumindest eine Rechenanlage mit mehreren für die Durchführung von EuWAusgabe-Programmen bestimmten Registern
DE2331874C3 (de) Vorrichtung zum rechnerischen Verarbeiten von Kostenrechnungsaufzeichnungen
DE2025731C3 (de) Datenendstation
DE2004762A1 (de) Übertragungsanschlussgerät

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition