DE2856768C2 - Prioritäts-Vektor-Unterbrechungsvorrichtung - Google Patents
Prioritäts-Vektor-UnterbrechungsvorrichtungInfo
- Publication number
- DE2856768C2 DE2856768C2 DE2856768A DE2856768A DE2856768C2 DE 2856768 C2 DE2856768 C2 DE 2856768C2 DE 2856768 A DE2856768 A DE 2856768A DE 2856768 A DE2856768 A DE 2856768A DE 2856768 C2 DE2856768 C2 DE 2856768C2
- Authority
- DE
- Germany
- Prior art keywords
- address
- memory
- priority
- signals
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 230000015654 memory Effects 0.000 claims description 50
- 230000004044 response Effects 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 3
- 230000002457 bidirectional effect Effects 0.000 claims 1
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000000034 method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
- G06F13/26—Handling 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)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Description
Die Erfindung bezieht sich auf eine Prioritäts-Vektor-Unterbrechungsvorrichtung
zur Anwendung in einer Datenverarbeitungsanlage gemäß dem Oberbegriff des Anspruchs 1.
In Datenverarbeitungsanlagen besteht bekanntlich die Möglichkeit einer Unterbrechung der normalen
Befehlsfolge eines gerade durchgeführten Programms aufgrund eines externen asynchronen Signals, bei dem
der Prozessor auf einen anderen Platz im Programmspeicher abzweigt und vorübergehend eine neue Folge
von Befehlen ausführt, die als Unterprogramm bezeichnet wird. Solche Unterbrechungen erlauben dem
Prozessor, Befehle auszuführen, während er auf die Bedienung der relativ langsamen peripheren Vorrichtungen
wie Massenspeicher oder Tastaturen wartet, d. h. auf die Übertragung von Daten oder die Betriebssteuerung
der peripheren Vorrichtung. Der Prozessor hat im allgemeinen nur einen oder nur wenige Eingangsanschlüsse
für die Unterbrechungsanforderungen. Wenn mehr Vorrichtungen als Eingangsanschlüsse für Unterbrechungsanforderungen
vorhanden sind, werden die Bedienungsanforderungssignale z. B. durch OR-Gatter zu dem Unterbrechungsanforderungssignal kombiniert.
Dieses bewirkt, daß der Prozessor auf ein Unterprogramm abzweigt, das zuerst bestimmen muß, welche
Vorrichtung das Unterbrechungssignal bewirkt hat, um dann auf das Bedienungsunterprogramm zum Bedienen
der unterbrechenden Vorrichtung abzuzweigen. Jede Vorrichtung erfordert normalerweise ein eigenes,
alleiniges Unterprogramm. Zur Bestimmung, welche von verschiedenen möglichen Vorrichtungen eine
Unterbrechung verursacht hat, bedient man sich der sogenannten Abruftechnik, wobei jede Bedienungsanforderungsleitung
der Reihe nach geprüft wird, um die unterbrechende Vorrichtung zu identifizieren, oder jede
Vorrichtung ein Identifizierungssignal (Flag) liefert, das durch bedingte Programmverzweigungsbefehle wahrgenommen
werden kann.
Ein Prioritäts-Unterbrechungssystem wird verwendet, wenn einige Vorrichtungen wie z. B. Magnetbandleser
öfter und schneller bedient werden müssen als andere, wie etwa ein Lochstreifenleser. Hierbei gilt es
nicht nur zu bestimmen, welche Vorrichtung eine Unterbrechung angefordert hat, sondern auch festzustellen,
weiche Vorrichtung von verschiedenen gleichzeitig unterbrechenden Vorrichtungen die höchste
Priorität aufweist und deshalb als erste bedient werden muß.
Bei einer Veklor-Programmunterbrechung wird eine
Antwort aus einer Mehrzahl von Antworten auf das Unterbrechungssignal erzeugt. Im allgemeinen werden
verschiedene Eingangsanschlüsse für Unterbrechungssignale verwendet, wobei jeder einer besonderen
Antwort entspricht Bei dem Unterprogramm gemäß der erwähnten Abruftechnik zum Abtasten der möglichen
Quellen der Unterbrechung und zum Feststellen jeweils erforderlicher Unterprogramme oder Programmverzweigungen
handelt es sich um eine durch Software durchgeführte Vektor-Unterbrechung. Da das
Unterprogramm programmiert ist, um die Anforderungseingänge in einer gewissen Ordnung abzurufen,
beinhaltet es auch ein hierarchiemäßiges Prioritätsschema.
Die für Prioritäts-Vektor-Unterbrechungen erforderlichen
Programme nehmen viel Zeit des Prozessors in Anspruch. Insbesondere bei Mikroprozessoren können
für eine Prioritäts-Vektor-Unterbrechungsbedienung viele Befehle erforderlich sein. Ausführlicner wird die
Unterbrechungs-Verarbeitung beispielsweise in dem
Buch »Digital Computer System Principles« von H. Hellerman (McGraw-Hill, 1967), Seiten 350 bis 355
diskutiert
In der DE-OS 27 44 531 wurde bereits eine Unterbreübungsvorrichtung
der eingangs genannten Gattung vorgeschlagen, bei dem zunächst unter den jeweils eine
Halteschaltung setzenden Unterbrechungsanforderungen der peripheren Einheiten diejenige mit der höchsten
Priorität ermittelt und dann ein Direktspeicherzugriff-Zyklus eingeleitet wird. Während dieses DMA-Zyklus
schleust die Prioritätsbestimmungsschaltung die Adresse des benötigten Verzweigungsbefehls über einen
Datenbus in ein Register des Prozessors. Erst nach Beendigung des DMA-Zyklus kann der Prozessor das
Unterbrechungs-Unterprogramm durchführen.
Der Erfindung liegt die Aufgabe zugrunde, eine Vorrichtung der eingangs genannten Gattung anzugeben,
die nicht zunächst einen Verzweigungsbefehl für die Ermittlung der peripheren Einheit mit der höchsten
Priorität gemäß der üblichen Abruftechnik adressieren muß, sondern direkt zu einer zur Bedienung der Einheit
höchster Priorität benötigten Befehlsfolge abzweigen kann und somit Programm- bzw. Zeitaufwand spart.
Diese Aufgabe wird durch die im Anspruch 1 gekennzeichnete Prioritäts-Vektor-Unterbrechungsvorrichtung
gelöst
An einem in der Zeichnung dargestellten Ausführungsbeispiel wird die Erfindung im folgenden näher
erläutert.
Das in der Figur mit 1 bezeichnete Steuerwerk führt vorprogrammierte Befehle in einer gegebenen Reihenfolge
aus bzw. verarbeitet diese. Die besonderen ausfzuführenden Befehle hängen von dem Zwnck ab, für
den das Programm geschrieben wurde. Die Befehle selbst hängen von dem besonderen, in dem Steuerwerk
1 verwendeten Prozessor ab. Zum Zwecke der Beschreibung wird der COSMAC-Mikroprozessor
CDP1802 (RCA Corporation) verwendet, um spezielle Beispiele von verschiedenen Funktionen angeben zu
können. Es können jedoch auch andere Prozessoren oder Computer, die Befehle mit unterschiedlichen
Bestimmungen bzw. Benennungen und Bezeichnungen verwenden, zur Ausführung der vorliegenden Erfindung
angewendet werden.
Der Betrieb der meisten Computer, Mikroprozessoren eingeschlossen, wird in zwei Arten von Zyklen
unterteilt. Die erste Art wird verwendet, um den auszuführenden Befehl im allgemeinen von einem
zugeordneten Speicher wieder zu gewinnen. Ein besonderes Register in dem Prozessor wird als
Programmzähler verwendet der über einen Adressenbus 3 Adressensignale an einen Speicher 2 liefert In
Antwort auf die Adressensignale und die Zeitsignale von dem Steuerwerk 1 gewinnt der Speicher 2 den
auszuführenden Befehl und schaltet ihn an einen Datenbus 4 durch. In dem Rechenwerk 1 wird der Befehl
in anderen Registern zur Ausführung gespeichert
Die zweite Art von Zyklen wird angewendet um den auf den Speicher durch den Zyklus der ersten Art
abgerufenen Befehl auszuführen. Der Befehl enthält einen Operationsteil und einen Adressenteil. Der
Operationsteil bestimmt die auszuführende Grundoperation, bei der es sich beispielsweise um ein Addieren,
ein Subtrahieren, ein Übertragen, ein Speichern oder
dergl. handeln kann. Der Adressenteil der Befehle bestimmt eine Zelle oder Zellen, von denen die
Operanden abzurufen sind, oder führt eine zusätzliche Funktion aus, durch die die in dem Operationsteil
bestimmte Operation abgeändert wird.
Alle Prozessoren enthalten einen Befehl des Programmverzweigungstyps.
Der Operationsteil des Befehls identifiziert den Befehl, und gewöhnlich bezeichnet
der Adressenteil die Adresse, auf die der Programmzähler gesetzt wird, um eine jeweilige Folge von Befehlen
auszuführen. Manchmal zeigt der Operationsteil des Befehls durch seinen Code an, daß die Programmverzweigung
nur dann eintreten soll, wenn bestimmte Bedingungen bestehen. Andere Programmverzweigungen
sind unbedingt d. h. sie werden ohne Rücksicht auf irgendeine andere gleichzeitige Bedingung ausgeführt
Die meisten Prozessoren beinhalten eine Unterbreübungseinrichtung,
die es ermöglicht, daß die Maschine auf externe Signale hin in einer asynchronen Weise
antwortet Beispielsweise ist die von peripheren Vorrichtungen, wie Lochstreifenlesern, Magnetband-Lesern,
Magnettrommeln, Magnetplatten oder dergl. für die Datenübertragung vom oder zum Prozessor
benötigte Zeit lang im Vergleich mit einem Arbeitszyklus des Prozessors. Die Datenübertragung selbst
dauert zwar nicht lang, doch kann die Pause zwischen den Datenübertragungen einer Zeit entsprechen, in der
4-> mehrere hundert oder mehrere tausend Befehle
ausgeführt werden können. Aus diesem Grunde ermöglicht eine Unterbrechungsvorrichtung, daß die:
Programmausführung des Prozessors durch ein externes Unterbrechungssignal unterbrochen wird, wenn
3» eine periphere Vorrichtung für die Datenübertragung
bereit ist
In Antwort auf das externe Unterbrechungssignal führt der Prozessor einen anderen Befehlssatz (Unterprogramm)
durch, um die Vorrichtung zu bedienen, die die Unterbrechung verursacht, d. h. um die Datenübertragung
zu bewirken, und kehrt dann zu dem Programm, das unterbrochen wurde, zurück. Im allgemeinen zieht
die Unterbrechungserwiderung (interrupt response) einen Programmverzweigungsbefehl nach sich, um die
Programmausführung auf das Unterprogramm zu übertragen.
Der Speicher 2 ist bekannt und wird über den Adressenbus 3 adressiert, der auch Taktsignale und
Sigi.ale überträgt, die anzeigen, ob ein Lesen oder
<>5 Schreiben ausgeführt werden soll. Die in dem Speicher 2
adressierten Daten werden auf den Datenbus geschaltet. Der Speicher 2 enthält eine Abschaltvorrichtung, die
den normalen Betrieb des SDeichers in Antwort auf ein
Ausgangssignal von einem OR-Gatter 10 verhindert. Die Ausführungsformen der bekannten Speichervorrichtungen
enthalten Anschlüsse, an denen Einschaltsignale angelegt sein müssen, die gewöhnlich als
Chip-Auswahlsignale bezeichnet werden. Bei dem r> vorliegenden Beispiel handelt es sich bei dem
Chip-Auswahl- oder Einschaltsignal um ein tiefpegeliges Signal, beispielsweise um eine logische Null, wie dies
für kommerziell verfügbare Speichermodule gebräuchlich ist. Aus diesem Grunde arbeitet der Speicher 2 in i<
> der herkömmlichen Art, wenn das Chip-Auswahlsignal von dem OR-Gatter 10 tiefpegelig ist. Wenn das
Ausgangssignal des OR-Gatters 10 hochpegelig wird, wird der Betrieb des Speichers verhindert. Frei nach
Wahl können die Speicherdaten an den Datenbus 4 ir>
durch ein tiefpegeliges Ausgangssignai des OR-Gatters 10 durchgeschaltet werden und die Gatter zu dem
Datenbus durch ein hochpegeliges Ausgangssignal des OR-Gatters 10 unwirksam geschaltet werden.
Zwei Decodierer 8 und 9, die in der Figur als -><·
AND-Gatter dargestellt sind, sind zum Empfang der Adressensignale von dem Adressenbus 3 verbunden und
sprechen auf eine besondere Adresse hin an, um Ausgangssignale zu erzeugen. Das heißt, wenn eine
besondere Adresse an dem Adressenbus 3 anliegt, ■?>
erzeugt der Decodierer 8 ein einer logischen Eins entsprechendes Ausgangssignal. Wenn eine zweite
besondere Adresse an dem Adressenbus 3 anliegt, erzeugt der Decodierer 9 ein Ausgangssignai, das einer
logischen Eins entspricht. μ
Die Festwertspeicher (ROM) 5 und 6 sind kommerziell verfügbare Vorrichtungen, die Adressensignale
empfangen und die Daten der adressierten Zelle an den Datenbus 4 koppeln, wenn ein Freigabeeingangssignal E
vorhanden ist. Ein Festwertspeicher weist, wie der " Name sagt, in jeder Speicherzelle feste Daten auf, die
aus dem Festwertspeicher ausgelesen, aber nicht verändert werden können. Wird dies gewünscht, so
kann ein herkömmlicher Schreib-Lese-Speicher anstelle der Festwertspeicher 5 und 6 mit in den adressierbaren 4()
Zellen vorgespeicherten Informationen verwendet werden. Bei einem solchen Speicher kann sowohl
eingeschrieben als auch ausgelesen werden.
Bei der Prioritäts-Codiereinrichtung 7 kann es sich um eine kommerziell verfügbare Vorrichtung, beispielsweise
um einen integrierten Kreis vom Typ CD4532 (RCA Corporation) handeln. Er empfängt als Eingangssignal
acht Anforderungssignale und erzeugt als Antwort darauf sowohl ein Ausgangssignal, das anzeigt,
daß wenigstens ein Anforderungssignal empfangen wurde (INT), und drei codierte Signale, die in einer
binaren Darstellung die Zahl des Anforderungssignais der höchsten Priorität darstellen. Diese codierten
Signale sind im folgenden als Auswahlsignale bezeichnet .
Zum Zwecke der Erläuterung wird vorausgesetzt, daß das Unterbrechungssignal (INT) verursacht, daß das
Steuerwerk 1 zu einem kurzen Verzweigungsbefehl Zugriff hat, der bei dem COSMAC-System ein
Programmverzweigungsbefehl zu derselben »Seite« ist Dabei wird unter einer »Seite« eine abhängige Gruppe
von 256 Zellen verstanden, wobei die Zahl der Seite durch die höherwertigen Byte (höchstwertigen acht
Bits) des Programmzählers spezifiziert ist Dieser Befehl hat einen Operationsteil (Code), der in einem Byte &5
(8 Bit) als 3O16, d.h. als 00110000 bezeichnet ist Das
nächste Byte in der Folge zeigt die Lage einer Zelle von
256 Zellen auf der Seite an, zu der das Programm zu verzweigen ist, und ersetzt das niedrigerwertige Byte
(geringstwerlige 8 Bit) des Programmzählers. Der Verzweigungsbefehl kann bildlich als 30XX bezeichnet
werden, wobei XX in einer hexadezimalen Beschreibung die Zelle der Seite spezifiziert, auf welche die
Programmverzweigung gerichtet ist.
Der in der Figur dargestellte Kreis wird folgendermaßen betrieben. Wenn keine Anforderungssignale an dem
Eingangsanschluß der Prioritäts-Codiereinrichtung anliegen, kann das Steuerwerk 1 eine besondere Folge von
Befehlen ausführen, die einer nach dem anderen aus dem Speicher 2 über den Datenbus 4 abgerufen werden.
Das Adressenbyte des in Antwort auf das Unterbrechungssignal auszuführenden Programmverzweigungsbefehls
ist in einer bestimmten Zelle in dem Speicher 2 enthalten. Der Decodierer S spricht auf die entsprechende
Adresse an und erzeugt ein Ausgangssignal. Dies bedeutet, daß der Decodierer 8 ein Ausgangssignal dann
erzeugt, wenn Signale, die die Zelle der Programmverzweigungsadresse repräsentieren, an dem Adressenbus
3 anliegen.
In jeder Zelle des Festwertspeichers (ROM) 5 ist ein
Adressenbyte enthalten, das die Zelle, zu welcher das Programm als Antwort auf das Unterbrechungssignal
abzuzweigen ist, bezeichnet. Dabei hängt das Unterbrechungssignal von der Quelle des besonderen Anforderungssignals
mit der höchsten Priorität an dem Eingang der Prioritäts-Codiereinrichtung 7 ab. Es wird vorausgesetzt,
daß jedes Anforderungssignal ein eigenes Bedienungsunterprogramm aufweist (obgleich dies
nicht immer tatsächlich der Fall sein muß), und daß die Anfangszelle jedes getrennten Unterprogramms in dem
Festwertspeicher 5 an der Festwertspeicheradresse, die der zugeordneten codierten Anforderungssignalzahl
entspricht, gespeichert ist.
Wenn ein Anforderungssignal oder Anforderungssignale
an den Eingangsanschlüssen der Prioritäts-Codiereinrichtung 7 anliegen, wird das Unterbrechungssignal
(INT) zu dem Steuerwerk 1 aktiviert, um den Unterbrechungsprozeß einzuleiten. Die Prioritäts-Codiereinrichtung
7 legt auch eine 3-Bit-Auswahladresse an den Festwertspeicher 5 an, wobei die Adresse von
der Zahl (0 bis 7) der aktiven Prioritätsanforderung abhängt Wenn das Unterbrechungsunterprogramm
gestartet wird, wird die Adressierung des Adressenteils des Programmverzweigungsbefehls in dem Speicher 2
durch den Decodierer 8 angezeigt, der ein Freigabesignal für den Festwertspeicher 5 erzeugt und über das
OR-Gatter 10 den Speicher 2 wirkungslos schaltet Die in dem Festwertspeicher 5 gespeicherte Adresse, die
dem Anforderungssignal mit der höchsten Priorität unter den aktiven Anforderungseingarigssigiialen entspricht,
wird an den Datenbus 4 angelegt um an das Steuerwerk 1 den Adressenteil des Programmverzweigungsbefehls
anzulegen. Das Steuerwerk 1 empfängt von dem Datenbus 4 den Adressenteil des Verzweigungsbefehls
so, als ob er von dem Speicher 2 gekommen wäre. Dadurch wird bewirkt daß das
Programm sich zu dem Satz von Befehlen verzweigt, die
dem Bedienungsunterprograinm der unterbrechenden Vorrichtung mit der höchsten Priorität an der
Prioritäts-Codiereinrichtung7 entspricht
Ein zweiter Decodierer 9 und ein zweiter Festwertspeicher 6 sind vorgesehen, so daß ein langer
Verzweigungsbefehl ausgeführt werden kann. Der Operationscöde für eine lange Verzweigung ist COie,
d.h. binär ausgedrückt 11000000. Die nächsten beiden
Bytes in der Folge spezifizieren die Adresse in dem
Speicher, an die die Byte-Programmverzweigung bewirkt werden soll. Das erste Byte liefert das
höherwertige Byte und das zweite Byte das geringerwertige Byte des Programmzählers. Der Decodierer 8
zeigt an, wenn das Steuerwerk I den ersten Teil (Byte) > des Adressenteils des langen Verzweigungsbefehls
anfordert, schallet den Festwertspeicher 5 ein und schaltet den Speicher 2 über das OR-Gatter IO
wirkungslos. Gleichzeitig liefert der Festwertspeicher 5 auf dem Datenbus 4 als Antwort auf die Auswahladresse i"
von der Prioritäts-Codiereinrichtung 7 den ersten Adressentei! an das Steuerwerk. Die nächste Zelle,
nämlich die des zweiten Teils des Adressenteils des Befehls, wird durch den Decodierer 9 angezeigt, der ein
Ausgangssignal erzeugt, das den Speicher 2 über das π OR-Gatter !0 wirkungslos schaltet und den zweiten
Festwertspeicher 6 einschaltet. Dieser empfängt eine 3-Bit-Adresse von der Prioritäts-Codiereinrichtung 7
und legt als Antwort darauf und auf das Freigabesignal von dem Decodierer 9 den zweiten Teil der Verzweigungsadresse
an den Datenbus 4. Die Auswahladressen für die Festwertspeicher 5 und 6 sind dieselben.
Wenn eine Prioritäts-Vektor-Unterbrechung ausgeführt werden soll, wird also der Adressenteil des
Programmverzweigungsbefehls durch eine Vorrichtung wie einen Festwertspeicher als Verzweigungsadresse
geliefert, die für die unterbrechende Vorrichtung mit der höchsten Priorität einzigartig ist. Dadurch kann eine
vektorielle Unterbrechung durch einen einzigen Programmverzweigungsbefehl ausgeführt werden, ohne
daß es erforderlich ist, durch Abruftechnik (polling) oder anderweitig festzustellen, welche Vorrichtung die
Unterbrechung angefordert hat, ehe auf das Bedienungsunterprogramm, das ausgeführt werden soll,
abgezweigt wird.
Hierzu 1 Blatt Zeichnungen
Claims (5)
1. Prioritäts-Vektor-Unterbrechungsvorrichtung zur Anwendung in einer Datenverarbeitungsanlage,
die einen Speicher zum Speichern von Programmen enthält, wobei jedes Programm eine Folge von
auszuführenden Befehlen aufweist, und zum Speichern der Adresse eines Befehls, der in Antwort auf
ein Unterbrechungssignal auszuführen ist, wobei die Datenverarbeitungsanlage einen Prozessor mit ι ο
einer Adressiereinrichtung aufweist, die einen Adressenbus zum Liefern von Adressensignalen
enthält, die die Speicherstellen der auszuführenden Befehle bezeichnen, wobei ein zweiseitig gerichteter
Datenbus von dem Speicher für den auszuführenden Befehl repräsentative Signale empfängt, wobei der
Prozessor irgendeines der Programme der Befehlsfolgen ausführt, wobei die Adressiereinrichtung auf
das Unterbrechungssignal anspricht, um Adressensignale an den Speicher zu liefern, die die
Speicherstelle des einen Befehls bezeichnen, und wobei die Prioritäts-Vektor-Unterbrechungsvorrichtung
eine Prioritäts-Codiereinrichtung zum Empfang von mehreren Anforderungssignalen unterschiedlicher
Priorität und zur Erzeugung von Auswahlsignalen enthält, die für das aktive Signal
der Anforderungssignale, das die höchste Priorität aufweist, repräsentativ sind, wobei die Prioritäts-Codiereinrichtung
in Antwort auf die Anforderungssignaie das Unterbrechungssignal an die Adressiereinrichtung
anlegt, und wobei eine Adressenerzeugungseinrichtung vorgesehen ist, die in Abhängigkeit
von den Auswahlsignalen im eingeschalteten Zustand die Adresse eines Verzweigungsbefehls an
den Datenbus anlegt, so daß die Datenverarbei- « tungsanlage auf ein Unterbrechungsprogramm verzweigen
kann, das den Erfordernissen des aktiven Signals der Anforderungssignale mit der höchsten
Priorität angemessen ist, dadurch gekennzeichnet,
daß zur direkten Verzweigung zu einer Befehlsfolge, die verwendet wird, um das aktive
Signal der Anforderungssignale mit der höchsten Priorität nach der Erzeugung der einen Adresse
durch die Adressiereinrichtung zu bedienen, mit dem Adressenbus (3) der Adressiereinrichtung ein Deco- «
dierer (8, 9) verbunden ist, der in Abhängigkeit von die Speicherstelle des einen Befehls bezeichnenden
Adressensignalen ein Steuersignal erzeugt, und daß eine Vorrichtung (10, Eingänge E von 5 und 6) mit
dem Speicher (2) und dem Decodierer (8, 9) verbunden ist, welche den Betrieb des Speichers (2)
sperrt und die Adressenerzeugungseinrichtung (5,6) einschaltet, aufgrund eines erzeugten Steuersignals
des Decodierers (8, 9), und daß folglich der Adressiereinrichtung eine Adresse eines Verzweigungsbefehls
anstelle der Adresse des einen Befehls zugeführt wird.
2. Prioritäts-Vektor-Unterbrechungsvorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die
Adressenerzeugungseinrichtung einen Speicher (5, Μ 6) zum Speichern der Adressen an durch die
Auswahlsignale adressierbaren Zellen enthält, der die gespeicherte, durch die Auswahlsignale adressierte
Adresse an den Datenbus (4) liefert, während der die Programme enthaltende Speicher (2) b5
gesperrt ist.
3. Prioritäts-Vektor-Unterbrechungsvorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß der
die Adressenteile enthaltende Speicher (5, 6) ein Festwertspeicher ist
4. Prioritäts-Vektor-Unterbrechungcvorrichtung
nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß der Decodierer aus einer
Mehrzahl von Decodiere.-n (8,9) besteht, von denen
jeder auf eine unterschiedliche Adresse anspricht, und daß die Adressenerzeugungseinrichtung (Festwertspeicher
5,6) in Antwort auf jedes Ausgangssignal jedes Decodierers (8, 9) und auf die
Auswahlsignale unterschiedliche Adressen (von 5 oder 6) dem Datenbus (4) zuführt
5. Prioritäts-Vektor-Unterbrechungsvorrichtung nach Anspruch 4, dadurch gekennzeichnet, daß die
Adressenerzeugungseinrichtung eine Mehrzahl von Speichern (5,6) enthält
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US86579677A | 1977-12-30 | 1977-12-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2856768A1 DE2856768A1 (de) | 1979-07-05 |
DE2856768C2 true DE2856768C2 (de) | 1984-02-09 |
Family
ID=25346246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2856768A Expired DE2856768C2 (de) | 1977-12-30 | 1978-12-29 | Prioritäts-Vektor-Unterbrechungsvorrichtung |
Country Status (5)
Country | Link |
---|---|
JP (1) | JPS5819094B2 (de) |
DE (1) | DE2856768C2 (de) |
FR (1) | FR2413717B1 (de) |
GB (1) | GB2012082B (de) |
IT (1) | IT1192603B (de) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4271468A (en) * | 1979-11-06 | 1981-06-02 | International Business Machines Corp. | Multiprocessor mechanism for handling channel interrupts |
JPS6118059A (ja) * | 1984-07-05 | 1986-01-25 | Nec Corp | メモリ回路 |
JPS61143852A (ja) * | 1984-12-17 | 1986-07-01 | Toshiba Corp | 割込みベクトル保護方法 |
KR100317237B1 (ko) * | 1999-10-01 | 2001-12-22 | 윤종용 | 유사 벡터 방식의 인터럽트 컨트롤러 및 그것의 인터럽트 처리 방법 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS50106541A (de) * | 1974-01-29 | 1975-08-22 | ||
JPS51233A (de) * | 1974-06-19 | 1976-01-05 | Nippon Electric Co | |
JPS5428260B2 (de) * | 1974-09-02 | 1979-09-14 | ||
JPS5232647A (en) * | 1975-09-08 | 1977-03-12 | Mitsui Eng & Shipbuild Co Ltd | Interruption system of electronic computer |
US4090238A (en) * | 1976-10-04 | 1978-05-16 | Rca Corporation | Priority vectored interrupt using direct memory access |
-
1978
- 1978-12-15 IT IT30897/78A patent/IT1192603B/it active
- 1978-12-19 GB GB7849060A patent/GB2012082B/en not_active Expired
- 1978-12-26 JP JP53164534A patent/JPS5819094B2/ja not_active Expired
- 1978-12-29 DE DE2856768A patent/DE2856768C2/de not_active Expired
- 1978-12-29 FR FR7836907A patent/FR2413717B1/fr not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2856768A1 (de) | 1979-07-05 |
JPS54103645A (en) | 1979-08-15 |
JPS5819094B2 (ja) | 1983-04-16 |
FR2413717B1 (fr) | 1986-03-28 |
IT1192603B (it) | 1988-04-20 |
FR2413717A1 (fr) | 1979-07-27 |
GB2012082B (en) | 1982-06-09 |
GB2012082A (en) | 1979-07-18 |
IT7830897A0 (it) | 1978-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3685876T2 (de) | Meister-sklave-mikroprozessorsystem mit einem virtuellen speicher. | |
DE3689696T2 (de) | Datenverarbeitungssystem mit einem Hauptprozessor und einem Ko-Prozessor mit gemeinsamen Betriebsmitteln. | |
DE1774296C2 (de) | Restruktuierbare Steuereinheit für elektronische Digitalrechner | |
DE2113890C2 (de) | Zentrale Verarbeitungseinrichtung für Datenverarbeitungsanlagen | |
DE3751164T2 (de) | Datenprozessor mit verschiedenen Unterbrechungsverarbeitungsarten. | |
DE2411963C3 (de) | Elektronische Datenverarbeitungsanlage mit einer Prioritätssteuerschaltung mit änderbaren Steuerblöcken | |
DE3587213T2 (de) | Verarbeitungseinheit mit der faehigkeit ein oder mehrere programme auszufuehren mit einer mehrzahl von funktionseinheiten. | |
DE2322674C3 (de) | Mikroprogramm-Steuereinrichtung | |
DE2744531A1 (de) | Elektronische datenverarbeitungsanlage | |
DE2714805A1 (de) | Datenverarbeitungssystem | |
DE1499200B2 (de) | Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung | |
DE2750721A1 (de) | Ein/ausgabe-system | |
DE3781794T2 (de) | Vorrichtung und verfahren zum versehen eines cachespeichers mit einer schreiboperation mit zwei systemtaktzyklen. | |
EP0014850A1 (de) | Einrichtung zur Erweiterung des Standard-Makroinstruktionssatzes in einer Datenverarbeitungsanlage | |
DE68929080T2 (de) | Anordnung zum Speichern von Informationen für einen Datenanbieterprozessor | |
DE68922545T2 (de) | Zugeordneter Dienstprozessor mit Übertragungsmöglichkeiten zwischen Kanälen. | |
DE2164793A1 (de) | Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit | |
DE1474063A1 (de) | Datenverarbeitungsanlage | |
DE2218630B2 (de) | Schaltungsanordnung zur Steuerung von Unterbrechungssignalen in Datenverarbeitungsanlagen | |
DE2433436A1 (de) | Verfahren und anordnung zum mehrfachverzweigen des programms in einem digitalen computer | |
DE69032511T2 (de) | Multiprozessor-Steuereinrichtung mit gemeinsamem Steuerungsspeicher | |
EP0120194A2 (de) | Speicherprogrammierbare Steuerung mit Wort- und Bitprozessor | |
DE3121046C2 (de) | ||
DE2856768C2 (de) | Prioritäts-Vektor-Unterbrechungsvorrichtung | |
DE3882425T2 (de) | Datenübertragungssteuerungsvorrichtung für Direktspeicherzugriff. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAP | Request for examination filed | ||
OD | Request for examination | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |