-
GEBIET DER
ERFINDUNG
-
Die
vorliegende Erfindung betrifft allgemein eine Veränderung
der Bandbreite zwischen einer Vorrichtung bzw. einem Baustein und
einem Prozessor. Im Besonderen betrifft die vorliegende Erfindung eine
Vorrichtung und ein Verfahren, welche die Bandbreite zwischen einem
Baustein und einem Prozessor verändern
können,
ohne das physikalische Komponentenlayout in dem Prozessor zu verändern.
-
STAND DER
TECHNIK
-
Das
parallele Verbinden bzw. Zusammenführen mehrerer Prozessoren erhöht die Verarbeitungskapazität. Für gewöhnlich kann
jede Anzahl von zwei bis acht Prozessoren parallel miteinander verbunden werden.
Im Allgemeinen werden mehrere parallele Prozessoren auf einem gemeinsam
genutzten Bus zusammengeführt
bzw. miteinander verbunden. Die Abbildung aus 1 veranschaulicht
eine Architektur mit vier Prozessoren (4P), die in Verbindung mit einem
gemeinsam genutzten Bus verwendet wird. Vier Prozessoren, Prozessor
1, Prozessor 2, Prozessor 3 und Prozessor 4 sind mit einem gemeinsam
genutzten Bus verbunden, der wiederum mit einem Northbridge-Chipsatz
verbunden ist. Der Northbridge-Chipsatz ist ferner mit einem Southbridge-Chipsatz
und einem externen Speicher verbunden. Zum Beispiel kann ein PentiumTM Prozessor die in der Abbildung aus 1 veranschaulichte
gemeinsam genutzte Busarchitektur einsetzen. Allerdings stellt eine
Punkt-zu-Punkt-Architektur für
gewöhnlich
eine höhere
Bandbreite bereit als eine gemeinsam genutzte Busarchitektur bereit.
-
Bei
einer gemeinsam genutzten Busarchitektur nutzen mehrere Vorrichtungen
bzw. Bausteine gemeinsam alle den gleichen Bus und müssen einer Reihenfolge
bzw. Anordnung und einem Protokoll zur Nutzung des Busses folgen.
Im Gegensatz dazu stellt eine Punkt-zu-Punkt-Busarchitektur eine
unterbrechungsfreie Verbindung zwischen zwei separaten Bausteinen
bereit. Im Allgemeinen erzeugt der Punkt-zu-Punkt-Bus somit eine höhere Bandbreite zwischen
zwei separaten Bausteinen bzw. Vorrichtungen. Eine höhere Bandbreite
kann den vorteilhaften Effekt einer verbesserten Leistung eines
einzelnen Prozessors oder einer Gruppe von Prozessoren aufweisen.
Wenn zum Beispiel eine 48-Bit-Verbindung zwischen zwei Bausteinen
bzw. Vorrichtungen existiert, so erfolgen Transaktionen zwischen
zwei Bausteinen dreimal schneller als wenn nur eine 16-Bit-Verbindung
zwischen zwei Bausteinen existiert. Eine Punkt-zu-Punkt-Busarchitektur
kann jedoch einen Nachteil aufweisen, da die Architektur eine unterbrechungsfreie
Verbindung zwischen zwei separaten Bausteinen bereitstellt. Wenn
somit zu einem beliebigen Zeitpunkt leichte Informationsübertragungen
zwischen den beiden Bausteinen bzw. Vorrichtungen auftreten, so
wird die überschüssige Bandbreitenkapazität im Wesentlichen
verschwendet.
-
Wenn
ein Kunde zum Beispiel sein Computersystem dazu verwendet, sowohl
eine Workstation-Anwendung als auch eine Server-Anwendung auszuführen, so
kann der Kunde unter Umständen nicht
die optimale Leistung der Hardware in seinem Computersystem erreichen.
Bei einer Server-Anwendung erfolgt ein starker Austausch von Informationen zwischen
Prozessoren. Der Hersteller erzeugt somit eine Verbindung mit hoher
Bandbreite zwischen allen Prozessoren in dem System. Wenn ein Kunde
seinen Computer zum Beispiel für
eine Anwendung einsetzen möchte,
die einen starken Informationsaustausch zwischen Prozessoren und
einem Chipsatz aufweist, wie zum Beispiel eine Workstation-Anwendung,
so erzeugt der Hersteller eine Verbindung mit hoher Bandbreite zwischen
jedem Prozessor und dem Chip in dem System. Wenn der Kunde bzw.
Anwender jedoch ein Computersystem aufweist, das eine Verbindung
mit hoher Bandbreite zwischen dem bzw. den Prozessor(en) und dem
Chipsatz aufweist, sich jedoch dafür entscheidet, gerade eine
Serveranwendung auf diesem System auszuführen, so kann der Kunde bezüglich der
Serveranwendung eine schlechte Leistung erfahren, wobei die überschüssige Bandbreite
zwischen dem Chipsatz und dem bzw. den Prozessor(en) verschwendet
wird.
-
Das
U.S. Patent US-A-6.151.689 offenbart ein Mehrprozessorensystem,
so dass eine CPU über ein
Routingelement mit jeder E/A-Vorrichtung oder mit jeder CPU des
Systems kommunizieren kann. Zwischen beliebigen zwei Endeinheiten
wie etwa einer CPU und einer anderen CPU oder einer E/A-Paketschnittstelle
sind alternative Zugangspfade vorgesehen.
-
Vorgesehen
ist gemäß einem
ersten Aspekt der vorliegenden Erfindung eine Vorrichtung gemäß dem gegenständlichen
Anspruch 1.
-
Vorgesehen
ist gemäß einem
zweiten Aspekt der vorliegenden Erfindung ein Verfahren gemäß dem gegenständlichen
Anspruch 4.
-
Vorgesehen
ist gemäß einem
dritten Aspekt der vorliegenden Erfindung ein System gemäß dem gegenständlichen
Anspruch 7.
-
Weitere
Ausführungsbeispiele
der Erfindung sind in den Unteransprüchen ausgeführt.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
In
den Zeichnungen zu der vorliegenden Erfindung zeigen:
-
1 eine
Architektur mit vier Prozessoren (4P), die in Verbindung mit einem
gemeinsam genutzten Bus eingesetzt wird;
-
2 ein
Ausführungsbeispiel
eines Prozessors mit einem Routing-Agenten, einer Protokollschicht,
einer Pufferschicht und einer Informationsübertragungsschicht;
-
3 eine
Punkt-zu-Punkt-Architektur mit zwei Prozessoren mit einer 16-Bit-Punkt-zu-Punkt-Verbindung
zwischen 1) einer Ein-Ausgabe-Komponente und dem ersten Prozessor
sowie 2) der Ein-Ausgabe-Komponente und dem zweiten Prozessor;
-
4 eine
Punkt-zu-Punkt-Architektur mit zwei Prozessoren mit einer 32-Bit-Punkt-zu-Punkt-Verbindung
zwischen 1) einer Ein-Ausgabe-Komponente und dem ersten Prozessor
sowie 2) der Ein-Ausgabe-Komponente und dem zweiten Prozessor;
-
5 eine
Punkt-zu-Punkt-Architektur mit vier Prozessoren mit einer 16-Bit-Punkt-zu-Punkt-Verbindung
zwischen einer Ein-Ausgabe-Komponente
und jedem der vier Prozessoren;
-
6 ein
Ausführungsbeispiel
des Routing-Agenten, der die eingehenden Kommunikationspfade in
einem Ausführungsbeispiel
der Informationsübertragungsschicht
steuert;
-
7 ein
Ausführungsbeispiel
des Routing-Agenten, der die eingehenden Kommunikationspfade in
einem Ausführungsbeispiel
der Pufferschicht steuert;
-
8 ein
Ausführungsbeispiel
des Routing-Agenten, der die abgehenden Kommunikationspfade in einem
Ausführungsbeispiel
der Pufferschicht steuert; und
-
9 ein
Ausführungsbeispiel
des Routing-Agenten, der die Kommunikationspfade in einem Ausführungsbeispiel
der abgehenden Informationsübertragungsschicht
steuert;
-
In
Bezug auf die vorliegende Erfindung sind verschiedene Modifikationen
und alternative Ausführungen
möglich,
wobei in den Zeichnungen spezielle Ausführungsbeispiele als Beispiele
dargestellt und nachstehend näher
beschrieben sind. Hiermit wird festgestellt, dass die vorliegende
Erfindung nicht auf die speziellen offenbarten Ausführungen
beschränkt ist,
vielmehr umfasst die Erfindung alle Modifikationen, Äquivalente
und Alternativen, die dem Gedanken und Umfang der Erfindung entsprechen.
-
GENAUE BESCHREIBUNG
DER ERFINDUNG
-
Der
Fachmann auf dem Gebiet erkennt, dass verschiedene Abänderungen
in Bezug auf die beschriebenen Ausführungsbeispiele der Erfindung möglich sind,
und dass zahlreiche Modifikationen und Verbesserungen gemäß dem Umfang
und dem Gedanken der Erfindung vorgenommen werden können. Zum
Beispiel werden in der vorliegenden Beschreibung zur Veranschaulichung
der Ausführungsbeispiele
der Erfindung in verschiedenen beschriebenen Ausführungsbeispielen
bestimmte Taktgeschwindigkeiten, Datenbits in bestimmter Anzahl, Schichten
in bestimmter Anzahl, Komponenten in bestimmter Anzahl, etc. verwendet.
Der Fachmann auf dem Gebiet erkennt jedoch, dass die Ausführungsbeispiele
der vorliegenden Erfindung speziell auch verschiedene Abweichungen
von der jeweils speziell angegebenen Anzahl aufweisen, die hierin
zu Veranschaulichungszecken beschrieben ist.
-
Ein
Routing-Agent kann mit einem Prozessor in einer Punkt-zu-Punkt-Architektur
eingesetzt werden, um es einem Anwender bzw. Kunden zu ermöglichen,
die Bandbreite oder die Anzahl der Busleitungen und der Taktgeschwindigkeit
bzw. der Taktrate zwischen zwei Bausteinen bzw. Vorrichtungen zu verändern. Eine
Punkt-zu-Punkt-Busarchitektur stellt eine unterbrechungsfreie bzw.
ununterbrochene Verbindung zwischen zwei separaten Bausteinen bereit. Im
Allgemeinen überträgt ein Protokoll
auf Paketbasis Informationen in einer Punkt-zu-Punkt-Busarchitektur. Der
Routing-Agent kann die effektive Bandbreite zwischen einem Prozessor
und einem Baustein bzw. einer Vorrichtung außerhalb des Prozessors verändern, indem
einer oder mehrere der Kommunikationspfade in dem Prozessor verändert bzw. angepasst
werden können,
ohne dabei das physikalische Komponentenlayout in dem Prozessor
zu verändern.
Die Bandbreite entspricht der Informationsmenge insgesamt, die innerhalb
eines bestimmten Zeitraums zwischen zwei Vorrichtungen bzw. Bausteinen übertragen
werden kann. In einem Ausführungsbeispiel
kann der Hersteller oder der Anwender bzw. Kunde die Anzahl der
zwischen zwei Vorrichtungen verbundenen Anschlüsse bzw. Ports verändern, um
die Bandbreite zwischen den Vorrichtungen zu erhöhen. In einem Ausführungsbeispiel
können
der Hersteller oder der Kunde zusätzliche Prozessoren hinzufügen, die
mit einer Vorrichtung verbunden werden, in dem die Anzahl der Ports
bzw. Anschlüsse verändert wird,
die zwischen einem ersten Prozessor und der Vorrichtung außerhalb
des ersten Prozessors verbunden bzw. angeschlossen sind.
-
Die
Abbildung aus 2 veranschaulicht ein Ausführungsbeispiel
eines Prozessors 200 mit einem Routing-Agenten 202,
einer Protokollschicht 204, einer Pufferschicht 206 und
einer Informationsübertragungsschicht 208.
In einem Ausführungsbeispiel weist
der Prozessor 200 einen Routing-Agenten 202 und
drei Schichten auf, die Protokollschicht 204, eine Pufferschicht 206,
wie etwa eine oder mehrere Verknüpfungsschichten 210,
und eine Informationsübertragungsschicht 208,
wie etwa eine oder mehrere physikalische Schichten 212.
Der Routing-Agent 202 verändert die Kommunikationspfade
in der physikalischen Schicht 212 und der Verknüpfungsschicht 210, ohne
das physikalische Komponentenlayout in dem Prozessor 200 zu
verändern.
Die physikalische Schicht 212 führt die eigentliche physikalische
Informationsübertragung
zu und von anderen Vorrichtungen bzw. Bausteinen aus. Die Verknüpfungsschicht 210 führt Verbindungsfunktionen
zwischen den höheren
Funktionen der Protokollschicht 204 und der physikalischen
Schicht 212 aus. Die Protokollschicht 204 verarbeitet
Anforderungen, Antworten und Datenübertragungen.
-
In
einem Ausführungsbeispiel
kann der Routing-Agent 202 in dem Prozessor 200 oder
außerhalb des
Prozessors angeordnet sein. In einem Ausführungsbeispiel steuert ein
einziger Routing-Agent 202 die
Kommunikationspfade in allen Schichten des Prozessors 200.
In einem alternativen Ausführungsbeispiel
gibt es mehrere Routing-Agenten 202 für die Steuerung der Kommunikationspfade.
Der Routing-Agent 202 kann eine Kombination aus Hardware und
Software darstellen. Der Routing-Agent 202 kann
verschiedene Funktionen aufeisen, wie zum Beispiel das Senden eines
Freigabe/Sperrsignals an eine oder mehrere Kommunikationspfad-Wechselbausteine,
und das Senden eines Signals zur Veränderung verschiedener Taktgeschwindigkeiten.
Die Pufferschicht 206 kann einen oder mehrere eingehende
Kommunikationspfade aufweisen. Die Pufferschicht 206 kann
einen oder mehrere abgehende Kommunikationspfade aufweisen. Die
Informationsübertragungsschicht 208 kann
einen oder mehrere eingehende Kommunikationspfade aufweisen. Die Informationsübertragungsschicht 208 kann
einen oder mehrere abgehende Kommunikationspfade aufweisen.
-
Die
Abbildung aus 3 veranschaulicht eine Punkt-zu-Punkt-Architektur 300 mit
zwei Prozessoren mit einer 16-Bit-Punkt-zu-Punkt-Verbindung zwischen: 1) einer
Ein-Ausgabe-Komponente 302 und einem ersten Prozessor 304 sowie
2) der Ein-Ausgabe-Komponente 302 und
dem zweiten Prozessor 306. Ein erster Prozessor 304 mit
vier 16-Bit-Ports 308, 310, 312, 314,
die mit dem Prozessor verbunden sind, können drei 16-Bit-Ports 308, 310, 312 aufweisen,
die mit einem zweiten Prozessor 306 verbunden sind, und
mit einem 16-Bit-Port, der mit der Ein-Ausgabe-Komponente 302 verbunden
ist 314. In einem Ausführungsbeispiel
kann es sich bei der Ein-Ausgabe-Komponente
um eine Brücke,
einen Speicher, einen Chipsatz oder eine ähnliche Komponente handeln
Somit besteht eine 48-Bit-Bandbreitenverbindung
zwischen dem ersten Prozessor 304 und dem zweiten Prozessor 306.
Ferner können
der erste Prozessor 304 und der zweite Prozessor 306 eine
16-Bit-Bandbreitenverbindung mit
der Ein-Ausgabe-Komponente 302 aufweisen. Der Routing-Agent
kann die Kommunikationspfade in dem ersten Prozessor 304 verändern, so
dass der Prozessor jetzt zwei 16-Bit-Punkt-zu-Punkt-(32 Bit)Verbindungen
mit dem zweiten Prozessor 306 und eine 32-Bit-Verbindung
mit der Ein-Ausgabe-Komponente 302 aufweist.
-
Die
Abbildung aus 4 veranschaulicht eine Punkt-zu-Punkt-Architektur 400 mit
zwei Prozessoren mit 32-Bit-Punkt-zu-Punkt-Verbindungen zwischen: 1) der
Ein-Ausgabe-Komponente 402 und dem ersten Prozessor 404;
sowie 2) der Ein-Ausgabe-Komponente 402 und
dem zweiten Prozessor 406. Ein erster Prozessor 404 mit
vier 16-Biz-Ports 408, 410, 412, 414,
die mit dem Prozessor verbunden sind, kann zwei 16-Bit-Ports aufweisen,
die mit einem zweiten Prozessor 406 verbunden sind, und zwei
16-Bit-Ports, die mit der Ein-Ausgangs-Komponente 402 verbunden
sind, wie etwa einem Chipsatz. Somit existiert eine 32-Bit-Bandbreitenverbindung zwischen
dem ersten Prozessor 404 und dem zweiten Prozessor 406.
Ferner weisen der erste Prozessor 404 und der zweite Prozessor 406 eine 32-Bit-Bandbreitenverbindung
mit der Ein-Ausgangs-Komponente 402 auf. In dem 32-Bit-Modus
im Vergleich zu dem 16-Bit-Modus ist die Bandbreite zwischen der
Ein-Ausgangs-Komponente 402 und dem ersten Prozessor 404 sowie
zwischen der Ein-Ausgangs-Komponente 402 und
dem zweiten Prozessor 406 effektiv verdoppelt worden. In
dem 16-Bit-Modus müssen
acht Taktzyklen auftreten, um acht 16-Bit-Pakete (128 Bits) an Informationen
zwischen jedem Prozessor und der Ein-Ausgangs-Komponente übertragen
werden. In einem 32-Bit-Modus müssen
vier Taktzyklen auftreten, um vier 32-Bit-Pakete (128 Bits) von
Informationen zwischen jedem Prozessor und der Ein-Ausgangs-Komponente zu übertragen.
-
Die
Abbildung aus 5 veranschaulicht ein Ausführungsbeispiel
einer Punkt-zu-Punkt-Architektur 500 mit vier Prozessoren,
mit einer 16-Bit-Punkt-zu-Punkt-Verbindung zwischen einer Ein-Ausgangs-Komponente 502 und
jedem der vier Prozessoren 504, 506, 508, 510.
Die vier Prozessoren sind der Prozessor 1 504, Prozessor
2 506, Prozessor 3 508 und Prozessor 4 510.
In einem Ausführungsbeispiel
setzt jeder der vier Prozessoren 504, 506, 508, 510 ein
Ausführungsbeispiel
eines Arbiters ein. Die Prozessoren 504, 506, 508, 510 weisen
eine flexible Architektur auf, welche koordinierend mit dem Arbiter
zusammenarbeitet, um eine Vielzahl von Einsatzzwecken für die Prozessoren 504, 506, 508, 510 zu
ermöglichen.
Zum Beispiel kann die Architektur 500 mit vier Prozessoren
ersetzt werden durch eine Architektur mit zwei Prozessoren, die
eine 32-Bit-Verbindung mit der Ein-Ausgangs-Komponente 502 einsetzt.
Die Verarbeitungsleistung dieser Anordnung hat sich somit effektiv
verdoppelt, da vier Prozessoren die Daten verarbeiten, die von der Ein-Ausgabe-Komponente 502 stammen.
Ein Ausführungsbeispiel
des Arbiters ermöglicht
es somit, dass die gleiche Ein-Ausgabe-Komponente 502 entweder
mit einer Architektur mit zwei Prozessoren, einer Architektur 500 mit
vier Prozessoren oder mit einer ähnlichen
Architektur mit mehreren Prozessoren arbeitet.
-
Eine
programmierbare Reglereinstellung (Knob Setting) in einem Konfigurationsregister
leitet den Routing-Agenten an, so dass die aktuell gewünschte Konfiguration
des Kunden bzw. Anwenders begründet
wird, wie etwa eine 16-Bit-, eine 32-Bit- oder eine 48-Bit-Punkt-zu-Punkt-Verbindung
zwischen dem Prozessor und einer Vorrichtung bzw. einem Baustein
außerhalb
des Prozessors. In einem Ausführungsbeispiel
kann es sich bei der Vorrichtung außerhalb des Prozessors um einen
weiteren Prozessor, eine Ein-Ausgabe-Vorrichtung, eine Brücke oder
eine ähnliche
Vorrichtung handeln. In einem Ausführungsbeispiel programmiert
der Kunde die Reglereinstellung, um die Bandbreitenverbindungen zwischen
dem Prozessor und den Vorrichtungen bzw. Bausteinen außerhalb
des Prozessors herzustellen. Auf der Basis der Reglereinstellung
des Konfigurationsregisters aktiviert und deaktiviert der Routing-Agent Kommunikationspfade
in der Informationsübertragungsschicht
und der Pufferschicht. Der Routing-Agent kann die Kommunikationspfade
verändern,
um die Anzahl der Prozessor-Ports zu erhöhen oder zu verringern, und somit
effektiv die Bandbreite zwischen einem Prozessor und einer anderen Vorrichtung
zu erhöhen
oder zu reduzieren.
-
In
einem Server kommt es für
gewöhnlich
zu einem starken Austausch von Daten zwischen einem ersten Prozessor
und einem zweiten Prozessor. Eine vorhandene 48-Bit-Punkt-zu-Punkt-Verbindung zwischen
diesen beiden Bausteinen bzw. Vorrichtungen verringert somit deutlich
die erforderliche Zeit für
die Ausführung
jeder Transaktion zwischen den Vorrichtungen. In einer Workstation
kommt es für
gewöhnlich
zu einem starken Datenaustausch zwischen jedem Prozessor und der
Ein-Ausgabe-Komponente. Eine 32-Bit- oder 48-Bit-Punkt-zu-Punkt-Verbindung zwischen
diesen Vorrichtungen bzw. Bausteinen reduziert somit erheblich die
erforderliche Zeit für
die Ausführung
jeder Transaktion zwischen diesen Vorrichtungen. Der Durchschnittsfachmann
auf dem Gebiet erkennt somit, dass die in den folgenden Ausführungsbeispielen
dargestellten speziellen Komponenten abgeändert werden können, ohne
dabei vom Umfang der Erfindung abzuweichen.
-
Die
Abbildung aus 6 veranschaulicht ein Ausführungsbeispiel
des Routing-Agenten 602, der die eingehenden Kommunikationspfade
in einem Ausführungsbeispiel
der Informationsübertragungsschicht 600 steuert.
Die erste physikalische Schicht (SPXO) 604 weist einen
ersten Port 606 auf; neun 16-Bit-Register, ein erstes Register 608,
ein zweites Register 610, ein drittes Register 612,
ein viertes Register 614, ein fünftes Register 616,
ein sechstes Register 618, ein siebtes Register 620,
ein achtes Register 622 und ein neuntes Register 624;
ein erstes 64-Bit-Register 626; einen Kommunikationspfad-Wechselbaustein 628 wie
etwa einen Multiplexer; ein Ausführungsbeispiel
des Routing-Agenten 602; eine erste Zeitverzögerung 609 und
ein erstes Flipflop 630.
-
Die
zweite physikalische Schicht (SPX1) 632 weist einen zweiten
Port 634 auf; neun 16-Bit-Register, ein zehntes Register 636,
ein elftes Register 638, ein zwölftes Register 640,
ein dreizehntes Register 642, ein vierzehntes Register 644,
ein fünfzehntes Register 646,
ein sechzehntes Register 648, ein siebzehntes Register 650 und
ein achtzehntes Register 652; ein zweites 64-Bit-Register 653;
und eine zweite Zeitverzögerung 637 und
ein zweites Flipflop 656. Ein Multiplexer ist ein Baustein,
der verschiedene Übertragungen
mit niedriger Geschwindigkeit zu einer Übertragung mit hoher Geschwindigkeit
zusammenführt
und vice versa. Das Konfigurationsregister 654 informiert
den Routing-Agenten 602 darüber, ob eine spezielle Komponente
außerhalb
des Prozessors eine 16-Bit-, eine 32-Bit- oder eine 48-Bit-Punkt-zu-Punkt-Verbindung darstellen
soll.
-
Wenn
das Konfigurationsregister 654 für eine 16-Bit-Punkt-zu-Punkt-Verbindung
mit der Ein-Ausgabe-Komponente programmiert ist, so leitet der Routing-Agent 602 jede
physikalische Schicht an, unabhängig
von den anderen physikalischen Schichten zu arbeiten. Zum Beispiel
in einem Ausführungsbeispiel
mit einer Architektur mit vier Prozessoren ist der erste Port 606 mit
einem zweiten Prozessor verbunden, und der zweite Port 634 weist
eine Verknüpfung
mit einer Ein-Ausgabe-Komponente auf.
Das erste Register 608 empfängt ein eingehendes 16-Bit-Informationspaket über den
ersten Port 606. Das 16-Bit-Informationspaket wird von
dem ersten Register 608 über eine erste Zeitverzögerung 609 übermittelt,
um in dem zweiten Register 610 gespeichert zu werden. Das
erste Register 608 empfängt ein
weiteres 16-Bit-Informationspaket über den ersten Port 606.
Das erste Register 608 sendet dieses zweite 16-Bit-Informationspaket
zum Speichern in dem dritten Register 612. Die erste physikalische Schicht 604 wiederholt
diesen Vorgang, bis jedes Register vom zweiten Register 610 bis
zum neunten Register 624 jeweils ein 16-Bit-Informationspaket
speichert. Der erste Kommunikationspfad-Wechselbaustein 628 erfasst
bzw. stellt fest, dass diese acht 16-Bit-Informationen (oder 128
Bits) für
die Übertragung über das
erste Flipflop 630 zu der ersten Verknüpfungsschicht bereit stehen.
Nach dem nächsten Taktzyklus
werden die 128 Informationsbits über
das erste Flipflop 630 zu der ersten Verknüpfungsschicht übertragen.
Auf ähnliche
Weise, jedoch unter Verwendung der Komponenten der zweiten physikalischen
Schicht 632 überträgt die zweite
physikalische Schicht 632 128 Bits zu der zweiten Verknüpfungsschicht.
Die 128 Informationsbits, die zu der ersten Verknüpfungsschicht übertragen
werden, stehen jedoch in keinem Verhältnis zu den 128 Informationsbits,
die zu der zweiten Verknüpfungsschicht übertragen
werden. In unseren Beispielen verlaufen die ersten 128 Informationsbits
somit von einem zweiten Prozessor zu dem ersten Port 606.
In ähnlicher
Weise verlaufen die zweiten 128 Informationsbits von der Ein-Ausgabe-Komponente
durch den zweiten Port 634. Der Routing-Agent 602 gibt den 128-Bit-Pfad
in dem ersten Kommunikationspfad-Wechselbaustein 628 frei.
Der Routing-Agent 602 deaktiviert den dualen 64-Bit-Pfad
in dem ersten Kommunikationspfad-Wechselbaustein 628. Der
Routing-Agent 602 gibt das erste Flipflop 630 und
das zweite Flipflop 656 frei.
-
Wenn
das Konfigurationsregister 654 für eine 32-Bit-Punkt-zu-Punkt-Verbindung
programmiert ist, so verbindet der Routing-Agent 602 die beiden physikalischen
Schichten, so dass diese zusammenarbeiten. Der Routing-Agent 602 deaktiviert
den 128-Bit-Pfad
in dem ersten Kommunikationspfad-Wechselbaustein 628. Der
Routing-Agent 620 gibt den dualen 64-Bit-Pfad in dem ersten
Kommunikationspfad-Wechselbaustein 628 frei. Der Routing-Agent 602 gibt
das erste Flipflop 630 frei, sperrt jedoch das zweite Flipflop 656.
Der Routing-Agent 602 erhöht die Taktgeschwindigkeit
für das
erste Register 608 bis zu dem achtzehnten Register 652 um einen
Faktor von Zwei. Die erste physikalische Schicht 604 empfängt vier
16-Bit-Informationspakete und
speichert die Informationspakete über das fünfte Register 616 in
dem zweiten Register 610. Die zweite physikalische Schicht 632 empfängt vier
16-Bit-Informationspakete
und speichert die Informationspakete über das vierzehnte Register 644 in
dem elften Register 638. Der erste Kommunikationspfad-Wechselbaustein 628 stellt
fest, dass das erste 64-Bit-Register vier 16-Bit-Informationspakete
von dem zweiten Register 610 bis zu dem fünften Register 616 aufweist.
Der Kommunikationspfad-Wechselbaustein 628 stellt fest,
dass das zweite 64-Bit-Register vier 16-Bit-Informationspakete von dem elften Register 638 bis
zu dem vierzehnten Register 644 aufweist. Nach dem nächsten Taktzyklus
werden die 64 Informationsbits von dem ersten 64-Bit-Register und die 64 Informationsbits
von dem zweiten 64-Bit-Register über den
dualen 64-Bit-Pfad zu dem ersten Kommunikationspfad-Wechselbaustein 628 übertragen.
Der Kommunikationspfad-Wechselbaustein 628 überträgt die acht
verwandten 16-Bit-Informationspakete für die erste Verknüpfungsschicht.
Sowohl die Vorrichtung außerhalb
des Prozessors als auch der Prozessor übertragen die acht verwandten
16-Bit-Informationspakete als würde
eine 32-Bit-Punkt-zu-Punkt-Verbindung
zwischen dem Prozessor und der Vorrichtung existieren. Die zweite Verknüpfungsschicht
empfängt
kein Signal, da das zweite Flipflop 656 deaktiviert bzw.
gesperrt ist. Auf ähnliche
Weise kann der Routing-Agent drei physikalische Schichten verbinden,
so dass eine 48-Bit-Punkt-zu-Punkt-Verbindung
zwischen dem Prozessor und der Vorrichtung erzeugt wird.
-
Die
Abbildung aus 7 veranschaulicht ein Ausführungsbeispiel
des Routing-Agenten 702, der die eingehenden Kommunikationspfade
in einem Ausführungsbeispiel
der Pufferschicht 700 steuert. Der eingehende Kommunikationspfad
der ersten Verknüpfungsschicht 704 weist
ein erstes 128-Bit-Register 706, eine erste Antwortwarteschlange 708,
eine erste Anforderungswarteschlange 710 und einen ersten
Kommunikationspfad-Wechselbaustein 712 auf. Der eingehende
Kommunikationspfad der zweiten Verknüpfungsschicht 714 weist
ein zweites 128-Bit-Register 716, eine zweite Antwortwarteschlange 711,
eine zweite Anforderungswarteschlange 713 und einen zweiten
Kommunikationspfad-Wechselbaustein 716 auf. Die Komponentenzusammenstellung
der dritten Verknüpfungsschicht 718 und
der vierten Verknüpfungsschicht 720 entsprechen
der der ersten Verknüpfungsschicht 704.
Die erste Verknüpfungsschicht 704 bis
zu der vierten Verknüpfungsschicht 720 werden
in einen fünften
Kommunikationspfad-Wechselbaustein 722, ein Ausführungsbeispiel
eines Routing-Agenten 702, ein fünftes 128-Bit-Register 724,
einen Transaktionsverfolgungspuffer die lokale Adresse (LATT) 726,
einen zentralen Datenverwaltungspuffer (CDM) 728 und einen
Transaktionsverfolgungspuffer für
die entfernte Adresse (RATT) 730 gespeist.
-
Wenn
in einem Ausführungsbeispiel
der eingehenden Pufferschicht 700 das Konfigurationsregister 732 für eine 32-Bit-Punkt-zu-Punkt-Verbindung programmiert
ist, so verbindet der Routing-Agent 702 effektiv zwei Verknüpfungsschichten
miteinander. Die erste Verknüpfungsschicht 704 empfängt die acht
verwandten 16-Bit-Informationspakete (128 Bit) mit der doppelten
Taktgeschwindigkeit von dem Kommunikationspfad-Wechselbaustein in der ersten physikalischen
Schicht. Die erste Verknüpfungsschicht 704 speichert
das 128-Bit-Informationspaket in
dem ersten Register 706. Das 128-Bit-Informationspaket wird entsprechend
zu der ersten Antwortwarteschlange 708 oder der ersten
Anforderungswarteschlange 710 geleitet. Der Routing-Agent 702 sendet
ein Freigabesignal an den ersten Kommunikationspfad-Wechselbaustein 712,
den dritten Kommunikationspfad-Wechselbaustein 734 und
den fünften
Kommunikationspfad-Wechselbaustein 722.
Der Routing-Agent 702 sendet ferner ein Sperrsignal bzw.
ein Deaktivierungssignal an den zweiten Kommunikationspfad-Wechselbaustein 716 und
den vierten Kommunikationspfad-Wechselbaustein 736. Der Routing-Agent 702 leitet
den fünften
Kommunikationspfad-Wechselbaustein 722 an, Daten nur von dem
ersten Kommunikationspfad-Wechselbaustein 712 und dem dritten
Kommunikationspfad-Wechselbaustein 734 anzufordern. In
dem 32-Bit-Modus empfangen der zweite Kommunikationspfad-Wechselbaustein 716 und
der vierte Kommunikationspfad-Wechselbaustein 736 kein
Signal von der physikalischen Schicht, da der Routing-Agent 702 das zweite
Flipflop und das vierte Flipflop in der physikalischen Schicht deaktiviert
hat.
-
Die
128-Bit-Informationspakete werden auf zyklische, sequentielle Art
und Weise über
den ersten Kommunikationspfad-Wechselbaustein 712 und danach
den dritten Kommunikationspfad-Wechselbaustein 734 zu
dem fünften
Kommunikationspfad-Wechselbaustein 722 übertragen.
In einem sich wiederholenden Zyklus fordert der fünfte Kommunikationspfad-Wechselbaustein 722 den
Inhalt der ersten Antwortwarteschlange 708 an, danach der
ersten Anforderungswarteschlange 710, danach der dritten Antwortwarteschlange 738,
danach der dritten Anforderungswarteschlange 740, und wobei
diese Sequenz danach wiederholt wird. Jedes Informationspaket kann
entweder eine Anforderung eines Befehls und/oder von Daten darstellen
oder eine Antwort bzw. Reaktion auf einen Befehl oder Daten. Nachdem
in einem Ausführungsbeispiel
ein Paket in eine Antwortwarteschlange oder eine Anforderungswarteschlange
geschrieben worden ist, werden die Informationen aus diesen Warteschlangen
mit der Kerntaktfrequenz übertragen.
Die Informationspakete werden von dem fünften Kommunikationspfad-Wechselbaustein 722 zu
einer der folgenden drei Komponenten gesendet. Der zentrale Datenverwaltungspuffer
(CDM) 728 speichert Daten, die von der Protokollschicht 740 verbraucht
werden. Der Transaktionsverfolgungspuffer für die entfernte Adresse (RATT) 730 speichert
Befehle von einer entfernten Vorrichtung, wie etwa von einem entfernten Prozessor.
Der CDM 728 speichert entsprechende Daten, sofern vorhanden,
welche dem Befehl zugeordnet sind. In ähnlicher Weise speichert der
Transaktionsverfolgungspuffer für
die lokale Adresse (LATT) 726 lokale Befehle und Antworten
des Prozessorkerns. Die entsprechenden Daten, sofern vorhanden,
die dem Befehl zugeordnet sind, werden in dem CDM 728 gespeichert.
-
Wenn
das Konfigurationsregister 734 für eine 16-Bit-Punkt-zu-Punkt-Verbindung
programmiert ist, so arbeitet jede eingehende Verknüpfungsschicht 704, 714, 718, 720 unabhängig. Der
Routing-Agent 702 leitet den fünften Kommunikationspfad-Wechselbaustein 722 an,
Informationen von den acht möglichen
Quellen anzufordern, der entsprechenden Anforderungswarteschlange 710, 713, 740, 750 oder
der entsprechenden Antwortwarteschlange 708, 711, 738, 748 in
jeder Verknüpfungsschicht 704, 714, 718, 729,
und zwar auf zyklische, sequentielle Art und Weise. Wenn eine bestimmte Warteschlange
leer ist, so zieht der Kommunikationspfad-Wechselbaustein 722 automatisch
Pakete straffrei bzw. ohne negative Folgen aus der nächsten Warteschlange.
In einem Ausführungsbeispiel
werden die Pakete aus den vier physikalischen Schichten mit 100
Megahertz in die entsprechende Warteschlange geschrieben, wenn das
Konfigurationsregister für
eine 16-Bit-Verbindung programmiert ist. Die Pakete werden mit 200
Megahertz geschrieben, wenn das Konfigurationsregister 732 für eine 32-Bit-Verbindung
programmiert ist. Wenn das Konfigurationsregister für eine 48-Bit-Verbindung programmiert
ist, schaltet der Routing-Agent 702 drei Verknüpfungsschichten
zusammen. Nachdem der fünfte
Kommunikationspfad-Wechselbaustein 722 ein Informationspaket
aus den acht möglichen
Quellen ausgewählt
hat, wird das Paket zu der Protokollschicht 740 übertragen.
-
Die
eingehende Verknüpfungsschicht
sendet Antworten und Anforderungen an die Protokollschicht 740.
Die Protokollschicht 740 wechselt die Auswahl eines Befehls
aus dem LATT 726 oder dem RATT 730, begleitet
von Daten von dem CDM 728. In einem Ausführungsbeispiel
können
diese physikalischen Informationen zu einer CPU gesendet werden. Dien
Informationen gehen zur Verarbeitung an die CPU und werden zu der
abgehenden Verknüpfungsschicht übertragen.
Die Protokollschicht 740 ist für gewöhnlich die verarbeitende Komponente.
Die Protokollschicht 740 löst für gewöhnlich Anforderungen von andren
lokalen Prozessoren auf und sendet Anforderungen über die
physikalische Schicht. Die Protokollschicht 740 kann für Funktionen
wie die Rangordnung, die Konflikterkennung und die Kohärenz zuständig sein.
Die Protokollschicht 740 kann Datenanforderungen an die
lokale Speichersteuereinheit weiterleiten, wenn die Anforderung
an einen lokalen Speicher gerichtet ist. Die Protokollschicht 740 kann Snoop-Anforderungen
an die entfernten Knoten und andere lokale Prozessoren senden. Die
Protokollschicht 740 verarbeitet ferner über die
Verknüpfungsschicht
getätigte Anforderungen,
die von einem entfernten Prozessor oder einer Ein-Ausgabe-Komponente
stammen können.
-
Die
Abbildung aus 8 veranschaulicht ein Ausführungsbeispiel
des Routing-Agenten 802, der die abgehenden Kommunikationspfade
in einem Ausführungsbeispiel
der Pufferschicht 800 steuert. Die Protokollschicht 804 sendet
die verarbeiteten Befehle und Daten an jede abgehende Verknüpfungsschicht 806, 808, 810, 812.
Die Protokollschicht 804 stellt selbst erzeugte Befehle
an den LATT 814 zu und Daten, sofern vorhanden, die diesem
Befehl entsprechen, werden dem CDM 816 zugeführt. Die
Protokollschicht 804 stellt Antworten auf Befehle von entfernten
Vorrichtungen dem RATT 818 zu und Daten, sofern vorhanden,
die diesem Befehl entsprechen, werden dem CDM 816 zugeführt. Wenn
das Konfigurationsregister 820 für eine 32-Bit-Punkt-zu-Punkt-Verbindung programmier
ist, gibt der Routing-Agent 802 effektiv zwei der vier
abgehenden Verknüpfungsschichten
frei. Das folgende tritt bei der Verfolgung des Signalpfads in der
ersten abgehenden Verknüpfungsschicht 806 und
in der zweiten abgehenden Verknüpfungsschicht 808 ein. Der
Routing-Agent 802 weist an, dass der zweite Kommunikationspfad-Wechselbaustein 822 und
der vierte Kommunikationspfad-Wechselbaustein (nicht abgebildet)
deaktiviert werden. Der Routing-Agent 802 weist den fünften Kommunikationspfad-Wechselbaustein 828 an,
Daten über
den ersten Kommunikationspfad-Wechselbaustein 824 und den
dritten Kommunikationspfad-Wechselbaustein 826 aus deren
entsprechenden Anforderungspuffer 830 oder Antwortpuffer 832 anzufordern.
Der fünfte
Kommunikationspfad-Wechselbaustein 828 wechselt in sich wiederholenden
Zyklen die Anforderungen von Bits aus dem Anforderungspuffer 830 und
dem Antwortpuffer 832. Der fünfte Kommunikationspfad-Wechselbaustein 828 empfängt ferner
alle Daten, sofern vorhanden, die diesen Befehlen entsprechen, aus
dem CDM 816. Der fünfte
Kommunikationspfad-Wechselbaustein 828 leitet
danach das 128-Bit-Datenpaket durch eine erste Zeitverzögerung 833 entweder
an die abgehende Antwortwarteschlange 836 oder die abgehende
Anforderungswarteschlange 834, die sich in der abgehenden
physikalischen Schicht befinden.
-
In
der abgehenden Verknüpfungsschicht existieren
eine oder mehrere Wiederholungswarteschlangen 838. Die
Wiederholungswarteschlange 838 speichert eine Kopie der
Informationen, die übertragen
wird, wenn ein Fehler bei der Informations- bzw. Datenübertragung
auftritt. Die Wiederholungswarteschlange 838 existiert
primär
für den
Fall, dass ein Fehler im Übermittlungsabschnitt
auftreten kann. Die Wiederholungswarteschlange 838 löscht die
in einer Wiederholungswartschlange 838 gespeicherten Duplikat-Informationen, wenn
eine Bestätigung für eine fehlerfreie
Informationsübertragung
empfangen worden ist.
-
Wenn
das Konfigurationsregister 820 für eine 16-Bit-Punkt-zu-Punkt-Verbindung
programmiert ist, so leitet der Routing-Agent 802 jede
abgehende Verknüpfungsschicht 806, 808, 810, 812 an, unabhängig zu
arbeiten. Der Routing-Agent 802 sendet ein Signal zur Freigabe
aller Kommunikationspfad-Wechselbausteine der abgehenden Verknüpfungsschicht
und zur Festlegung der Taktgeschwindigkeit auf die Standard-Taktgeschwindigkeit.
Die Informationen werden aus dem LATT 814, dem RATT 818 und
dem CDM 816 über
die eigene entsprechende abgehende Verknüpfungsschicht an die entsprechende
abgehende physikalische Schicht geleitet. Der Routing-Agent 802 weist
zum Beispiel den zweiten Kommunikationspfad-Wechselbaustein 822 an, Daten über den
sechsten Kommunikationspfad-Wechselbaustein 840 von
der zweiten Anforderungswarteschlange 842 anzufordern und
danach Daten über
den siebten Kommunikationspfad-Wechselbaustein 844 von
der zweiten Antwortwarteschlange 846 anzufordern. Der zweite
Kommunikationspfad-Wechselbaustein 822 wechselt in einem wiederholten
Zyklus die Anforderungen von Bits von der zweiten Antwortwarteschlange 842 und
der zweiten Anforderungswarteschlange 846. Der zweite Kommunikationspfad-Wechselbaustein 822 empfängt ferner
alle Daten, sofern vorhanden, die diesen Befehlen entsprechen, aus
dem CDM 816. Der zweite Kommunikationspfad-Wechselbaustein 822 leitet das
128-Bit-Datenpaket danach durch eine zweite Zeitverzögerung 848 entweder
an die zweite abgehende Antwortwarteschlange 850 oder die
zweite abgehende Anforderungswarteschlange 852, die sich
in der abgehenden physikalischen Schicht befinden.
-
Die
Abbildung aus 9 veranschaulicht ein Ausführungsbeispiel
des Routing-Agenten 902, der die Kommunikationspfade in
einer abgehenden Informationsübertragungsschicht 900 steuert.
In einem Ausführungsbeispiel
umfasst die Informationsübertragungsschicht
eine oder mehrere physikalische Schichten. Die physikalische Schicht
führt die
tatsächliche
physikalische Informationsübertragung
an Vorrichtungen außerhalb
des Prozessors über
Ports aus, wie etwa einen ersten Port 904 und einen zweiten
Port 906. Für
gewöhnlich
existiert auf jeder physikalischen Schicht ein 16-Bit-Port, wie etwa
der erste Port 904. Der Prozessor überträgt Informationen zwischen dem
Prozessor und einer Vorrichtung außerhalb des Prozessors über diese
Ports. Das Informationssignal enthält Informationen wie etwa eine Anforderung,
eine Antwort oder Daten.
-
In
einem Ausführungsbeispiel
einer Architektur mit zwei Prozessoren sind zum Beispiel drei Ports an
den zweiten Prozessor in dem System angebunden, und der vierte Port
ist an eine Ein-Ausgabe-Komponente angebunden, wie etwa einen Chipsatz.
Ein erster Kommunikationspfad-Wechselbaustein 908, wie
etwa ein Multiplexer, empfängt
ein 128-Bit-Informationspaket
von der Verknüpfungsschicht.
Der erste Kommunikationspfad-Wechselbaustein 908 liest
das 128-Bit-Informationspaket
entweder aus der Antwortwarteschlange 911 oder aus der
Anforderungswarteschlange 910 mit einer Taktgeschwindigkeit
von zum Beispiel 100 Megahertz. Die Signalausgabe des ersten Kommunikationspfad-Wechselbausteins 908 sind
zwei 64-Bit-Informationspakete, ein erstes 64-Bit-Paket und ein zweites
64-Bit-Paket, die in dem ersten Register 912 gespeichert
sind. Nach einer Zeitverzögerung 914 liest der
erste Kommunikationspfad-Wechselbaustein 918 das erste
64-Bit-Paket über das
zweite Register 916 mit der doppelten Taktgeschwindigkeit,
200 Megahertz, des 128-Bit-Informationspakets.
Die Signalausgabe des zweiten Kommunikationspfad-Wechselbausteins 918 sind
zwei 32-Bit-Informationspakete,
ein erstes 32-Bit-Paket und ein zweites 32-Bit-Paket, die in dem
dritten Register 920 gespeichert sind. Die Taktgeschwindigkeit
des 32-Bit-Informationspakets in dem dritten Register wird erneut
verdoppelt, auf 400 Megahertz.
-
Der
Routing-Agent 902 weist jetzt das 32-Bit-Informationspaket
an, einen 32-Bit-Umgehungspfad 922 oder einen 16-Bit-Informationsübertragungspfad
in den entsprechenden Kommunikationspfad-Wechselbausteinen 926, 934 zu
nehmen. Das Konfigurationsregister 924 informiert den Routing-Agenten 902,
ob die Komponente außerhalb
des Prozessors eine 16-Bit, 32-Bit-
oder 48-Bit-Punkt-zu-Punkt-Verbindung darstellen soll.
-
Wenn
zum Beispiel in einem Ausführungsbeispiel
eine 16-Bit-Punkt-zu-Punkt-Verbindung
zwischen dem Prozessor und der Ein-Ausgabe-Komponente existiert, so weist
der Routing-Agent 902 jede physikalische Schicht an, unabhängig von
den anderen physikalischen Schichten zu arbeiten. Ein vierter Kommunikationspfad-Wechselbaustein 926 liest
das 32-Bit-Informationspaket
mit 400 Megahertz aus dem dritten Register 920 und gibt
zwei 16-Bit-Informationspakete aus. Ein fünfter Kommunikationspfad-Wechselbaustein 928 liest
das 16-Bit-Informationspaket
mit 400 Megahertz aus dem vierten Register 927 und gibt
das 16-Bit-Informationspaket an den ersten Port 904 aus.
Der Routing-Agent 902 sendet ein Signal an den sechsten
Kommunikationspfad-Wechselbaustein 930 in der zweiten abgehenden
physikalischen Schicht 932. Das Signal gibt den 16-Bit-Pfad in dem fünften Kommunikationspfad-Wechselbaustein 928 frei.
Der Routing-Agent 902 deaktiviert den 32-Bit-Umgehungspfad 922 von dem
vierten Kommunikationspfad-Wechselbaustein 926.
Der Routing-Agent 902 sendet ferner ein Signal an die zweite
physikalische Schicht 932, den sechsten Kommunikationspfad-Wechselbaustein 930,
zur Freigabe des 16-Bit-Pfads
in dem sechsten Kommunikationspfad-Wechselbaustein 930 und
zum Sperren/Ignorieren des 32-Bit-Umgebungspfads 922 von dem
dritten Register 920. Somit handelt es sich bei der Ausgabe
des ersten Ports 904 und des zweiten Ports 906 um
nicht verwandte 16-Bit-Informationspakete.
-
Wenn
in einem Ausführungsbeispiel
zum Beispiel eine 32-Bit-Punkt-zu-Punkt-Verbindung
zwischen dem Prozessor und der Ein-Ausgabe-Komponente existiert, so verbindet
der Routing-Agent 902 den Ausgang des ersten Ports 904 und
den Ausgang des zweiten Ports 906. Der Routing-Agent 902 sendet
ein Signal an den sechsten Kommunikationspfad-Wechselbaustein 930.
Das Signal des Routing-Agenten sperrt bzw. deaktiviert den sechsten Kommunikationspfad-Wechselbaustein 930 und
gibt den 32-Bit-Umgebungspfad 922 von dem dritten Register 920 frei.
Der Routing-Agent 902 sendet ferner ein Signal an die erste
physikalische Schicht 931, den vierten Kommunikationspfad-Wechselbaustein 926,
um den 32-Bit-Umgehungspfad 922 freizugeben. Die Ausgaben
des ersten Ports 904 und des zweiten Ports 906 stellen
somit verwandte 16-Bit-Informationspakete dar. Anders ausgedrückt handelt es
sich bei der Ausgabe des ersten Ports 904 und des zweiten
Ports 906 um ein 32-Bit-Informationspaket.
Um die gleichen Übertragungsgeschwindigkeiten
aufrecht zu erhalten, sendet der Routing-Agent 902 ferner
ein Signal zur Verdoppelung der in den Registern auftretenden Taktgeschwindigkeiten.
Zum Beispiel wird das 32-Bit-Informationspaket in dem dritten Register 920 jetzt
mit 800 Megahertz getaktet. 800 Megahertz entsprechen der doppelten
Taktgeschwindigkeit im Vergleich einer auftretenden 16-Bit-Informationsübertragung.
In ähnlicher
Weise kann der Routing-Agent 902 drei Ports miteinander verbinden
(nicht abgebildet), so dass eine 48-Bit-Verbindung in dem abgehenden
Pfad erzeugt wird.
-
Wenn
in einem alternativen Ausführungsbeispiel
drei physikalische Schichten zum Beispiel mit einem zweiten Prozessor
verknüpft
sind, so kann der Routing-Agent optional so programmiert werden, dass
die drei verwandten 16-Bit-Pakete,
die an den zweiten Prozessor gerichtet sind, durch entsprechende
Komponenten jeder der Verknüpfungs-
und physikalischen Schichten geleitet werden. Somit verläuft das
erste 16-Bit-Paket durch die Komponenten der ersten physikalischen
Schicht und der ersten Verknüpfungsschicht.
Das zweite 16-Bit-Paket verläuft durch
die Komponenten der zweiten physikalischen Schicht und der zweiten
Verknüpfungsschicht.
Das dritte 16-Bit-Paket verläuft
durch die Komponenten der dritten physikalischen Schicht und der
zweiten Verknüpfungsschicht.
Der Routing-Agent verändert den
Adressierungs-Header in den drei 16-Bit-Paketen, um dem zweiten
Prozessor mitzuteilen, dass diese drei 16-Bit-Pakete im Verhältnis zueinander
stehen.
-
In
Bezug auf die Erfindung sind verschiedene Modifikationen und alternative
Ausführungen möglich. Spezielle
Ausführungsbeispiele
der Erfindung sind nur zu Beispielzwecken dargestellt. Die Verbindung
zwischen dem Prozessor und den Vorrichtungen bzw. Bausteinen können zum
Beispiel 8 Bit bis 64 Bit oder mehr entsprechen. Die Taktgeschwindigkeiten
bzw. Taktraten können
zum Beispiel ein Megahertz bis ein Gigahertz oder mehr entsprechen.
Die Register können
zwischen 1 Bit und 128 Bit und darüber liegen. Ferner können die
meisten durch die elektronischen Hardware-Komponenten ausgeführten Funktionen
durch Sofwareemulation dupliziert werden. In ähnlicher Weise können die
Funktionalität
jeder Schicht, der Protokollschicht, der Pufferschicht und der Informationsübertragungsschicht zum
Beispiel auf einer einzigen Schicht kombiniert oder auf eine andere
Komponente verlagert werden. Die Erfindung ist somit nicht auf die
speziellen offenbarten Ausführungen
beschränkt,
vielmehr umfasst die Erfindung alle Modifikationen, Äquivalente
und Alternativen gemäß dem Umfang
der vorliegenden Erfindung, der durch die anhängigen Ansprüche definiert
ist.