-
ALLGEMEINER STAND DER
TECHNIK
-
1. Gebiet der Erfindung
-
Die
vorliegende Erfindung betrifft im Allgemeinen einen Eingabe-/Ausgabe-(I/O)-Knotenpunkt. Insbesondere
betrifft die vorliegende Erfindung einen I/O-Knotenpunkt, der gestaltet
ist, um Producer/Consumer (P/C)-Anordnungsregeln entlang einer Schnittstelle
umzusetzen, die in einer Mehrfachprozessor-Computersystemarchitektur
inhärent
ungeordnet ist.
-
2. Beschreibung der verwandten
Technik
-
Mehrfachprozessor-Computersysteme
sind gestaltet, um eine Anzahl zentraler Verarbeitungseinheiten
(CPUs) aufzunehmen, die durch einen gemeinsamen Systembus oder Schalter
mit einem Speicher und einer Anzahl externer Eingabe-/Ausgabe-Vorrichtungen
verbunden sind. Der Zweck des Bereitstellens einer Vielzahl zentraler
Verarbeitungseinheiten besteht darin, die Leistung der Vorgänge zu erhöhen, indem
Aufgaben zwischen den Prozessoren aufgeteilt werden. Solch eine
Anordnung ermöglicht,
daß die
Computer gleichzeitig eine Anzahl unterschiedlicher Anwendungen
unterstützen
und I/O-Komponenten unterstützen,
die zum Beispiel über
ein Netzwerk kommunizieren und Bilder auf angeschlossenen Anzeigevorrichtungen
anzeigen. Mehrfachprozessor-Computersysteme werden in der Regel
für Unternehmens-
und Netzwerkserversysteme benutzt.
-
Ein
Eingabe-/Ausgabe-Knotenpunkt kann als ein Verbindungspunkt zwischen
verschiedenen Eingabe-/Ausgabe-Brückenkomponenten, an welche Eingabe-/Ausgabe-Komponenten
angeschlossen sind, und schließlich
zu den zentralen Verarbeitungseinheiten bereitgestellt werden. Viele
Eingabe-/Ausgabe-Komponenten sind periphere Komponentenverbindungs-(Peripheral
Component Interconnect = PCI) („PCI Local Bus Specification", Revision 2.1, 1. Juni
1995, von der PCI Special Interest Group (PCI-SIG))-Vorrichtungen
und Softwaretreiber, welche sich an das PCI-Producer-Consumer (P/C)-Modell
und seine Anordnungsregeln und Anforderungen halten. ("PCI Local Bus Specification", Revision 2.1, Anhang
E, „System
Transaction Ordering").
Zum Beispiel ermöglichen
diese Anordnungsregeln, daß Schreibvorgänge für eine höhere Leistungsfähigkeit nachgeschrieben
werden, wobei gleichzeitig eine „Richtigkeit" gewährleistet
wird. Nachschreiben bedeutet, daß die Transaktion von einem
Zwischenmittel, zum Beispiel einer Brücke von einem Bus zu dem anderen
erfaßt
wird, so daß die
Transaktion bei der Quelle vollendet wird, bevor sie bei dem beabsichtigten
Zielort tatsächlich
vollendet wird. Das Nachschreiben ermöglicht, daß die Quelle den nächsten Vorgang
ausführen
kann, noch während
die Transaktion auf dem Weg durch das System zu seinem Endziel ist.
Mit anderen Worten bedeutet das Nachschreiben in einer PCI-Vorrichtung,
daß die
ausgegebenen Schreibvorgänge
keine „komplette" Antwort zurücksenden
sollen. Das heißt,
wenn Nachschreibvorgänge
ausgegeben werden, wird keine Bestätigung zurückgesendet, die anzeigt, daß der Schreivorgang
vollendet ist. Der Ausdruck „Richtigkeit" impliziert, daß eine Flagge
oder ein Semaphor benutzt werden kann, um einen Datenpuffer zwischen
einem Producer-Consumer-Paar
zu schützen.
-
Kohärente Schnittstellen,
welche den I/O-Knotenpunkt und sich schließlich mit den Prozessoren verbinden,
sind inhärent
ungeordnet. Aus diesem Grund sind die Anordnungsregeln unter dem P/C-Modell
strenger als diejenigen für
eine kohärente Schnittstelle,
die möglicherweise
gar keine Anordnungsregeln aufweist. Kohärente Schnittstellen wie ein
Vorderseitenbus oder Intel-Skalierbarkeitsanschluß sind inhärent geordnet,
da die Prozessoren, für
welche die kohärente
Schnittstelle gestaltet wurde, komplexe Vorrichtungen sind. Diese
Prozessoren haben die Intelligenz, zu unterscheiden, wann eine Anordnung
erforderlich ist und wann nicht. Aus diesem Grund können kohärente Schnittstellen
im Allgemeinen Vollendungen unabhängig von Anforderungen (in
beide Richtungen) behandeln. PCI-Vorrichtungen sind im Allgemeinen
jedoch nicht so komplex und relativ kostenintensiv und verlassen
sich deshalb auf Systemanordnungsregeln, um Blockierungen zu vermeiden.
PCI-Anordnungsregeln sind jedoch beim Lockern der Anordnungsanforderungen
spezifischer Transaktionen relativ flexibel.
-
Der
Erhalt der Verwendung von PCI-Vorrichtungen und Vorrichtungen, welche
dem P/C-Anordnungsmodell
folgen, ist besonders vorteilhaft, da sie im Allgemeinen im Hinblick
auf die Kostenempfindlichkeit konzipiert werden. Dementsprechend
wird eine kosteneffektive optimierte Chipsatzumsetzung benötigt, welche
zwischen einer geordneten Domäne (welche
eine PCI-Anordnung erfordert und dem P/C-Anordnungsmodell folgt)
und einer ungeordneten Domäne
wie einer kohärente
Schnittstelle in Verbindung mit mehreren Prozessoreinheiten ohne
das Einschreiten zusätzlicher
Software oder Hardware eine Brücke
bildet. Da eine PCI-Vorrichtung
im Allgemeinen im Hinblick auf die Kostenempfindlichkeit konzipiert
wird und sich die Lockerungen der PCI-Anordnungsregeln nicht zu
Nutze machen kann, besteht ein Bedarf an einem System, das sich
die Leistungsoptimierungen zu Nutze machen kann, die mit den PCI-Anordnungsregeln
möglich
sind, indem alle Anordnungslockerungsfähigkeiten zugunsten dieser Vorrichtungen
eingesetzt werden, während
gleichzeitig sämtliche
Blockierungsanfälligkeiten
und Leistungsnachteile vermieden werden.
-
EP 0 747 831 A2 offenbart
ein Datenverarbeitungssystem, das einen Hostprozessor, eine Anzahl
peripherer Vorrichtungen und eine oder mehrere Brücken aufweist,
durch die der Host, die peripheren Vorrichtungen und andere Hosts
oder periphere Vorrichtungen wie in einem Netzwerk verbunden werden können. Jede
Bus-zu-Bus-Brücke
ist zwischen einem primären
Bus und einem sekundären
Bus verbunden und weist einen ausgehenden Datenpfad, einen eingehenden
Datenpfad und einen Steuermechanismus auf. Der ausgehende Datenpfad
weist einen Warteschlangenpuffer zum Speichern von Transaktionen
in der Reihenfolge des Empfangs aus dem primären Bus auf. Der eingehende
Pfad ist ein Spiegelbild des ausgehenden Pfads mit Leseanforderungen
und Schreibanforderungen, die in einem sequentiellen Puffer gespeichert
sind, und mit Leseantworten, die in einer Anzahl paralleler Puffer
gespeichert sind.
-
Gemäß der Erfindung
wird ein verbesserter Eingabe-/Ausgabe-Knotenpunkt wie in Anspruch
1 definiert bereitgestellt.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
1 stellt
einen Eingabe-/Ausgabe-Knotenpunkt nach einer Ausführungsform
der vorliegenden Erfindung dar;
-
2A stellt
eine eingehende Transaktion durch eine eingehende Anordnungswarteschlange (IOQ)
gemäß einer
Ausführungsform
der vorliegenden Erfindung dar;
-
2B stellt
eine ausgehende Transaktion durch eine ausgehende Anordnungswarteschlange (OOQ)
gemäß einer
Ausführungsform
der vorliegenden Erfindung dar; und
-
3 stellt
eine Eingabe-/Ausgabe-Systemarchitektur gemäß einer Ausführungsform
der vorliegenden Erfindung dar.
-
AUSFÜHRLICHE BESCHREIBUNG
-
1 stellt
einen Eingabe-/Ausgabe-Knotenpunkt gemäß einer Ausführungsform
der vorliegenden Erfindung dar. Der I/O-Knotenpunkt 100 weist
eine geordnete Domäne
und eine ungeordnete Domäne
auf. Innerhalb der geordneten Domäne ermöglichen ein oder mehrere funktionelle
Blöcke 102, 104 die
eingehenden und ausgehenden Transaktionen zwischen der I/O-Komponente
oder den I/O-Komponenten 160, 170 und dem ungeordneten Protokoll 110.
Jeder funktionelle Block 102, 104 weist eine eingehende
Anordnungswarteschlange (IOQ) 120, einen IOQ-Leseumleitungspuffer
(RBB) 125 und eine ausgehende Anordnungswarteschlange (OOQ) 130 und
einen OOQ-Leseumleitungspuffer (RBB) 135 auf.
-
Innerhalb
der ungeordneten Domäne
empfängt
ein eingehender Multiplexer 180 Daten und Signale aus dem
funktionellen Block oder den funktionellen Blöcken 102, 104 der
geordneten Domäne (und
genauer aus der IOQ 120 und dem IOQ-RBB 125).
Ein ausgehender Demultiplexer 190 innerhalb der ungeordneten
Domäne
empfängt
Daten und Signale aus dem ungeordneten Protokoll 110, zum
Beispiel eine kohärente
Schnittstelle wie den Skalierbarkeitsanschluß zur Übertragung zu der geordneten Domäne (und
genauer zu der OOQ 130 des funktionellen Blocks oder der
funktionellen Blöcke 102, 104).
-
Mindestens
eine geordnete P/C-Eingabe-/Ausgabe-Schnittstelle 140, 150 wird
bereitgestellt, um mit den Eingabe-/Ausgabe-Vorrichtungen oder -Komponenten 160, 170 wie
den PCI-Vorrichtungen
verbunden zu werden. Die geordnete P/C-Schnittstelle 140, 150 ist
in der Regel jedoch nicht direkt mit den I/O-Vorrichtungen oder
-Komponenten 160, 170 verbunden. Eine Zwischenvorrichtung
wie eine Knotenpunktverknüpfung
oder Eingabe/Ausgabe-Brücke
wie eine Intel P64H2 Hub Interface-to-PCI-Bridge oder eine VXB InfiniBand
(„InfiniBand
Architecture Specification",
Version 1.0, 19. Juni 2001, von der InfiniBand Trade Association) Bridge
ist im Allgemeinen mit der geordneten P/C-Schnittstelle 140, 150 verbunden,
mit welcher sich die I/O-Vorrichtungen oder -Komponenten 160, 170 verbinden.
Jede P64H2-Brücke weist
zum Beispiel zwei PCI-X („PCI-X
Specification",
Revision 1.0a, 29. August 2000, von der PCI-SIG)-Segmente auf, mit
denen sich die I/O-Vorrichtungen oder -Komponenten 160, 170 verbinden
können.
PCI-X ist eine Hochleistungserweiterung zu dem lokalen PCI-Bus mit
einer erhöhten
Bandbreite und Busleistung.
-
Der
I/O-Knotenpunkt 100 gemäß einer
Ausführungsform
der vorliegenden Erfindung wird in zwei Domänen „geschnitten": eine geordnete
Domäne und
eine ungeordnete Domäne.
Die geordnete Domäne
hält sich
an die Producer-Consumer-Anordnungsregeln, die in der PCI-Spezifikation beschrieben
sind, und kann auf viele verschiedene Arten und Weisen ausgeführt werden.
Die ungeordnete Domäne
weist keine Anordnungsregeln auf. Durch das Umsetzen des I/O-Knotenpunkts 100 gemäß dem Schichtansatz
der vorliegenden Erfindung kann die Producer-Consumer-Anordnung
entlang einer ungeordneten Schnittstelle erhalten werden.
-
Eingehende
Anordnungswarteschlangen (IOQs) 120 sind für das Anordnen
in einer Warteschlange der eingehenden Lese- und Schreibtransaktionen/-anforderungen
verantwortlich, welche auf den Hauptspeicher oder eine I/O-Partnerkomponente
abzielen. Die IOQ 120 ist vorzugsweise in einer first-in-first-out
(FIFO)-Weise konfiguriert, welche durchsetzt, daß eingehende Lese- und Schreibtransaktionen/-anforderungen
eingehende Schreibvorgänge
(das heißt,
Schreibdaten) nicht umleiten können.
Darüber
hinaus werden ausgehende Lese- und Schreibvollendungen (Daten, die
für Lesevorgänge zurückkehren,
die auf eine I/O-Komponente
abzielen) zusammen mit sämtlichen
anderen ausgehenden speziellen Zyklen auch in der IOQ 120 angeordnet.
Unter Verwendung dieser Konfiguration kann eine Producer-Consumer-„Richtigkeit" gewährleistet werden.
-
Unter
den PCI-Anordnungsregeln sind Nachschreibvorgänge gestattet. Jedoch sind
in der ungeordneten Domäne
Nachschreibtransaktionen nicht erlaubt. Dementsprechend erfordern
sowohl Lese- als auch Schreibtransaktionen eine Transaktionsvollendung.
Aus diesem Grund werden Schreibvorgänge in der IOQ 120 an
die ungeordnete Domäne
abgegeben und werden nicht freigegeben, bis die ungeordnete Schnittstelle
zu einer Vollendung (zu der OOQ 130) zurückkehrt.
-
Wenn
eine direkte Transaktion abgegeben wird, wird sie für die Zielschnittstelle
(entweder auf dem gleichen I/O-Knotenpunkt oder einem anderen I/O-Knotenpunkt)
nicht ermöglicht,
bis alle vorherigen Schreibvorgänge
in der IOQ 120 vollendet worden sind. Diese Einschränkung gewährleistet
eine angemessene Anordnung, wenn die Daten und der Semaphor in unterschiedlichen
Zielorten angeordnet sind, zum Beispiel besteht der erste Schreibvorgang
aus Daten für
den Hauptspeicher und der direkte Schreibvorgang ist für einen
Semaphor auf der I/O-Partnerkomponente.
-
Im
Hinblick auf direkte Schreibtransaktionen, die zwischen zwei I/O-Knotenpunkten
strömen,
gibt es eine gewisse Zeit, in welcher der Nachschreibvorgang durch
die ungeordnete Struktur strömt,
bevor er die geordnete Domäne
in dem I/O-Zielknotenpunkt erreicht. Deshalb darf der Schreibvorgang
(selbst wenn er direkt ist und auf die geordnete Domäne abzielt)
keine aufeinanderfolgenden Zugriffe erlauben, bis garantiert ist,
daß sich
der Partnerschreibvorgang in der geordneten Domäne des Zielorts befindet. Diese
Anforderung gewährleistet
die „Vollendung" für den Nachschreibvorgang.
-
Die
Anzahl von eingesetzten IOQs 120 hängt von der Anzahl unabhängiger Datenströme ab, für welche
der I/O-Knotenpunkt optimiert ist. Mindestens eine Warteschlange
pro Anschluß stellt
ein korrektes Verhalten bereit, jedoch würde eine Warteschlange pro
unabhängigen
Strom die Anordnungseinschränkungen
zwischen unabhängigen
Datenströmen
auf diesem Anschluß lockern.
-
Die
ausgehenden Anordnungswarteschlangen (OOQs) 130 bewahren
zusammen mit dem OOQ-Leseumleitungspuffer (RBB) 135 die
Producer-Consumer-Anordnung, indem sie sowohl ausgehende Transaktionen
(zum Beispiel Lese- und Schreibanforderungen) als auch Vollendungen
für eingehende
Transaktionen aufweisen. Wie oben erwähnt, erfordert die ungeordnete
Domäne
gemäß einer
Ausführungsform
der vorliegenden Erfindung Vollendungen sogar für Schreibtransaktionen. Der I/O-Knotenpunkt 100 ist
für das
Nachschreiben dieser ausgehenden Schreibvorgänge für eine optimale Leistung in
der geordneten Domäne
verantwortlich und tut dies, indem eine Vollendungsantwort (aus
der OOQ 130) für
den Schreibvorgang erst abgegeben wird, nachdem er die OOQ 130 erreicht
hat. Die Vollendung wird bei Eintritt in die OOQ 130 ausgegeben, weshalb
die Latenz schneller ist, da die Vollendung im Vergleich zu ihrer
Rückgabe
nach Erreichen der geordneten P/C-Schnittstelle 140, 150 früher zurückgegeben
wird. Auf ähnliche
Weise könnten
theoretisch Lesevorgänge
die OOQ 130 auffüllen.
Um zu verhindern, daß dieser „Gegendruck" in die ungeordnete
Domäne
strömt
(was das Stattfinden des Schreibvorgangs verhindern könnte), werden
Lesetransaktionen in den RBB 135 geschoben und dann, falls
erlaubt, bei der Grenzlinie der geordneten Domäne wiederholt.
-
Die
IOQ 120 und die OOQ 130 weisen jeweils mindestens
einen entsprechenden Leseumleitungspuffer (RBB) 125, 135 auf.
Der Leseumleitungspuffer 125, 135 ermöglicht,
daß Nachschreibvorgänge und
Lese-/Schreibvollendungen nach verzögerten Leseanforderungen fortschreiten,
welche darauf warten, daß ihre
Vollendungen zurückkehren.
Sie gelten sowohl für
eingehenden als auch für
ausgehenden Verkehr. Das heißt,
wenn ein Nachschreibvorgang oder eine Lese-/Schreibvollendung durch
die IOQ 120 oder OOQ 130 fortschreiten muß, werden
die (verzögerten)
Lesetransaktionen/-anforderungen innerhalb der IOQ 120 oder
OOQ 130 in die jeweiligen RBBs 125, 135 beiseite „geschoben", um zu ermöglichen,
daß der
Nachschreibvorgang oder die Lese-/Schreibvollendung durch die IOQ 120 oder
OOQ 130 fortschreitet. Danach wird die erste „beiseite
geschobene" Aufgabe
in der Warteschlange des RBBs 125, 135 erprobt,
wenn der Blockierungszustand aufgehoben ist, der die Verzögerung verursacht.
Zwischen den Lesetransaktionen innerhalb der RBBs 125, 135 und
den nachfolgenden Transaktionen innerhalb der IOQ 120 und
OOQ 130 wird dann vermittelt, um vollendet zu werden. Der
Leseumleitungspuffer 125, 135 gewährleistet
einen blockierungsfreien Betrieb in der geordneten Domäne.
-
Gemäß einer
Ausführungsform
der vorliegenden Erfindung wird ein funktioneller Block 102, 104 (der
eine IOQ 120 und eine OOQ 130 aufweist) mit jeder
geordneten P/C-Schnittstelle 140, 150 bereitgestellt.
Obwohl die Ausführungsform
in 1 zwei funktionelle Blöcke 102, 104 und
eine entsprechende geordnete P/C-Schnittstelle 140, 150 für jeden
funktionellen Block 102, 140 darstellt, kann jede beliebige
geeignete Konfiguration und Anzahl von funktionellen Blöcken und
geordneten P/C-Schnittstellen benutzt werden.
-
2A stelle
eine eingehende Transaktion durch eine eingehende Anordnungswarteschlange (IOQ)
gemäß einer
Ausführungsform
der vorliegenden Erfindung dar. Die geordnete P/C-Schnittstelle 140, 150 (durch
die Leitung der I/O-Komponente 160, 170) gibt
eine Lese- oder Schreibtransaktion/-anforderung oder -vollendung
an die IOQ 120 des I/O-Knotenpunktes 100 ab 202.
Die Lese-/Schreibtransaktion oder -vollendung wird in der IOQ 120 angeordnet 204.
Wenn die IOQ 120 voll ist, werden Lesetransaktionen in
der IOQ 120 beiseite in den IOQ-Leseumleitungspuffer 125 geschoben 206,
um zu ermöglichen,
daß eingehende
Schreibtransaktion(en) oder Lese-/Schreibvollendung(en) durch die IOQ 120 und
zu dem ungeordneten Protokoll 110 fortschreiten. Wenn die
Lesevorgänge
beiseite geschoben werden, werden nachfolgende Lesetransaktionen
auf der geordneten Schnittstelle 140, 150 wiederholt.
Anderenfalls werden die Lese- oder Schreibtransaktionen oder -vollendungen,
die in der IOQ 120 angeordnet sind, zu dem ungeordneten
Protokoll 110 vorzugsweise in einer first-in-first-out
(FIFO)-Weise weitergeleitet 208. Schreibtransaktionen müssen auf eine
Vollendung aus dem ungeordneten Protokoll 110 warten 210,
bevor nachfolgende Transaktionen stattfinden dürfen. Dieses Schema wird benutzt,
um innerhalb des Systems eine Ordnung zu bewahren.
-
2B stellt
eine ausgehende Transaktion durch eine ausgehende Anordnungswarteschlange (OOQ)
gemäß einer
Ausführungsform
der vorliegenden Erfindung dar. Mindestens eine Lese- oder Schreibtransaktion/-anforderung
und eine Lesevollendung werden aus dem ungeordneten Protokoll 110,
zum Beispiel einer kohärenten
Schnittstelle wie einem Skalierbarkeitsanschluß an die OOQ 130 des I/O-Knotenpunkts 100 abgegeben.
Die mindestens eine Lese- oder Schreibtransaktion und die Lesevollendung
werden in der OOQ 130 angeordnet 222. Eine Vollendung
wird an die ungeordnete Schnittstelle 110 für einen
ausgehenden Schreibvorgang bei Eintritt in die OOQ 130 abgegeben.
Wenn die OOQ 130 voll ist, werden Lesetransaktionen in
der OOQ 130 in den OOQ-Leseumleitungspuffer 135 beiseite geschoben 226,
um zu ermöglichen,
daß eingehende Schreibtransaktion(en)
oder Lese-/Schreibvollendung(en) durch die OOQ 130 und
zu der geordneten P/C-Schnittstelle 140, 150 fortschreiten.
Wenn die Lesungen beiseite geschoben worden sind, werden auf der
ungeordneten Schnittstelle 110 nachfolgende Lesetransaktionen
wiederholt. Anderenfalls werden die Lese- oder Schreibtransaktionen
oder -vollendungen, die in der OOQ 130 angeordnet sind,
zu der geordneten P/C-Schnittstelle 140, 150 und
schließlich zu
der I/O-Komponente 160, 170 weitergeleitet 228.
-
3 stellt
eine Eingabe-/Ausgabe-Systemarchitektur gemäß einer Ausführungsform
der vorliegenden Erfindung dar. Wie oben beschrieben, kann der I/O-Knotenpunkt 100 geordnete P/C-Schnittstellen
aufweisen, die mit einer Zwischenvorrichtung wie einer Knotenpunktverknüpfung oder Eingabe-/Ausgabe-Brücke wie
einer PCI-X-Brücke 360 oder
eine Infini-Band-Brücke 370 verbunden sind.
Die I/O-Komponenten oder -Vorrichtungen 160, 170 (aus 1)
werden dann mit den Zwischenvorrichtungen 360, 370 verbunden.
Der I/O-Knotenpunkt 100 kann auch eine I/O-Schnittstelle
aufweisen, die sich mit einer älteren
Eingabe-/Ausgabe-Brücke 350 verbindet,
um mit Verbindungen zu älteren
I/O-Komponenten oder -Vorrichtungen umzugehen.
-
Der
I/O-Knotenpunkt 100 ist gestaltet, um sich mit einer kohärenten Schnittstelle
wie einem Skalierbarkeitsanschluß 340 zu verbinden,
der eine cache-kohärente
Schnittstelle ist, die für
skalierbare Mehrfachknotensysteme optimiert ist, welche zwischen
allen Prozessoren und deren Cache-Speichern eine Kohärenz bewahren.
Der Skalierbarkeitsanschluß 340 kann
sich wiederum mit mindestens einer Skalierbarkeitsknotensteuerung 320 verbinden, welche
die Schnittstelle zwischen den Prozessoren 310, dem Hauptspeicher 330,
zum Beispiel einem dynamischen wahlfreien Zugriffsspeicher (DRAM)
und dem Skalierbarkeitsanschluß 340 steuert.
-
Zusammengefaßt ermöglicht der
I/O-Knotenpunkt 100 gemäß der vorliegenden
Erfindung den Erhalt der Verwendung von PCI-Vorrichtungen und Vorrichtungen,
die dem P/C-Anordnungsmodell
folgen, die im Allgemeinen im Hinblick auf die Kostenempfindlichkeit
gestaltet sind. Der I/O-Knotenpunkt 100 stellt eine kosteneffektive
optimierte Chipsatzumsetzung wie in dem Intel-870-Chipsatz bereit,
der zwischen einer geordneten Domäne (die eine PCI-Anordnung
erfordert und dem P/C-Anordnungsmodell folgt) und einer ungeordneten
Domäne
wie einer kohärenten
Schnittstelle ohne die Hilfe zusätzlicher
Software oder Hardware eine Brücke
bildet. Da eine PCI-Vorrichtung im Allgemeinen im Hinblick auf die
Kostenempfindlichkeit konzipiert wird und sich die Lockerungen der
PCI-Anordnungsregeln nicht zu Nutze machen kann, macht sich der
I/O-Knotenpunkt 100 der vorliegenden Erfindung die Leistungsoptimierungen
zu Nutze, die mit den PCI-Anordnungsregeln möglich sind, indem alle Anordnungslockerungsfähigkeiten
zugunsten dieser Vorrichtungen eingesetzt werden, während gleichzeitig
sämtliche Blockierungsanfälligkeiten
und Leistungsnachteile vermieden werden.
-
Wenngleich
sich die obige Beschreibung auf bestimmte Ausführungsformen der vorliegenden
Erfindung bezieht, versteht es sich, daß viele Modifikationen vorgenommen
werden können,
ohne von der Wesensart davon abzuweichen. Die beiliegenden Ansprüche sollen
solche Modifikationen abdecken, die innerhalb des wahren Schutzbereichs
der vorliegenden Erfindung fallen. Die hier offenbarten Ausführungsformen
sind deshalb in jeder Hinsicht als erläuternd und nicht als einschränkend anzusehen,
wobei der Schutzbereich der Erfindung durch die angehängten Ansprüche und
nicht durch die vorstehende Beschreibung definiert ist und folglich
alle Veränderungen,
die der Bedeutung und dem Bereich der Ansprüche entsprechen, darin umfasst
sein sollen.