DE69026336T2 - Bevorrechtigungsschaltung für ein Rechnersystem - Google Patents
Bevorrechtigungsschaltung für ein RechnersystemInfo
- Publication number
- DE69026336T2 DE69026336T2 DE69026336T DE69026336T DE69026336T2 DE 69026336 T2 DE69026336 T2 DE 69026336T2 DE 69026336 T DE69026336 T DE 69026336T DE 69026336 T DE69026336 T DE 69026336T DE 69026336 T2 DE69026336 T2 DE 69026336T2
- Authority
- DE
- Germany
- Prior art keywords
- bus
- signal
- logic
- data
- main processor
- 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 claims description 11
- 239000000872 buffer Substances 0.000 claims description 8
- 230000000903 blocking effect Effects 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 4
- 230000000737 periodic effect Effects 0.000 claims description 3
- 238000012546 transfer Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- 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/366—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a centralised polling arbiter
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Bus Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Multi Processors (AREA)
Description
- Die vorliegende Erfindung betrifft eine Bevorrechtigungsschaltung für Rechnersysteme, die einen Datenbus umfassen, der durch mehrere Masters gesteuert werden kann, von denen einer ein Hauptprozessor ist, und die nach einem vorbestimmten Schiedsschema Buszeit zuweisen.
- Rechnersysteme wie z.B. solche, die der Micro-Channel- Architektur der IBM Corporation entsprechen, haben bekanntlich mehrere Masters, die Datenübertragungen über den Hauptdatenbus des Systems verwalten können. Die Verwendung solcher Masters dient der Entlastung der Zentraleinheit (CPU) von der intensiven Beteiligung an Datenübertragungen zwischen I/O-Geräten (Eingabe/Ausgabe-Geräten) und dem Hauptspeicher sowie auch von I/O-Gerät zu I/O-Gerät. Durch diese Entlastung kann sich die CPU umfassender auf die Verarbeitung von Daten und auf die Einrichtung von Ubertragungen, die andere Geräte dann ausführen, konzentrieren.
- In solchen Systemen werden für die Zuweisung von Buszeit auf dem Datenbus für bestimmte Geräte Prioritäten festgelegt. Der CPU wird die Standard- oder Restpriorität zugewiesen, weil die Hauptarbeit auf dem Bus möglichst anderen Geräten zugewiesen wird. Wenn sich eine Warteschlange bildet, konkurrieren die Geräte einschließlich der CPU in jedem Schiedszyklus um den Bus, und das Gerät mit der höchsten Priorität gewinnt. Da Geräte mit Stoßbetrieb ihre hohe Priorität ständig durchsetzen können, wird oft eine "Fairneß- Beschränkung" verwendet, die solche Geräte zwingt zu warten, bis die vorhandene Warteschlange verschwunden ist, bevor sie sich wieder in die Schlange einreihen können.
- Dieser Prozeß funktioniert gut, um Buszeit effizient zuzuweisen, solange die Auslastung des Datenbusses nicht besonders hoch ist. Dann hat die CPU aufgrund des Prioritätsschemas nämlich nur selten Zugriff auf den Bus und wird nach einem Zyklus wieder herausgedrängt, wenn ein anderes Gerät ihr den Bus entzieht. Dadurch kann die CPU so sehr ausgesperrt werden, daß sie nicht mehr die für Datenübertragungen erforderliche vorbereitende Einrichtung oder sonstige Aktivitäten wie die zur Erfüllung ihrer Aufgaben nötigen Speicherzugriffe durchführen kann. Wenn dieser Zustand erreicht ist, sinkt die Geschwindigkeit des Gesamtsystems, und in Extremfällen stürzt das System ab. Besonders kompliziert ist die Lösung des Problems des Aussperrens bei Systemen mit Speicher-Cache, da der Hauptprozessor eine Folge von Cache-Hits eingeben kann, die den Zugriff auf den Datenbus für die notwendige Informationsübertragung erübrigen.
- In Patent Abstracts of Japan, Bd. 7, Nr. 48 (p-178) [1193] vom 24.02.83, ist ein gemeinsam genutztes Speichergerät mit einer Prioritätsentscheidungsschaltung beschrieben. Mit Hilfe eines Zählers wird der Zeitraum bestimmt, während dessen der Zugriff auf das Gerät unterbunden ist, um die länger andauernde Unterbindung des Zugriffs anderer CPUS zu vermeiden, wenn eine CPU ausfällt, die für die Unterbindung des Zugriffs auf das Gerät zuständig ist.
- Gemäß einem ersten Aspekt der Erfindung wird eine Bevorrechtigungsschaltung für ein Rechnersystem mit einem Datenbus und mehreren Masters bereitgestellt, von denen einer ein Hauptprozessor ist, wobei die Masters um den Datenbus mit Busanforderungssignalen konkurrieren, die über eine Signalbahn zu einer Schiedssteuerlogik übertragen werden, die anhand eines Bussignals den derzeitigen Businhaber identifiziert, wobei das Rechnersystem ferner ein Speichercachesystem umfaßt, das zur Zusammenarbeit mit dem Hauptprozessor mit diesem verbunden ist, um Daten aus einem Cachepuffer zu liefern, und das ein Mittel umfaßt, das für jeden Fall, in dem diese Daten geliefert werden, ein erstes Logiksignal liefert, wobei die Bevorrechtigungsschaltung folgende Elemente umfaßt:
- ein Mittel zum Empfangen der Bussignale zur Erkennung von Intervallen, in denen der Hauptprozessor als Inhaber des Datenbusses identifiziert wird, und zur Erzeugung eines zweiten Logiksignals während eines jeden solchen Intervalls;
- ein Mittel zum Empfangen und Zählen der ersten Logiksignale und zum Erzeugen eines dritten Logiksignals, wenn eine vorbestimmte Zahl erreicht ist;
- eine Logik, die verbunden ist, um das zweite und dritte Logiksignal und die Busanforderungssignale zu empfangen, wobei die Logik die Busanforderungssignale blockiert, wenn das zweite Logiksignal aktiv ist und das dritte Logiksignal nicht aktiv ist.
- Aufgrund der Erfindung kann der CPU eines solchen Rechnersystems selbst zu Zeiten mit hoher Auslastung des Hauptdatenbusses eine vorbestimmte Zeit für Datenübertragungen auf dem Bus zugesichert werden.
- Diese Zeit wird ohne Umstrukturierung des Schiedsprozesses des Systems bereitgestellt. Cache-Übertragungen des Hauptprozessors werden daher bei der Zuweisung von Buszeit zum Hauptprozessor berücksichtigt.
- Die vorliegende Erfindung verhindert, daß die CPU aus dem Datenbus gedrängt wird, indem sie eine gesteuerte Bevorrechtigung schafft, wenn die CPU den Datenbus innehat. Eine solche Bevorrechtigung wird vorzugsweise durch eine Logik erreicht, die die bei der zentralen Schiedssteuereinheit eingehenden Busanforderungssignale modifiziert. Indem die Busanforderungsleitung so gesteuert wird, wenn die CPU den Datenbus innehat, daß Anforderungssignale erst nach einem Muster erfolgreicher Zugriffe auf den Speicher-Cache zu der zentralen Schiedssteuerung durchkommen, hat die CPU die Gelegenheit, notwendige Datenbusübertragungen durchzuführen, während sie zugleich die Aktion des Speicher-Caches als Alternative zum Zugriff auf den Hauptspeicher über den Datenbus erkennt.
- In einer bevorzugten Form der Erfindung erkennt die Logik, wenn ein Busanforderungssignal auftritt, während das zweite Logiksignal aktiv ist, und hebt die Blockierung des Busanforderungssignals auf, sobald seit der Erkennung eine vorbestimmte Zeitspanne verstrichen ist.
- Indem für diese Aufhebung von Busanforderungen innerhalb eines vorbestimmten Zeitraums nach dem Eintreffen der ersten solchen Anforderung eine Wartezeit gesetzt wird, kann das bevorzugte Ausführungsbeispiel der Erfindung sicherstellen, daß die Auffrischungsanforderungen eines dynamischen Hauptspeichers erfüllt werden.
- Vorzugsweise beträgt der vorbestimmte Zählerstand 2, und wenn das Rechnersystem einen Hauptspeicher hat, der eine periodische Auffrischung benötigt, wird der vorbestimmte Zeitraum kürzer gewählt als die Auffrischungsperiode des Hauptspeichers.
- Die Erfindung stellt darüber hinaus ein Rechnersystem bereit, das eine solche Bevorrechtigungsschaltung umfaßt. Das Rechnersystem kann in Form eines Personal Computers ausgeführt sein, der auch andere Komponenten wie z.B. Bildschirm, Tastatur, Kommunikationsverbindungen usw. umfaßt.
- Gemäß einem anderen Aspekt der Erfindung wird bereitgestellt ein Verfahren zur Steuerung von Busanforderungssignalen in einem Rechnersystem mit einem Datenbus, mehreren Masters, von denen einer ein Hauptprozessor ist, einer Schiedssteuerlogik zum Empfangen der Busanforderungssignale und zum Identifizieren des derzeitigen Businhabers anhand eines Bussignals, einem Speichercache, der zur Zusammenarbeit mit dem Hauptprozessor mit diesem verbunden ist, um Daten aus einem Cachepuffer zu liefern und für jeden Fall, in dem diese Daten geliefert werden, ein erstes Logiksignal zu liefern, wobei die Masters mit Hilfe der Busanforderungssignale um den Datenbus konkurrieren, wobei das Verfahren folgende Schritte umfaßt:
- Erkennung von Intervallen, in denen der Hauptprozessor als Inhaber des Datenbusses identifiziert wird, und Erzeugung eines zweiten Logiksignals während eines jeden solchen Intervalls;
- Empfangen und Zählen der ersten Logiksignale und Erzeugen eines dritten Logiksignals, wenn eine vorbestimmte Zahl erreicht ist;
- Blockieren der zwei Anforderungssignale, wenn das zweite Logiksignal aktiv ist und das dritte Logiksignal nicht aktiv ist.
- Vorzugsweise umfaßt das Verfahren das Erkennen eines Busanforderungssignals, wenn ein zweites Logkiksignal aktiv ist, und das Aufheben der Blockierung des Busanforderungssignals, wenn ein vorbestimmter Zeitraum seit der Erkennung des Busanforderungssignals verstrichen ist.
- Ein umfassendes Verständnis der vorliegenden Erfindung ergibt sich aus der ausführlichen Beschreibung des unten vorgestellten Ausführungsbeispiels und den beiliegenden Zeichnungen, wobei gilt:
- Fig. 1 ist ein Blockdiagramm eines Systems zur Implementierung der Erfindung.
- Fig. 2 ist ein Blockdiagramm, das die Steuersignale, die an die zentrale Schiedssteuerung angelegt werden, und die DMA- Steuerung nach dem Stand der Technik darstellt.
- Fig. 3 ist ein Blockdiagramm der Logik zur Erzeugung eines modifizierten Busanforderungssignals gemäß der Erfindung.
- Fig. 4 ist ein Blockdiagramm, das das Anlegen des modifizierten Busanforderungssignals an die zentrale Schiedssteuerung und die DMA-steuerung gemäß dem Ausführungsbeispiel der Erfindung darstellt.
- Fig. 5 ist ein Zeitablaufsdiagramm, das eine Schiedssequenz gemäß dem Ausführungsbeispiel der Erfindung darstellt.
- In Fig. 1 umfaßt ein bevorzugtes System zur Implementierung der Erfindung eine CPU 100, wie z.B. einen Mikroprozessor 80386 der Intel Corporation, einen Cache 105 und eine Cache- Steuerung 110, die mit den anderen Systemelementen über eine Gruppe 140 von CPU-Signalbussen verbunden sind, darunter ein Steuerungsbus 125, ein Datenbus 130 und ein Adreßbus 135. Die CPU-Signalbusse 140 sind von einer entsprechenden Gruppe von CPU-Signalbussen 140' durch eine Gruppe von Puffern 170 isoliert. Durch die Puffer 170 kann die CPU Befehle und Daten über die Busse 140 unabhängig von der Systembusgruppe 140' verarbeiten, wenn die Befehle und Daten sich im Cache 105 befinden. Mit der Busgruppe 140' sind ein Hauptspeicher 145, bei dem es sich um einen direkt adressierbaren dynamischen Lese/Schreib-Speicher handelt, und eine Speichersteuerung 150 sowie eine Schiedssteuerung und eine DMA-Steuerung, mit deren Hilfe direkte Speicherübertragungen über die Busgruppe 140' gesteuert werden, verbunden.
- Für Systeme gemäß der Erfindung wird vorzugsweise ein Verbindungspunkt 165 bereitgestellt, mit dessen Hilfe Busschnittstellengeräte 170 wie z.B. Bus-Master-Geräte, die einen Datenbus steuern können, mit der Systembusgruppe 140' verbunden werden können. Diese Verbindungen erfolgen in der Regel durch das Einstecken von Karten in Steckplätze, die - wie im Fach bekannt - mit Randkontakten versehen sind (nur in Fig. 1 vom Rand her gesehen dargestellt). Die Schnittstellengeräte 170 können mit den verschiedensten Geräten verbunden werden, wie z.B. mit I/O-Geräten (Eingabe/Ausgab-Geräten) 180. Solche Geräte 180 können z.B. Festplatten- oder Bandlaufwerke (nicht dargestellt) umfassen.
- Eine solche Systemanordnung mit Schnittstellengeräten 170, die Bus-Master sein können und den Datenbus 115 steuern, ist für die Micro-Channel-Architektur der IBM Corporation ausführlich im "IBM Personal System/2 Hardware Interface Technical Manual" beschrieben. Bei einem solchen System legt eine Schiedssteuerung 155 die Priorität der Geräte fest, die die Kontrolle über den Datenbus 130' übernehmen, und eine DMA-Steuerung 160 koordiniert auf bekannte Weise die tatsächlichen Übertragungen über den Bus. Eine typische Zuweisung von Schiedsprioritätsebenen ist in der Tabelle 1 dargestellt. TABELLE 1 SCHIEDSEBENE PRIMÄRZUWEISUNG SPEICHERAUFFRISCHUNG FEHLERBEHEBUNG DMA-Anschluß RESERVE SYSTEMPLATINEN-PROZESSOR (CPU)
- In Figur 2 umfaßt der Stand der Technik eine Gruppe von Leitungen 210, die einen Teil des Steuerbusses 125' bilden (siehe Fig. 1) und Signale übertragen, die bestimmen, wer den Datenbus 130' innehat.
- Ein Kanal 220 führt ein Signal +ARB/-GRANT, das dazu dient, Zeiträume, in denen die Schiedsfunktion zur Festlegung der Businhaberschaft stattfindet (ARB), von denjenigen Zeiträumen zu trennen, in denen die Inhaberschaft feststeht (GRANT) und die verschiedenen Masters 170 im Hinblick auf diese Inhaberschaftszuweisung funktionieren können. Ein Kanal 240 dient zur Übertragung eines Signals -PREEMPT, das anzeigt, wenn eines oder mehrere Master-Geräte wie z.B. das Gerät 170 und einschließlich der CPU 100 darauf warten, auf den Datenbus 130' zuzugreifen. Ein Kanal 250 überträgt das Signal -BURST, das von einem Gerät 170 ausgegeben wird, wenn es den Datenbus 130' innehat, um anzuzeigen, ob es ein Gerät ist, daß zu Mehrfach- oder Stoßübertragungen in der Lage ist.
- Ebenfalls mit der zentralen Schiedssteuerung verbunden ist ein Schiedsbus 260, der vorzugsweise aus vier Leitungen (0-3) besteht und auf dem Schiedsebenen übermittelt werden, um die Inhaberschaft des Datenbusses 130' zu erreichen und dann, während GRANT auf dem Kanal 200 übermittelt wird, den Inhaber zu identifizieren.
- In Fig. 3 erzeugt ein UND-Gatter 310 ein Signal +CPUPRE, das auf den Signalen -PREEMPT, +HOLD, +ARB/GRANT und ARB BUS beruht (1111 = F gehört zu der CPU 100), um anzuzeigen, daß die CPU den Datenbus 130' innehat. Dieses Signal +CPUPRE löst einen Verzögerungstimer 315 aus, der so eingestellt ist, daß er ein Signal für eine vorbestimmte Zeit erzeugt, die so gewählt ist, daß sie innerhalb der Auffrischungsanforderungen des Hauptspeichers 145 liegt, um keine Systemregeln zu verletzen und Datenverluste zu verursachen. Ein Zähler 320 zählt Cache-Hits, die durch die Cache-Steuerung 110 angezeigt werden, und setzt nach einem vorbestimmten Zählerstand, vorzugsweise bei 2, ein Signal +2HIT. Es werden deshalb zwei Hits gewählt, weil es ausreicht anzuzeigen, daß eine Folge von Hits wahrscheinlich ist und die CPU den Bus 130' dann aufgeben kann. Das Signal +DELAY und die Umkehrung von +2HIT werden im Gatter 330 mit UND verknüpft, um ein Signal BLK zu erzeugen, dessen Umkehrung gemeinsam mit der Umkehrung von -PREEMPT an das UND-Gatter 340 angelegt wird, um das Signal G zu erzeugen. Das Signal G wird gemeinsam mit der Umkehrung des Signals +CACHEHIT/-MISS an das UND-Gatter 350 angelegt, um das Signal -P' zu erzeugen. Das Signal -P' ist eine Modifikation des Signals -PREEMPT zur Blockierung von Anforderungen, die auftreten, wenn die CPU 100 den Bus 130' innehat, bis entweder zwei Cache-Hits in Folge auftreten oder die Verzögerungszeit abläuft, nachdem die erste Anforderung während dieser Inhaberschaft eintrifft.
- In Fig. 4 wurde die Konfiguration von Fig. 2 gemäß der bevorzugten Implementierung modifiziert, so daß die Leitung 240 das Signal -P' überträgt, bei dem es sich um die nach der obigen Beschreibung modifizierte Version des Anforderungssignals -PREEMPT handelt. Die Auswirkung dieser Modifikation des Anforderungssignals -PREEMPT zeigt sich in den zwei Zeitablaufsdiagrammen von Fig. 5, von denen das erste eine Situation mit zwei Cache-Hits und das zweite eine Situation mit Ablauf der Verzögerungszeit darstellt.
- Es wurde eine Bevorrechtigungsschaltung für ein Rechnersystem mit einem Datenbus und mehreren Masters, von denen einer ein Hauptprozessor ist, beschrieben, wobei die Masters um den Datenbus mit Busanforderungssignalen konkurrieren, die über eine Signalbahn zu einer Schiedssteuerlogik übertragen werden, die anhand eines Bussignals den derzeitigen Businhaber identifiziert, wobei das Rechnersystem ferner ein Speichercachesystem umfaßt, das zur Zusammenarbeit mit dem Hauptprozessor mit diesem verbunden ist, um Daten aus einem Cachepuffer zu liefern, und das ein Mittel umfaßt, das für jeden Fall, in dem diese Daten geliefert werden, ein erstes Logiksignal liefert, wobei die Bevorrechtigungsschaltung für den Hauptprozessor folgende Elemente umfaßt:
- ein Mittel zum Empfangen der Bussignale zur Erkennung von Intervallen, in denen der Hauptprozessor als Inhaber des Datenbusses identifiziert wird, und zur Erzeugung eines zweiten Logiksignals während eines jeden solchen Intervalls;
- ein Mittel zum Empfangen und Zählen der ersten Logiksignale und zum Erzeugen eines dritten Logiksignals, wenn eine vorbestimmte Zahl erreicht ist;
- ein Gatter, das verbunden ist, um das zweite und dritte Logiksignal und die Busanforderungssignale zu empfangen, wobei das Gatter die Busanforderungssignale blockiert, wenn das zweite Logiksignal aktiv ist und das dritte Logiksignal nicht aktiv ist.
- Vorzugsweise erkennt ein Logikgerät ein Busanforderungssignal, das auftritt, während das zweite Logiksignal aktiv ist, und löst nach einer vorbestimmten Verzögerung ein viertes Logiksignal aus, das an das Gatter angelegt wird, um die Blockierung der Busanforderungssignale aufzuheben.
Claims (9)
1. Eine Bevorrechtigungsschaltung für ein Rechnersystem mit
einem Datenbus (140) und mehreren Masters, von denen
einer ein Hauptprozessor (100) ist, wobei die Masters um
den Datenbus (130, 130') mit Busanforderungssignalen
konkurrieren, die über eine Signalbahn zu einer
Schiedssteuerlogik (155) übertragen werden, die anhand
eines Bussignals den derzeitigen Businhaber
identifiziert, wobei das Rechnersystem ferner ein
Speichercachesystem (105, 110) umfaßt, das zur
Zusammenarbeit mit dem Hauptprozessor mit diesem
verbunden ist, um Daten aus einem Cachepuffer (105) zu
liefern, und das ein Mittel umfaßt, das für jeden Fall,
in dem diese Daten geliefert werden, ein erstes
Logiksignal liefert, wobei die Bevorrechtigungsschaltung
folgende Elemente umfaßt:
ein Mittel (310) zum Empfangen der Bussignale zur
Erkennung von Intervallen, in denen der Hauptprozessor
(100) als Inhaber des Datenbusses (130, 130')
identifiziert wird, und zur Erzeugung eines zweiten
Logiksignals während eines jeden solchen Intervalls;
ein Mittel (320) zum Empfangen und Zählen der ersten
Logiksignale und zum Erzeugen eines dritten
Logiksignals, wenn eine vorbestimmte Zahl erreicht ist;
eine Logik (315, 330, 340, 350), die verbunden ist, um
das zweite und dritte Logiksignal und die
Busanforderungssignale zu empfangen, wobei die Logik
(315, 330, 340, 350) die Busanforderungssignale
blockiert, wenn das zweite Logiksignal aktiv ist und das
dritte Logiksignal nicht aktiv ist.
2. Eine Bevorrechtigungsschaltung nach Anspruch 1, wobei
die Logik (315, 330, 340, 350) erkennt, wenn ein
Busanforderungssignal auftritt, während das zweite
Logiksignal aktiv ist, und die Blockierung der
Busanforderungssignale aufhebt, wenn nach der Erkennung
ein vorbestimmtes Zeitintervall verstrichen ist.
3. Eine Bevorrechtigungsschaltung nach Anspruch 1 oder 2,
bei der die vorbestimmte Zahl zwei ist.
4. Ein Rechnersystem, das eine Bevorrechtigungsschaltung
nach einem der obigen Ansprüche umfaßt, mit einem
Datenbus (140) und mehreren Masters, von denen einer ein
Hauptprozessor (100) ist, wobei die Masters um den
Datenbus (130, 130') mit Hilfe von
Busanforderungssignalen konkurrieren, die über eine
Signalbahn zu einer Schiedssteuerlogik (155) übertragen
werden, die anhand eines Bussignals den derzeitigen
Businhaber identifiziert, wobei das Rechnersystem ferner
ein Speichercachesystem (105, 110) umfaßt, das zur
Zusammenarbeit mit dem Hauptprozessor mit diesem
verbunden ist, um Daten aus einem Cachepuffer (105) zu
liefern, und das ein Mittel umfaßt, das für jeden Fall,
in dem diese Daten geliefert werden, ein erstes
Logiksignal liefert.
5. Ein Rechnersystem nach Anspruch 4 mit einem
Hauptspeicher (145), der eine periodische Auffrischung
benötigt, wobei das vorbestimmte Zeitintervall kürzer
gewählt wird als die Auffrischungsperiode des
Hauptspeichers (145).
6. Ein Verfahren zur Steuerung von Busanforderungssignalen
in einem Rechnersystem mit einem Datenbus, mehreren
Masters von denen einer ein Hauptprozessor ist, einer
Schiedssteuerlogik zum Empfangen der
Busanforderungssignale und zum Identifizieren des
derzeitigen Businhabers anhand eines Bussignals, einem
Speichercache, der zur Zusammenarbeit mit dem
Hauptprozessor mit diesem verbunden ist, um Daten aus
einem Cachepuffer zu liefern und für jeden Fall, in dem
diese Daten geliefert werden, ein erstes Logiksignal zu
liefern, wobei die Masters mit Hilfe der
Busanforderungssignale um den Datenbus konkurrieren,
wobei das Verfahren folgende Schritte umfaßt:
Erkennung von Intervallen, in denen der Hauptprozessor
als Inhaber des Datenbusses identifiziert wird, und
Erzeugung eines zweiten Logiksignals während eines jeden
solchen Intervalls;
Empfangen und Zählen der ersten Logiksignale und
Erzeugen eines dritten Logiksignals, wenn eine
vorbestimmte Zahl erreicht ist;
Blockieren der zwei Anforderungssignale, wenn das zweite
Logiksignal aktiv ist und das dritte Logiksignal nicht
aktiv ist.
7. Ein Verfahren nach Anspruch 6, das folgende Schritte
umfaßt:
Erkennung eines Busanforderungssignals, das auftritt,
während das zweite Logiksignal aktiv ist, und Aufheben
der Blockierung des Busanforderungssignals, wenn nach
der Erkennung ein vorbestimmtes Zeitintervall
verstrichen ist.
8. Ein Verfahren nach Anspruch 6 oder 7, bei dem die
vorbestimmte Zahl zwei ist.
9. Ein Verfahren nach Anspruch 6 bis 8, bei dem das
Rechnersystem über einen Hauptspeicher verfügt, der eine
periodische Auffrischung benötigt, wobei das
vorbestimmte Zeitintervall kürzer gewählt wird als die
Auffrischungsperiode des Hauptspeichers.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/428,259 US5293493A (en) | 1989-10-27 | 1989-10-27 | Preemption control for central processor with cache |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69026336D1 DE69026336D1 (de) | 1996-05-09 |
DE69026336T2 true DE69026336T2 (de) | 1996-10-10 |
Family
ID=23698145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69026336T Expired - Fee Related DE69026336T2 (de) | 1989-10-27 | 1990-10-17 | Bevorrechtigungsschaltung für ein Rechnersystem |
Country Status (6)
Country | Link |
---|---|
US (1) | US5293493A (de) |
EP (1) | EP0425181B1 (de) |
JP (1) | JPH0656602B2 (de) |
KR (1) | KR930005725B1 (de) |
CN (1) | CN1031085C (de) |
DE (1) | DE69026336T2 (de) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5596749A (en) * | 1992-09-21 | 1997-01-21 | Texas Instruments Incorporated | Arbitration request sequencer |
AU5987294A (en) * | 1993-02-17 | 1994-09-14 | 3Com Corporation | System for reading dynamically changing data |
US5528765A (en) * | 1993-03-15 | 1996-06-18 | R. C. Baker & Associates Ltd. | SCSI bus extension system for controlling individual arbitration on interlinked SCSI bus segments |
US6374319B1 (en) | 1999-06-22 | 2002-04-16 | Philips Electronics North America Corporation | Flag-controlled arbitration of requesting agents |
US6816947B1 (en) * | 2000-07-20 | 2004-11-09 | Silicon Graphics, Inc. | System and method for memory arbitration |
US7406554B1 (en) | 2000-07-20 | 2008-07-29 | Silicon Graphics, Inc. | Queue circuit and method for memory arbitration employing same |
WO2006024193A1 (fr) * | 2004-08-30 | 2006-03-09 | Magima Digital Information Co., Ltd. | Procede et systeme pour transfert de donnees |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4237534A (en) * | 1978-11-13 | 1980-12-02 | Motorola, Inc. | Bus arbiter |
FR2462745B1 (fr) * | 1979-07-30 | 1986-01-03 | Jeumont Schneider | Dispositif de partage temporel de l'acces a une memoire connectee a un bus unique entre un calculateur central et une pluralite de calculateurs peripheriques |
US4323965A (en) * | 1980-01-08 | 1982-04-06 | Honeywell Information Systems Inc. | Sequential chip select decode apparatus and method |
JPS57196335A (en) * | 1981-05-27 | 1982-12-02 | Mitsubishi Electric Corp | Shared storage device |
JPS58107934A (ja) * | 1981-12-21 | 1983-06-27 | Matsushita Electric Ind Co Ltd | バス制御方式 |
JPS6052468B2 (ja) * | 1982-03-04 | 1985-11-19 | 株式会社東芝 | Dmaバス負荷可変装置 |
US4570220A (en) * | 1983-11-25 | 1986-02-11 | Intel Corporation | High speed parallel bus and data transfer method |
JPS60151769A (ja) * | 1984-01-19 | 1985-08-09 | Fujitsu Ltd | バス制御方式 |
US4941086A (en) * | 1984-02-02 | 1990-07-10 | International Business Machines Corporation | Program controlled bus arbitration for a distributed array processing system |
US4833596A (en) * | 1985-02-28 | 1989-05-23 | International Business Machines Corporation | Logical arrangement for controlling use of different system displays by main processor and co-processor |
US4757441A (en) * | 1985-02-28 | 1988-07-12 | International Business Machines Corporation | Logical arrangement for controlling use of different system displays by main proessor and coprocessor |
US4689786A (en) * | 1985-03-21 | 1987-08-25 | Apple Computer, Inc. | Local area network with self assigned address method |
US4760515A (en) * | 1985-10-28 | 1988-07-26 | International Business Machines Corporation | Arbitration apparatus for determining priority of access to a shared bus on a rotating priority basis |
JPS62266640A (ja) * | 1986-05-15 | 1987-11-19 | Omron Tateisi Electronics Co | バスア−ビトレ−シヨン回路 |
US5051946A (en) * | 1986-07-03 | 1991-09-24 | Unisys Corporation | Integrated scannable rotational priority network apparatus |
US4947368A (en) * | 1987-05-01 | 1990-08-07 | Digital Equipment Corporation | Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers |
US4980854A (en) * | 1987-05-01 | 1990-12-25 | Digital Equipment Corporation | Lookahead bus arbitration system with override of conditional access grants by bus cycle extensions for multicycle data transfers |
US5129090A (en) * | 1988-05-26 | 1992-07-07 | Ibm Corporation | System bus preempt for 80386 when running in an 80386/82385 microcomputer system with arbitration |
US5032984A (en) * | 1988-09-19 | 1991-07-16 | Unisys Corporation | Data bank priority system |
US4982404A (en) * | 1988-10-12 | 1991-01-01 | American Standard Inc. | Method and apparatus for insuring operation of a multiple part system controller |
US5047921A (en) * | 1989-01-31 | 1991-09-10 | International Business Machines Corporation | Asynchronous microprocessor random access memory arbitration controller |
US4969120A (en) * | 1989-02-13 | 1990-11-06 | International Business Machines Corporation | Data processing system for time shared access to a time slotted bus |
US5119292A (en) * | 1989-07-21 | 1992-06-02 | Clearpoint Research Corporation | Bus device which abstains from round robin arbitration |
-
1989
- 1989-10-27 US US07/428,259 patent/US5293493A/en not_active Expired - Fee Related
-
1990
- 1990-10-15 KR KR1019900016328A patent/KR930005725B1/ko not_active IP Right Cessation
- 1990-10-15 CN CN90108431A patent/CN1031085C/zh not_active Expired - Fee Related
- 1990-10-17 DE DE69026336T patent/DE69026336T2/de not_active Expired - Fee Related
- 1990-10-17 EP EP90311379A patent/EP0425181B1/de not_active Expired - Lifetime
- 1990-10-25 JP JP2286059A patent/JPH0656602B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CN1050936A (zh) | 1991-04-24 |
EP0425181A2 (de) | 1991-05-02 |
KR910008593A (ko) | 1991-05-31 |
CN1031085C (zh) | 1996-02-21 |
EP0425181A3 (en) | 1991-10-23 |
KR930005725B1 (ko) | 1993-06-24 |
EP0425181B1 (de) | 1996-04-03 |
JPH0656602B2 (ja) | 1994-07-27 |
JPH03150654A (ja) | 1991-06-27 |
DE69026336D1 (de) | 1996-05-09 |
US5293493A (en) | 1994-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3909948C2 (de) | ||
EP0179936B1 (de) | Verfahren und Einrichtung zur Steuerung einer Sammelleitung | |
DE69027515T2 (de) | Vorrichtung für Prioritätsarbitrierungskonditionierung bei gepufferter Direktspeicheradressierung | |
DE3300262C2 (de) | ||
DE3300260C2 (de) | ||
DE68915701T2 (de) | Multiprozessorsystem mit verteilten gemeinsamen Betriebsmitteln und mit Verklemmungsverhinderung. | |
DE4018481C2 (de) | ||
DE69834519T2 (de) | Bussteuerungssystem und -verfahren | |
DE60009355T2 (de) | Busbrücke mit einer speichersteuerung mit verbessertem speicheranforderungsarbitrierungsmechanismus | |
DE3642324A1 (de) | Multiprozessoranlage mit prozessor-zugriffssteuerung | |
DE60026068T2 (de) | System für externe transaktionen mit dynamischen prioritäten | |
DE69219848T2 (de) | Verfahren zur Behandlung von Datenübertragungen in einen Computersystem mit einem Zweibusbau | |
DE602005006338T2 (de) | Vorrichtung und Verfahren zur Datenübertragungsverarbeitung | |
DE60036923T2 (de) | Dram-auffrischungsüberwachung und taktgenaue verteilte busarbitrierung in einer multiprozessorumgebung | |
DE69026336T2 (de) | Bevorrechtigungsschaltung für ein Rechnersystem | |
DE10061770B4 (de) | Zugriffsregelung für Steuerchipsätzen bei Bustransaktion | |
DE60127357T2 (de) | Ausführung von einem PCI-Arbiter mit dynamischem Prioritätsschema | |
DE60032805T2 (de) | Vorrichtung zur arbitrierung eines speicherressources basiert auf zuteilung von zeitschlitzen | |
DE102006012659A1 (de) | System und Verfahren zum Reduzieren der Speicherlatenz bei mit einem Bus verbundenen Mikroprozessorsystemen | |
DE3853324T2 (de) | Busfehlerverarbeitungssystem. | |
DE69024912T2 (de) | Rechnersystem | |
DE10085501B3 (de) | Ein Verfahren und eine Einrichtung für einen isochronen Datentransport über einen asynchronen Bus | |
DE69827879T2 (de) | Zeitmultiplexschema zur Verklemmungsauflösung in distribuierter Arbitrierung | |
DE69729598T2 (de) | Verfahren und Vorrichtung zur Adressenparitätsprüfung für mehrfache überlappende Addressbereiche auf einem gemeinsamen Bus | |
DE10306285A1 (de) | Mikrocomputersystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |