DE2414121A1 - Digitale datenverarbeitungsanlage - Google Patents

Digitale datenverarbeitungsanlage

Info

Publication number
DE2414121A1
DE2414121A1 DE2414121A DE2414121A DE2414121A1 DE 2414121 A1 DE2414121 A1 DE 2414121A1 DE 2414121 A DE2414121 A DE 2414121A DE 2414121 A DE2414121 A DE 2414121A DE 2414121 A1 DE2414121 A1 DE 2414121A1
Authority
DE
Germany
Prior art keywords
priority
signal
signals
interrupt
data
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.)
Ceased
Application number
DE2414121A
Other languages
English (en)
Inventor
David A Gross
Allan R Kent
Alan Kotok
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.)
Digital Equipment Corp
Original Assignee
Digital Equipment Corp
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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of DE2414121A1 publication Critical patent/DE2414121A1/de
Ceased 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
    • 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/4818Priority circuits therefor

Description

Anmelderin: Digital Equipment Corporation, Maynard, Mass., USA
Digitale Datenverarbeitungsanlage
Die Erfindung betrifft eine digitale Datenverarbeitungsanlage gemäß dem Oberbegriff des Anspruchs 1; insbesondere betrifft die Erfindung die Wechselbeziehung zwischen peripheren Einheiten und zentralen Recheneinheiten in derartigen digitalen Datenverarbeitungsanlagen.
In einer digitalen Datenverarbeitungsanlage v/erden im allge- meinen die Daten zwischen einer zentralen Recheneinheit und einer peripheren Einheit entsprechend den Unterbrechungssignalen übertragen. Ein Unterbrechungssignal von einer spezifischen peripheren Einheit kann mehrere interne Bedingungen anzeigen. Üeicpielüweise kann ein derartiges Signal anzeigen, daü eine perisjhere Einheit Daten für eine Übertragung an die zentrale
409840/0845
24H121
Recheneinheit bereithält, oder daß die periphere Einheit bereit ist, neue Daten aufzunehmen.
Normalerweise erzeugt eine periphere Einheit ein Unterbrechungssignal, welches die zentrale Recheneinheit in einem programmierten Rangschema aufnimmt und unterbringt; es sind' verschiedene Rangschemen bekannt. Bei einem Schema weist jede periphere Einrichtung ein Prioritäts- oder Vorrangregister auf.(In der folgenden Beschreibung wird meistens von Priorität gesprochen.) Das Prioritätsregister speichert eine kodierte Prioritätsbezeichnung, welche ihm von einem Programmierer zugeordnet ist, und ein Dekodierer dekodiert diese Prioritätsinformation. Der Dekodierer überträgt eine Bedienungsanforderung oder ein sogenanntes llPrioritätsunterbrechungs"-Signal über eine Ausgangsleitung, was der Priorität in dem Prioritätsregister· entspricht. Eine Prioritätsschaltungsanordnung in der zentralen Recheneinheit vergleicht dann die Priorität des ankommenden Unterbrechungssignals mit der bestehenden Priorität in der. digitalen Datenverarbeitungsanlage .
In Abhängigkeit von den relativen Prioritäten des Unterbrechungssignals und der laufenden Prioritätsstufe bzw. dem -pegel in der zentralen Recheneinheit kann die Prioritäts-Bchaltungsanordnung die Anforderung entweder nicht beachten oder andererseits das Arbeiten in dem laufenden Verarbeitungsprogramm einstellen und die neue Anforderung bedienen. Zur Bedienung der Anforderung beginnt die zentrale Recheneinheit nach der Beendigung eines Befehls in dem laufenden Programm mit einem Abrufprogramm. Das Abrufprogramm kennzeichnet die periphere Einheit und bestimmt die Bedingungen, welche das Unterbrechungssignal zur Folge haben.
Diese Abrufoperation ist ein Routinevorgang, welchen die zentrale Recheneinheit durchführt, nachdem sie das lauf ende Programm unterbrochen hat, und es muß beendet sein, bevor die zentrale Recheneinheit zu dom laufenden Programm zurückkehrer
kann. Hierdurch verlängert sich die Zeit, welche die zentrale Recheneinheit benötigt, um das Programm durchzuführen.
Bei einem anderen Datenverarbeitungssystem überträgt jede periphere Einheit ein Unterbrechungssignal über eine von mehreren Prioritätsunterbrechungsleitungen, welche den jeweiligen Prioritätsstufen oder -pegeln-entsprechen. Eine jeder Prioritätsunterbrechungsstufe zugeordnete, die Priorität gewährende bzw. erteilende Leitung verbindet der Reihe nach alle peripheren Einheiten, welche mit der entsprechenden Unterbrechungsleitung verbunden sind. Die Stelle jeder peripheren Einheit entlang einer speziellen die Priorität gewährenden bzw. erteilenden Leitung bestimmt deren Priorität in der allgemeinen bzw. Hauptstufe, welche die die Priorität gewährende Leitung bezeichnet.
Während eines Unterbrechungsvorgangs wird entlang der die Priorität erteilenden Leitung von einer periphen Einheit, welche Unterbrechung gefordert hat und ein Signal auf der erteilenden Leitung erhält, waches anzeigt, daß die allgemeine Prioritätsstufenanforderung gewährt bzw. erteilt worden ist, eine Adresse über Datenleitungen an die zentrale Recheneinheit? Die zentrale Recheneinheit benutzt dann diese Adresse zum Starten eines Dienst- bzw. Bedienungsprogramms. Obwohl Abrufoperationen in diesem System beschränkt oder wesentlich verringert sind, ist die relative Priorität einer speziellen peripheren Einheit in einer Prioritätsstufe durch die Lage der peripheren Einheit bezüglich der zentralen Recheneinheit entlang der die Priorität gewährenden bzw. erteilenden Leitung fest bzw. festgelegt, χ übertragen
In diesen beiden sowie anderen Systemen kann die zentrale Recheneinheit nicht unmittelbar eine Information zusammen mit der Unterbrechungsanforderung mit Rücksicht auf die Operationsart erhalten, welche vorkommt bzw. angetroffen wird. Eine vorläufige
409840/0845
24H121
Reihenfolge muß getroffen werden, um zu bestimmen, ob Steuer-. Lese- oder Schreiboperationen zur Durchführung der Anforderung erforderlich sind. Hierdurch ergibt sich ein bestimmter zusätzlicher Operationszeitzuwachs, wodurch die Zeit verlängert wird, welche die zentrale Recheneinheit benötigt, um ein laufendes Programm durchzuführen.
Es ist daher Aufgabe der Erfindung eine digitale Datenverarbeitungseinrichtung zu schaffen, in welcher jede periphere Einheit sich selbst und die Art der Bedienung identifiziert und erkennt, welche sie nötig hat. Darüber hinaus schafft die Erfindung eine digitale Datenverarbeitungseinrichtung, welche Änderungen in der Zuordnung der Prioritätsstufen zu den einzelnen perxpheren Einrichtungen erleichtert.
Gemäß der Erfindung fordert eine periphere Einheit eine Unterbrechung an, und ein Dekodierer erzeugt ein Prioritätsunterbrechungssignal und gibt auch eine Synchronisierschaltung in der peripheren Einheit frei. Wenn die zentrale Recheneinheit das Prioritäts-Anforderungssignal erhält und darauf anspricht und tätig wird, benutzt sie eine die Prioritätsunterbrechung anfordernde Folge, um ein Synchronisiersignal und eine Reihe von Signalen zu erzeugen, welche eine allgemeine zu gewährende bzw. zu erteilende Priorität kennzeichnen. Irgendeine periphere Einheit, welche dieselbe allgemeine Prioritätsstufe wie die gewährte Priorität aufweist und welche vorher eine Anforderung erzeugt hat, wird dann gesetzt, damit sie ein Freigabesignal von der zentralen Recheneinheit erhält.
Das Freigabesignal wird dann über eine Steuerleitung übertragen, welche alle peripheren Einheiten der Reihe nach ohne Rücksicht auf ihre Prioritätsstufen verbindet. Das Signal wandert entlang dieser leitung, bis es die erste freigegebene, paciphere Einheit erreicht. Diese Einheit blockt bzw. sperrt das Freigabesignal auf der Leitung und überträgt ein digitales Wort über die Datenleitungen. Das digitale Wort kennzeichnet die
409840/0845
— 5 —
24H121
Prioritätsstufe, eine durchzuführende !Funktion und eine Adressierinformation, welche anschließend von der zentralen Recheneinheit bei der Durchführung der bezeichneten !Punktion verwendet wird. Jede.periphere Einheit kann normalerweise eines von verschiedenen derartigen Worten erzeugen, wobei die Auswahl von den Bedingungen abhängen, welche die Unterbrechung bewirken. Durch diese Information sind dann keine ausgedehnten Abfrageoperationen mehr erforderlich.
Gemäß der Erfindung ist somit eine digitale Datenverarbeitungsanlage mit einer die Priorität unterbrechenden Schaltungsanordnung geschaffen. Wenn eine periphere Einrichtung eine Verbindung mit einer zentralen Recheneinheit oder einer Speichereinheit fordert, überträgt es ein Signal über eine Prioritätsunterbrechungsleitung, welches einer zugeordneten Systemprioritätsstufe entspricht. Die zentrale Recheneinheit erhält dieses Signal und eine Prioritätsschaltung beginnt eine Prioritäts-.anforderungsfolge gleichzeit^ait den anderen von ihr ausgeführten Operationen. Während dieser Folge erzeugt die zentrale Recheneinheit Daten und Steuersignale auf vorbestimmten Leitungen in einer Hauptverbindungsleitung. Eine periphere Einrichtung spricht auf alle diese Signale an und erzeugt Daten auf der Hauptleitung, welche sie selbst und die Art der geforderten Bedienung kennzeichnen. Die zentrale Recheneinheit verwendet dann eine Prioritätsunterbrechungsbefehlsfolge, um diese Daten zu verarbeiten, welche die periphere Einheit erzeugt, und sie kann dann die geforderten Verbindungen herstellen, ohne daß irgendwelche Abrufoperationen durchzuführen sind.
Weitere Vorteile und Einzelheiten der Erfindung werden anhand von bevorzugten Ausführungsformen in Verbindung mit den anliegenden Zeichnungen im einzelnen erläutert. Es zeigen:
E"ig. 1 schematisch eine die Unterbrechung steuernde Schaltungsanordnung in einer üblichen peripheren Einheit gemäß der Erfindung;
409840/0845 "6
24U121
Pig. 2A und ZB schematisch eine entsprechende, die Unterbrechung steuernde Schaltungsanordnung in einer zentralen Rechen-. einheit;
Fig. 3A bis 3F Ablaufdiagramme zur Darstellung der Operationsfolgen in der in Fig. 2 dargestellten zentralen Recheneinheit ;
Fig. 4 ein Impulsdiagramm, in welchem die Reihenfolge bestimmter Signale dargestellt ist, welche zwischen der zentralen Recheneinheit und den ausgewählten peripheren Einheiten übertragen werden; und
'Flg. 5 eine Darstellung eines Digitalwortes, welches mit der Schaltungsanordnung nach Fig. 1 erzeugt ist.
In der folgenden Beschreibung stellt eine "+1" oder eine positive Spannung eine echte Bedingung oder einen logischen Eins-Zustand dar. Erd- oder "0"-Potential stellt eine falsche bzw. nicht echte Bedingung oder einen logischen Null-Zustand dar. AlLe Datenleitungen sollen normalerweise in dem Null-Zustand gehalten werden. Gemäß der Beschreibung ist daher der Ausgang einer UND-Schaltung positiv, wenn alle Eingänge positiv sind. Dementsprechend ist auch der Setz- oder Q-Ausgang eines Flip-Flops positiv (d.h. es liegt ein echtes Signal an) wenn das Flip-Flop gesetzt ist. Bei den durch Taktimpulse gesteuerten Flip-Flops nimmt das Flip-Flop den Zustand ein, welcher einem Signal an einem D-Eingang bei Anlegen eines Taktimpuls an einem C-Eingang entspricht.
Obwohl die Erfindung bei vielen Datenverarbeitungssystem anwendbar ist, ist sie am leichtesten bei einem speziellen Datenverarbeitungssystem zu verstehen. Aus diesem Grund wird die Erfindung im allgemeinen auch anhand eines PDP-1O Datenverarbeitungssystem beschrieben, welches die Anmelderin der vorliegenden Anmeldung herstellt und verkauft. Es werden auch
409840/0845 _ 7 _
24U121
keine Systemsignale erläutert, welche Signalen in bekannten Systemen entsprechen, wie beispielsweise Steuersignale, welche das System zur Übertragung von Daten an Speicherstellen verwendet, sowie Steuersignale, die während der Durchführung normaler Operationsbefehle·, verwendet werden. Eine ausführliche Beschreibung dieser und anderer Signale ist in den folgenden Veröffentlichungen der Digital Equipment Corporation zu finden:" 1. in dem Wartungsmanual für die zentrale Recheneinheit KA-10 Bd.1 und 2; 2. in dem Wartungsmanual für die Datenkanäle DF-IO Bd. 1 und 2, und J. in der US-PS 3 376 554.
In Fig. 1 sind Teile einer Steuerschaltung für eine spezielle, · periphere Einheit 10 dargestellt. Selbstverständlich kann jede andere periphere Einheit auch analoge Schaltungen aufweisen. Die Verbindungen von der peripheren Einheit ΊΌ oben und unten in Fig. 1 sind über eine I/O Hauptverbindungsleitung 11 hergestellt, welche eine in zwei Richtungen leitende Hauptverbindungsleitung mit Steuer- und Datenleitungen ist.
Bestimmte Steuersignale von der I/O Hauptleitung 11 werden entweder unmittelbar aufgenommen oder' von einer peripheren Steuereinheit 18 verarbeitet, um die verschiedenen in Fig. 1 dargestellten Steuersignale zu erzeugen. Ein derartiger Signalsatz steuert den Zustand eines unterbrechenden Freigabe-Flip-Flops 12. Wenn das Freigabe-Flip-Flop 12 in einer peripheren Einheit gesetzt ist (d.h. freigegen^-1 1), kann ein UND-Glied 13 ein Signal von einer unterbrechenden Verriegelungsanordnung oder einem Flip-Flop 14 an einen Dekodierer 15 anlegen. Durch Zurücksetzen des Freigabe-Flip-Flops 12
(d.h. Freigabe ^ 0) wird das UND-Glied 13 gesperrt und
die periphere Einheit 10 überträgt keine Prioritätsunterbrechun^- signale (PI-Signale).
Normalerweise erhält das Flip-Flop ein Freigabesignal von der peripheren Steuereinheit 10, welche auf einen spezifischen Befehl, welcher eine bestimmte periphere Einheit kennzeichnet,
409840/0845
und auf eine Freigabefunktion anspricht,(beispielsweise eine aus einer Anzahl Aus-Bedingungen oder"CONO"-Befehlen in einem PDP-10-Rechnersystem).
Sobald die periphere Einheit 10 die Operationen der zentralen !Recheneinheit unterbrechen muß, gibt die periphere Steuereinheit 10 ein Unterbrechungssignal (UNI-Signal Fig. 4A), wodurch das sogenannte Unterbrechungs-Flip-Flop 14 gesetzt wird. Wenn das Flip-Flop 14 gesetzt ist, gibt es ein taktimpulsgesteuertes Flip-Flop 16 frei, das bei dem Anliegen eines Prioritatsunterbrechungsanforderungs-Synchronisiersignal^eines PI-REQ-SYNC-Signals, gesetzt wird. Bezüglich des taktimpulsgesteuerten Flip-Flops 16 geschieht dann zu diesem Zeitpunkt weiter nichts.
Gleichzeitig läuft das Signal von dem eingestellten Flip-Flop 14 über das freigegebene UND-Glied 13, wodurch ein Signal von dem Dekodierer 15 an eine PI -Leitung der Anzahl PI-Leitungen (Fig. 4B) übertragen wird. Jede PI-Leitung gibt eine spezifische Prioritätsstufe wieder, und der Dekodierer 15 wählt entsprechend dem Inhalt eines Prioritätsregisters 17 eine spezielle Leitung aus.
Das Prioritätsregister 17 kennzeichnet die Prioritätsstufe, welche der jeweiligen peripheren Einheit zugeordnet ist. Dieses Prioritätsregister 17 kann einen fest eingestellten PrioritatsStufengenerator aufweisen. In diesem Fall können keine Prioriatsstufenänderungen stattfinden, ohne daß sich das Prioritätsregister 17 ändert. Das Prioriätsregister 17 kann jedoch andererseits auch ein gattergesteuertes Speicherregister aufweisen, welches auf die Prioritätsbit-Signale und ein "CONO"-Setzsignal abspricht, um den Inhalt des Registers 17 zu ändern. In einem PDP-10-System kann die zentrale Recheneinheit einen derartigen "CONO"-Setzbefehl erzeugen. Das Prioritätsbit-Signal kann eine Anzhal Bit aufweisen, welche jede Prioritätsstufe durch eine Binärzahl kennzeichnen. Beispielsweise können drei Prioritätsbits bis zu acht Prioritätsstufen bezeichnen.
409840/0845
24U121
Wenn der Dekodiaer 15 eine PI-Leitung festlegt, (im folgenden wird von der PI -Leitung gesprochen, .wobei 1 ^ η >-0 und
η ~~ —
"i" die Anzahl der möglichen Prioritätsstufen ist), geschieht außer aufgrund der Signale von der zentralen Recheneinheit nichts in der peripheren Einheit 10. Die nächsten Vorgänge finden in der zentralen Recheneinheit statt.
Eine zentrale Recheneinheit in einem digitalen Datenverarbeitungssystem verarbeitet normalerweise einen vorgegebenen Befehl in einer Reihe von Zuständen, welche als "Zeitzustände" oder als "Zeitzyklen" bekannt sind. Während jedes"Zustandes" führt die zentrale Recheneinheit eine bestimmte Funktion oder eine Gruppe von Funktionen durch. Beispielsweise wird in der zentralen Recheneinheit eines PDP-10-Systems ein "Befehl"-Zustand dazu verwendet, um den Befehl zu dekodieren und um, wenn überhaupt, tatsächliche, effektive Operandenadressen zu erzeugen. Dies ist der Fall, wenn irgendein durch die zentrale Recheneinheit zu verarbeitender, laufender Befehl gegeben wird, und die zentrale Recheneinheit bereit ist, den nächsten laufenden Programmbefehl zu verarbeiten. Während des folgenden "Abruf^Zustandes benutzt die zentrale Recheneinheit "Speicher und Programme", um Operanden aufzufrischen. Zu diesem Zeitpunkt benutzt die zentrale Recheneinheit einen "Ausführungszustand" zum Verarbeiten der Operanden und erforderlichenfalls einen "Speicherzustand" zum Speichern der Ergebnisse. Dies findet in dieser Reihenfolge zweimal statt, was wichtig zum Verständnis der folgenden Erfindung ist. Das erste Mal wird durch Feststellen eines Befehlsabrufsignals (eines INST FETCH-Signals) dargestellt. Das Signal wird im allgemeinen erzeugt, nachdem der Programmzähler während eines "Befehlszustandes" vorrückt. Das zweite Mal wird während des "Speicherzustandes" durch ein Befehlaus-, führsignal (ein INST DONE-Signal) dargestellt, welches anzeigt, daß die zentrale Recheneinheit die Verarbeitung eines Befehls beendet hat. Schaltungen zum Erzeugen dieser und änal°Se Signale sind allgemein bekannt.
- 10 409840/0845
24U121
Wenn die in Pig. 2 dargestellte zentrale Recheneinheit ein PI-Signal erhält, benutzt sie zwei Operationsfolgen, um mit dem Einleiten der Unterbrechung zu beginnen. Während einer Prioritätanforderungsfolge ernennt die zentrale Recheneinheit eine anfordernde periphere Einheit und bindet diese periphere Einheit zur Vorbereitung einer Prioritätsunterbrechungs-Befehlsfolge an sich. Diese Prioritätsanforderungsfolge wird asynchron und laufend zusammen mit anderen Operationen der zentralen Recheneinheit durchgeführt. Wenn die Priorxtätsanforderungsfolge beendet ist, synchronisiert die zentrale Recheneinheit die periphere Einheit und tritt in die Prioritätsunterbrechungs-Befehlsfolge und das tatsächliche Programm ein, um die periphere Einheit zu bedienen. Die Prioritätsunterbrechungs-Befehlsfolge beginnt am Ende eines Befehls, vorausgesetzt, daß sie bereit war, vor dem Befehlsabrufsignal zu beginnen, welches zur Verarbeitung dieses BefehlB anliegt.
In den Figuren 2A und 2B ist der logische Schaltungsaufbau zur Durchführung einer derartigen Operationsfolge in einer synchron arbeitenden Maschine unter Steuerung eines nicht dargestellten Haupttaktgebers, welcher Takt-(CLK)Impulse erzeugt. Die in den Figuren 3A bis JF dargestellten Flußdiagramme geben den Fluß während einer derartigen Prioritätsoperation wieder. In einem Entscheidungsblock kann eine Abzweigung unmittelbar zu dem Eingang des Blocks zurückgeführt werden. Dies bedeutet, daß in der in Fig. 2 dargestellten Schaltungsanordnung den Bedingungen in dem Block genügt sein muß, bevor ein Taktimpuls für die zentrale Recheneinheit anliegt, um zu dem nächsten Operationsschritt überzugehen.
Der Schritt 200 in Fig. 3A stellt einen Empfang eines PI Signals durch die in den Figuren 2A bis 2B dargestellte zentrale Recheneinheit dar. Zwischen der Zeit, zu welcher die zentrale Recheneinheit irgendein PI-Signal erhält, und der Beginn des Schrittes 201 wird mit der Schaltung in Fig. 2 A bestimmt, welche
409840/0845 - π -
24U121
Prioritätsanforderung, wenn überhaupt, zu beantworten· ist. Eine Anzahl paralleler Prioritätskanalschaltungen und ein die Priorität bestimmendes Netzwerk führen diese Funktion durch. In Pig. 2A ist nur ein einziger, der PIn~Leitung zugeordneter Prioritätskanal 20 dargestellt. Für jede der PIq - PI.^-Leitungen gibt es einen derartigen Prioritätskanal. Jeder Prioritätskanal überträgt Signale an eine PIH-Hauptleitung 21 und eine PIR-Hauptleitung 22, so daß ein Prioritätsnetzwerk 23 die richtige Prioritätsstufe auswählen und ein entsprechendes Prioritätsunterbrechungs-Anforderungssignal (ein PI REQ-Signal) erzeugen kann.
Ein PIR-Signal zeigt an, daß eine gültige Anforderung zum Unterbrechen des laufenden Programms vorliegt. Ein PIH-Signal zeigt an, daß eine Prioritätsanforderung bewillig bzw. gewährt wurde und noch praktisch zu verarbeiten ist oder teilweise verarbeitet wurde, aber durch eine höhere Prioritätsunterbrechungs-Anforderung unterbrochen worden ist. Solange zumindest ein PIH-Signal vorhanden ist, unterhält die zentrale Recheneinheit eine Prioritätsunterbrechung.
Grundsätzlich prüft das Prioritätsnetzwerk 23 die Signale auf der PIH-Hauptleitung 21 und der PIR-Hauptleitung 22 und bestimmt, welche Unterbrechungsanforderung (welches PI-Signal) es gewährt. In einem PDP-10-System beispielsweise gewährt das Prioritätsnetzwerk ·23 eine Anforderung, wenn keine laufenden Prioritätsanforderungen einer höheren Stufe vorliegen oder keine schwebenden Unterbraimngen auf derselben oder einer höheren Prioritätsstufe zu verarbeiten sind. Wenn das Prioritätsnetzwerk 23 eine Unterbrechungsanforderung gewährt bzw. erteilt, überträgt es ein PI REQn-Signal über eine PI-REQ-Leitung entsprechend der gewährten Prioritätsstufe. Das heißt, wenn der Priorität skanal 20 ein PI-Signal erhält und verarbeitet, erzeugt das Prioritätsnetzwerk ein PI HEQ^-Signal, ohne daß gleichzeitig ein PI-Signal höherer Stufe vorhanden ist,oder ohne daß die zentrale Recheneinheit eine frühere Prioritätsunterbrechungs-
4098A0/0845
- 12 -
24U121
Anforderung derselben oder einer höheren Priorität verarbeitet. Wenn jedoch das Prioritätsnetzwerk 23 ein PI EEO -Signal überträgt, beginnt die Prioritätsunterbrechungs-Anforderungsfolge, wie später noch beschrieben wird.
Nunmehr werden Einzelheiten des Prioritätskanals 20 in Fig. 2A beschrieben; ein UND-Glied 24 läßt ein PIn-Signal durch, wenn der Prioritätskanals 20 angeschaltet ist. Jeder Prioritätskanal kann unabhängig von der Steuerung des Zustandes einer entsprechenden Prioritätsunterbrechungs-Anschaltverriegelungs- oder -Sperrschaltung (einer PI ON-Sperrschaltung) an- oder abgeschaltet werden. Infolge dessen wird eine PI ON-Sperrschaltung 25 in dem Prioritätskanal 20 gesetzt, um das UND-Glied 24 freizugeben, wodurch angezeigt ist, daß der Prioritätskanal 20 angeschaltet ist. Insbesondere gibt ein CONO-Setzsignal, welches aus einem GONO-Setzbefehl mit einer eins in einer IOB-m-Bitstelle abgeleitet ist, ein UND-Glied 26 frei. Das UND-Glied 26 überträgt Signale an alle Prioritätskanäle und zeigt an, daß einer oder mehrere der bezeichneten Prioritätskanäle anzuschalten sind. Zusätzliche IOB-Bitstellen entsprechen im einzelnen den jeweiligen Prioritätskanälen. Im folgenden wird eine IOB -Bitstelle gewählt," welche dem Prioritätskanal 20 entspricht. Mit einem CONO-Setzsignal wird dann zusammen mit einsen an den IOB - und den 1OBn-BiSteilen ein UND-Glied 27 freigegeben, um die PIn~Sperrschaltung 25 zu setzen.
Wenn eine eins an einer IOB -Bitstelle während eines CONO-Setzbefehls anliegt, wird ein Prioritätskanal abgeschaltet. Ein UND-Glied 28 koppelt dieses Signal an alle Prioritätskanäle, In dem Prioritätskanal 20 schältet ein anderes UND-Glied 29, welches durch das den Kanal bezeichnende IOB -Bit bedingt ist, den Kanal durch Rücksetzen der PI -Anschaltsperrschaltung 25 ab.
Wenn der Prioritätskanal 20 angeschaltet ist, läßt das UND-Glied 24 ein PI -Signal zu anderen Steuergiiedern durch, welche
409840/0845 - 13 -
zusätzliche Funktionen ausführen. Als erstes geben sie das PI -Signal frei, damit es das Prioritätsnetzwerk 23 nur zu einem geeigneten Zeitpunkt erreicht, nämlich zu einem Zeitpunkt, zu welchem das Prioritätsnetzwerk 23 nicht gerade ein PI REQ-Signal überträgt, wodurch eine gerade erfolgende Übertragung der zentralen Recheneinheit an eine Prioritätsunterbrechungs-Anforderungsfolge angezeigt ist. Zum anderen stellen die Steuerschaltungen, wenn der Prioritätskanal 20 ein PIR^-Signal überträgt, sicher, daß der Prioritätskanal 20 weiterhin dieses Signal überträgt, bis die zentrale Recheneinheit mit dieser Ai±>rderung beginnt. Insbesondere ist ein ODER-Glied 30 angeschaltet, um alle PI"REO-Signale aufzunehmen und ein PI RQ-Ausgangssignal zu erzeugen, wenn das Prioritätsnetzwerk 23 irgendein PI REQ-Signal erzeugt. Das PI RQ-Signal zeigt an, daß die zentrale Recheneinheit eine Prioritätsunterbrechungs-Anforderungsfolge beginnen sollte. Solange ein PI RQ-Signal festgestellt wird, sperrt ein Inverter 31 den Durchgang irgendeines PIn-Signals durch das UND-Glied 32 und über ein ODER-Glied 33 an ein PIRn~Signal 34, welche das PIRn-Signal überträgt. Wenn kein PI RQ-Signal vorhanden ist, kann jedoch das UND-Glied 32 ein PIn-Signal zu dem PIRn-Flip-Flop 34 durchlassen, so daß das Flip-Flop 34 bei einem anschließenden Taktimpuls gesetzt wird.
Das PIR -Flip-Flop 34 bleibt eine Zersang gesetzt, da das Prioritätsnetzwerk 23 vor dem nächsten Taktimpuls ein PI RQ-Signal überträgt. Das Flip-Flop 34 bleibt gesetzt, da der Ausgang des ODER-Glieds30, d.h. das PI RQ-Signal, ein UND-Glied 35 freigibt, welches ebenfalls den festgestellten Ausgang des PIR -Flip-Flops 34 erhält, um den Ausgang zurück zu dem Eingang des PIRn-Flip-Flops 34 zu leiten. Folglich bleibt das ' PIR -Flip-Flop 34 über die anschließenden Taktimpulse bis zu einem Zeitpunkt gesetzt, zu welchem das Prioritätsnetzwerk 23 und ein ODER-Glied 30 in PI RQ-Signal übertragen und daher nicht mehr länger ein PI -Signal an dem Prioritätskanal 20 angelegt ist.
409840/0845 - 14 -
24U121
Wie oben beschrieben, ist ein PIH-Signal auf der Hauptleitung 21 vorhanden, wenn die zentrale Recheneinheit eine Unterbrechung unterhalt. In dem Prioritätskanal 20 setzt ein durch das Prioritätsnetzwerk 2$ erzeugtes PI EEO -Signal ein PIH-Flip-Flop 40, wenn bestimmte Bedingungen vorliegen. Wie später noch beschrieben wird, gibt es zwei Möglichkeiten, durch Welche eine vorgegebene Prioritätsanforderung unterhalten werden kann. Bei einer herkömmlichen Lösung unterbricht die zentrale Recheneinheit das laufende Programm und überträgt ein Unterbrechungsprogramm; während dieser Übertragung ist das PIHn-I1IiP-I1IOp 40 gesetzt.
Die Steuerglieder zum Setzen des PIH -Flip-Flops 40 weisen ein UND-Glied 41 auf, welches an einem Eingang das PI n ßignal über ein ODER-Glied 42 erhält. Ein ODER-Glied 43 schafft den anderen Eingang, wenn ein UND-Glied 44 durch ein Unterprogrammsignal (ein SUBR-Signal)aas anzeigt, daß die zentrale Recheneinheit ein Unterprogramm überträgt, und durch ein Prioritätsunterbrechungs-Zyklussignal (ein PI CYC-Signal) erregt wird, welches anzeigt, daß die zentrale Recheneinheit die Prioritätsunterbrechungs-Befehlsfolge begonnen hat. Hierauf erzeugt ein UND-Glied 44 ein Ausgangssignal, welches anzeigt, daß die zentrale Recheneinheit ihre Operationen an ein Unterbrechungsprogramm überträgt. Wenn diese Bedingung laufend zusammen mit mit PI REQ -Signal vorhanden ist, setzt der nächste Taktimpuls das PIHn-I1IiP-I1IOp 40. x erregt wird
Wie bereits beschrieben, findet das Setzen des PIH-Flip-Flops 40 solange nicht statt, bis die Prioritätsunterbrechungs-Befehlsfolge beginnt. In diesem Fall erhält das Prioritätsnetzwerk 23 jedoch PIR- und PIH-Signale derselben Stufe, und, wie oben aufgezeigt, hält das Prioritätsnetzwerk 23 mit der Übertragung des entsprechenden PI REQ-Signals an. Hierdurch liegt dann das PI RQ-Signal an, wodurch das UND-Glied 32 freigegeben wird. Das Netzwerk 23 spricht jedoch nicht auf irgendeine Anforderung von diesen Hhal oder einem ancfa?en niedrigeren Prioritätskanal an, bis das PIHn-Flip-Flop 40 zurückgesetzt ist.
409840/0845
24H121
Zum Zurücksetzen des PIH -IPlip-Plops 40 müssen beide Eingänge an dem ODER-Glied 45 gesperrt werden. Dies ist der FaIl, wenn die zentrale Recheneinheit ein Unterbrechungsprogramm für die entsprechende Stufe beendet. Ein Eingang des ODER-Glieds45 wird dann durch ein Prioritätsunterbrechungs-Freigabesignal (ein PI DISMISS-Signal) gesperrt. Die zentrale Recheneinheit erzeugt ein PI DISMISS-Signal am Ende jedes Unterbrechungsprogramms. Ein Inverter 46 koppelt dieses Signal an ein UND-Glied 47 zu dessen Sperrung. Der andere Eingang an dem Glied ist das PIHn-Signal von dem PIE^-Elip-llop 40. Die Erzeugung des PI DISMISS-Signals zeigt nur an, daß irgendein Unterbrechungsprogramm beendet ist, bezeichnet nicht aber das spezifische Programm. Unterbrechungskanäle jedoch, deren Bedienung das System gerade beendet hat, müssen der Prioritätskanal mit dem Kanal der höchsten Stufe sein, in welchem ein ΡΙΗ-ϊΊίρ-ΊΡΙορ gesetzt ist. Dieses Hip-Flop der höchsten Prioritätsstufe wird dadurch bestimmt, daß jeder Prioritätskanal die Bedingung aller PIH-Flip-Flops höherer Priorität prüft, solange das ganze Prioritätsunterbrechungssystem angeschaltet ist.
Der gleiche CONQ-Setzbefehl, welcher einzelne Prioritätskanäle an- und abschaltet, kann auch das ganze Prioritätsunterbrechungssystem an- oder abschalten, indem eine eins an der IOB.-Bitstelle vorliegt. Die sich ergebenden Signale erregen ein UND-Glied 50, welches eine Anschaltsperrschaltung 51 in dem Prioritäts unterbrechungssystem setzt. Ein CONO-Setzbefehl mit einer eins an einer IOB .-Bitstelle erregt ein UND-Glied 52.um die Sperrschaltung 51 zurückzusetzen, um dadurch das ganze Prioritätsunterbrechungssystem abzuschalten. Wenn jedoch das PI-System angeschaltet ist, überwacht ein UND-Glied 53 die Operation der zentralen Recheneinheit für die meisten Operationen während einer Zeitdauer, während der das ganze PI-System zeitweilig durch Ansprechen auf ein Prioritätsunterbrechungs-Sperrsignal (ein PI ACT INH-Signal) nicht tätig sein sollte. Ein Inverter 54 koppelt das PI ACT INH-Signal an den zweiten Ausgang des
40984070845
- 16 -
24U121
UND-Glieds 53 an. Solang kein PI ACT INH-Signal anliegt, halten Taktimpulse ein PI-Flip-Flop 55 gesetzt. Dies Flip-Flop schafft ein aktives PI-Signal.
Sowohl das Prioritätsnetzwerk 23 als auch alle Prioritätskanäle erhalten das aktive PI-Signal. In dem Prioritätskanal 20 erhält ein UND-Glied 56 das -aktive PI-Signal. Die anderen Eingänge des UND-Glieds 56 sind die Rückstellausgänge an den PIH-Flip-Flops mit einer höheren Priorität. Wenn das PI-System aktiv und alle PIH-Flip-Flops höherer Priorität zurückgestellt sind, sperrt der Ausgang des über einen Inverter 58 angekoppelten UND-Glieds 56 ein UND-Glied 57» dessen anderer •Eingang der Setzeingang des PIH-Flip-Flops 40 ist. Wenn das PIH -Flip-Flop 40 gesetzt ist und zu dieser Zeit keine weiteren PIH-Flip-Flops höherer Priorität gesetzt sind, erzeugt die zentrale Recheneinheit ein PI DISMISS-Signal, wodurch beide Eingänge an dem ODER-Glied 45 gesperrt sind. Dies bedeutet, daß das einem PI -Signal entsprechende Unterbrechungsprogramm durch ein Unterprogramm unterhalten worden ist und PIH Flip-Flop 40 zurückgesetzt ist. Dies ist nicht der Fall, solange das Prioritätsnetzwerk 23 irgendwelche anschließend übertragenen PI-Signale auf der en' prechenden Prioritätsstufe erkennen kann.
Sobald diese Anfangsoperationen beendet sind, was durch die Übertragung eines PI RQ-Signals von dem ODER-Glied 30 (Fig.4C) angezeigt wird, beginnt die zentrale Recheneinheit die Prioritätsanforderungsfolge mit dem Schritt 201 in Fig. 3A zu starten. Diese Folge beginnt, wenn ein PI-Flip-Flop 60 (Fig.2B) entsprechend einem Signal gesetzt wird, das durch ein UND-Glied 61 erzeugt ist, welches ebenfalls Signale von einem Rücksetz-Synchronisierflip-Flop 6^ einem IOT-Flip-Flop 63, einem PI CYC-Flip-Flop 64 und einem PIR DONE-Flip-Flορ 73 erhält. Wenn diese vier letztgenannten Flip-Flops alle zurückgesetzt sind, befindet sich die zentrale Recheneinheit nicht in einem PrioritätsunterbEchungszyklus, die Eingabe/Ausgabe-Hauptleitung
409840/0845
24U121
ist nicht in einen IOT-Befehl einbezogen (d.h. einer von einer speziellen Klasse von Eingabe/Ausgabe-Operationsbefehlen, welche auch Daten über die Eingabe/Ausgabe-Hauptleitung übertragen) , die vorherige Prioritätsanforderungsfolge ist nicht gerade beendet und ein Zeitintervall,-welches auf die Hauptleitungsbenutzung folgt, in welcher sich die Hauptleitung entladt, ist vorbei. Wenn diese Bedingungen bestehen, wird ein UND-Glied 65 gesperrt, aber das UND-Glied 61 wird erregt, und sein Ausgangssignal geht durch ein ODER-Glied 61 in Form eines Prioritätsunterbrechungs-EinschaltsignaE (ein PI IN-Signal) durch, so daß der nächste Taktimpuls (Pig. 4D) das PI-Flip-Flop. 60 setzt (Fig. 4E). Dies entspricht dem Schritt 202 in Fig. 3A.
Das IOT-Flip-Flop 63 wird gesetzt, während die Eingabe/ Ausgabe-Hauptleitung 11 zusammen mit einem IOT-Befehl verwendet wird. Ein IOT-Befehlsignal, welches eine IOT-Operation bezeichnet, ist eines von mehreren Signalen, welches ein UND-Glied 67 erregt. Die anderen sind ein über einen Inverter zugeführtes, invertiertes PI IN-Signal von dem ODER-Glied 66, ein Rückstellsignal von dem Rückstell-Synchronisier-Flip-Flop 62, welches anzeigt, daß ein Einstellintervall vorüber ist, und ein FCYC-Signal. Dies Signal liegt zu Beginn eines IOT-Befehl-"Abruf"-Zustandes an. Sobald ein UND-Glied 69 gesetzt ist, bleibt das IOT-Flip-Flop 6$ in dem gesetzten Zustand durch ein Signal, beispielsweise ein IOT-Schleifensignal, welches die zentrale Recheneinheit erzeugt, bis die Eingage-Ausgabeleitung tatsächlich während des IOT-Befehls verwendet wird.
Ein Inverter 70 und ein monostabiler Multivibrator schaffen über ein ODER-Glied 126 einen Eingang an dem Rücksetz-Synchronisier-Flip-Flop 62 entsprechend einem Signal von dem Flip-Flop 73» welches ebenso einen Ausgang an einem UND-Glied 72 schafft. Wenn das Flip-Flop 73 gesetzt ist, gibt der Inverter 70 den nächsten Taktimpuls frei, um den monostabilen Multivibrator 71 zu starten. Solange der Multivibrator 71
409840/0845
- 18 -
24U121
aktiv ist, halten die Taktimpulse das Rückstell-Synchronisier-Flip-Flop 61 gesetzt.
Sobald dann das PI-Flip-Flop 60 gesetzt ist, können Operationen, im wesentlichen von den in dem Schritt 203 (Fig..3A) festgelegten Operationen über die "JA"-Verzweigung umgeleitet werden, bis das Flip-Flop 73 gesetzt ist, wie später noch beschrieben wird. Wenn dies der Fall ist, geben die Eingänge an dem UND-Glied 65 das PI-Flip-Flop 60 frei, um es gesetzt zu halten (Schritt 204). Andererseits wird das PI-Flip-Flop 60 gesetzt (Schritt 205), wodurch das Ende einer Prioritätsanforderungsfolge angezeigt wird.
Wenn das PI-Flip-Flop 60 gesetzt ist, steuert es ein UND-Glied 72 an, welches zusätzlich erregt wird, wenn das Flip-Flop 73 ein für die Prioritätsunterbrechung bereits Flip-Flop 72 gesetzt sind. Wenn diese Bedingungen bestehen, wird über das UND-Glied 72 ein asynchroner Taktimpulsgeber 75 ausgelöst, um eine Folge von asynchronen Taktimpulsen (Fig. 4F) zu erzeugen, welche die Übertragung anderer Signale an die Eingabe/Ausgabeleitung 11 steuern. Dieser Taktgeber, welcher von dem Haupt taktgeber getrennt angeordnet ist, steuert die Grundoperationen während der Prioritätsanforderungsfolge. Der Schritt 206 (Fig. 3A) legt die Bedingungen fest, bei welchen der asynchrone Taktgeber 75 gestartet wird. Hierbei stellt der erste Schritt eine Reihe von Operationen dar, welche gleichzeitig mit den Operationen ablaufen, welche durch die Schritte 203 bis 205 festgelegt sind. Sobald diese Operationen beginnen, setzt der erste asynchrone Taktimpuls das Flip-Flop 76 (Schritt 207) und ein Prioritätsintervall-Anforderungssynchronisiersignal (ein PI EEQStNC-Signal Fig.. 4G) gelangt über eine entsprechende Steuerleitung an die Eingabe-Ausgabeleitung 11.
Der nächste Impuls von dem asynchronen Taktgeber setzt ein die Prioritätsunterbrechungs-Anforderung gewährendes Flip-Flop 77 (Fig. 4H) wenn ein (PIR RTN SYNC-)Flip-Fiop 80 zurückgesetzt
409840/0845
- 19 -
24U121
ist, und das (PI EEQ SYNC-)ΐΊΐρ-ϊΊορ 76 gesetzt ist; diese Bedingungen v/erden durch ein UND-Glied 81 überwacht. Wenn das Flip-Flop 77 gesetzt ist, überträgt es ein die Prioritätsunterbrechungs-Anforderung gewährendes Signal (ein PI EEQ GEANT-Signal) an die Eingabe/Ausgäbe-Leitung 12. Danach erzeugt der asynchrone Taktgeber 75 weitere Impulse, bis das Flip-Flop 80 gesetzt ist. Irgendeine der mehreren Bedingungen kann das Flip-Flop 80 setzen. In den meisten Fällen liegt eine Nicht-Null-Funktion an der Eingabe/Ausgäbe-Leitung 11 an, und das Vorhandensein einer logischen eins an einer der drei Funktions-Kodeleitungen hat zur Folge, daß ODEE-Glieder 82 und 83 einen Eingang an dem Flip-Flop 80 schaffen. Wenn keine derartigen Funktions-Kodesignale vorhanden sind, wird das Flip-Flop 80 durch eine der beiden anderen Bedingungen gesetzt. Um die Geschlossenheit des Systems sicherzustellen, kann eine Leitung, welche von dem Flip-Flop 77 der Eeihe nach über alle peripheren Einheiten läuft, unmittelbar als Eückführleitung zu dem ODEE-Glied 83 zurückführen. Wenn infolgedessen das System eine Prioritätsanforderungsfolge startet und das die Prioritätsunterbrechungs-Anforderung gewährende Signal nicht durch irgendeine periphere Einheit gesperrt ist, kommt es auf der Eückführleitung zurück und setzt das Flip-Flop 80.
Als dritte Alternative weist die Schaltung in Fig. 2B einen Zähler auf, v/elcher ein (PIE CTO-)Flip-Flop 84, ein (PIE CT1-) Flip-Flop 85 und ein· (PIE CT2-)Flip-Flop 86 hat. wie in dem ' Schritt 209 (Fig. 3B) dargestellt ist, wird jeder Impuls von dem Taktimpulsgeber 75 zu dem Zähler verschoben. Ein UND-Glied 87, das ausgelöst wird, wenn das Flip-Flop 77 gesetzt ist, überwacht den Zähler. Wenn ein vorbestimmter Zählstand erreicht ist, erregt das UND-Glied 87 das ODEE-Glied 83, so daß das Flip-Flop 80 gesetzt wird. Auf diese Weise ist mit der Schaltungsanordnung in Fig. 2B sichergestellt, daß das Flip-Flop 80 gesetzt wird (Fig. 41)fund daß die Prioritätsanforderungsfolge weiterläuft.
Wenn eine dieser Überprüfungen zufriedenstellend verläuft (Schritt 210), setzt der nächste asynchrone Taktimpuls von dem
A09840/0845
Taktgeber 75 das Flip-Flop 80 (Schritt 211). Ein nachfolgender asynchroner Taktimpuls setzt das Flip-Flop 84 (Schritt 212 und Fig. 4-j). Wenn das Flip-Flops 74 gesetzt ist, sperrt es das UND-Glied 72, und es werden keine asynchronen Taktimpulse mehr erzeugt.
Wenn in den Figuren 1 und 2B das ODER-Glied 66 in Fig:. 2B erregt wird und das Prioritätsunterbrechungs-Anschaltsignal (das PI IN-Signal) überträgt, gelangen ausgewählte Kanalbits von einem Kodierer 59 (Fig· 2A) an die Eingabe/Ausgabe-Leitung 11 (Fig. 4K). Diese Bits werden an jeder peripheren Einheit 10 (Fig. 1) in einem Vergleicher 88 erhalten. Alle die Vergleicher, welche eine entsprechende Beziehung zwischen den durch die ihnen zugeordneten Prioritätsanforderungen festgelegten Prioräätsstufen und der PriorMtsstuf e, welche die ausgewählten Kanalbits bestimmen, geben Steuerglieder frei, welche einem UND-Glied 91 äquivalent sind. Das die Prioritätsunterbrechungs-Anforderung synchronisierende Signal wirkt als Taktimpuls für das Flip-Flops 16, wodurch dieses Flip-Flop gesetzt wird, wenn das Flip-Flop 14- gesetzt ist, und daß UND-Glied 91 erregt wird. Wenn ein dem UND-Glied 91 ähnliches UND-Glied erregt wird, bedeutet dies, daß die entsprechende periphere Einheit eine Prioritätsanforderung bei der nunmehr gewährten Prioritätsstufe durchgeführt hat. Hierdurch werden dann alle UND-Glieder, welche einem UND-Glied 92 äquivalent sind, in diesen peripheren Einheiten ausgelöst.
Das nächste Signal, welches die periphere Einheit 10 erhält, ist das die Prioritätsunterbrechungsanforderung gewährende Signal auf einer Eingangsleitung 94, welche unabhängig von deren Priorität der Reihe nach durch alle peripheren Einheiten geführt ist. Wenn dem UND-Glied 91 ähnliche UND-Glieder nicht erregt sind, läßt die periphere Einheit das Signal nur zu der nächsten peripheren Einheit in der Reihe durch. In Fig. 1 weist die Schaltungsanordnung, welche das Signal durchläßt, einen Inverter 95 auf, welcher ein UND-Glied 96 freigibt, um das die
409840/0845
21 " 24U121
Prioritätsunterbrechungs-Anforderung gewährende Signal über einen von einem EnergieSteuerungsrelais 97 gesteuerten Relaissatz 9?a zu einer Ausgangsleitung 100 durchläßt, welche zu der nächsten peripheren Einheit in der Leitung führt. Zusätzlich zu den NO-Kontakten 97A weist das EnergieSteuerungsrelais 97 NC-Kontakte 97B auf, welche parallel zu dem UND-Glied 96 und den NO-Kontakten 97A liegen, um die Eingangsleitung 94 unmittelbar mit der Ausgangsleitung 100 für den Fall zu verbinden, daß die periphere Einheit abgeschaltet ist.
Wenn dann das UND-Glied 91 erregt ist, wird das UND-Glied durch den Inverter 95 gesperrt, so daß das eine Prioritätsunterbrechungsanforderung erteilende Signal nicht über diese periphere Einheit übertragen werden kann. Wenn darüber hinaus das UND-Glied 92 ausgelöst ist, setzt das Prioritätsunterbre chungs-Anforderung gewälumde Signal eine Sperrschaltung 101, um dadurch ein Eingangssignal an einen Zeilenselektor 102 anzulegen. . ·
Intern von einer Quelle 103 in der peripheren Einrichtung erzeugte Bedingungssignale zeigen die Art der Unterbrechung an. Der Zeilenwähler 102 wählt eine spezielle Zeile in einer Basisadressen-Registermatrix 104 entsprechend der zu setzenden Sperrschaltung 101 aus. Hierdurch überträgt dann die Matrix ein spezielles Unterbrechungs-Datenwort an die Eingabe/Ausgabe-Leitung 11 (Fig. 4L). Die zentrale Recheneinheit benutzt dieses Unterbrechungs-Datenwort dann zur Steuerung der nachfolgenden Operationen.
Ein bestimmter, spezifischer Aufbau dieses Unterbrechungs-Datenworts ist in i'ig. 5 dargestellt. Es weist ein Drei-Bit-Byte (die Bits 0-2), um den ausgewählten Kanal oder die allgemeine Prioritätsstufe zu bezeichnen;ein Drei-Bit-Byte (die Bits 3-5) f um die durchzuführende Funktion zu kennzeichnen, ein Zwölf-Bit-Adresseninkrement (die Bits 6 - 17) und ein Achtzehn-Bit-Adressenbyte auf (die Bits 18 - 35).
- 22 A098A0/0845
Wie vorstehend aufgezeigt, zeigt ein "000"-Funktionskode in dem Unterbrechungs-Datenwort an, daß keine periphere Einheit auf das die Prioritätsunterbrechungsanforderung erteilende Signal angesprochen hat. Dies bedeutet, daß die zentrale Recheneinheit auf eine Antwort wartet, und hat schließlich zur Folge, daß die zentrale Recheneinheit irgendeine Art Ergänzungs- bzw. Hilfsprogrammfwie beispielsweise ein Abrufprogramm verwendet. Hierdurch ist es möglich, periphere, nicht zur Erfindung gehörende Einheiten mit peripheren, bei der Erfindung verwendeten Einheiten zu durchmischen, vorausgesetzt, daß alle anderen Kenndaten kompatibel sind, d.h. miteinander übereinstimmen. Andere Funktionskode können auch herkömmliche Unterbrechungsoperationen erzeugen. Beispielsweise startet ein "001"-Kode ein Unterbrechungsprogramm bei einer Adresse, welche von dfer Priorität abhängt. Ein "010"-Kode startet das Unterbrechungsprogramm bei einer Adresse, welche durch das Adressenbyte genau festgelegt ist. Hierdurch sind Programme vorgesehen, welche bewirken, daß ein PIH-Flip-Flop in einem Prioritätskanal gesetzt wird.
Es stehen auch andere Funktionen zur Verfügung, welche die Systemoperation beschleunigen. Beispielsweise bewirkt ein "011"-Kode, daß die zentrale Recheneinheit den mit Vorzeichen versehenen Zusatz zu dem Inhalt einer Stelle hinzuaddiert, welche durch ein Adressenbyte bezeichnet ist. Die Kode "100" und "101" haben den Vorteil, daß. die Unterbrechung gehalten werden kann, ohne daß irgendeiner der Schritte durchzuführen ist, welche normalerweise einem Unterbrechungsprogramm zugeordnet sind. Wenn die periphere Einheit Daten von einer Reihe von Stellen erhält, bewirkt ein "100"Funktionskode, daß die zentrale Recheneinheit unmittelbar, ohne irgendwelche Abfrageoperationen, die in dem durch das Adressenbyte gekennzeichneten Speicher gespeicherten Daten an die Eingabe/Ausgabe-Leitung abgibt. In ähnlicher Weise kennzeichnet mit einem "101"-Kode die Adresse eine Speicherstelle, welche zum Speichern von Daten
- 23 409840/0845
4H121
der pei^ipheren Einheit vorgesehen ist. In diesen beiden Fällen führt die zentrale Recheneinheit das entsprechende Speicherunterprogramm entsprechend den Funktionskoden unmittelbar durch.
In Fig. 2B zeigt das Setzen'des für eine Prioritätsunterbrechung bereiten Flip-Flops 7^ an, daß die Prioritätsanforderungsfolge ihre Anschluß- bzw. Endoperation beginnen kann, und daß eine Prioritätsunterbrechungs-Befehlsfolge, (welche im folgenden als "PI-Befehlsfolge" bezeichnet wird) beginnen kann. Durch das Einstellen des Flip-Flops 74- wird jedoch noch nicht unmittelbar das (PIR DOHE-)Flip-Flop 73 gesetzt. Von einer Zeit— Verzögerungsschaltung 105 liegt in der Schaltung ein Eingang an einem UND-Glied 106 an; folglich muß diese Zeitverzögerung verstreichen, bevor das Flip-Flop 73 gesetzt wird. Diese Zeitverzögerung ist in Fig. 3C durch den Schritt -213 dargestellt; während dieser Zeitverzögerung können die in den Schritten bis 222 aufgeführten Operationen erfolgen.
Der Schritt 215 ist der erste Schritt in einem Anfangsteil der PI-Befehlsfolge. Ein UND-Glied 110 (Fig. 2B) erhält ein Signal von einem Inverter 111, welches anzeigt, ob das System im Begriff ist, mit einem vorher gestarteten Prioritätsunterbrechungszyklus zu beginnen.
Wenn ein den Prioritätsunterbrechungszyklus startendes Flip-Flop 107 zurückgestellt wird, löst es das UND-Glied 110 auf, ' gibt es das UND-Glied 110 ebenso wie das für eine Prioritätsunterbrechung bereite Flip-Flop 7^- frei, wenn dieses gesetzt ist. Wenn alle diese Signale das UND-Glied 110 erregen, wird ein für die Prioritätsunterbrechung bereites' Synchronisier-Flip-Flop 112 bei dem nächsten System-Taktimpuls gesetzt. Wenn das Flip-Flop 112 gesetzt ist (Schritt 216 ); können im wesentlichen keine weiteren Schritte in der PI-Befehlsfolge erfolgen, ohne daß verschiedene Register und Rechenelemente in der zentralen Recheneinheit verwendet werden. Obwohl die vorhergehenden Schritte in der Prioritätsanforderungsfolge und in der PI-Befehlsfolge gleichzeitig mit den Schritten in dem
409840/0845
24U121
laufenden Programm durchgeführt sind, müssen die folgenden Schritte synchron zusammen mit diesen anderen Elementen in der zentralen Recheneinheit durchgeführt werden. Es erfolgt daher eine Pause in der PI-Befehlsfolge, bis ein für den Prioritätsunterbrechungszyklus bereite !Flip-Flop 114 gesetzt ist.
Bei dem Schritt 217 in Fig. 3C erhält normalerweise ein UND-Glied 115 (Fig- 2B) das Befehlsabrufsignal (das INST-FET EN-Signal} und ein Pseudoabruf-Nichtsignal von anderen Taktsteuer-und Steuerschaltungen in der zentralen Eecheneinheit zusammen mit dem gesetzten Ausgang des Flip-Flops 112. Das Befehlsabrufsignal kennzeichnet einen der vorerwähnten Zeitpunkte während der Durchführung eines Befehls in dem laufenden i-rogramm. Zu dieser Zeit des Befehlabruf signals iäü der Programmzählerbis zu einer Stelle in dem neuen Befehl des laufenden Programms weiter geschoben worden. Folglich kann die zentrale Recheneinheit den Programmzählerinhalt speichern und zu dem laufenden Programm an der richtigen Stelle zurückleiten. Wie später noch beschrieben wird, erzeugen bestimmte Operationen ein Pseudoabrufsignal und dessen Kompliment, das sogenannte Pseudoabruf-Nichtsignal. Während derartiger Operationen kann keine PI-Befehlsfolge beginnen, so daß ein UND-Glied 115 während dieser Operationen gesperrt ist, um eine Anwort auf ein Befehlabrufsignal zu sperren, das während einer Pseudoabrufoperation auftritt.
Wenn das Flip-Flop 114 gesetzt ist, bleibt es gesetzt, bis ein Befehlabgabesignal (ein INST DONE-Signal) erzeugt ist. Ein UND-Glied 116 erhält das gesetzte Ausgangssignal von dem Flip-Flop 114 und das Komplement des Befehlabgabesignals, daß ein Inverter 117 schafft. Folglich halten die nachfolgenden Taktimpulse das Flip-Flop 114 gesetzt, bis der laufende Programmbefehl durchgeführt worden ist. Wenn die zentrale Recheneinheit das vorher erwähnte Befehlabgabesignal (Schritt 220) abgibt, wird das UND-Glied 120 unmittelbar erregt, so daß der nächste Taktimpuls ein PIT1-Flip-Flop 121 setzt. Der gleiche
409840/0845
24H121
Taktimpuls setzt das Flip-Plop 114 (Schritt 221) zurück. Das Flip-Flop 121, ein PIT2-Flip-Flop 122 und ein PIT3-Flip-Flop 123 stellen einen PI-Befehlszeitgeber dar. Der Schritt 221 (Fig. 3C) ist der erste in einer Reihe von Schritten, welche das Befehlsdatenwort zu der zentralen' Recheineinheit verschieben. Wenn während eines PIT1-Zeitzustandes das Flip-Flop 121 (Fig. 2B) gesetzt ist, finden die in dem Schritt 222 angegebenen Operationen statt. Wie vorher aufgezeigt, wird noch das eine Prioritätsunterbrechungsanforderung gewährende Signal festgestellt, so daß das Unterbrechungsdatenwort von der ausgewählten peripheren Einheit an der Eingabe/Ausgäbe-Leitung 11 vorhanden ist. Infolgedessen bestimmt während des Schrittes 222 die zentrale Recheneinheit einen Weg von der Eingabe/Ausgabe-Leitung 11 über einen Addierer in der zentralen Recheneinheit zu einer Speicheradressen-Hauptleitung. Gleichzeitig wird das PIT1-Signal über ein ODER-Glied 124 übertragen, so daß der nächste Taktimpuls das Flip-Flop 64 setzt, um dadurch den tatsächlichen Start der PI-Befehlsfolge anzuzeigen. Dieser Impuls setzt auch das Flip-Flop 122.
Durch das Setzen des Flip-Flops 64 kann die zentrale Recheneinheit die Prioritätsanforderungsfolge zusammen mit den PIT2- und den PIT3-Zeitzuständen beenden. Im Schritt 214 wird das den Prioritätsunterbrechungs-Anforderungszyklus startende Flip-Flop 107 entsprechend dem Flip-Flop 64 gesetzt, welches ein ODER-Glied 125 setzt; das Flip-Flop 10? wirkt als Steuerungsanordnung für die Priorxtätsanforderungs-Folgeschaltung. Wenn das Flip-Flop 107 einmal gesetzt ist, bleibt es gesetzt, bis das Flip-Flop 64 zurückgesetzt wird, wenn ein UHD-Glied 127 Signale von beiden Flip-Flops erhält.
Nunmehr wird zuerst das Ende der Priordtätsanforderungsfolge analysiert; wenn im Schritt 224 in Fig. 3D gefühlt wird, daß das Intervall der Zeitverzögerungsschaltung 105 durch Zeittaktimpulse gesteuert ist und das Flip-Flop 107 gesetzt ist, wird das UND-Glied.106 erregt und der nächste Taktimpuls setzt das Flip-Flop 73 (Fig. 4M). Durch das Setzen des Flip-Flops 43 wird
409840/0845 - 26 -
241A121" "
ein übersteuerndes Sperrsignal am Eingang der UND-Schaltung 72 geschaffen, so daß keine zusätzliche asynchrone Taktimpulse, selbst nachdem das Flip-Flop 74 zurückgesetzt ist, auftreten. Der Inverter 70 koppelt ein Signal über das ODER-Glied 126 so an, daß ein nächster Taktimpuls das Rücksetz-Synchronisier-Flip-Flop 62 setzt und ein Zeittaktsignal von dem monosfcabilen Multivibrator 71 aus (Fig. 4N) startet. Hierdurch bleibt das Flip-Flop 62 für eine vorbestimmte Zeit gesetzt. Durch das Setzen des Flip-Flops 73 ist das UND-Glied 65 gesperrt, so daß der nächste Taktimpuls das PI-Flip-Flop 60 (Fig. 4E) zurücksetzt. Wenn das Flip-Flop 75 gesetzt v/ird (Fig. 4M), setzt es unmittelbar die Flip-Flops 74 (Fig. 4J) 76 (Fig. 4G), 77 (Fig. 4H), 80 (Fig. 41), 84, 85 und 86. Wenn das die Prioritätsunterbrechungsanforderung synchronisierende Impulssignal endet (Fig. 4G), hält die periphere Einheit die Übertragung des Unterbrechungsdatenwortes (Fig. 4L) an, und ein Inverter 98 (Fig. 1) setzt die Sperrschaltung 101 zurück. Der Taktimpuls, welcher auf das Zurücksetzen des Flip-Flops 74 (Fig. 2B) folgt, setzt die Flip-Flops 107 und 73 zurück. Wenn die beiden Flip-i'lops 74 und 73 zurückgestellt sind, kann eine neue Prioritätsanforderungsfolge begingen, da das UND-Glied 72 erregt werden kann, wenn das Flip-Flop 70 gesetzt ist. Diese Operationen sind als Schritt 225 in Fig. 3D dargestellt.
Zusammen mit diesen Schritten beginnt die zentrale Recheneinheit den PIT2-Zeittakt-zustand. Der erste Schritt (der Schritt-23Ο) in diesem Zeittaktzustand ist in Fig. 3E dargestellt. Obwohl es zwei Möglichkeiten gibt, den Schritt 2$o zu erreichen, geht die normale Folge von den durch den Schritt 222 (Fig. JC) festgelegten Operationen aus. Zu dem Zeitpunkt, zu welchem die Unterbrechung eine einfache eins ist, beginnt die Schaltungsanordnung die Operationen durch Speichern der Adresse in einem Register für einen anschließenden Gebrauch (Schritt 23I in Fig. 3E). Wenn im Schritt 232 die zentrale Recheneinheit anzeigt, daß das Unterbrechungsdatenwort ein normales oder zugeteiltes Prioritätsunterbrechungswort ist, werden weitere
409840/0845 -27
2AH121"27"
PI-Befehle gesperrt, und ein nicht dargestelltes Flip-1'Ίορ wird gesetzt, um das vorher beschriebene Pseudo-Abrufsignal zu erzeugen^ dadurch wird dann das Pseudo-Abruf-Nichtsignal beendet.
Während der Prioritätsanforderungsfolge steuert jeder Impuls von dem asynchronen Taktimpulsgeber 75 Daten auf "q,"-, "r"- und 11S-" Leitungen der Eingabe/Ausgabe-Hauptleitung 11 in einem Register 130 (Fig. 2A) mit "feaktimpulsgesteuerten Flip-Flops 13Oq1 13Or und 130 s. Sobald der asynchrone Taktimpulsgeber 75 gesperrt ist, speichert das Register 130 den übertragenen Funktions-Kodewert. Ein Dekodierer 131 erzeugt dann in Abhängigkeit von · dem Funktionskode ein Signal. Zusätzlich spricht ein ODER-Glied 132 auf die Prioritätsunterbrechungs-, INC MEM-, -DOATAS- und DATAI-Signale an, welche durch Prioritätsunterbrechungsbefehle festgelegt sind, um ein Prioritätsunterbrechungsbefehlssignal zu erzeugen.. Ein Inverter 133 erzeugt ein PI-Pseudobefehl-Abrufsignal (ein PI PSEUDO INST FET-Signal), wenn das ODER-Glied 132 ein anderes Signal erzeugt als ein PI INCMEM oder PI DATAI oder PI DATAO-Signal. Diese beiden Signale TAierden in anderen Bereichen der zentralen Recheneinheit verwendet. Die zentrale Recheneinheit verwendet dann das Signal von dem Dekodierer 131? um die notwendigen Fehleranzeigen für ein genaues Speicherunterprogramm (Schritt 237 in Fig. 33?) zu setzen. In einigen Fällen kann ein Lesespeicher-, ein Schreibspeicher—Unterprogramm oder es können beide Programme erforderlich sein.
Wenn der Schritt 237 beendet ist, lenkt der Schritt 240 zu dem Schritt 241 um, wenn der Dekodierer 131 ein PI-Zuteilungs- oder ein normales Signal erzeugt. Nach dem Endes des Speicher-Unterprogramms beginnt die zentrale Dateneinheit den ersten Befehl in dem Unterbrechungsprogramm oder die Abrufoperation in dem Schritt 242 zu verarbeiten. Wenn die zentrale Recheneinheit nicht -«j η den Operationen des Schrittes 240 zu denen der Schritte 243 iind 244 umgelenkt wird, führt ein Speicher-
409840/0845 - 28 -
24Η12Γ28"
unterprogramm die notwendige Operation durch; die zentrale •Recheneinheit führt dann die Pl-Operationsbefehüe durch, bevor sie zu dem laufenden (d.h. unterbrochenen) Programm zurückkehrt.
Bei einigen Prioritätsunterbrechungen kann es notwendig sein, zusätzliche Speicher-Unterprogramme durchzuführen. Wenn die zentrale Recheneinheit jedes Speicherunterprogramm während einer Unterbrechungsoperation beendet, wird mit einer nicht dargestellten Schaltungsanordnung bestimmt, ob ein zweiter Zyklus notwendig ist (Schritt 245 in Fig. 3E). Wenn dies der Fall ist, wird ein nicht dargestelltes (PI OV) Flip-Flop gesetzt (Schritt 246). Wenn der laufende Befehl beendet ist, (Schritt 247) wird das vorher erwähnte, nicht dargestellte Befehlsabgabe-Flip-Flop gesetzt (Schritt 247) > und- während des Schritts wird die Operation umgelenkt, in Abhängigkeit davon, ob das (PI OV) Flip-Flop gesetzt ist. Wenn es nicht gesetzt ist, wird das Flip-Flop 64 zurückgesetzt, und die PI-Befehlsfolge endet in dem Schritt 249. Wenn das (PI OV)-Flip-Flop gesetzt ist, wird eine neue Adresse erzeugt., (Schritt 250), und die zentrale Recheneinheit kehrt dann zu dem Schritt 2JO zurück. Der Schritt 230 lenkt direkt zu dem Schritt 232 um, da das (PI OV) Flip-Flop gesetzt ist.
Die vorbeschriebene Unterbrechungsschaltung gemäß der Erfindung hat mehrere Vorteile. Zum einen kann der Inhalt eines Prioritätsregisters 17 in jeder peripheren Einheit ohne weiteres während des Programmablaufs geändert werden. Diese hiermit gekoppelte Serienübertragung des die Prioritätsunterbrechungsanforderung gewährenden Signals über alle peripheren Einheiten, unabhängig von deren Prioritätsstufe, kann ein Programmierer mit einer flexibleren Zuordnungsmöglichkeit schaffen.
Die Erzeugung der Daten, welche die unterbrechende periphere Einheit kennzeichnet, ermöglicht in hohem Maße ein Programmieren.
- 29 409840/0845
24 Hj |91 _
Einige Übertragungen erfordern keine echte Programmierung. Mit den peripheren Einheiten gemäß der Erfindung können Abrufoperationen in vielen Fällen weggelassen werden. Darüber hinaus kann die Erfindung bei einem digitalen Rechnersystem verwendet werden, ohne daß die Verwendung von peripheren Einheiten ausgeschlossen ist, welche andererseits mit dem System kompatibel sind, daß ein herkömmlicher AbrufVorgang mit nicht in der Erfindung vorgesehenen peripheren Einheiten erfolgen kann.
- Patentansprüche -
- 30 409840/0845

Claims (1)

  1. 24 H
    Patentansprüche
    Digitale Datenverarbeitungsanlag mit einer zentralen Recheneinheit, einer peripheren Einheit und einer Eingabe/Ausgabe-Hauptleitung mit einer Anzahl mit dieser verbundenen Leitungen, wobei jede periphere Einheit mit ds? Eingabe/Ausgabe-Hauptleitung zur Aufnahme und Übertragung- von Steuer- und Datensignalen von der und an die Leitungen der Hauptleitung angeschlossen ist, wobei bestimmte der erhaltenen Steuersignale, welche ausgewählte Kanalsignale aufweisen, eine Prioritätsstufe, ein Anforderungssynchronisiersignal und ein darauf folgendes, eine Eingabe gewährendes Signal bezeichnen, gekennzeichnet durch die periphere Einheit mit
    A. einer Einrichtung (13,14-ι15ϊΊ7) zur Übertragung eines Prioritätsunterbrechungssignals an die Hauptleitung (11), welches einen Prioritätspegel anzeigt;
    B. einem an die Übertragungseinrichtung angeschlossenen Vergleicher (16,88,91) zur Aufnahme der ausgewählten Kanalsignale, um ein Ausgangssignal zu schaffen^ wenn die periphere Einheit eine Prioritätsunterbrechung in der Stufe gefordert hat, welche die ausgewählten Kanalsignale kennzeichnen;
    C. einem einen Eingang. zuteilenden Signalempfänger (92,94,96, 101), um normalerweise das den Eingang erteilende Signal über die periphere Einheit anzukoppeln, wobei der Empfänger entsprechend der Verknüpfung eines Signals von dem Ver- ■ gleicher und einem Anforderungs-Synchronisiersignal gesperrt ist, um dadurch den Durchgang des den Eingang erteilenden Signals durch die periphere Einheit zu sperren; und
    D. einer Einrichtung (102 bis 104) zur Übertragung eines digitalen Unterbrechungsdatenworts an ausgewählte Leitungen der Hauptleitung (11), wenn der Empfänger gesperrt ist.
    - 31 -
    409840/0845
    24U12T
    2. Datenverarbeitungsanlage nach Anspruch 1, dadurch g e k e η nz e ic h η e t, dab die das digitale Unterbrechungsdatenwort
    - erzeugende Einrichtung in der peripheren Einheit eine Ein-? richtung (10;?) zum Erzeugen von BedingungsSignalen, eine Einrichtung (104) zum Speichern einer Anzahl Unterbrechungsdatenworte in digitaler Form entsprechend dem Empfänger, welcher durch Übertragung 'eines ausgewählten Wortes an die Hauptleitung gesperrt ist, und eine Einrichtung (102) entsprechend den Bedingungssignalen aufweist, um das spezielle Unterbrechungsdatenwort auszuwählen.
    3. Datenverarbeitungsanlage nach einem der Ansprüche 1 oder 2, · dadurch gekennzeichnet, daß die Hauptleitung (11) in der peripheren Einheit eine Anzahl Prioritätsunterbrechungsleitungen aufweist, wobei jede Leitung einer von einer Anzahl Prioritätsstufen entspricht, und daß die das Prioritätsunterbrechungssignal übertragende Einrichtung ein Prioritätsregister (17) zur Speicherung einer Prioritätszahl entsprechend einem anderen Steuersignal und ausgewählter Datensignale auf der Hauptleitung, einen gesteuerten Dekodierer (15)} welcher auf ein die Eingabe steuerndes Signal zum Umwandeln des Inhalts des Prioritätsregisters (17) in ein Signal auf einer entsprechenden Prioritätsunterbrechungsleitung anspricht, und eine Einrichtung (13) zum Schaffen des die Eingabe steuernden Signals aufweist.
    4. Datenverarbeitungsanlage nach einem der Ansprüche 1,2 oder 3, dadurch gekennzeichnet, daß in der Anlage zusätzlich eine Speichereinheit (302,303 oder 304) mit einer Anzahl adressierter Stellen vorgesehen ist, wobei die Signale von der das Unterbrechungsdatenwort schaffenden Einrichtung in Gruppen angeordnet sind, um eine durchzuführende Funktion und eine Adresse in der Speichereinheit anzuzeigen.
    5. Datenverarbeitungsanlage nach einem der Ansprüche 1 bis 4-, dadurch gekennzeichnet, daß die zentrale
    - 32 409840/0845
    24U12152 -
    Recheneinheit eine Einrichtung zum Erzeugen von Daten und Steuersignalen aufweist, um die Übertragung von Prioritätsunterbrechungssignälen an die Hauptleitung freizugeben und zu sperren, und daß die periphere -Einheit zusätzlich eine Freigabeeinrichtung (12) aufweist, welche mit der das Prioritätsunterbrechungssignal übertragenden Einrichtung verbunden ist, um die das Prioritätsunterbrechungssignal übertragende Einrichtung entsprechend der vorbestimmten Freigäbe- und Sperrdaten sowie der Steuersignale freizugeben oder zu sperren.
    Datenverarbeitungsanlage, insbesondere nach Anspruch 1, mit einer zentralen Recheneinheit, einer Anzahl peripherer Einheiten und einer Eingabe/Ausgabe-Hauptleitung mit Steuer- und Datenleitungen, welche an die zentrale Recheneinheit sowie die peripheren Einheiten angeschlossensind, wobei jede periphere Einheit eine Einrichtung zum Übertragen von Prioritätsunterbrechungssignalen über eine eine Anzahl von für die Unterbrechungssignale vorgesehenen Leitungen in der Hauptleitung aufweist, gekennzeichnet durch die zentrale Recheneinheit mit
    A. einer die Priorität bestimmenden Einrichtung (20,23i59)» welche mit den Prioritätsunterbrechungsleitungen zur Auswahl eines Prioritätsunterbrechungssignals verbunden ist, und eine Einrichtung (59) zur Übertragung von ausgewählten Kanalsignalen aufweist, welche der Prioritätsstufe entsprechen, welche an vorbestimmten Leitungen der Hauptleitung zu gewähren ist;
    B. einer Prioritätsanforderungsschaltung mit einem Taktgeber (75)» welcher durch die die Priorität bestimmende Einrichtung gesperrt ist, mit einer Einrichtung (76), welche
    auf einen ersten Impuls von dem Taktimpulsgeber anspricht, um ein Anforderungssynchronisiersignal auf einer Steuerleitung der Hauptleitung zu erzeugen, und mit einer Einrichtung (77*81), welche auf einen nachfolgenden Impuls des Taktgebers (75) anspricht, um ein eine Eingabe gewährendes Signal an einer anderen Steuerleitung der Hauptleitung zu erzeugen; und
    409840/0845 -35-
    24H121- 33 -
    C. einer Schaltung (110 Ms 125) zur Unterbrechung des Prioritätsbefehls, welche bei Beendigung der Verarbeitung in der Prioritätsanforderungsschaltung und der Bedingungen in der zentralen Recheneinheit anspricht, um Daten auf den Leitungen der Hauptleitung für die anschließenden Operationen der zentralen Recheneinheit zu erhalten.
    7. Datenverarbeitungsanlage nach Anspruch 6, dadurch gekennzeichnet, daß erhaltene Signale auf bestimmten Leitungen der Hauptleitung in der zentralen Recheneinheit eine Funktion festlegen, und daß die zentrale Recheneinheit zusätzlich ein ITunktionsregister (130), welches auf den Taktimpuigeber zur Speicherung der Funktionssignale anspricht, und Einrichtungen (131 bis 133) aufweist, welche auf Daten in dem Funktionsregister zum Erzeugen von internen Steuersignalen für die zentrale Recheneinheit ansprechen.
    8. Datenverarbeitungsanlage nach einem der Ansprüche 6 oder 7» dadurc.h gekennzeichnet, daß die Prioritätsanforderungs-Schaltung eine Beendigungseinrichtung (80) aufweist, welche auf einen anderen Impuls von dem Taktimpulsgeber anspricht, um diesen zu sperren und um anzuzeigen, daß die Prioritätsanforderungsschaltung das trioritätsunterbrechungssignal verarbeitet hat, und daß die Beendigungseinrichtung einen durch den Taktimpulsgeber gesteuerten Zähler (84 bis 86), eine Signale auf den Funktionsdatenleitungen überwachende Einrichtung (82) und eine Einrichtung (83,87) aufweist, welche auf Signale von dem Zähler und der Überwachungseinrichtung anspricht, um die Beendigungseinrichtung auszulösen.
    9. Datenverarbeitungsanlage nach einem der Ansprüche 6, 7 oder d adurch gekennzeichnet, daß die Schaltung für die Unterbrechung des Prioritätsbefehls eine erste Einrichtung (T12) zum Synchronisieren der Schaltung auf normale Befehlsoperationen der zentralen Recheneinheit und eine
    409840/0845 -34-
    Einrichtung (113 bis 117) aufweist, welche auf die erste Einrichtung (112) und das Ende einer Befehlsoperation anspricht, um die Schaltung zur Unterbrechung des Prioritätsbefehls auszulösen.
    10.Datenverarbeitungsanlage nach einem "der Ansprüche 6 bis 9» dadurch gekennzeichnet, daii die die Priorität bestimmende Einrichtung in der zentralen Recheneinheit einen Eingabekanal (20) für jede Prioritätsstufe auf v/eist, und jeder Eingabekanal eine Einrichtung (24 bis 29) aufweist, um sich selbst zu sperren.
    11.Digitale Datenverarbeitungsanlage, insbesondere nach Anspruch 1, gekennzeichnet durch
    A. eine Hauptleitung (11) mit Steuer- und Datenleitungen;
    B. eine . zentrale Recheneinheit mit
    einer die Priorität bestimmenden, -an die ersten Steuerleitungen angeschlossenenLinrichtung (2O,23,59)| welche ein Prioritatsunterbrechungssignal gewährt, und einer Einrichtung zur Übertragung von der zu gewährenden Prioritätsstufe entsprechenden Signalen an erste vorbestimmte Datenleitungen der Hauptleitung, einer Prioritätsanforderungsschaltung mit einem durch die die Priorität bestimmende Einrichtung ausgelösten Taktgeber (75)» mit einer auf einen ersten Impuls von dem Taktgeber ansprechenden Einrichtung (76) zur Übertragung eines Anforderungssynchronisiersignals an eine zweite Steuerleitung der Hauptleitung, und mit einer auf den Taktimpulsgeber ansprechenden Einrichtung (77» 81) zur Übertragung eines die Eingabe gewährenden Signals an eine dritte Steuerleitung der Hauptleitung, und
    mit einer Schaltung (110 bis 125) zur Unterbrechung des Prioritätsbefehls , welche auf das Ende einer Prioritätsunterbrechungs-Anforderungsfolge und auf Bedingungen in der zentralen Recheneinheit anspricht, um Daten auf zweiten Datenleitungen zu erhalten; und
    409840/0845
    - 35 -
    24141-23T-
    G. einer Anzahl von peripheren Einrichtungen von denen zumindest eine periphere Einheit folgende Einrichtungen aufweist:
    eine Einrichtung (15,14,15,17) zur Übertragung eines Prioritätsunterbrechungssignals an eine der ersten Steuerleitungen, welches eine von einer Anzahl Prioritäts-'stufen anzeigt,
    einen Vergleicher (16,88,91), welcher an die das Prioritätsunterbrechungssignal übertragende Einrichtung angeschlossen ist und einen gewährten Prioritätspegel anzeigende Signale auf den ersten Datenleitungen erhält, wobei der Vergleicher ein Ausgangssignal erzeugt, wenn die periphere Einheit eine. Prioritätsunterbrechung in derselben Stufe der zu gewährenden Priorität angefordert hat, und
    einen eine Eingabe geivährenden Signalempfanger (92,101, 96,94·), welcher mit der dritten Steuerleitung verbunden ist, um ein die Eingabe gewährendes Signal über die periphere Einrichtung anzukoppeln, wobei der Empfänger entsprechend einem Signal von' dem Vergleicher und einem Anforderungssynchronisiersignal gesperrt wird, um dadurch den Durchgang des die Eingabe gewährenden Impulses durch die periphere Einheit zu sperren, und eine Einrichtung (102 bis 104) zum Übertragen eines digitalen Unterbrechungsdatenwortes an die zweiten Datenleitungen, das an die zentrale Recheneinheit übertragen wird.
    12. Datenverarbeitungsanlage nach Anspruch 11, dadurch gekennzeichnet, daß die Hauptleitung (11) eine Anzahl erster Steuerleitungen auf vast, daß die das Prioritätsunterbrechungssignal übertragende Einrichtung in der peripheren Einrichtung ein Prioritätsregister (17) zum Speichern einer Prioritätsanzahl entsprechend den Signalen auf einer vierten Steuerleitung und zum Speichern von ausge-
    409840/0845
    24H12T
    wählten Datensignalen auf vorbestimmten Datenleitungen, einen gesteuerten Dekodierer (15) j welcher auf ein die Eingabe gewährendes Signal anspricht, um den Inhalt des Priorüätsregisters in ein Signal auf einer entsprechenden von den ersten Steuerleitungen umzusetzen, und eine Einrichtung (13) zum . Erzeugen des Eingangssteuersignals aufweist.
    13. Datenverarbeitungsanlage nach einem der Ansprüche 11 oder 12, dadurch gekennzeichnet, daß
    A. die periphere Einheit zusätzlich eine Einrichtung (103) zum Erzeugen von BedingungsSignalen, eine Einrichtung
    (104) zum Speichern einer Anzahl digitaler Unterbrechungsdatenworte, welche auf den zu sperrenden Empfänger ansprechen, um ein ausgewähltes Wortunter diesen Worten über die Hauptleitung zu übertragen, und eine Einrichtung
    (105) aufweist, welche auf die Bedingungssignale anspricht, um das digitale, zu übertragende Unterbrechungsdatenwort auszuwählen, und daii
    B. die zentrale Recheneinheit ein Funktionsregister (130), das auf den Taktimpulsgeber anspricht, um Teile des digitalen Unterbrechungsdatenworts zu speichern, und Einrichtungen (131 bis 135) aufweist, welche auf die Daten in dem Funktionsregister ansprechen, um Steuersignale für die zentrale Recheneinheit zu erzeugen.
    14. Datenverarbeitungsanlage nach einem der Ansprüche 11, 12 oder 13, dadurch gekennzeichnet, da-ώ die eine Eingabe gewährenden Empfänger in jeder peripheren Einheit in Reihe geschaltet sind, wobei das eine Eingabe gewährende Signal von der zentralen Recheneinheit an einen ersten Empfänger gekoppelt ist, daü die Anlage zusätzlich eine fünfte Steuerleitung in der Hauptleitung aufweist, um ein durch die letzte periphere Einheit hindurchgehendes Signal aufzunehmen, daß die Prioritätsanforderungsschaltung eine Beendigungseinrichtung in der zentralen Recheneinheit" auf v/eist, welche auf den Taktimnulsgeber anspricht, um diesen su spenden,
    409840/0845
    2AU121
    und um dadurch anzuzeigen, daß die Prioritätsanforderungsschaltung ein Prioritätsunterbrechungssignal verarbeitet hat, und daß die Beendigungseinrichtung einen von dem Taktimpulsgeber gesteuerten Zähler (84 bis 86), eine die Funktionssignale überwachende Einrichtung (82) und eine Einrichtung (83,87] aufweist, welche auf die Signale von dem Zähler, der Überwachungseinrichtung und der fünften Leitung zum Auslösen der Beendigungseinrichtung anspricht.
    15· Datenverarbeitungsanlage nach einem der Ansprüche 11 bis 14, dadurch gekennzeichnet, daß eine Speichereinheit eine Anzahl adressierte Stellen aufweist, daß die Signale von der Einrichtung für das digitale Unterbrechungsdatenwort in Gruppen angeordnet sind und eine durchzuführende Funktion sowie eine Adresse in der Speichereinheit anzeigen, und daß die Schaltung zur Unterbrechung des Prioritätsbefehls zusätzlich eine erste Einrichtung (112), welche die Schaltung bezüglich normaler Befehlsoperationen der zentralen Einheit synchronisiert, und eine Einrichtung (113 bis 117) . aufweist, welche auf die erste Einrichtung und das Ende einer Befehlsoperation' anspricht, um die Schaltung zum Unterbrechen des Prioritätsbefehls auszulösen.
    16. Datenverarbeitungsanlage nach einem der Ansprüche 11 bis 15s dadurch gekennzeichnet , daß die das Prioritätsunterbrechungssignal übertragende Einrichtung in jeder der peripheren Einheiten eine Auslöseeinrichtung (12) aufweist, welche auf vorbestimmte Daten und Steuersignale zum Sperren einer Übertragung von Prioritätsunterbrechungssignale auf den ersten Steuerleitungen anspricht, und daß die die Priorität bestimmende Einrichtung in der zentralen Recheneinheit zusätzlich einen Eingabekanal (20) für jede Prioritätsstufe aufweist und jeder Eingabekanal eine Einrichtung (24 bis 29) aufweist, um sich selbst zu sperren.
    400840/0845
    3*
    Lee rs.e i t e
DE2414121A 1973-03-23 1974-03-23 Digitale datenverarbeitungsanlage Ceased DE2414121A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US00344089A US3836889A (en) 1973-03-23 1973-03-23 Priority interruption circuits for digital computer systems

Publications (1)

Publication Number Publication Date
DE2414121A1 true DE2414121A1 (de) 1974-10-03

Family

ID=23348996

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2414121A Ceased DE2414121A1 (de) 1973-03-23 1974-03-23 Digitale datenverarbeitungsanlage

Country Status (4)

Country Link
US (1) US3836889A (de)
JP (1) JPS5734525B2 (de)
CA (1) CA999381A (de)
DE (1) DE2414121A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2640357A1 (de) * 1975-09-17 1977-04-07 Philips Nv Wortgruppenprioritaetsanordnung

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50156848A (de) * 1974-06-06 1975-12-18
JPS50156838A (de) * 1974-06-07 1975-12-18
GB1468642A (en) * 1975-01-07 1977-03-30 Burroughs Corp Data processing systems
US4053950A (en) * 1976-04-30 1977-10-11 International Business Machines Corporation Residual status reporting during chained cycle steal input/output operations
US4056847A (en) * 1976-08-04 1977-11-01 Rca Corporation Priority vector interrupt system
US4181941A (en) * 1978-03-27 1980-01-01 Godsey Ernest E Interrupt system and method
US4381542A (en) * 1980-10-20 1983-04-26 Digital Equipment Corporation System for interrupt arbitration
US4533994A (en) * 1983-09-09 1985-08-06 Avco Corporation Priority circuit for a multiplexer terminal
DE3341885A1 (de) * 1983-11-19 1985-05-30 Bayer Ag, 5090 Leverkusen Farbstarke eisenoxidschwarzpigmente, verfahren zu ihrer herstellung sowie deren verwendung
US4870566A (en) 1984-08-27 1989-09-26 International Business Machines Corp. Scannerless message concentrator and communications multiplexer
JPS61107456A (ja) * 1984-10-30 1986-05-26 Toshiba Corp 割込制御方式
GB2173929A (en) * 1985-04-20 1986-10-22 Itt Ind Ltd Computer systems
JPS63140016U (de) * 1987-03-03 1988-09-14
US5311461A (en) * 1988-12-30 1994-05-10 International Business Machines Corp. Programmable priority and selective blocking in a compute system
US5203007A (en) * 1988-12-30 1993-04-13 International Business Machines Corporation Overriding programmable priority and selective blocking in a computer system
JPH07105175A (ja) * 1993-10-08 1995-04-21 Nec Corp マイクロコンピュータ
DE19504488C1 (de) * 1995-02-10 1996-06-20 Siemens Ag Verfahren zur Initialisierung von peripheren Einrichtungen durch eine programmgesteuerte Zentraleinrichttung eines Kommunikationssystems
US6785873B1 (en) * 1997-05-02 2004-08-31 Axis Systems, Inc. Emulation system with multiple asynchronous clocks
US5958036A (en) * 1997-09-08 1999-09-28 Lucent Technologies Inc. Circuit for arbitrating interrupts with programmable priority levels

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3508206A (en) * 1967-05-01 1970-04-21 Control Data Corp Dimensioned interrupt
DE2059341A1 (de) * 1969-11-25 1971-06-09 Olivetti & Co Spa Elektronische Datenverarbeitungsanlage
US3710324A (en) * 1970-04-01 1973-01-09 Digital Equipment Corp Data processing system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3665415A (en) * 1970-04-29 1972-05-23 Honeywell Inf Systems Data processing system with program interrupt priority apparatus utilizing working store for multiplexing interrupt requests

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3508206A (en) * 1967-05-01 1970-04-21 Control Data Corp Dimensioned interrupt
DE2059341A1 (de) * 1969-11-25 1971-06-09 Olivetti & Co Spa Elektronische Datenverarbeitungsanlage
US3710324A (en) * 1970-04-01 1973-01-09 Digital Equipment Corp Data processing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2640357A1 (de) * 1975-09-17 1977-04-07 Philips Nv Wortgruppenprioritaetsanordnung

Also Published As

Publication number Publication date
JPS49130149A (de) 1974-12-13
US3836889A (en) 1974-09-17
CA999381A (en) 1976-11-02
JPS5734525B2 (de) 1982-07-23

Similar Documents

Publication Publication Date Title
DE2414121A1 (de) Digitale datenverarbeitungsanlage
DE3204905C2 (de)
EP0006164B1 (de) Multiprozessorsystem mit gemeinsam benutzbaren Speichern
DE3238532C3 (de) Datenübertragungseinrichtung
EP0010194B1 (de) Wartungsschnittstelleneinrichtung für eine datenverarbeitende Anlage mit einer zentralen Verarbeitungseinheit und mit einem Dienstprozessor und Verfahren zu ihrem Betrieb
DE1915818C3 (de) Steuerschaltung für ein elektronisches Datenverarbeitungssystem
DE1933685C3 (de) Mehrere Programme simultan verarbeitende Datenverarbeitungsanlage
DE2015971C3 (de) Datenverarbeitungsanlage mit einer Anzahl von zeitmultiplex von einem zentralen Rechenwerk bedienten virtuellen Prozessoren
DE2556624C2 (de) Verfahren und Schaltungsanordnung zur asynchronen Datenübertragung
DE2746064A1 (de) Datenspeicher mit auffrischung
CH644235A5 (de) Steuerungsadapter fuer uebertragungsleitungen.
DE2360303C2 (de) Datenverarbeitungsanlage mit Adreßübersetzung für Ein-/Ausgabekanäle
DE1474062B2 (de) Datenverarbeitungsanlage mit einer anzahl von pufferspeichern
DE2725396C3 (de)
EP0134831B1 (de) Einrichtung im Befehlswerk eines Fliessbandprozessors zur Befehlsunterbrechung und -wiederholung
EP0185260B1 (de) Schnittstelle für direkten Nachrichtenaustausch
DE2706877C2 (de) Mikroprogramm-Steuereinrichtung
DE1954202B2 (de) Elektronische digitale Datenverarbeitungsanordnung
DE2530599A1 (de) Steuerung von ein/ausgabe-geraeten
EP0509114B1 (de) Verfahren zum Übertragen von Daten an mehrere Datenstationen
DE1952175C3 (de) Steuerungsanordnung für die Anzeige von Datenzeichen in fabulierter Form
DE1293188B (de) Schaltungsanordnung zur UEbertragung von Pruefinformationen mit vorbestimmter Paritaet in Datenverarbeitungsanlagen
DE2846686B1 (de) Programmierbares Schaltwerk
DE2424828A1 (de) Wiederaufbaueinrichtung
EP0215276B1 (de) Verfahren und Schaltungsanordnung zum Übertragen von Datensignalen an eine Gruppe von zu einem Ringleitungssystem gehörenden Steuereinrichtungen

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G06F 3/04

8126 Change of the secondary classification

Ipc: G06F 9/46

8131 Rejection