DE2443579B2 - Asynchroner Arbiter - Google Patents

Asynchroner Arbiter

Info

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
Application number
DE2443579A
Other languages
English (en)
Other versions
DE2443579A1 (de
DE2443579C3 (de
Inventor
Takashi Tokio Nanya
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.)
NEC Corp
Original Assignee
Nippon Electric Co Ltd
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
Priority claimed from JP10345173A external-priority patent/JPS5413948B2/ja
Priority claimed from JP10344873A external-priority patent/JPS5336988B2/ja
Application filed by Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Publication of DE2443579A1 publication Critical patent/DE2443579A1/de
Publication of DE2443579B2 publication Critical patent/DE2443579B2/de
Application granted granted Critical
Publication of DE2443579C3 publication Critical patent/DE2443579C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4818Priority circuits therefor
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/22Circuits 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/26Circuits 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements 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

Die Erfindung betrifft eine Schaltung der im
" 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).
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)
= (0,1,0,1,0,1)
(528,529,530) = (0,0,0) und
(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)
= (1,0,0,1,0,1) und
(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)
= (1,0,0,1,1,0),
(513,514,515) = (l,0,l)und
(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)
= (0,1,0,1,0,1),
(528,529,530) = (0,0,0) und
(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)
= (0,1,1,0,0,1) und
(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
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)

Patentansprüche:
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
DE2443579A 1973-09-12 1974-09-12 Asynchroner Arbiter Expired DE2443579C3 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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)