DE69320508T2 - Verfahren und Gerät zur Busarbitrierungsdurchführung mit einem Arbiter in einem Datenverarbeitungssystem - Google Patents
Verfahren und Gerät zur Busarbitrierungsdurchführung mit einem Arbiter in einem DatenverarbeitungssystemInfo
- Publication number
- DE69320508T2 DE69320508T2 DE69320508T DE69320508T DE69320508T2 DE 69320508 T2 DE69320508 T2 DE 69320508T2 DE 69320508 T DE69320508 T DE 69320508T DE 69320508 T DE69320508 T DE 69320508T DE 69320508 T2 DE69320508 T2 DE 69320508T2
- Authority
- DE
- Germany
- Prior art keywords
- bus
- controlling device
- shared
- signal
- requesting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 6
- 230000004044 response Effects 0.000 claims description 5
- 230000002457 bidirectional effect Effects 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims 7
- 230000003213 activating effect Effects 0.000 claims 5
- 230000009849 deactivation Effects 0.000 claims 4
- 230000000630 rising effect Effects 0.000 description 6
- 239000000872 buffer Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/364—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Description
- Diese Erfindung betrifft im allgemeinen Datenverarbeitungssysteme und im besonderen Datenverarbeitungssysteme, die Busentscheidung durchführen.
- Die heutigen Hochleistungsdatenprozessoren mit auf dem Chip befindlichen Cache-Speichern oder pipeline-verarbeitenden Eingabe/Ausgabe (I/O) Einheiten (zum Beispiel Befehlsablaufsteuerungen, Lade/Speichereinheiten) beinhalten die Möglichkeit, mehrere unabhängige interne Anforderungen nach dem Zugriff auf ein externes Speichersystem zu erzeugen. Wegen Begrenzungen der Pinanzahl aufgrund der Packungsdichte müssen alle diese Datenprozessorbetriebsmittel über eine einzige Busschnittstelleneinheit (BIU) auf den externen Speicher zugreifen. Da zu jedem gegebenen Zeitpunkt mehrere unabhängige interne Anforderungen an der BIU erscheinen können, benötigt der Datenprozessor ein internes Busentscheidungsschema, um zu bestimmen, welche der internen Anforderungen ausgewählt wird, auf den Systembus zuzugreifen. In Systemen mit mehreren Hauptrechnern, wo ein oder mehrere Datenprozessoren die Fähigkeit besitzen, das bussteuernde Gerät zu werden, bestimmt das Busentscheidungsprotokoll, welcher Datenprozessor (welche Datenprozessoren) das bussteuernde Gerät wird. Typischerweise verwenden diese Mehrfachsysteme ein Entscheidungsprotokoll, bei welchem ein externer Entscheider die Busentscheidung steuert, und jeder Datenprozessor fordert vom Entscheider Zugriff auf den gemeinsam genutzten externen Speicher, indem Busentscheidungssignale verwendet werden.
- Zum Beispiel sind in einem zentralisierten, Dreileiter- Entscheidungsprotokoll die drei Hauptsteuersignale, die durch den Datenprozessor verwendet werden, ein Busanforderungs (BR*) Ausgangssignal, ein Busgewährungs (BG*) Eingangssignal und ein Busbesetzt (ABB*) Eingangs/Ausgangssignal (wobei "*" ein aktives Tiefpegelsignal bezeichnet). Das Entscheidungsprotokoll gestattet, daß die Entscheidung mit der Busaktivität überlappend abläuft. Dementsprechend können sich Anforderungen von potentiellen bussteuernden Geräten über ihre entsprechenden BR*-Signale mit einer gerade ablaufenden Bustransaktion überlappen, wobei die Übergabe der Busherrschaft (Busübergabe) durch den externen Entscheider gesteuert wird, indem er das (BG*)-Signal bereitstellt, und das gegenwärtig bussteuernde Gerät das ABB*-Signal bereitstellt. Auf diese Weise fordert ein erster Datenprozessor durch die Bereitstellung seines BR*-Signals immer dann den Bus vom Entscheider, wenn eine Busanforderung angemeldet ist. Der erste Datenprozessor fährt fort, das BR*-Signal bereitzustellen, bis der Entscheider (über das BG*-Signal) anzeigt, daß der Entscheider den Datenprozessor als nächstes bussteuerndes Gerät ausgewählt hat, und der erste Datenprozessor bestimmt, daß der Adressbus nicht belegt ist. Wenn dementsprechend der Entscheider das BG*-Signal des ersten Datenprozessors bereitstellt, überwacht der erste Datenprozessor das Bus-Belegt (ABB*) Signal, um zu bestimmen, wann der Buszyklus des vorherigen (stellvertretenden) bussteuernden Geräts beendet worden ist. Nachdem das ABB*-Signal durch das stellvertretende bussteuernde Gerät negiert worden ist, stellt der erste Datenprozessor das ABB*-Signal bereit, um die Busherrschaft anzuzeigen, und beginnt den Buszyklus.
- Nachdem der Buszyklus begonnen hat, fährt der erste Datenprozessor fort, BR* bereitzustellen, wenn eine andere interne Busanforderung angemeldet ist oder negiert das BR*-Signal, wenn keine weiteren Zugriffe gefordert werden. Auf diese Weise kann ein Datenprozessor, der dieses Entscheidungsprotokoll gemeinsam mit einer auf dem Chip befindlichen Harvard- Architektur verwendet, unabhängige und überlappende interne Anforderungen nach externem Buszugriff erzeugen. Eine interne Busanforderung könnte gleichzeitig von der Befehlsseite und der Lade/Speicherseite erzeugt werden. Alternativ könnte eine interne Anforderung von der Lade/Speicherseite kommen, während die Befehlsseite bereits der Eigentümer des externen Busses ist und einen externen Busbefehlsabruf durchführt oder umgekehrt. In jedem Fall ist es wünschenswert, die angemeldete interne Anforderung so früh wie möglich an den externen Entscheider auszugeben, um Nutzen aus der Entscheidungsüberlappung mit dem gegenwärtigen bussteuernden Gerät zu ziehen.
- Im allgemeinen hängen Systeme mit mehreren bussteuernden Geräten von einer Art "gerechten" ("fairen") Entscheidungsprotokoll ab, um zu verhindern, daß eines der bussteuernden Geräte den externen Bus monopolisiert (ständig belegt). Ein typisches gerechtes Protokoll würde jedes bussteuernde Gerät auf eine Bustransaktion begrenzen, wenn der Entscheider Anforderungen von mehreren potentiellen bussteuernden Geräten empfängt. Der Entscheider würde im wesentlichen jedem bussteuernden Gerät reihum eine Aktion gestatten. Es ist jedoch wünschenswert, bestimmten Bustransaktionen (zum Beispiel Lesen-Ändern-Schreiben) zu gestatten, daß sie nicht unterteilt ausgeführt werden. Da der Datenprozessor mehrere unabhängig erzeugte interne Busanforderungen hat, wird in einigen Fällen das externe Busanforderungs (BR*) Signal des Datenprozessors ständig bereitgestellt werden. Folglich kann ein externer gerechter Entscheider gezwungen sein, andere Steuersignale vom externen Bus zusätzlich zum BR*-Signal zu überwachen, um zu sichern, daß bestimmte Bustransaktionen nicht unterteilt ausgeführt werden. Wegen der logischen Komplexität und Begrenzungen der Pinanzahl (Kontaktstiftanzahl) ist die Realisierung eines solchen gerechten Entscheiders schwierig und problematisch.
- In Übereinstimmung mit einem ersten Aspekt der Erfindung wird wie in Anspruch 1 beansprucht ein Verfahren zur Realisierung eines Busentscheidungsprotokolls bereitgestellt.
- In Übereinstimmung mit einem zweiten Aspekt der Erfindung wird wie in Anspruch 3 beansprucht ein Datenverarbeitungssystem zur Busentscheidungsdurchführung bereitgestellt.
- Die vorliegende Erfindung wird von Fachmännern aus der detaillierten Beschreibung in Verbindung mit den angefügten Zeichnungen verstanden werden.
- Fig. 1 erläutert in Form eines Blockschaltbilds ein Datenverarbeitungssystem zur Busentscheidungsdurchführung in Übereinstimmung mit der vorliegenden Erfindung.
- Fig. 2 erläutert in Form eines Zeitablaufdiagramms ein Busentscheidungsprotokoll, das mit dem System der Fig. 1 verbunden ist, und einen gerechtigkeitsorientierten Busanforderungsmechanismus in Übereinstimmung mit der vorliegenden Erfindung enthält.
- Die Begriffe "bereitstellen" und "Bereitstellung" werden verwendet, wenn darauf Bezug genommen wird, daß ein Signal oder eine ähnliche Einrichtung in seinem logisch wahren (aktiven) Zustand wiedergegeben wird, wohingegen "negiert" und "Negation" verwendet werden, wenn das Signal oder ähnliche Einrichtung in seinem logisch unwahren (inaktiven) Zustand wiedergegeben wird. Das Sternchensymbol wird verwendet werden, um ein komplementiertes Signal anzuzeigen. Zum Beispiel zeigt BUS ANFORDERUNG* ein Signal an, das im komplementären logischen Zustand des Signals BUS ANFORDERUNG ist.
- In Fig. 1 wird eine bevorzugte Ausführung eines Datenverarbeitungssystems 10 mit mehrfachen bussteuernden Geräten erläutert, das ein zentralisiertes Entscheidungssystem verwendet, das in Übereinstimmung mit der vorliegenden Erfindung die Realisierung eines gerechten Protokolls vereinfacht darstellt. In der erläuterten Form sind ein Adressbus 20, ein Datenbus 22 und die Übertragungssteuersignalleitungen 24 an einen Datenprozessor (DP) 12 und andere, hier einmalig durch das stellvertretende bussteuernde Gerät (ABM) 16 repräsentierte bussteuernde Geräte geschaltet und werden von diesen gemeinsam genutzt, um auf ein externes Speichersystem 18 zuzugreifen. Die Übertragungssteuersignale gewährleisten den grundlegenden Quittungsaustausch zwischen den bussteuernden Geräten (Datenprozessor 12 und stellvertretendes bussteuerndes Gerät 16) und dem Speichersystem 18. Wie in Fig. 1 erläutert ist ein Entscheider 14 zwischen den Datenprozessor 12 und das stellvertretende bussteuernde Gerät 16 geschaltet, um die Zuweisung der Herrschaft über den gemeinsam genutzten Adressbus 20 zu steuern. Ein Bezugstaktgenerator 11 liefert ein Takt (CLK) Signal an die bussteuernden Geräte (den Datenprozessor 12 und das stellvertretende bussteuernde Gerät 16), den Entscheider 14 und das Speichersystem 18. Im System 10 verwendet der Datenprozessor 12 eine interne Harvard-Architektur, wobei eine Befehlsablaufsteuerung (nicht gezeigt) in einem CPU-Kern 30 Befehle von einer Verwaltungseinheit des Befehlscachespeichers (CODE CACHE) 32 abruft und eine Lade/Speichereinheit (nicht gezeigt) im CPU-Kern 30 Datenlesen/Schreiben zu einer Verwaltungseinheit des Datencachespeichers (DATA CACHE) 34 durchführt. Sowohl der CODE CACHE 32 als auch der DATA CACHE 34 erzeugen interne Busanforderungssignale, die oftmals benutzt werden, um eine Busschnittstelleneinheit (BIU) 36 zu informieren, wenn ein externer Speicherzugriff gefordert wird.
- Traditionell verwenden Datenverarbeitungssysteme eigene oder angeschaltete Busschnittstellen, wobei der Datenprozessor die Herrschaft sowohl über den Adress- als auch über den Datenbus behält, bis die Transaktion beendet ist. In Übereinstimmung mit der vorliegenden Erfindung verwendet das System 10 ein gerechtes Entscheidungsprotokoll, wobei der Entscheider 14 in der Lage ist, die Zuweisung des Adressbusses an die anfordernden Geräte zu steuern. In einer bevorzugten Ausführung der vorliegenden Erfindung verwendet das System 10 mehrere bussteuernde Geräte, unterstützt aber nicht aufgesplittete Bustransaktionen. Demzufolge kann der Datenbus 22 ununterbrochen den bussteuernden Geräten zugeordnet werden, und Entscheidung ist nur für die Herrschaft über den Adressbus 20 notwendig. Jedes potentielle bussteuernde Gerät (Datenprozessor 12 oder stellvertretendes bussteuerndes Gerät 16) hat ein unabhängiges Busanforderungsausgangssignal BR&sub1;* bzw. BR&sub2;* und ein unabhängiges Busgewährungseingangssignal BG&sub1;* bzw. BG&sub2;*, die benutzt werden, um die Adress-Busentscheidung durchzuführen. In einer bevorzugten Ausführung wird eine Adressbus- Belegt (ABB*) Signalleitung über einen Entscheidungsbus 28 durch die bussteuernden Geräte gemeinsam genutzt. Dementsprechend wird das zweiseitig gerichtete ABB*-Signal durch das gegenwärtig den Adressbus steuernde Gerät bereitgestellt, um anzuzeigen, daß potentielle bussteuernde Geräte warten müssen, um die Herrschaft über den Adressbus 20 zu übernehmen.
- In Übereinstimmung mit der vorliegenden Erfindung stellt ein potentielles bussteuerndes Gerät sein Busanforderungssignal bereit, um die Herrschaft über den Adressbus 20 zu fordern. Das Busgewährungssignal wird durch den externen Entscheider 14 verwendet, um die Herrschaft über den Adressbus 20 in Reaktion auf eine Busanforderung zu gewähren. Dementsprechend verfolgt der Entscheider 14 die BR*-Signale jedes der mehreren potentiellen bussteuernden Geräte (d. h. Datenprozessor 12, stellvertretendes bussteuerndes Gerät 16) und stellt einzig das BG*-Eingangssignal eines der Geräte bereit. Das Gerät, dessen BG*-Eingangssignal durch den Entscheider 14 bereitgestellt wird, wird als das "Auswahlgerät" bezeichnet. Das Auswahlgerät muß warten, bis jedes gegenwärtig bussteuernde Gerät die Herrschaft über den Adressbus 20 aufgibt, bevor es die Steuerung übernimmt. Wie vorher angezeigt zeigt ein gegenwärtig bussteuerndes Gerät die Herrschaft über den Adressbus 20 durch die Bereitstellung von ABB* an. Bei Beendigung der Bustransaktion negiert das gegenwärtig bussteuernde Gerät das ABB*-Signal während einer Eintakt-Busübergabe und gibt es frei. Das Auswahlgerät übernimmt die Herrschaft über den Adressbus 20 nur, wenn sein BG*-Signal bereitgestellt wird und das ABB*-Signal negiert wird, was anzeigt, daß der Adressbus 20 nicht belegt ist. Demzufolge verwenden potentielle bussteuernde Geräte das ABB*-Signal um das BG*- Eingangssignal zu "qualifizieren". Auf diese Weise ist ABB* ein Ausgangssignal vom gegenwärtig bussteuernden Gerät und ein Eingangssignal zu allen potentiellen bussteuernden Geräten.
- In Fig. 2 wird ein Zeitablaufdiagramm 40 dargestellt, das ein Beispiel der Funktion eines gerechten Busentscheidungsprotokolls in Übereinstimmung mit der vorliegenden Erfindung erläutert. In Fig. 2 zeigt der schattierte Teil des Signals einen bedeutungslosen Zustand an. Vor dem Beginn einer Bustransaktion (CLK0) muß ein potentielles bussteuerndes Gerät die Herrschaft über den Adressbus 20 vom Entscheider 14 fordern, die Busentscheidung kann beginnen, bevor das gegenwärtig bussteuernde Gerät seine Busherrschaft beendet. Dementsprechend bemerkt der Entscheider 14 bei der ansteigenden Flanke der ersten Taktperiode (CLK1) das BR&sub1;*-Signal, das vom Datenprozessor 12 bereitgestellt wird und reagiert durch die Bereitstellung des BG&sub1;*-Signals. Bei der ansteigenden Flanke der zweiten Taktperiode (CLK2) gibt ein gegenwärtig bussteuerndes Gerät den Adressbus 20 durch die Negierung des ABB*-Signals frei. Der Datenprozessor 12 erkennt die Bereitstellung des BG&sub1;*-Signals und die Negierung des ABB*-Signals und bestimmt dadurch, daß eine qualifizierte Busgewährung empfangen worden ist. Mit der Ausnahme einer nicht unterteilten Bustransaktion (d. h. Lesen-Verändern-Schreiben) wird ein bussteuerndes Gerät immer sein Busanforderungssignal während einer einzigen ("Auszeit-") Taktperiode nach dem Empfang der qualifizierten Busgewährung am Beginn der Bustransaktion negieren. Dementsprechend steuert, wie in Fig. 2 erläutert, der Datenprozessor 12 beim Empfang der qualifizierten Busgewährung über den Bus 21 die Adresse (zum Beispiel A31 : A0) für den geforderten Buszugriff auf dem Adressbus 20 an und negiert das BR&sub1;*-Signal. Die Eintaktnegierung des BR&sub1;*-Signals durch den Datenprozessor 12 gestattet dem Entscheider 14, "gerechterweise" das Busgewährungssignal (BG&sub1;*) für den Datenprozessor 12 zu negieren und ein neues Auswahlgerät auszuwählen. Der Datenprozessor 12 stellt ebenfalls für eine Takt periode das Übergabestart (TS*) Signal bereit um anzuzeigen, daß eine gültige Adresse und Attribute auf dem Adressbus 20 vorhanden sind.
- Bei der ansteigenden Flanke der dritten Taktperiode (CLK3) erkennt der Entscheider 14 die Negation des BR&sub1;*-Signals und die Bereitstellung des BR&sub2;*-Signals durch das stellvertretende bussteuernde Gerät 16, und der Entscheider 14 reagiert durch die Negation des BG&sub1;*-Signals und die Bereitstellung des BG&sub2;*-Signals. Durch die Bereitstellung des BG&sub2;*-Signals wählt der Entscheider 14 das stellvertretende bussteuernde Gerät 16 aus, das neue Auswahlgerät zu werden. Wie in Fig. 2 erläutert, beendet der Datenprozessor 12 bei der ansteigenden Flanke der vierten Taktperiode (CLK4) durch die Negierung und die Freigabe des ABB*-Signals während einer Eintakt-Busübergabe seine Busherrschaft. Bei der ansteigenden Flanke der fünften Taktperiode (CLK5) erkennt das stellvertretende bussteuernde Gerät 16 die Bereitstellung des BG&sub2;*-Signals und die Negierung des ABB*-Signals und bestimmt dadurch, daß eine qualifizierte Busgewährung empfangen worden ist. In Reaktion auf die Erkennung der qualifizierten Busgewährung stellt das stellvertretende bussteuernde Gerät 16 das ABB*-Signal bereit, beginnt die Busübertragung und negiert unter der Annahme, daß die geforderte Bustransaktion unterteilbar ist, das BR&sub2;*-Signal für eine einzelne "Auszeit"-Taktperiode,.
- Unter bestimmten Umständen kann das gegenwärtig bussteuernde Gerät mehrere funktionell verwandte Übertragungen anfordern. Im Fall eines Lese-Änderungs-Schreib-Zyklus zum Beispiel wird das gegenwärtige bussteuernde Gerät (Datenprozessor 12) während der gesamten ersten verriegelten Transaktion (des Lesens) fortgesetzt das BR&sub1;*-Signal bereitstellen. Weil der externe Entscheider 14 nicht wie in Fig. 2 erläutert den BR&sub1;*- Austakt bemerkt, entfernt der Entscheider 14 das BG&sub1;*-Signal nicht und deshalb wird während des Leseteils (der ersten Hälfte) der Operation kein Auswahlgerät ausgewählt. Während der zweiten Hälfte (Schreibteil) der Operation ist der BG&sub1;*- Negationstakt vorhanden und deshalb wird der Entscheider 14 das Busgewährungssignal (zum Beispiel BG&sub2;*) für das neue Auswahlgerät bereitstellen. Wenn der Datenprozessor 12 (das gegenwärtig bussteuernde Gerät) den Adressbus durch die Negierung des ABB*-Signals freigibt, wird folglich das stellvertretende bussteuernde Gerät 16 (das Auswahlgerät) die Herrschaft über den Adressbus 20 übernehmen. Dieser Vorgang garantiert die Nichtunterteilung der Lese-Änderungs-Schreib- Operation.
- In Datenverarbeitungssystemen, die einen gemeinsam genutzten Bus verwenden, ist die Busbandbreite ein Hauptmerkmal, deshalb verwenden diese Systeme oftmals einen Speicherbus für geteilte Transaktionen oder einen pipeline-verarbeitenden Speicherbus, um den Busdurchsatz zu maximieren. In einem geteilten System werden Adress- und Übertragungsattribute im geeigneten Speichermodul auf dem Bus lokal gespeichert. Das bussteuernde Gerät gibt dann den Adressbus frei, um einem weiteren Gerät zu gestatten, eine Transaktion einzuleiten. Im Fall von Leseoperationen leitet dann das Speichersystem die Daten zum richtigen Gerät zurück. Für Schreiboperationen indessen werden die Daten entweder gemeinsam mit der Adresse gespeichert oder die Datenübertragung wird verschoben, bis das Speichersystem bereit ist, beschrieben zu werden.
- In einer alternativen Ausführung der vorliegenden Erfindung hat das System 10 eine separate Entscheidung für die Adress- und Datenbusse, deren Zuweisung aufgeteilt sein kann, um eine pipeline-verarbeitende Bustransaktion oder einen Bus für geteilte Transaktionen zu ermöglichen. Das gerechte Entscheidungsprotokoll der vorliegenden Erfindung kann in Datenverarbeitungssystemen benutzt werden, die einen Bus für geteilte Transaktionen verwenden. Dementsprechend müssen in der alter nativen Ausführung der Datenprozessor 12 und das stellvertretende bussteuernde Gerät 16 über die Herrschaft sowohl über den Adressbus 20 als auch über den Datenbus 22 separat entscheiden. In der alternativen Ausführung erfordern geteilte Transaktionen die Verwendung eines separaten Datenbusgewährungs (DBG*) Eingangssignals, das ein Eingangssignal in jedes bussteuernde Gerät ist, und einer Datenbus-Belegt (DBB*) Signalleitung. Folglich wird das zweiseitig gerichtete DBB*- Signal durch die bussteuernden Geräte über den Entscheidungsbus 28 gemeinsam benutzt. Nochmals bezugnehmend auf Fig. 1, das Speichersystem 18 würde das DBG*-Signal bereitstellen, um die Datenbusübergabe zwischen dem gegenwärtig bussteuernden Gerät und dem Auswahlgerät in der oben beschriebenen Weise zu steuern. Das Auswahlgerät würde dann warten, bis es eine Nicht-Belegt-Datenbusanzeige (d. h. die Negation des Signals DBB*) gemeinsam mit einem bereitgestellten DBG*-Signal (hier als eine "qualifizierte Datenbusgewährung" bezeichnet) empfangen würde. Nach dem Empfang der qualifizierten Datenbusgewährung würde das Auswahlgerät das DBB*-Signal bereitstellen, wodurch es die Herrschaft über den Datenbus übernehmen würde, und würde beginnen, Daten zu übertragen.
- Dementsprechend steuert der Entscheider 14 in Übereinstimmung mit einer alternativen Ausführung der vorliegenden Erfindung implizit die Zuweisung des Datenbusses 22. Wie vorher beschrieben, immer wenn ein anforderndes bussteuerndes Gerät (d. h. der Datenprozessor 12) sein Busanforderungssignal (BR&sub1;*) bereitstellt, entscheidet das anfordernde bussteuernde Gerät über die Herrschaft über den Adressbus 20. Bei der Erlangung der Herrschaft über den Adressbus 20 stellt der Datenprozessor 12 das TS*-Signal bereit, wodurch angezeigt wird, daß auf dem Adressbus 20 eine gültige Adresse vorhanden ist. Das TS*-Signal wirkt im wesentlichen als ein implizites Eintakt-Datenbusanforderungssignal. Wenn die Daten zur Übertragung bereit sind, stellt das Speichersystem 18 das DBG*- Signal bereit. Auf diese Weise steuert das Speichersystem 18 unmittelbar die Datenbus 22 Herrschaft und der Entscheider 14 steuert unmittelbar die Adressbus 20 Herrschaft.
- So erfordert das Busschnittstellenprotokoll des Datenverarbeitungssystems 10 in Übereinstimmung mit der vorliegenden Erfindung bestimmte Entscheidungssteuersignale (d. h. ABB*, DBB*), die zwischen den bussteuernden Geräten (Datenprozessor 12 und stellvertretendes bussteuerndes Gerät 16) über gemeinsame Bussignalleitungen, die zusammen den Entscheidungsbus 28 (Fig. 1) ergeben, gemeinsam genutzt werden. Ein gemeinsam genutzter Ausgangsbuspuffer (nicht gezeigt) gestattet es jedem der bussteuernden Geräte, dem Datenprozessor 12 und dem stellvertretenden bussteuernden Gerät 16, die gemeinsame Bussignalleitung (zum Beispiel ABB*) ohne Busanforderung anzusteuern. In einer bevorzugten Ausführung enthält jedes bussteuernde Gerät, der Datenprozessor 12 und das stellvertretende bussteuernde Gerät 16, spezielle Ausgangspuffer, die aufgebaut sind, um das gemeinsam genutzte Signal aktiv zu negieren, bevor der Puffer in den hochimpedanten Zustand versetzt wird. Das aktive Tiefpegel-ABB*-Signal zum Beispiel kann durch das gegenwärtig bussteuernde Gerät (zum Beispiel den Datenprozessor 12) bereitgestellt werden, um die Adressbusherrschaft anzuzeigen. Wenn der Datenprozessor 12 die Busherrschaft aufgibt, versetzt er den ABB*-Ausgangstreiber in den hochimpedanten Zustand, was einem externen Endwiderstand gestattet, das ABB*-Signal zu negieren, so daß ein anderes Gerät die Herrschaft übernehmen kann. Im wesentlichen funktioniert der externe Endwiderstand als ein "Signalhalter", um das gemeinsam genutzte Signal während des Fehlens eines bussteuernden Geräts negiert aufrechtzuerhalten.
- So verwendet das Datenverarbeitungssystem 10 den Entscheider 14 in Übereinstimmung mit der vorliegenden Erfindung in einer Weise, die sichert, daß jedem der mehreren bussteuernden Ge räte (Datenprozessor 12 und stellvertretendes bussteuerndes Gerät 16) gerechterweise Zugriff auf die gemeinsam genutzten Adress- und Datenbusse 20 bzw. 22 gegeben wird. Die Negation durch das gegenwärtig bussteuernde Gerät (zum Beispiel den Datenprozessor 12) ihres unabhängigen Busanforderungssignals (BR&sub1;*) während einer Signal "Auszeit" Taktperiode ermöglicht es dem Entscheider 14, "gerechterweise" ein neues bussteuerndes Auswahlgerät (d. h. das stellvertretende bussteuernde Gerät 16) auszuwählen, um bei der Beendigung der gegenwärtigen Bustransaktion durch das gegenwärtig bussteuernde Gerät die Herrschaft über den gemeinsam genutzten Adressbus 20 zu übernehmen. Da das unabhängige Busanforderungssignal (d. h. BR&sub1;*) während der Eintakt "Auszeit" Taktperiode negiert wird, ist der Entscheider 14 in der Lage, ein neues unabhängiges Busgewährungssignal (d. h. BG&sub2;*) für das neue bussteuernde Auswahlgerät bereitzustellen. Das neue bussteuernde Auswahlgerät überwacht dann eine gemeinsam genutzte Signalleitung (ABB*) um zu bestimmen, wann das gegenwärtig bussteuernde Gerät die Herrschaft über den gemeinsam genutzten Bus aufgegeben hat. Gleichfalls übernimmt das neue bussteuernde Auswahlgerät (das stellvertretende bussteuernde Gerät 16) die Herrschaft über den gemeinsam genutzten Adressbus 20 und deaktiviert das unabhängige Busanforderungssignal (BR&sub2;*) nach dem Beginn der Bustransaktion für eine Taktperiode, was dem Entscheider 14 gestattet, noch ein weiteres bussteuerndes Auswahlgerät auszuwählen. Folglich verhindert die vorliegende Erfindung, daß ein bussteuerndes Gerät einen gemeinsam genutzten Bus monopolisiert.
- Während die vorliegende Erfindung in Übereinstimmung mit einer bevorzugten Ausführung beschrieben worden ist, sollte es für einen Fachmann erkennbar sein, daß die Erfindung auf vielfältige Weise realisiert werden kann. In der erläuterten Form zum Beispiel ist der Entscheider 14 eine synchronisierte Einrichtung, die auf die ansteigende Flanke der Übergänge der Busanforderungssignale reagiert. Es würde für einen Fachmann erkennbar sein, daß der Entscheider 14 asynchron realisiert sein könnte, unter der Annahme, daß die Entscheiderlogik schnell genug sein würde, um die zeitlichen Anforderungen (zum Beispiel Eintakt-Entscheidung) des Systems 10 zu erfüllen. Dementsprechend ist es durch die angefügten Ansprüche beabsichtigt, alle Modifikationen der Erfindung, die in den Bereich der Erfindung fallen, abzudecken.
Claims (6)
1. Verfahren zur Realisierung eines
Busentscheidungsprotokolls in einem Datenverarbeitungssystem (10), das eine
vorbestimmte Anzahl bussteuernder Geräte (12, 16, 17)
hat, von denen jedes an einen gemeinsam genutzten
Adressbus (20), Datenbus (22) und Entscheidungsbus (28)
geschaltet ist, unter Verwendung eines Entscheiders (14),
der an jedes von dieser vorbestimmten Anzahl
bussteuernder Geräte (12, 16, 17) geschaltet ist, um die Zuweisung
der Busherrschaft zu steuern, wobei dieses Verfahren die
folgenden Schritte umfaßt:
- Erkennung der Aktivierung eines Busanforderungssignals
durch ein erstes anforderndes bussteuerndes Gerät (16),
um die Herrschaft über einen ersten gemeinsam genutzten
Bus, der dieser Adressbus (20) oder dieser Datenbus
(22) sein kann, zu erlangen und in Reaktion darauf
Bereitstellung eines Busgewährungssignals über diesen
Entscheider (14), wobei dieses Busgewährungssignal
dieses erste anfordernde bussteuernde Gerät (16)
darüber informiert, daß dieser Entscheider (14) dieses
erste anfordernde bussteuernde Gerät (16) als ein
erstes bussteuerndes Auswahlgerät ausgewählt hat;
- Erkennung über dieses erste anfordernde bussteuernde
Gerät (16) der Deaktivierung eines Bus-Belegt-Signals
durch ein gegenwärtig bussteuerndes Gerät (12), wobei
dieses Bus-Belegt-Signal ein zweiseitig gerichtetes
Signal ist, das durch jedes von dieser vorbestimmten
Anzahl bussteuernder Geräte über diesen gemeinsam
genutzten Entscheidungsbus (28) gemeinsam benutzt wird,
und wobei diese Deaktivierung dieses Bus-Belegt-Signals
durch dieses gegenwärtig bussteuernde Gerät (12) dieses
erste anfordernde bussteuernde Gerät (16) darüber
informiert, daß dieses gegenwärtig bussteuernde Gerät
(12) die Herrschaft über diesen ersten gemeinsamen Bus
aufgegeben hat, und daß dieses erste anfordernde
bussteuernde Gerät (16) die Herrschaft über diesen
ersten gemeinsam genutzten Bus übernehmen kann; und
- Deaktivierung dieses Busanforderungssignals über
dieses erste anfordernde bussteuernde Gerät (16) für
eine vorbestimmte Taktperiode nach der Erkennung dieser
Deaktivierung dieses Bus-Belegt-Signals, um diesem
Entscheider (14) zu gestatten, ein neues bussteuerndes
Auswahlgerät durch die Deaktivierung dieses ersten
Busgewährungssignals und die Aktivierung eines zweiten
Busgewährungssignals während dieser vorbestimmten
Taktperiode auszuwählen, wenn dieses erste anfordernde
bussteuernde Gerät (16) nicht die Ausführung von
mehreren funktionell verwandten Busübertragungen fordert,
wobei dieses erste anfordernde bussteuernde Gerät (16)
danach die Herrschaft über diesen ersten gemeinsam
genutzten Bus übernimmt;
wenn dieses erste bussteuernde Gerät (16) die Ausführung von
mehreren funktionell verwandten Busübertragungen fordert,
deaktiviert dieses erste anfordernde bussteuernde Gerät
(16) dieses Busanforderungssignal nicht für diese
vorbestimmte Taktperiode nach der Übernahme der Herrschaft
über diesen ersten gemeinsam genutzten Bus.
2. Verfahren nach Anspruch 1, weiter die folgenden Schritte
umfassend:
- Übertragung der Adressinformationen von diesem
ersten anfordernden bussteuernden Gerät (16) auf
diesem ersten gemeinsam genutzten Bus, während dieses
erste anfordernde bussteuernde Gerät (16) dieses
Busanforderungssignal deaktiviert, wenn dieser erste
gemeinsam genutzte Bus ein Adressbus (20) ist;
- Übertragung der Dateninformationen von diesem ersten
anfordernden bussteuernden Gerät (16) auf diesem
ersten gemeinsam genutzten Bus, während dieses erste
anfordernde bussteuernde Gerät (16) dieses
Busanforderungssignal deaktiviert, wenn dieser erste
gemeinsam genutzte Bus ein Datenbus (22) ist; und
- Neuaktivierung dieses ersten Busanforderungssignals
und dieses Bus-Belegt-Signals über dieses erste
anfordernde bussteuernde Gerät (16), um dadurch
anzuzeigen, daß dieses erste anfordernde bussteuernde
Gerät (16) ein neues gegenwärtig bussteuerndes Gerät
dieses ersten gemeinsam genutzten Busses ist, wobei
dieses erste anfordernde bussteuernde Gerät (16) die
Aktivierung dieses Busanforderungssignals
aufrechterhält, bis diese Bustransaktion beendet ist.
3. Datenverarbeitungssystem (10), das eine vorbestimmte
Anzahl bussteuernder Geräte (12, 16, 17) hat, die an einen
gemeinsam genutzten Adressbus (20), Datenbus (22) und
Entscheidungsbus (28) geschaltet sind, zur
Busentscheidungsdurchführung, um die Zuweisung der Busherrschaft
über einen ersten gemeinsam genutzten Bus zu steuern, der
der Adressbus (20) oder der Datenbus (22) sein kann,
wobei dieses Datenverarbeitungssystem umfaßt:
- einen Entscheider (14), der eine Vielzahl von
Eingängen hat, die in der Lage sind, die Aktivierung von
unabhängigen Busanforderungssignalen von bussteuernden
Geräten zu erkennen, die eine Bustransaktion auf einem
ersten gemeinsam genutzten Bus fordern, und der eine
Vielzahl von Ausgängen zur selektiven Bereitstellung
eines Busgewährungssignals hat, um ein anforderndes
bussteuerndes Gerät zu informieren, daß dieser
Entscheider (14) dieses anfordernde bussteuernde Gerät
als ein erstes bussteuerndes Auswahlgerät ausgewählt
hat;
- ein erstes bussteuerndes Gerät (12), das an diesen
Entscheider (14) und jeden dieser gemeinsam genutzten
Busse (20, 22, 28) geschaltet ist, wobei dieses erste
bussteuernde Gerät (12) anfangs durch diesen
Entscheider (14) als ein gegenwärtig bussteuerndes Gerät dieses
ersten gemeinsam genutzten Busses ausgewählt ist, wobei
dieses erste bussteuernde Gerät (12) ein Bus-Belegt-
Signal deaktiviert, um dieses anfordernde bussteuernde
Gerät zu informieren, daß dieses erste bussteuernde
Gerät (12) die Herrschaft über diesen ersten gemeinsam
genutzten Bus aufgegeben hat, und daß dieses
anfordernde bussteuernde Gerät die Herrschaft über diesen
ersten gemeinsam genutzten Bus übernehmen kann, wobei
dieses Bus-Belegt-Signal ein zweiseitig gerichtetes
Signal ist, das von den anfordernden bussteuernden
Geräten über diesen Entscheidungsbus (28) gemeinsam
genutzt wird; und
- ein zweites bussteuerndes Gerät (16), das an diesen
Entscheider (14) und jeden dieser gemeinsam genutzten
Busse (20, 22, 28) geschaltet ist, wobei dieses zweite
bussteuernde Gerät (16) durch die Aktivierung eines
ersten unabhängigen Busanforderungssignals dieses
anfordernde bussteuernde Gerät wird, wobei dieses
zweite bussteuernde Gerät (16) von diesem Entscheider
(14) ein erstes Busgewährungssignal empfängt und für
eine vorbestimmte Taktperiode nach der Erkennung der
Deaktivierung dieses Bus-Belegt-Signals durch dieses
erste bussteuernde Gerät (12) dieses erste unabhängige
Busanforderungssignal deaktiviert, wenn dieses zweite
bussteuernde Gerät (16) nicht die Ausführung von
mehreren funktionell verwandten Busübertragungen fordert, um
diesem Entscheider (14) zu gestatten, ein neues
bussteuerndes Auswahlgerät durch die Deaktivierung
dieses ersten Busgewährungssignals und die Aktivierung
eines zweiten Busgewährungssignals während dieser
vorbestimmten Taktperiode auszuwählen, wenn dieses
zweite bussteuernde Gerät (16) die Ausführung von
mehreren funktionell verwandten Busübertragungen
fordert, wobei dieses zweite bussteuernde Gerät (16)
nicht dieses erste unabhängige Busanforderungssignal
deaktiviert für diese vorbestimmte Taktperiode nach
dieser Übernahme der Herrschaft über diesen ersten
gemeinsam genutzten Bus.
4. Datenverarbeitungssystem (10) nach Anspruch 3, weiter ein
gemeinsam genutztes Speichersystem (18) umfassend, das
über diese gemeinsam genutzten Busse (20, 22, 28) an
diese ersten (12) und zweiten bussteuernden Geräte (16)
geschaltet ist.
5. Datenverarbeitungssystem (10) nach Anspruch 3, wobei
dieser Entscheider (14) Mittel zur Erkennung der Aktivierung
dieses ersten unabhängigen Busanforderungssignals durch
dieses zweite bussteuernde Gerät (16) umfaßt und zur
Aktivierung dieses ersten Busgewährungssignals in Reaktion
darauf, wobei dieser Entscheider die Aktivierung dieses
ersten Busgewährungssignals aufrechterhält, bis dieses
erste unabhängige Busanforderungssignal durch dieses
zweite bussteuernde Gerät (16) während dieser
vorbestimmten Taktperiode deaktiviert wird, wobei während dieser
Zeit dieser Entscheider dieses neue bussteuernde
Auswahlgerät durch die Deaktivierung dieses ersten
Busgewährungssignals und die Aktivierung eines zweiten
Busgewährungssignals in Reaktion auf die Erkennung der
Aktivierung eines zweiten unabhängigen
Busanforderungssignals durch dieses nächste bussteuernde Gerät auswählt.
6. Datenverarbeitungssystem (10) nach Anspruch 3, wobei
dieses erste bussteuernde Gerät (12) Verarbeitungsmittel
umfaßt, die dieses Bus-Belegt-Signal aktivieren, um dadurch
die Herrschaft über diesen ersten gemeinsam genutzten Bus
anzuzeigen, und die dieses Bus-Belegt-Signal
deaktivieren, um dadurch anzuzeigen, daß dieser erste gemeinsam
genutzte Bus für die Benutzung durch dieses nächste
bussteuernde Gerät verfügbar ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US84590292A | 1992-03-04 | 1992-03-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69320508D1 DE69320508D1 (de) | 1998-10-01 |
DE69320508T2 true DE69320508T2 (de) | 1999-03-04 |
Family
ID=25296376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69320508T Expired - Fee Related DE69320508T2 (de) | 1992-03-04 | 1993-03-01 | Verfahren und Gerät zur Busarbitrierungsdurchführung mit einem Arbiter in einem Datenverarbeitungssystem |
Country Status (4)
Country | Link |
---|---|
US (1) | US5416910A (de) |
EP (1) | EP0559408B1 (de) |
JP (1) | JPH0652096A (de) |
DE (1) | DE69320508T2 (de) |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5513372A (en) * | 1993-08-23 | 1996-04-30 | Intel Corporation | Peripheral interface having hold control logic for generating stall signals to arbitrate two read and one write operations between processor and peripheral |
US5524215A (en) * | 1993-10-05 | 1996-06-04 | Motorola, Inc. | Bus protocol and method for controlling a data processor |
US5533204A (en) * | 1994-04-18 | 1996-07-02 | Compaq Computer Corporation | Split transaction protocol for the peripheral component interconnect bus |
US6256694B1 (en) * | 1994-06-30 | 2001-07-03 | Compaq Computer Corporation | Distributed early arbitration |
US5751974A (en) * | 1994-07-21 | 1998-05-12 | Motorola, Inc. | Contention resolution for a shared access bus |
US5598542A (en) * | 1994-08-08 | 1997-01-28 | International Business Machines Corporation | Method and apparatus for bus arbitration in a multiple bus information handling system using time slot assignment values |
US5577230A (en) * | 1994-08-10 | 1996-11-19 | At&T Corp. | Apparatus and method for computer processing using an enhanced Harvard architecture utilizing dual memory buses and the arbitration for data/instruction fetch |
US5809258A (en) * | 1994-08-23 | 1998-09-15 | Ascom Timeplex Trading Ag | Bus with high gross data transfer rate |
US5687327A (en) * | 1994-10-03 | 1997-11-11 | International Business Machines Corporation | System and method for allocating bus resources in a data processing system |
US6029217A (en) * | 1994-10-03 | 2000-02-22 | International Business Machines Corporation | Queued arbitration mechanism for data processing system |
US5625779A (en) * | 1994-12-30 | 1997-04-29 | Intel Corporation | Arbitration signaling mechanism to prevent deadlock guarantee access latency, and guarantee acquisition latency for an expansion bridge |
US5528767A (en) * | 1995-03-21 | 1996-06-18 | United Microelectronics Corp. | Programmable multi-level bus arbitration apparatus in a data processing system |
US5815676A (en) * | 1995-04-28 | 1998-09-29 | Apple Computer, Inc. | Address bus arbiter for pipelined transactions on a split bus |
US5901295A (en) * | 1995-04-28 | 1999-05-04 | Apple Computer, Inc. | Address and data bus arbiter for pipelined transactions on a split bus |
US5708783A (en) * | 1995-04-28 | 1998-01-13 | Apple Computer, Inc. | Data bus arbiter for pipelined transactions on a split bus |
US5572686A (en) * | 1995-06-05 | 1996-11-05 | Apple Computer, Inc. | Bus arbitration scheme with priority switching and timer |
US6104876A (en) * | 1995-06-07 | 2000-08-15 | Cirrus Logic, Inc. | PCI bus master retry fixup |
US5713029A (en) * | 1995-09-29 | 1998-01-27 | International Business Machines Corporation | Information handling system including doze mode control |
US5727171A (en) * | 1995-11-16 | 1998-03-10 | International Business Machines Corporation | Method and apparatus for allowing multi-speed synchronous communications between a processor and both slow and fast computing devices |
US5692135A (en) * | 1995-12-14 | 1997-11-25 | International Business Machines Corporation | Method and system for performing an asymmetric bus arbitration protocol within a data processing system |
US5671369A (en) * | 1995-12-22 | 1997-09-23 | Unisys Corporation | Bus grant overlap circuit |
US5732079A (en) * | 1995-12-22 | 1998-03-24 | Cisco Technology, Inc. | Method and apparatus for skewing the start of transmission on multiple data highways |
US6061348A (en) * | 1995-12-22 | 2000-05-09 | Cisco Technology, Inc. | Method and apparatus for dynamically allocating bandwidth for a time division multiplexed data bus |
US6115374A (en) * | 1995-12-22 | 2000-09-05 | Cisco Technology, Inc. | Method and apparatus for dynamically assigning bandwidth for a time division multiplexing data bus |
AT410875B (de) * | 1996-01-10 | 2003-08-25 | Frequentis Nachrichtentechnik Gmbh | Verfahren und anlage zur übertragung von daten |
US5842025A (en) * | 1996-08-27 | 1998-11-24 | Mmc Networks, Inc. | Arbitration methods and apparatus |
US5982672A (en) * | 1996-10-18 | 1999-11-09 | Samsung Electronics Co., Ltd. | Simultaneous data transfer through read and write buffers of a DMA controller |
US5805836A (en) * | 1996-12-10 | 1998-09-08 | International Business Machines Corporation | Method and apparatus for equalizing grants of a data bus to primary and secondary devices |
US6662216B1 (en) * | 1997-04-14 | 2003-12-09 | International Business Machines Corporation | Fixed bus tags for SMP buses |
US6122284A (en) * | 1997-07-07 | 2000-09-19 | Telcom Semiconductor, Inc. | Multidrop analog signal bus |
US5926628A (en) * | 1997-07-15 | 1999-07-20 | International Business Machines Corporation | Selectable priority bus arbitration scheme |
FR2767620B1 (fr) * | 1997-08-25 | 1999-09-24 | Alsthom Cge Alcatel | Procede d'exploitation d'un lien de transmission numerique partage temporellement par plusieurs unites et unite pour la mise en oeuvre d'un tel procede |
US6266731B1 (en) | 1998-09-03 | 2001-07-24 | Compaq Computer Corporation | High speed peripheral interconnect apparatus, method and system |
US6816934B2 (en) * | 2000-12-22 | 2004-11-09 | Hewlett-Packard Development Company, L.P. | Computer system with registered peripheral component interconnect device for processing extended commands and attributes according to a registered peripheral component interconnect protocol |
US6374319B1 (en) * | 1999-06-22 | 2002-04-16 | Philips Electronics North America Corporation | Flag-controlled arbitration of requesting agents |
US6349371B1 (en) * | 1999-10-01 | 2002-02-19 | Stmicroelectronics Ltd. | Circuit for storing information |
US6519666B1 (en) | 1999-10-05 | 2003-02-11 | International Business Machines Corporation | Arbitration scheme for optimal performance |
US6535941B1 (en) * | 1999-11-08 | 2003-03-18 | International Business Machines Corporation | Method and apparatus for avoiding data bus grant starvation in a non-fair, prioritized arbiter for a split bus system with independent address and data bus grants |
US6684279B1 (en) * | 1999-11-08 | 2004-01-27 | International Business Machines Corporation | Method, apparatus, and computer program product for controlling data transfer |
US7529799B2 (en) * | 1999-11-08 | 2009-05-05 | International Business Machines Corporation | Method and apparatus for transaction tag assignment and maintenance in a distributed symmetric multiprocessor system |
US6775727B2 (en) | 2001-06-23 | 2004-08-10 | Freescale Semiconductor, Inc. | System and method for controlling bus arbitration during cache memory burst cycles |
US7072292B2 (en) * | 2001-11-13 | 2006-07-04 | Transwitch Corporation | Methods and apparatus for supporting multiple Utopia masters on the same Utopia bus |
US6944698B2 (en) * | 2002-07-08 | 2005-09-13 | International Business Machines Corporation | Method and apparatus for providing bus arbitrations in a data processing system |
US7065595B2 (en) * | 2003-03-27 | 2006-06-20 | International Business Machines Corporation | Method and apparatus for bus access allocation |
US7013357B2 (en) * | 2003-09-12 | 2006-03-14 | Freescale Semiconductor, Inc. | Arbiter having programmable arbitration points for undefined length burst accesses and method |
US7644211B2 (en) * | 2004-12-07 | 2010-01-05 | Cisco Technology, Inc. | Method and system for controlling transmission of USB messages over a data network between a USB device and a plurality of host computers |
US8504707B2 (en) * | 2004-12-07 | 2013-08-06 | Cisco Technology, Inc. | Method and system for sending and receiving USB messages over a data network |
FR2884629B1 (fr) * | 2005-04-15 | 2007-06-22 | Atmel Corp | Dispositif d'amelioration de la bande passante pour des circuits munis de controleurs memoires multiples |
US11144358B1 (en) | 2018-12-06 | 2021-10-12 | Pure Storage, Inc. | Asynchronous arbitration of shared resources |
US11221795B2 (en) | 2019-02-25 | 2022-01-11 | International Business Machines Corporation | Queue management for multiway queues |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4281381A (en) * | 1979-05-14 | 1981-07-28 | Bell Telephone Laboratories, Incorporated | Distributed first-come first-served bus allocation apparatus |
US4384323A (en) * | 1980-02-25 | 1983-05-17 | Bell Telephone Laboratories, Incorporated | Store group bus allocation system |
US4586128A (en) * | 1983-04-14 | 1986-04-29 | Burroughs Corporation | Arbitrator circuit and technique for use in a digital computing system having multiple bus controllers |
US4661905A (en) * | 1983-09-22 | 1987-04-28 | Digital Equipment Corporation | Bus-control mechanism |
US4763249A (en) * | 1983-09-22 | 1988-08-09 | Digital Equipment Corporation | Bus device for use in a computer system having a synchronous bus |
JPS60258671A (ja) * | 1984-06-05 | 1985-12-20 | Nec Corp | プロセツサ |
US4789926A (en) * | 1985-08-06 | 1988-12-06 | International Business Machines Corporation | Digital data processing arbitration system |
US4785394A (en) * | 1986-09-19 | 1988-11-15 | Datapoint Corporation | Fair arbitration technique for a split transaction bus in a multiprocessor computer system |
JPS63132365A (ja) * | 1986-11-22 | 1988-06-04 | Nec Corp | バス調停制御方式 |
US4817037A (en) * | 1987-02-13 | 1989-03-28 | International Business Machines Corporation | Data processing system with overlap bus cycle operations |
US4987529A (en) * | 1988-08-11 | 1991-01-22 | Ast Research, Inc. | Shared memory bus system for arbitrating access control among contending memory refresh circuits, peripheral controllers, and bus masters |
US4991172A (en) * | 1988-10-28 | 1991-02-05 | International Business Machines Corporation | Design of a high speed packet switching node |
US5127089A (en) * | 1989-07-03 | 1992-06-30 | Motorola, Inc. | Synchronous bus lock mechanism permitting bus arbiter to change bus master during a plurality of successive locked operand transfer sequences after completion of current sequence |
US5119292A (en) * | 1989-07-21 | 1992-06-02 | Clearpoint Research Corporation | Bus device which abstains from round robin arbitration |
JPH0810445B2 (ja) * | 1990-09-21 | 1996-01-31 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 動的バス調停方法及び装置 |
US5191656A (en) * | 1991-08-29 | 1993-03-02 | Digital Equipment Corporation | Method and apparatus for shared use of a multiplexed address/data signal bus by multiple bus masters |
US5301282A (en) * | 1991-10-15 | 1994-04-05 | International Business Machines Corp. | Controlling bus allocation using arbitration hold |
-
1993
- 1993-03-01 DE DE69320508T patent/DE69320508T2/de not_active Expired - Fee Related
- 1993-03-01 EP EP93301521A patent/EP0559408B1/de not_active Expired - Lifetime
- 1993-03-03 JP JP5065996A patent/JPH0652096A/ja active Pending
-
1994
- 1994-03-25 US US08/218,146 patent/US5416910A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0559408B1 (de) | 1998-08-26 |
EP0559408A1 (de) | 1993-09-08 |
US5416910A (en) | 1995-05-16 |
DE69320508D1 (de) | 1998-10-01 |
JPH0652096A (ja) | 1994-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69320508T2 (de) | Verfahren und Gerät zur Busarbitrierungsdurchführung mit einem Arbiter in einem Datenverarbeitungssystem | |
DE69319763T2 (de) | Verfahren und Gerät zur Durchführung eines Busarbitrierungsprotokolls in einem Datenverarbeitungssystem | |
DE68922784T2 (de) | Mehrfachbus-Mikrorechnersystem mit Busarbitrierung. | |
DE3788805T2 (de) | Prioritaetstechnik für einen zerteilten transaktionsbus in einem multiprozessorrechnersystem. | |
DE69307717T2 (de) | Priorisierung von mikroprozessoren in multiprozessorrechnersystemen | |
CA2050129C (en) | Dynamic bus arbitration with grant sharing each cycle | |
DE69628609T2 (de) | Distribuiertes Pipeline-Busarbitrierungssystem | |
DE3689198T2 (de) | Systembus für Kommunikation zwischen Prozessoren. | |
DE69323861T2 (de) | Multiprozessorsystem mit gemeinsamem Speicher | |
US5611058A (en) | System and method for transferring information between multiple buses | |
DE68915701T2 (de) | Multiprozessorsystem mit verteilten gemeinsamen Betriebsmitteln und mit Verklemmungsverhinderung. | |
DE69825915T2 (de) | Verfahren und vorrichtung zur umschaltung zwischen quellen-synchron-takt/- und gemeinsam-takt-datenübertragungs-modi in einem mehragent-übertragungs-system | |
DE112011103916T5 (de) | Speicherzugriffseinheit für gemeinsame Speichernutzung zwischen mehreren Prozessoren sowie Zugriffsverfahren dafür | |
US5590299A (en) | Multiprocessor system bus protocol for optimized accessing of interleaved storage modules | |
DE3782500T2 (de) | Gemeinsam genutzte speicherschnittstelle fuer datenverarbeitungsanlage. | |
US5345562A (en) | Data bus arbitration for split transaction computer bus | |
GB2263378A (en) | Computer bus system with virtual memory data transfer capability | |
DE69318348T2 (de) | Schnittstelle für asynchronen Bus zur Minimisierung von Übertragungszeiten | |
US5818464A (en) | Method and apparatus for arbitrating access requests to a shared computer system memory by a graphics controller and memory controller | |
KR930001584B1 (ko) | 마이크로 컴퓨터 시스템 | |
DE3854770T2 (de) | Busadapter für digitales Rechensystem | |
US5097483A (en) | Tri-statable bus with apparatus to drive bus line to first level and then second level for predetermined time before turning off | |
DE10056152B4 (de) | Verfahren zur Durchführung von Busarbitration zwischen Steuerchips eines Chipsatzes mit preemptiver Fähigkeit | |
DE69125676T2 (de) | Arbeitsplatzrechner mit Direktspeicherzugriffssteuerung | |
DE69827879T2 (de) | Zeitmultiplexschema zur Verklemmungsauflösung in distribuierter Arbitrierung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |