DE2443579B2 - Asynchroner Arbiter - Google Patents
Asynchroner ArbiterInfo
- Publication number
- DE2443579B2 DE2443579B2 DE2443579A DE2443579A DE2443579B2 DE 2443579 B2 DE2443579 B2 DE 2443579B2 DE 2443579 A DE2443579 A DE 2443579A DE 2443579 A DE2443579 A DE 2443579A DE 2443579 B2 DE2443579 B2 DE 2443579B2
- Authority
- DE
- Germany
- Prior art keywords
- signal
- request
- assigned
- functional unit
- inputs
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
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
- G06F9/4818—Priority circuits therefor
-
- 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K5/00—Manipulating of pulses not covered by one of the other main groups of this subclass
- H03K5/22—Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral
- H03K5/26—Circuits having more than one input and one output for comparing pulses or pulse trains with each other according to input signal characteristics, e.g. slope, integral the characteristic being duration, interval, position, frequency, or sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Nonlinear Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multi Processors (AREA)
Description
" Oberbegriff des Patentanspruches 1 genannten Art.
Eine derartige, im folgenden als »asynchroner Arbiter« bezeichnete Schaltung hat folgende Funktion:
Werden von mehreren voneinander unabhängigen Signalquellen, wie sie durch Prozessoren eines Nach
richtenübertragungs- oder Datenverarbeitungssystems
gebildet werden können, asynchron mehrere Signale, z. B. Anforderungssignale für eine diesen mehreren
Signalquellen nur gemeinsam zur Verfügung stehende Funktionseinheit abgegeben und konkurrieren diese
Signale bezüglich der Inanspruchnahme der Funktionseinheit miteinander, dann werden sie zeitlich aufeinanderfolgend an die Funktionseinheit übertragen. Die
zeitliche Folge dieser Übertragung richtet sich dabei nach der Reihenfolge der Entstehung dieser Signale in
den Signalquellen bzw. Prozessoren, also deren Eingang beim Arbiter; die höchste Priorität wird dem Signal
zugeordnet, das als erstes von einem Prozessor erzeugt und an den Arbiter abgegeben worden ist. Von der
Funktionseinheit wird jeweils an den Prozessor, dessen
Anforderungssignal gerade an die Funktionseinheit
übertragen wird, in Form eines Bestätigungssignals eine Antwort zurückgegeben.
Ein Anwendungsgebiet sind parallel arbeitende Datenverarbeitungs-, Rechen-, Informations- oder
Nachrichtenübertragungssysteme. Bei ihnen steht einer Mehrzahl von voneinander völlig unabhängig arbeitenden Prozessoren nur eine bestimmte Funktionseinheit,
also z. B. ein Speicher, eine Datensammelleitung, ein E/A-Werk oder ein Rechenwerk zur Verfügung. An
verschiedenen Stellen innerhalb des Systems kann daher die Situation auftreten, daß Anforderungen von
zwei oder mehreren Prozessoren an eine bestimmte Funktionseinheit in Form von Anforderunessienalen
abgegeben werden, die bezüglich der Benutzung bzw. der Belegung dieser Funktionseinheit miteinander
konkurrieren.
Dieses Problem tritt insbesondere bei neueren parallelen informationsverarbeitenden Großsystemen
relativ häufig auf. Beispiele sind das Schalter, von
Fernsprechverbindungen und -leitungen, die Schnittstellensteuerung bei Computernetzen, die Seitenübertragung
bei virtuellen Speichern und die Steuerung von Datensamiudleitungen bei Multiprozessoren. Um die
Effektivität derartiger Systeme zu verbessern, bedarf es einer zufriedenstellenden Lösung der Zuordnung der
Funktionseinheiten zu den Prozessoren.
In parallel arbeitenden informationsverarbeitenden Systemen, bei denen keine besondere Ordnung für die
Priorität der Prozessoren festgelegt ist, und in denen sie demgemäß gleiche Priorität genießen und dementsprechend
bedient werden, erfolgt die Zuordnung auf der Grundlage der jeweils früheren Erzeugung des Anforderungssignals
durch einen Prozessor. Das bedeutet: Unter den Prozessoren, die eines der Anforderungssignale
für eine Belegung bzw. Benutzung einer Funktionseinheit erzeugt und an den Arbiter abgegeben
haben, wird demjenigen Prozessor als erstem die Benutzung der Funktionseinheit bestätigt, der zeitlich
als erster ein Anforderungssignal abgegeben hat. Dabei warten die anderen Prozessoren. Wenn die Bc legung
der Funktionseinheit durch den zuerst bestätigten Prozessor beendet und dessen Anforderungssignal
entfallen ist, wird Benutzung der Funktionseinheit Jo demjenigen Prozessor bestätigt, der das in der zeitlichen
Reihenfolge der Anforderungen zweite Anforderungssignal erzeugt und an den Arbiter abgegeben hat und bis
zu diesem Zeitpunkt in Wartestellung verblieben war.
Bei einem bekannten asynchronen Arbiter (siehe W. W. Plummer, »Asynchronous Arbiters« in: IEEE
Transactions on Computers, Bd. C-21, Nr. 1 [Januar 1972], S. 37-42 und insbesondere in Fig. 11 auf S. 41) ist
die Anzahl der benötigten Bauteile sehr groß; dies ergibt sich aus dem komplizierten Aufbau der -to
Schaltung; auch kann die Zuordnung der Funktionseinheiten nicht immer in der zeitlichen P.eihenfolge des
Auftretens der Anforderungssignale erfolgen. Werden von mehreren Prozessoren Anforderungssignale (R\
und R2) erzeugt, die miteinander konkurrieren, dann 4r>
wird durch ein Warte-(AWAIT)-Signal eine Eingangs-Torschaltung geschlossen. Das Wartesignal ist die
logische Summe derjenigen Signale, die Information über das Vorliegen von Anforderungssignalen erhalten.
Das führt zur Blockierung der nachfolgenden Anforderungssignale. Während also das zeitlich als erstes
vorhandene Anforderungssignal eine Funktionseinheit belegt, kann die Ordnung der zeitlichen Prioritäten
innerhalb des zweiten und der nächstfolgenden Anforderungssignale in ihrer Konkurrenz miteinander «
nicht gehalten und bei der nachfolgenden Zuordnung berücksichtigt werden. Das Grundprinzip der aufeinanderfolgenden
Bestätigung der Benutzung einer Funktionseinheit in genau der Reihenfolge, die jeweils unter
mehreren konkurrierenden Anforderungssignalen de- bo
ren zeitlichem Auftreten entspricht, kann also nicht stets gewährleistet werden. Innerhalb der Ordnungen von
Prioritäten bei der Konkurrenz von Anforderungssignalen verschwinden jeweils die zweiten und folgenden
Ordnungen der Prioritäten.
Der bekannte Arbiter hat ferner folgenden Nachteil: In dem Augenblick, in dem die Eingangs-Torschaltung
geschlossen ist, sind im allgemeinen mehrere Anforderungssignale (R\ und R2) als für die Auswahl unter
mehreren Anforderungssignalen als »Sieger« in Betracht kommend vorhanden, unter denen nun das
früheste aufgrund einer vorbestimmten Ordnung der Priorität bestimmt werden muß. Zu diesem Zweck ist
ein Flip-Flop (2 LAST) vorgesehen. Daraus folgt eine sehr niedrige Betriebsgeschwindigkeit und die Notwendigkeit
einer Vielzahl logischer Verknüpfungsglieder.
Eine bekannte Schaltungsanordnung mit Wiederholstruktur zur Vermittlung von Speicherzyklen (DE· OS
2137 308) weist eine Grundschaltung auf, die in Anwesenheit eines Anforderungssignals auf einem
ersten Eingang das Auftreten eines Anforderungssignals auf einem zweiten Eingang feststellen kann. Liegt
jedoch an keinem der beiden Eingänge ein Anforderungssignal an, so kann das Auftreten eines Anforderungssignals
auf dem ersten Eingang nicht festgestellt werden. Bei zeitlicher Verzögerung in der Erzeugung
der Komplementärfunktionen der Eingänge, die im Zuge der logischen Verarbeitung in der Grundschaltung
erforderlich ist, kann es auch zu Fehloperationen kommen. Aus diesem Grunde ist das Arbeiten im
Zeittaktbetrieb, gesteuert von Taktimpulsen, erforderlich.
Bei einer bekannten Schaltungsanordnung der im Oberbegriff des Patentanspruches 1 beschriebenen Art
(DE-AS 14 87 826) erfolgt die Zuordnung aufgrund einer innerhalb der Schaltungsanordnung schaltungsmäßig
vorgegebenen Priorität. Auch mit dieser Schaltung ist eine Zuordnung einer Funktionseinheit zu
einem von mehreren Prozessoren in der Reihenfolge des zeitlichen Auftreffens der Anforderungssignale
nicht möglich.
Der Erfindung liegt die Aufgabe zugrunde, eine Schaltung der eingangs angegebenen Art zu schaffen,
bei der die Zuordnung auf der Grundlage des zeitlichen Aufeinanderfolgens des Eintritts der Anforderungssignale
erfolgt. Die Zuordnung soll unabhängig von der schaltungsmäßigen Zuordnung der Verknüpfungsschaltungen
zu den Prozessoren so erfolgen, daß der Prozessor zuerst bedient wird, der zuerst angefragt hat.
Dabei ist jedoch ferner zu gewährleisten, daß die Rangfolge der nachfolgenden Anfragesignale gespeichert
wird, so daß, wenn z. B. ein Prozessor Pj gerade
bedient wird, und während dieser Zeit zuerst f% und
danach P\ anfragt, nach Ablauf der Bedienungszeit für Pi in der Reihenfolge des Auftretens der Anfragesignale
die beiden nachfolgenden dann bedient werden, also erst Pt,, dann P\. Die Ordnung der zeitlichen Priorität, in
der eine Funktionseinheit mehreren Prozessoren zugewiesen wird, soll also auch dann aufrechterhalten
werden können, wenn die Anforderungssignale in einem Zeitpunkt eintreten, in denen die Funktionseinheit
belegt ist.
Diese Aufgabe wird durch die im Kennzeichen des Anspruchs 1 angegebenen Merkmale gelöst. Ein
derartiger asynchroner Arbiter bewirkt die Zuordnung der Funktionseinheit zu jeweils einem Prozessor in der
Reihenfolge der von den Prozessoren abgegebenen Anforderungssignale bei Wahrung der Ordnung der
Priorität ihres Eintreffens auch unter den in Wartestellung gehaltenen Anforderungssignalen.
In den Signalunterdrückungsschaltungen werden also jeweils zwei Anforderungsleitungen miteinander verglichen.
An demjenigen Ausgang, der derjenigen Anforderungsleitung zugeordnet ist, an der ein Anforderungssignal
zuerst aufgetreten ist, erscheint dann ein Signal mit einem zweiten von zwei möglichen Werten, z. B. der
Signalwert »1« eines primären Signals. Da diese Vergleiche in den Signalunterdrückungsschaltungen
jeweils für alle möglichen paarweisen Kombinationen der Anforderungsleitungen durchgeführt werden, läßt
nun wieder ein Vergleich aller dieser Vergleichsergebnisse einen Rückschluß darauf zu, welches der
Anforderungssignale nun an erster Stelle eingegangen ist. Dieser Vergleich erfolgt in den nachgeordneten
»zweiten« Verknüpfungsschaltungen. An sie gelangen als Eingänge alle diejenigen Ausgänge der vorgeschalteten
Signalunterdrückungsschaltungen, die demselben Anforderungssignal bzw. derselben Anforderungsleitung
zugeordnet sind. Sind also hier alle an eine bestimmte »zweite« Verknüpfungsschaltung gelangenden
Ausgänge der Signsüunterdrückungsschaltungen in dem genannten zweiten Signalzustand, haben sie also im
Beispiel den Wert »1«, so war das dieser Verknüpfungsschaltung zugeordnete Anforderungssignal zeitlich
zuerst da.
Gilt die angegebene Beziehung zwischen den Eingängen und den Ausgängen der Signalunterdrükkungsschaltungen,
so verändert sich der geschilderte Signalzustand an den Ausgängen der Signalunterdrükkungsschaltungen
dann, wenn das erste Anforderungssignal wechselt, so daß es die Priorität innerhalb der
dann noch konkurrierend anliegenden Anforderungssignale anzeigt. Die im Netzwerk vorgesehenen
Signalunterdrückungsschaltungen speichern also die zeitliche Aufeinanderfolge der Anforderungssignale
derart, daß jeweils diejenige Verknüpfungsschaltung ein Prioritätssignal abgibt, die demjenigen Anforderungssignal zugeordnet ist, das von allen noch in einem
bestimmten Zeitpunkt anliegenden Anforderungssignalen zeitlich als erstes aufgetreten war.
Ein Ausführungsbeispiel der Erfindung wird im folgenden unter Bezugnahme auf die Zeichnungen
beschrieben.
F i g. 1 zeigt ein Blockschaltbild eines Ausführungsbeispiels;
Fig.2 zeigt ein Blockschaltbild des beim Ausführungsbeispiel
nach F i g. 1 verwendeten Netzwerks 1;
F i g. 3 zeigt den Schaltungsaufbau des Ausführungsbeispiels nach F i g. 1 mit logischen Verknüpfungsgliedern;
Fig.4 zeigt den Signalverlauf an verschiedenen Stellen der Schaltung nach F i g. 3.
Im folgenden Ausführungsbeispiel wird bei der Bezugnahme auf den jeweiligen Signalwert binärer
Signale der Einfachheit halber davon gesprochen, daß das Signal den Wert »0« bzw. »1« hat
Beim Ausführungsbeispiel nach F i g. 1 sind in der Gruppe 101 π Eingänge 101-1, 101-2, .... 101-n
zusammengefaßt. An sie gelangen Anforderungssignale von η voneinander unabhängigen Signalquellen bzw.
Prozessoren (nicht gezeigt). Das Signal an einem Eingang ist »0«, wenn keine Anforderung einer
bestimmten Funktionseinheit durch den dieser Eingangsklemme zugeordneten Prozessor vorliegt; das
Signal wird »1«, wenn eine Anforderung vorliegt
Das Netzwerk 1, in dem bei miteinander konkurrierenden Anforderungen die Entscheidung getroffen wird,
weist η Eingänge 1-1,1-2,... und 1-n und π Ausgänge
1-1', \-T,... und l-/j'auf; die Eingänge und Ausgänge
sind einander in einer Eins-zu-Eins-Beziehung zugeordnet Sind die Signale an allen π Eingängen des
Netzwerks 1 »0«, dann wird jeder der π Ausgänge
ebenfalls auf »0« gestellt; sind hingegen einige der Eingänge »1«, dann wird der Wert eines, und nur eines
Ausgangs von »0« auf »1« gestellt, und zwar derjenige Ausgang, der demjenigen Eingang zugeordnet ist, an
dem das Signal »1« zuerst aufgetreten ist. Mit anderen Worten: Das die Konkurrenz von Anforderungssigr.alen
(Signale »1« an den Eingängen) entscheidende Netzwerk 1 funktioniert derart, daß dann, wenn von
mehreren Prozessoren her Anforderungen vorliegen und dementsprechend die zugeordneten Eingänge »1«
sind, derjenige Prozessor ausgewählt wird, der die
ίο Anforderung an das Netzwerk 1 zuerst abgegeben hat.
Das geschieht dadurch, daß der diesem zugeordnete Ausgang auf »1« gestellt wird. Die Signale am Eingang
des Netzwerks 1, die denjenigen anderen Prozessoren zugeordnet sind, die als zweite bzw. nächste in der
zeitlichen Reihenfolge der Anforderungen ein Anforderungssignal abgegeben haben, werden unterdrückt.
Dabei wird jedoch die Reihenfolge der Erzeugung der zweiten und der nachfolgenden Anforderungssignale
nicht gelöscht. Entfällt also nach Erledigung das Anforderungssignal des zuerst akzeptierten Prozessors,
d. h. wird der diesem zugeordnete Eingang wieder »0«, dann wird derjenige Prozessor, der zeitlich als zweiter
ein Anforderungssignal an den Arbiter abgegeben hat, dadurch designiert, daß dann der und nur der Ausgang
von »0« auf »1« verändert wird, der demjenigen Eingang zugeordnet ist, an den — von allen Eingängen,
an denen noch eine »1« anliegt — das Anforderungssignal »1« zuerst angelegen hat. In bezug auf alle
betrachteten Anforderungssignale ist dieses zeitlich das zweite gewesen. Die weiteren Prozessoren, die Anforderungssignale
danach, also dritter oder vierter usw., an den Arbiter abgegeben haben, werden danach in
gleicher Reihenfolge — und zwar jeweils nach Erledigung des vorhergehenden Anforderungssignals
— designiert Die Reihenfolge des Eingangs der Anforderungssignale beim Arbiter bleibt dabei gewahrt,
indem in derselben Reihenfolge die zugeordneten Ausgangsklemmen des Netzwerks 1 zuerst »1« und
danach wieder »0« werden.
Die Steuerungsschaltung 2 überträgt das Anforderungssignal des von dem Netzwerk 1 designierten
Prozessors an eine (nicht gezeigte) Funktionseinheit, die Gegenstand der Anforderung gewesen ist. Sie überträgt
ferner ein von dieser Funktionseinheit an den von dem Netzwerk bezeichneten Prozessor und zeigt damit an,
daß die Anforderung akzeptiert wurde.
Für die folgende, mehr ins Detail gehende Erläuterung der Steuerschaltung 2 seien nun die π Prozessoren
(nicht gezeigt), deren Anforderungssignale den η
so Eingängen der Gruppe 101 zugeleitet werden, durch die Symbole P\, Pi, ... und Pn dargestellt; es sei ferner
angenommen, daß drei Prozessoren in der Reihenfolge P1, Pz und Pi Anforderungssignale erzeugen und an den
Arbiter abgeben. Daher wird zunächst der dem Prozessor P\ zugeordnete Ausgang 1-1' des Netzwerks
1 »1«; alle anderen Ausgänge des Netzwerks 1 bleiben bei »0«.
Die Steuerschaltung 2 hat nun einen weiteren Ausgang 201, über den das Anforderungssignal von
jedem Prozessor an die Funktionseinheit übertragen wird. Solange der weitere Eingang 102, an den von der
Funktionseinheit ein Bestätigungssignal eingeht, »0« ist,
verändert sich das Signal an dem Ausgang 201 von »0« auf »1« als Folge jeder Veränderung eines Signals an
einem der Ausgänge des Netzwerks 1 von »0« auf »1«. Das ergibt für das oben angenommene Beispiel: Wird
der dem Prozessor P\ zugeordnete Ausgang X-V des
Netzwerks 1, der zunächst »0« war, nun »1«, dann
verändert sich auch unmittelbar darauf das Signal auf dem Ausgang 201 von »0« auf »1«. Das von dem
Prozessor Pi erzeugte und an den Arbiter abgegebene Anforderungssignal ist somit an die Funktionseinheit
übertragen worden.
An den Eingang 102 gelangt von der Funktionseinheit dann ein Bestätigungssigna), durch das derjenige
Prozessor, der das Anforderungssignal abgegeben hat. darüber informiert wird, daß dieses von der Funktionseinheit akzeptiert worden ist; der Eingang 102, der
normalerweise »0« ist, wechselt dann auf »1«. Das Signal am Eingang 102 ändert sich also praktisch von
»0« auf »1«, kurz nachdem sich das Signal an dem Ausgang 201 von »0« auf»1« geändert hat
Eine Gruppe 202 wird durch η Ausgänge 202-1,202-2,
... und 202-77 gebildet die den Eingängen der Gruppe 101 in Eins-zu-Eins-Beziehung zugeordnet sind. Die η
Ausgänge entsprechen η Prozessoren Pi, P2,.., Pn; sie
dienen dazu, von der Funktionseinheit an den Prozessor, der ein Anforderungssignal an den Arbiter abgegeben
hat und zu einem bestimmten Zeitpunkt von dem Netzwerk 1 designiert worden ist dann ein ihm die
Funktionseinheit zuweisendes Bestätigungssignal abzugeben.
Trifft an dem Eingang 102 ein Bestätigungssignal ein, ändert es sich also von »0« auf »1«, dann wertet die
Steuerschaltung 2 die Signalzustände an den Ausgängen des Netzwerks 1 derart aus, daß lediglich der Ausgang
202-1 der Gruppe 202, der dem vom Netzwerk 1 designierten Prozessor P\ (s. oben) zugeordnet ist, sich
ebenfalls von »0« auf »1« ändert. Somit wird das am Eingang 102 von der Funktionseinheit eingehende
Bestätigungssignal von dieser über den Ausgang 202-1
an den Prozessor Pi, und zwar nur an diesen, übertragen.
In diesem Zeitpunkt wird demgemäß die Funktionseinheit nur vom Prozessor Pi belegt und die von dem
Prozessor Pi der Funktionseinheit zugewiesene Aufgabe von dieser bearbeitet. Während dieses bestimmten
Zeitraumes bleiben die Prozessoren Pi und P3, die auch
schon Anforderungssignale, und zwar später, abgegeben haben, in Wartestellung.
Sobald die Aufgabe, für die der Prozessor Pi die Funktionseinheit in Anspruch genommen hat, erledigt
ist entfällt das Anforderungssignal. Am Eingang 101-1, der dem Prozessor Pi zugeordnet ist, Findet ein Wechsel
von »1« auf »0« statt Demgemäß ändert sich das Signal am Ausgang 1-Γ des Netzwerks 1, der dem Prozessor Pi
zugeordnet ist von »1« auf »0«. Gleichzeitig verändert sich nun, um dem zeitlich als nächstes eingegangenen
Anforderungssignal Rechnung zu tragen, das Signal am Ausgang 1-2', der dem Prozessor P2 zugeordnet ist von
»0«auf »1«.
Ferner wechselt das Signal am Ausgang 201-1 nun wieder von »1« auf »0«, nachdem über den Ausgang 1-1'
des Netzwerks 1, der dem Prozessor P\ zugeordnet ist die Steuerschaltung 2 darüber informiert worden ist
daß die Anforderung des Prozessors P\ entfallen ist Da das Signal am Eingang 102 in diesem Augenblick noch
»1« ist folgt der Ausgang 201 diesem Signalwechsel an dem dem Prozessor P2 zugeordneten Ausgang 1-2' des
Netzwerks 1 nicht sofort sondern wartet bis der Eingang 102 auch »0« wird. Eine kleine Zeitspanne
später, d. h. in dem Zeitpunkt in dem das Bestätigungssignal, das von der Funktionseinheit an den Prozessor Pt
gegeben worden ist ebenfalls entfallen ist, wird das
Signal am Eingang 102 auch »0«.
Der Ausgang 201 wechselt dann wieder von »1« auf »0« und folgt damit dem Prozessor Pi wie vorher dem
Prozessor P\. Es wird also dann ein Anforderungssignal vom Prozessor P2 an die Funktionseinheit übertragen.
Die nachfolgenden Schritte laufen gleich ab wie für den Prozessor Pi. Dasselbe gilt für den weiteren Betriebsablauf, also nach Wegfall des Anforderungssignals vom
Prozessor P2 bis zur Belegung der Funktionseinheit durch den Prozessor P3.
Das Netzwerk 1 designiert also nicht nur lediglich den dem Prozessor mit dem am frühesten auftretenden
Anforderungssignal zugeordneten Ausgang, so daß an diesem ein Prioritätssignal auftritt, sondern speichert
und hält auch die Reihenfolge des Auftretens des zweiten und der nachfolgenden Anforderungssignale.
Nachdem das erste Anforderungssignal entfallen ist,
schreitet die Verarbeitung der Anforderungssignale in
der gespeicherten Reihenfolge der von den Prozessoren erzeugten und an den Arbiter abgegebenen Anforderungssignale um einen Schritt fort. Es wird derjenige
Eingang designiert, der dem Prozessor zugeordnet ist
der zeitlich als zweiter ein Anforderungssignal erzeugt
und an den Arbiter abgegeben hat, usw.
Das Netzwerk 1, das die Reihenfolge der Erledigung konkurrierender Anforderungssignale entscheidet und
die Steuerschaltung 2, die die in zeitlicher Folge
beschriebenen logischen Funktionen realisiert, bilden
den Arbiter. Im folgenden wird Aufbau und Betrieb des Netzwerks 1 anhand von F i g. 2 genauer erläutert.
Fig.2 zeigt das Netzwerk 1 nach Fig. 1. Die
Eingänge 101-1, 101-2, .... 101-n der Eingangsgruppe
stehen in noch zu beschreibender Weise mit zu einer Gruppe 11 zusammengefaßten Signalunterdrückungsschaltungen 111 in Verbindung. Jede Signalunterdrükkungsschaitung ill hat zwei Eingänge und zwei diesen
jeweils zugeordnete Ausgänge. Sind beide Eingänge
»0«, sind auch beide Ausgänge »0«; ist jedoch ein
Eingang »1«, dann ist lediglich derjenige Ausgang, der diesem den Wert »1« aufweisenden Eingang zugeordnet
ist ebenfalls »1«. Sind beide Eingänge »1«, dann wird nur derjenige Ausgang »1«, der dem Eingang zugeord-
net ist, an dem zeitlich zuerst eine Änderung von »0« auf »1« aufgetreten ist; der andere Ausgang bleibt »0«. In
anderen Worten: sind beide oder nur einer der Eingänge »1«, dann zeigt der Signalzustand am Ausgang an,
welcher Eingang sich zuerst von »0« auf »1« verändert
hat.
Kehrt nun der Eingang der Signalunterdrückungsschaltung 111, der als erster von »0« auf »1« verändert
wurde, wieder auf »0« zurück, dann kehrt auch der zugeordnete Ausgang unmittelbar auf »0« zurück. In
diesem Augenblick ist dann der andere Ausgang entweder »0« odei »1«, je nachdem, ob der ihm
zugeordnete Eingang »0« oder »1« ist Das ergibt sich aus der oben beschriebenen Funktion. Das bedeutet:
Kehrt das »Sieger«-Signal auf »0« zurück, so wird
anstelle des »Sieger«-Signals das »Verlierer«-Signal,
das an dem ihm zugeordneten Ausgang auf »0« unterdrückt worden war, nunmehr »1«.
Eine zweite Gruppe 12 wird durch logische Verknüpfungsschaltungen 121 gebildet Jede dieser
Verknüpfungsschaltungen 121 bildet das logische Produkt der Signale an ihren Eingängen (UND-Funktion). Die Verknüpfungsschaltungen 121 sind den
Eingängen der Gruppe 101 in einer Eins-zu-Eins-Beziehung zugeordnet Die Ausgänge 12-1,12-2,..., 12-n sind
die η Ausgänge 1-1', 1-2',... bzw. 1-n'des Netzwerks 1
und gleichzeitig die Eingänge der Steuer? chaining 2. Die Ausgänge jeder Verknüpfungsschaltung 121 sind nur
dann »1«, wenn alle ihre Eingänge »1« sind.
Dabei sei auf folgendes hingewiesen: Die Anzahl der Signalunterdrückungsschaltungen 111, die die erste
Schaltkreisgruppe 11 bilden, ist gleich der Anzahl der möglichen Kombinationen von zwei der π Eingänge der
Gruppe 101. Die beiden Eingänge je einer Signalunterdrückungsschaltung 111 sind jeweils mit zwei Eingängen
der Gruppe 101 verbunden, die ein solches von anderen verschiedenes Kombinationspaar bilden.
Hat also die Eingangsgruppe 101 z. B. zwei, drei oder vier Eingänge, dann enthält die erste Gruppe 111 eine
( = CD, drei ( = Cj) oder sechs ( = Ci) Signalunterdrükkungsschaltungen
111. Für η Eingänge ist die Anzahl der
Signalunterdrückungsschaltungen 111 gleich Ci
Aus den Eigenschaften der Signalunterdrückungsschaltungen 111 folgt: Wenn sich Signale an entsprechenden
Eingängen der Gruppe 101 in Konkurrenz zueinander von »0« auf »1« verändern, dann zeigen die
Signalzustände auf den Ausgängen der einzelnen Signalunterdrückungsschaltungen 111 für jede mögliche
paarweise Kombination der Eingänge der Gruppe 101 an, welcher Eingang dieses Paares zeitlich vor dem
anderen von »0« auf »1« verändert wurde.
Markiert man nun einen bestimmten Eingang 101-1 in der Gruppe 101, dann gibt es (n— 1) verschiedene Paare
von Eingängen, zu denen dieser bestimmte Eingang 101-1 gehört. Ebenso ist die Anzahl der Signalunterdrückungsschaltungen
Ul, deren einer Eingang mit diesem bestimmten Eingang 101-1 der Gruppe 101
verbunden ist, gleich (λ— 1). Dementsprechend sind die Eingänge der Verknüpfungsschaltung 121 in der
zweiten Gruppe 12, die der dem Eingang 101-1 zugeordnet ist, mit allen Ausgängen dieser (n— 1)
Signalunterdrückungsschaltungen Ul auf der Seite verbunden, die ihrerseits dem Eingang 101-1 zugeordnet,
d. h. mit ihm verbunden sind.
F i g. 3 zeigt — nach logischen Verknüpfungsgliedern aufgebaut — den Schaltplan eines asynchronen
Arbiters. F i g. 3 entspricht F i g. 1 für den Fall, daß die Anzahl der Eingänge der Gruppe 101 gleich drei ist. Die
Schaltung ist mit NAND-Verknüpfungsgliedern realisiert. F i g. 4 zeigt den zeitlichen Verlauf der Signale an
den Eingängen und Ausgängen der Schaltung nach F ig. 3.
In F i g. 3 entsprechen die Eingänge n, rt und η drei
Eingängen der Gruppe 101 nach Fig. 1. Die Ausgänge a\, a2 und S3 entsprechen drei Ausgängen der Gruppe
202 nach Fig. 1. Die Klemmen A und R in Fig.3
entsprechen dem Eingang 102 bzw. dem Ausgang 201 nach Fig. 1.
Die jeweils mit einem Strich versehenen Symbole r'\, r'2, r'i a'i, a'j, a 3, R'undA'm Fig. 4 bezeichnen jeweils
den Verlauf der Signale an denjenigen Eingängen bzw. Ausgängen, die in F i g. 3 mit denselben Bezugszeichen,
jedoch ohne Strich, verwendet sind. Mit anderen Worten: Die Signalverläufe /i, r'2 und r'3 enthalten von
drei Prozessoren Pi, ft und ft (nicht gezeigt) abgegebene Anforderungssignale, die an die Eingänge n, Pi und η
der Gruppe 101 gelangen. Der Signalverlauf /?'enthält
das Signal, mit dem die Anforderung an eine (nicht gezeigte) Funktionseinheit, die durch den asynchronen
Arbiter nacheinander mit den Prozessoren P\, P2 und ft
verbunden werden soll, übertragen wird. Der Signalverlauf A' enthält das Bestätigungssignal, mit dem die
Funktionseinheit einen der Prozessoren P\, Pi und ft
darüber informiert, daß die Anforderung akzeptiert ist Die Signalverläufe a'i, a'2 und a 3 enthalten die Signale,
mit denen das Bestätigungssignal Λ'an die entsprechenden Prozessoren Pi, ft und ft übertragen wird.
In F i g. 3 sind 501 bis 534 sämtlich NAN D-Verknüpfungsglieder.
Diejenigen NAN D-Verknüpfungsglieder, die von einem strichpunktierten Rahmen umfaßt sind,
bilden das Netzwerk 1 nach Fig. 1, die restlichen die
Steuerschaltung 2. Das Netzwerk 1 enthält drei Gruppen von jeweils vier NAND-Verknüpfungsgliedern,
nämlich die Gruppen (501,502,507,508), (503,504,
509,510) und (505,506,511,512). Diese Gruppen bilden
jeweils eine Signalunterdrückungsschaltung Ul nach F i g. 2. Die drei Gruppen (513,516), (514,517) und (5f 5,
518) mit je zwei NAN D-Verknüpfungsgliedern bilden die Verknüpfungsschaltungen 121 nach F i g. 2.
Zur Vereinfachung sei angenommen, daß die Signalzustände auf den Ausgängen jeweils einer
bestimmten Gruppe von NAN D-Verknüpfungsgliedern dadurch symbolisiert werden sollen, daß die Bezugszeichen,
mit denen die zu dieser Gruppe gehörenden NAND-Verknüpfungselemente bezeichnet sind, auf der
linken Seite einer Gleichung in Klammern gesetzt und die Signalzustände an den Ausgängen dieser Verknüpfungsglieder,
die entweder »0« oder »1« sein können, auf der rechten Seite der Gleichung in Klammern gesetzt
werden. Ist also z. B. der Signalzustand am Ausgang des Verknüpfungsgliedes 501 »1«, am Ausgang des Verknüpfungsgliedes
502 »0« und am Ausgang des Verknüpfungsgliedes 507 »0«, so wird dies dargestellt
durch (501,502,507) = (1,0,0).
Nimmt man nun an, der anfängliche Signalzustand auf allen Eingängen η, η rj und A und auf den Ausgängen at,
ai, a-i und R sei »0«, dann sind die Signalzustände an den
Ausgängen der NAND-Verknüpfungsglieder 501 bis 506:
(501,502) = (1.1),
(503,504) = (l,l)und
(505,506) = (1,1).
(505,506) = (1,1).
Es sei nun weiter angenommen, daß von allen Prozessoren Pi, P2 und P3 Anforderungssignale erzeugt
und an den Arbiter abgegeben werden. Die Signalzu-
•40 stände auf den Eingängen η, ο und η seinen demgemäß
von »0« auf »1«, und zwar in dieser Reihenfolge (r 1, r 2, r 3), verändert worden. Am Ausgang der von den
NAN D-Verknüpfungsgliedern 501 und 502 gebildeten Verriegelungsschaltung erhält man dann als Folge der
Tatsache, daß der Eingang r\ vor dem Eingang η von
»0« auf »1« ging, den Signalzustand (501, 502) = (1,0). Solange sich der Signalzustand auf den Eingängen λ und
/3 nicht ändert, bleibt dieser Signalzustand am Ausgang
bestehen. An den Ausgängen der von den NAND-Verknüpfungsgliedern
503 und 504 gebildeten und der von den NAN D-Verknüpfungsgliedern 505 und 506 gebildeten
beiden weiteren Verriegelungsschaltungen erhält man aufgrund derselben Zusammenhänge die Signalzustände
(503, 504) - (0,1) und (505, 506) = (0,1). Man
erhält somit also (507, 508, 509, 510, 511, 512) = (0,1,1,0,1,0) und damit (513, 514, 515) = (0,1,1). Danach
ergibt sich der Signalzustand am Ausgang des Netzwerkes 1 wie folgt:
ω
(516,517,518) = (1.0,0).
Also ist lediglich an demjenigen Ausgang des betreffenden Netzwerks 1, der demjenigen Eingang,
nämlich n, zugeordnet ist, der als erster der Eingänge r,,
γϊ und η (Eingangsgruppe 101) von »0« auf »1«
gewechselt hat, eine Änderung des Signalzustandes auf »1« erfolgt Die anderen Ausgänge des Netzwerks 1
bleiben »0«.
Zu Beginn waren die Signalzustände an den
IO
15
20
Ausgängen der NAND-Verknüpfungsglieder, die die Steuerschaltung 2 bilden, folgende:
(519,520,521) = (1,1,1),
(522,523,524,525,526,527)
(522,523,524,525,526,527)
= (0,1,0,1,0,1)
(528,529,530) = (0,0,0) und
(531,532,533,534) = (1,1,1,0).
(531,532,533,534) = (1,1,1,0).
Sobald sich nun die Signalzustände an den Ausgängen des Netzwerkes 1, wie oben beschrieben, auf (516, 517,
518) = (1,0,0) geändert haben, ändern sich nun die Signalzustände an den Ausgängen der NAND-Verknüpfungsglieder
531,532,533 und 534 auf
(531,532,533,534) = (0,1,1,1).
Demgemäß ändert sich nun der Signalzustand auf dem Ausgang R von »0« auf »1«. Das heißt: Das als
erstes von einem der Prozessoren Pi, Pi, Pi abgegebene
Anforderungssignal wird nun über den Ausgang R an die Funktionseinheit weiter übertragen. Diese Veränderung
des Signalzustandes ist durch die mit einer Pfeilmarkierung versehene gestrichelte Linie 41 in
Fig. 4 dargestellt.
Sobald danach von der Funktionseinheit ein Bestätigungssignal
abgegeben worden ist, das darüber informiert daß das Anforderungssignal R' akzeptabel
ist, und sobald sich gleichzeitig der Signalzustand am Eingang A von »0« auf »1« verändert hat (vgl. die
gestrichelte Linie 42 in Fi g. 4), nehmen die Ausgänge der Verknüpfungsglieder der Steuerschaltung 2 die
folgenden Signalzustände an:
(519,520,521) = (0,1,1)
(522,523,524,525,526,527)
(522,523,524,525,526,527)
= (1,0,0,1,0,1) und
(528,529,53O) = (I1O1O).
(528,529,53O) = (I1O1O).
Daraufhin ändert sich der Signalzustand am Ausgang a\ von »0« auf »1« (vgl. die gestrichelte Linie 43 in
Fig.4). In anderen Worten: An den Prozessor P\, und
nur an diesen, wird ein Bestätigungssignal abgegeben und die Funktionseinheit demgemäß durch den Prozessor
Pi belegt. Die anderen Prozessoren Pi und P3
bleiben, obwohl auch sie ein Anforderungssignal abgegeben haben, gezwungenermaßen weiterhin in
Wartestellung. Endet nun als nächstes die lnanspruchnähme
der Funktionseinheit durch den Prozessor P\ und entfällt das von dem Prozessor /Ί abgegebene
Anforderungssignal, so bedeutet das, daß der Signalzustand am Eingang η von »1« auf »0« zurückgeht (vgl. die
gestrichelte Linie 44 in Fig.4). Die Signalzustände auf
den Ausgängen der Verknüpfungsglieder, die das Netzwerk bilden, sind dann:
30
35
40
50
(501,502,503,504,505,506)
= (0,1,1,0,0,1),
(507,508,509,510,511,512)
(507,508,509,510,511,512)
= (1,0,0,1,1,0),
(513,514,515) = (l,0,l)und
(516,517,518) = (0,1,0).
(516,517,518) = (0,1,0).
55
60
Das bedeutet: Entfällt das von dem Prozessor Pi
abgegebene und zeitlich früheste Anforderungssignal am Eingang λ, dann nimmt nur derjenige Ausgang des
Netzwerks »1« an, der demjenigen Eingang η zugeordnet ist, der in der zeitlichen Reihenfolge der
eingegangenen Anforderungssignale an zweiter Stelle seinen Signalzustand von »0« auf »1« geändert hatte.
Alle anderen Ausgänge des Netzwerkes 1 sind »0«. Ist der Signalzustand am Ausgang des NAND-Verknüpfungsgliedes
523 »0«, so gilt:
(531,532,533,534) = (1,1,1,0).
Der Signalzustand am Ausgang R ändert sich also von »1« auf »0« (vgl. die gestrichelte Linie 45 in F i g. 4).
Auf Seite der Funktionseinheit läuft dabei folgender Vorgang ab: Entfällt das Anforderungssignal (Signalverlauf
R'), geht der Signalzustand am Eingang A von »1« auf »0« zurück. Das Bestätigungssignal (Signalverlauf
A'), wird gelöscht (vgl. die gestrichelte Linie 46 in Fig.4). Die Ausgänge der Verknüpfungsglieder der
Steuerschaltung 2 haben dann folgende Signalzustände:
(519,520,521) = (1,1,1),
(522,523,524,525,526,527)
(522,523,524,525,526,527)
= (0,1,0,1,0,1),
(528,529,530) = (0,0,0) und
(531,532,533,534) = (1,0,1,1).
(531,532,533,534) = (1,0,1,1).
Gleichzeitig mit der Rückstellung des Signalzustandes am Ausgang a\ von »1« auf »0« ändert sich also
wieder der Signalzustand auf der Ausgangsklemme R von »0« auf »1«. Das bedeutet:
Das vom Prozessor Pz erzeugte und an den Arbiter
abgegebene Anforderungssignal wird an die Funktionseinheit übertragen (vgl. die gestrichelten Linien 47 und
47' in Fig.4). Erzeugt nun die Funktionseinheit ihrerseits ein Bestätigungssignal (Signalverlauf A') und
informiert damit über die Tatsache, daß das Anforderungssignal (Signalverlauf R') akzeptabel ist, und ändert
sich demgemäß der Signalzustand am Eingang A wiederum von »0« auf »1« (vgl. gestrichelte Linie 48 in
F i g. 4), dann erhält man somit an den Ausgängen der Verknüpfungsglieder der Steuerschaltung 2 folgende
Signalzustände:
(519,520,52I) = (I1O1I),
(522,523,524,525,526,527)
(522,523,524,525,526,527)
= (0,1,1,0,0,1) und
(528,529,530) = (0,l,0).
(528,529,530) = (0,l,0).
Der Signalzustand am Ausgang a2 ändert sich somit
nun von »0« auf »1«(vgl. gestrichelte Linie 49 in F i g. 4). Die Funktionseinheit wird damit von dem Prozessor Pi
in Anspruch genommen; der Prozessor P3 ist immer
noch in Wartestellung.
Danach erfolgt auf dieselbe Art und Weise die Belegung der Funktionseinheit durch den Prozessor P3
und deren Bestätigung. Ist die Belegung beendet, werden sofort sämtliche Eingänge und Ausgänge auf
dieselben Signalzustände zurückgestellt, die sie am Anfang hatten, sofern nicht ein weiterer Prozessor
erneut entsprechend ein Anforderungssignal erzeugt und an den Arbiter abgibt (vgl. die strichpunktierten
Linien 50—59 in F i g. 4).
Die bei der im vorgehenden gegebenen Beschreibung eines Ausführungsbeispieles verwendete Zuordnung der
Signalwerte »0« und »1« erfolgte lediglich beispielhaft und ist nur für die Realisierung mit NAND-Verknüpfungsgliedern
zwingend. Die Zuordnung von »0« und »1« ist bei anderen Realisierungen frei wählbar, solange
dabei keine Unverträglichkeiten auftreten.
Der im vorstehenden als Ausführungsbeispiel beschriebene asynchrone Arbiter ist zwischen mehrere
Prozessoren und eine Funktionseinheit in einem parallelen Informationsverarbeitungssystem geschaltet;
die Erfindung ist jedoch ferner in all solchen Fällen anwendbar, in denen das Problem des Wartens oder der
konkurrierenden Zuordnung auftreten kann. z. B. beim
Schalten von Fernsprechverbindungen, bei der Seitenübertragung
bei virtueKen Speichern, bei der Schnittstellensteuerung,
bei Computer-Netzen oder der Steuerung der Datensammelleitungen in einem Multiprozessorsystem
usw. Für die Erfindung ergibt sich im Bereich der Datenverarbeitungs- und Nachrichtenübertragungssysteme
ein weites Anwendungsgebiet
Die Erfindung schafft in Form einer einfachen
Die Erfindung schafft in Form einer einfachen
Hardware-Schaltung eine Möglichkeit, mehrere Signale
nacheinander zu be- bzw. zu verarbeiten. Dem zuerst eingehenden Signal wird dabei die höchste Präferenz
zugeordnet Die Schaltung kombiniert Funktionen ir. Auswahl und Unterdrückung mehrerer Signale, die ihr
asynchron und um eine bestimmte Zuordnung (zu einer Funktionseinheit) miteinander konkurrierend zugeführt
werden, mit einer logischen Folgefunktion.
Hierzu 3 Blatt Zeichnungen
Claims (4)
1. Schaltung zur Zuordnung einer Funktionseinheit zu jeweils nur einem von mehreren Prozessoren,
die über Anforderungsleitungen asynchron Anforderungssignale abgeben (asynchroner Arbiter), die eine
Steuerschaltung aufweist mit mehreren je einem Anforderungssignal zugeordneten Verknüpfungsschaltungen, an deren einen Eingang je ein in einem
Netzwerk von dem zugeordneten Anforderungssignal abgeleitetes Signal gelangt, bei der ferner jeder
Verknüpfungsschaltung in der Steuerschaltung ein Ausgang zugeordnet ist, an dem ein die Funktionseinheit einen Prozessor zuweisendes Signal auftritt,
wenn an dem genannten einen Eingang der Verknüpfungsschaltung das von dem zugeordneten
A.nforderungssignal in dem Netzwerk abgeleitete Signa! auftritt und an den anderen Eingängen dieser
Verknüpfungsschaltung Sperrsignale nicht auftreten, die von die Funktionseinheit anderen Prozessoren zuweisenden Signalen an den anderen Ausgängen der Steuerschaltung abgeleitet sind, dadurch
gekennzeichnet, daß in dem Netzwerk (1) die Anforderungsleitungen (n, n, n) in allen unter ihnen
möglichen Kombinationen paarweise an die beiden Eingänge (Eingang von 501,502; 503,504; 505,506)
entsprechend vieler Signalunterdrückungsschaltungen (111) gelangen, die mit zwei je einem der beiden
Anforderungsleitungen zugeordneten Ausgängen (Ausgang von 507, 508; 509, 510; 511, 512) der
Signalunterdrückungsschaltungen durch logische Verknüpfungsglieder (501, 502, 507, 508; 503, 504,
509, 510; 505, 506, 511, 5!2) derart miteinander verbunden sind, daß,
(a) wenn kein Anforderungssignal an einem der beiden Eingänge anliegt, an beiden Ausgängen je
ein Signal mit einem ersten (0) von zwei Werten
(0,1) auftritt, und,
(b) wenn ein Anforderungssignal an einem oder beiden Eingängen anliegt, an demjenigen Ausgang, an dem das Anforderungssignal zeitlich
zuerst aufgetreten ist, ein Signal mit dem zweiten (1) der beiden Werte auftritt,
und daß die jeweils derselben Anforderungsleitung (ο, Γ2, n) zugeordneten Ausgänge (Ausgang von 507,
508; 509, 510; 511, 512) je zweier verschiedener Signalunterdrückungsschaltungen an die Eingänge
entsprechend vieler zweiter Verknüpfungsschaltungen (513, 514, 515), die Bestandteil des Netzwerkes
(1) und den erstgenannten Verknüpfungsschaltungen (519, 520, 521) vorgeschaltet sind, gelangen, derart,
daß diejenige der zweiten Verknüpfungsschaltungen ein Prioritätssignal an eine der erstgenannten
Verknüpfungsschaltungen als das im Netzwerk (1) von einem Anforderungssignal abgeleitete Signal
weitergibt, deren Eingängen dasjenige Anforderungssignal zugeordnet ist, das zeitlich zuerst
aufgetreten ist, und daß bei Auftreten eines die freie Belegbarkeit einer Funktionseinheit anzeigenden
Betätigungssignals (A) das weiteren Eingängen der erstgenannten Verknüpfungsschaltungen geführt
wird, diejenige der erstgenannten Verknüpfungsschaltungen, an der das Prioritätssignal anliegt, an
den ihr zugeordneten Prozessor das die Funktionseinheit zuweisende Signal abgibt.
2. Schaltung nach Anspruch 1, dadurch gekennzeichnet, daß die Signalunterdrückungsschaltungen
jeweils durch zwei NAND-Verknüpfungsschaltungen (501, 502; 503, 504; 505, 506) mit je zwei
Eingängen gebildet werden, wobei an den ers»en Eingang eine der in dieser Signalunterdrückungsschaltung paarweise zusammengefaßten Anforderungsleitungen gelangt und an den anderen Eingang
der Ausgang der anderen NAND-Verknüpfungsschaltung zurückgeführt ist und jeder NAND-Verknüpfungsschaltung ein Inverter (507 bis 512)
nachgeschaltet ist
3. Schaltung nach Anspruch 1, dadurch gekennzeichnet, daß die zweiten VerknüpfungsschaUungen
durch NAN D-Verknüpfungsglieder (513 bis 515) mit nachgeschalteten Invertern (516 bis 518) gebildet
werden.
4. Schaltung nach Anspruch 1, dadurch gekennzeichnet, daß bei Auftreten eines Prioritätssignals
am Ausgang einer der zum Netzwerk (1) gehörenden zweiten Verknüpfungsschaltungen (516, 517,
518) und bei Nichtauftreten eines die Funktionseinheit einem anderen als dem dem Prioritätssignal
zugeordneten Prozessor zuweisenden Signals ein weiteres Netzwerk (531 bis 534) an die Funktionseinheit überträgt (R) und dort die Abgabe des die freie
Belegbarkeit der Funktionseinheit anzeigenden Bestätigungssignals ^l
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10345173A JPS5413948B2 (de) | 1973-09-12 | 1973-09-12 | |
JP10344873A JPS5336988B2 (de) | 1973-09-12 | 1973-09-12 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2443579A1 DE2443579A1 (de) | 1975-03-13 |
DE2443579B2 true DE2443579B2 (de) | 1980-04-30 |
DE2443579C3 DE2443579C3 (de) | 1986-06-19 |
Family
ID=26444084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2443579A Expired DE2443579C3 (de) | 1973-09-12 | 1974-09-12 | Asynchroner Arbiter |
Country Status (3)
Country | Link |
---|---|
US (1) | US4016539A (de) |
DE (1) | DE2443579C3 (de) |
FR (1) | FR2243482B1 (de) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS53146550A (en) * | 1977-05-27 | 1978-12-20 | Nippon Telegr & Teleph Corp <Ntt> | Conflict circuit |
US4148011A (en) * | 1977-06-06 | 1979-04-03 | General Automation, Inc. | Asynchronous priority circuit for controlling access to a bus |
FR2420254A1 (fr) * | 1978-03-17 | 1979-10-12 | Anvar | Procede de routage d'informations dans un reseau de transmission de donnees numeriques et dispositif et reseau pour la mise en oeuvre de ce procede |
GB2050763B (en) * | 1979-04-04 | 1983-02-09 | Philips Electronic Associated | Transmitter queuing system |
US4251879A (en) * | 1979-05-02 | 1981-02-17 | Burroughs Corporation | Speed independent arbiter switch for digital communication networks |
US4347498A (en) * | 1979-11-21 | 1982-08-31 | International Business Machines Corporation | Method and means for demand accessing and broadcast transmission among ports in a distributed star network |
US4384323A (en) * | 1980-02-25 | 1983-05-17 | Bell Telephone Laboratories, Incorporated | Store group bus allocation system |
US4466096A (en) * | 1982-03-11 | 1984-08-14 | International Business Machines Corporation | Apparatus and method for providing transmitter hierarchy control for efficient channel management |
US4612542A (en) * | 1984-12-20 | 1986-09-16 | Honeywell Inc. | Apparatus for arbitrating between a plurality of requestor elements |
DE3530219A1 (de) * | 1985-08-23 | 1987-02-26 | Siemens Ag | Verfahren zur schnellen uebertragung von n unabhaengigen befehlen |
US4858173A (en) * | 1986-01-29 | 1989-08-15 | Digital Equipment Corporation | Apparatus and method for responding to an aborted signal exchange between subsystems in a data processing system |
EP0263907A1 (de) * | 1986-10-17 | 1988-04-20 | International Business Machines Corporation | Einrichtung zur parallelen Verarbeitung von Steuersignalen in einem "Fanin/Fanout"-Modem |
US4812840A (en) * | 1987-06-29 | 1989-03-14 | Ncr Corporation | Multiple mode switching means |
US5179705A (en) * | 1988-03-23 | 1993-01-12 | Dupont Pixel Systems, Ltd. | Asynchronous arbiter state machine for arbitrating between operating devices requesting access to a shared resource |
EP0464237A1 (de) * | 1990-07-03 | 1992-01-08 | International Business Machines Corporation | Busarbitrierungsschema |
US5410300A (en) * | 1991-09-06 | 1995-04-25 | International Business Machines Corporation | Distributed crossbar switch architecture |
US5522080A (en) * | 1991-10-24 | 1996-05-28 | Intel Corporation | Centralized control SIMD processor having different priority levels set for each data transfer request type and successively repeating the servicing of data transfer request in a predetermined order |
US5341052A (en) * | 1991-12-04 | 1994-08-23 | North American Philips Corporation | Arbiter with test capability and associated testing method |
EP0552507B1 (de) * | 1991-12-04 | 1998-02-11 | Koninklijke Philips Electronics N.V. | Arbiter mit einem unter Prioritätskonfliktskontrolle veränderlichen direkten Signal |
US5485586A (en) * | 1992-01-10 | 1996-01-16 | Digital Equipment Corporation | Queue based arbitration using a FIFO data structure |
FR2687526A1 (fr) * | 1992-02-18 | 1993-08-20 | Corneux Michel | Dispositif pour le couplage automatique de lignes telephoniques vers un equipement de reception commun. |
GB2276740B (en) * | 1993-04-02 | 1998-01-07 | Motorola Inc | Interrupt arrangement |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3300758A (en) * | 1963-06-04 | 1967-01-24 | Control Data Corp | High speed scanner and reservation system |
DE1487826B2 (de) * | 1966-05-21 | 1972-02-24 | Siemens AG, 1000 Berlin u. 8000 München | Schaltungsanordnung zur prioritaetsgerechten datenuebertragung |
US3665398A (en) * | 1968-04-06 | 1972-05-23 | Kogyo Gyustium | Input/output multiplex control system |
CA893337A (en) * | 1969-11-10 | 1972-02-15 | Ibm Canada Limited - Ibm Canada Limitee | Data communication system |
-
1974
- 1974-09-10 US US05/504,788 patent/US4016539A/en not_active Expired - Lifetime
- 1974-09-11 FR FR7430805A patent/FR2243482B1/fr not_active Expired
- 1974-09-12 DE DE2443579A patent/DE2443579C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2443579A1 (de) | 1975-03-13 |
FR2243482B1 (de) | 1982-05-21 |
FR2243482A1 (de) | 1975-04-04 |
US4016539A (en) | 1977-04-05 |
DE2443579C3 (de) | 1986-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2443579C3 (de) | Asynchroner Arbiter | |
DE3300261C2 (de) | ||
DE2354521C2 (de) | Verfahren und Einrichtung zum gleichzeitigen Zugriff zu verschiedenen Speichermoduln | |
DE2155159C3 (de) | Anordnung zum Synchronisieren der Rechner in einem Mehrrechnersystem | |
DE3300260C2 (de) | ||
DE1933685C3 (de) | Mehrere Programme simultan verarbeitende Datenverarbeitungsanlage | |
DE2901762A1 (de) | Datenuebertragungs- und verarbeitungsanlage | |
DE3106862C2 (de) | Prioritätszuteilschaltungsanordnung | |
DE1774513A1 (de) | Schaltungsanordnung zur Bestimmung des Vorrangverhaeltnisses zwischen mehreren Anforderungssignalen fuer programmgesteuerte Datenverarbeitungsanlagen | |
DE2003150C3 (de) | Prioritätsschaltung | |
DE1292164C2 (de) | Schaltungsanordnung zum belegen einer zentralen einrichtung durch anforderungssignale mit unterschiedlichem vorrang | |
DE2223196B2 (de) | Verfahren und Anordnung zur Impulsbreitensteuerung | |
DE1524181A1 (de) | Abrufsystem fuer Ein- und Ausgabegeraete einer Datenverarbeitungsanlage | |
DE2846925C2 (de) | Mikrocomputer-Netzwerk mit mehreren an mindestens einen Systembus angekoppelten Mikrocomputer-Moduln | |
DE1806172A1 (de) | Prioritaetsschaltung | |
DE2917822A1 (de) | Schaltungsanordnung zur zweirichtungsuebertragung von signalen | |
EP0100460B1 (de) | Anforderungsauswahlsteuerung in einem Prozessor-Speicher-Verbindungssystem | |
EP0064759A2 (de) | Verfahren und Schaltungsanordnung zur Übermittlung einer Anforderung eines Prozessors an einen Speichermodul in einem Multiprozessorsystem mit mehreren Speichermoduln | |
DE1437311B2 (de) | Informationsverteiler, der jeweils nur eine von den Eingängen zugeführten Informationen weiterleitet, ffir Einrichtungen der Fernmeldetechnik | |
DE1925917A1 (de) | Binaere Impulsfrequenz-Multiplizierschaltung | |
DE3126384C2 (de) | Prioritätsauswahleinrichtung | |
EP0477406A1 (de) | Multiprozessorsystem mit gemeinsamem Speicher | |
EP0477405B1 (de) | Kommunikationssystem zum Übertragen von Nachrichten zwischen jeweils zwei Einheiten | |
DE2846041C2 (de) | Schaltungsanordnung zur Ausführung von vermittlungstechnischen Aufgaben in einer Vermittlungsanlage, insbesondere einer Fernschreib- Nebenstellenanlage | |
DE19952545C2 (de) | Synchronisation der Datenbestände von redundanten Speichervorrichtungen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8281 | Inventor (new situation) |
Free format text: NANYA, TAKASHI, TOKI/TOKYO, JP |
|
C3 | Grant after two publication steps (3rd publication) |