-
Die
vorliegende Erfindung betrifft allgemein digitale Computersysteme
und insbesondere digitale Computer, die einen SPI-4-Bus umfassen.
-
HINTERGRUND DER ERFINDUNG
-
Die
Lösungswege,
die in diesem Abschnitt beschrieben werden, könnten weiterverfolgt werden, sind
aber nicht notwendigerweise Lösungswege,
die früher
formuliert oder weiterverfolgt worden sind. Deshalb sind die in
diesem Abschnitt beschriebenen Lösungswege
kein Stand der Technik für
die Ansprüche
in der vorliegenden Anmeldung, sofern im vorliegenden Dokument nichts
anderes angegeben ist, und werden durch Angabe in diesem Abschnitt
nicht als Stand der Technik zugelassen.
-
Digitale
Computer verwenden Eingangs-/Ausgangs-(E/A)-Busse zum Transferieren von
Informationen zwischen Peripheriegeräten und einer Computer-Zentraleinheit
und einem Computerspeicher. E/A-Funktionen werden auch in Systemen mit
mehreren verteilten Prozessoren und mehreren verteilten Speichern
benötigt.
-
Eine
Vielfalt von E/A-Bus-Architekturen, die eine Personal Computer Interface
(PCI) (Personalcomputerschnittstelle) einschließen, wird in solchen Computersystemen
verwendet. Der System Packet Interface-4-Bus (Systempaketschnittstellen-4-Bus) ist
ein relativ neuer Bus mit hoher Bandbreite, der im Allgemeinen in
Datenpaketverarbeitungssystemen für Computernetzwerke, wie etwa
Hochgeschwindigkeits-Routern und Switches, verwendet wird. Die Kenndaten
der SPI4.2-Bus-Architektur sind in einer Schnittstellenspezifikation
(Interface Specification) beschrieben, die in dem Dokument www.oiforum.com/public/impagreements.html
zur Verfügung steht.
In diesem Dokument ist der Begriff "SPI-4" äquivalent
zu "SPI4.2" und umfasst Varianten
und Äquivalente
der SPI4.2-Bus-Architektur.
-
Obwohl
der SPI-4-Bus einen Hochgeschwindigkeits-Kommunikationspfad für Paketdaten innerhalb eines
Computersystems bereitstellt, ist der SPI-4-Bus nicht für die direkte
Kommunikation zu externen Netzwerken oder Geräten geeignet. Das Anschließen eines
Hosts mit einem SPI-4-Bus
an einem Netzwerk erfordert normalerweise die Bereitstellung von
logi schen oder physikalischen Ports oder Schnittstellen, die mit
anderen Geräten
oder Netzwerken gekoppelt sind. Einige Portadapter sind architekturmäßig als
Diensteadapter ausgelegt, die keine Ports oder Schnittstellen aufweisen,
aber eine bestimmte Art von Paketverarbeitungsdienst für einen Host
bereitstellen, wie zum Beispiel die Komprimierung, Dekomprimierung,
Verschlüsselung
oder Entschlüsselung,
etc..
-
Benutzer
und Herstellen wünschen
sich vor allem Hostsysteme, die Ports und Schnittstellen aufnehmen
können,
die unterschiedliche Technologien verwenden, wie etwa Ethernet,
Fast Ethernet, Gigabit Ethernet, optische, serielle oder andere
Schnittstellen. In einem Lösungsweg
ist ein Host-Router oder -Switch mit einer Vielfalt von unterschiedlichen Ports
festverdrahtet. Aber ein Benutzer kann einen solchen Host nicht
neu konfigurieren, wenn sich die Port-Anforderungen des Benutzers ändern. Solche Benutzer
und Hersteller wünschen
sich ein Hostsystem, das an sich ändernde Port- und Schnittstellenanforderungen
angepasst werden kann.
-
Das
Hot Swapping (Austausch von Komponenten bei laufendem Betrieb) kann
auch zu einer Beschädigung
einiger Vorrichtungen führen,
die mit dem SPI-4-Bus verbunden sind, wie etwa Vorrichtungen, die
die Complimentary Metal Oxide Semiconductor (CMOS)-Technologie verwenden.
CMOS-Vorrichtungen
sind großen
Strömen
ausgesetzt, wenn sich Eingänge
zu den CMOS-Empfängern
in dem CMOS-Vermittlungsbereich befinden. Einige CMOS-Empfänger weisen
zwei Feldeffekttransistoren (FETs) auf, die in Reihe mit einem ersten
FET, der mit einer positiven Stromzufuhrschiene verbunden ist, und
mit einem zweiten FET geschaltet sind, der mit einer negativen Stromzufuhrschiene
verbunden ist. Wenn sich der Eingang zu den beiden FETs in dem Vermittlungsbereich
befindet, können
beide FETs zur gleichen Zeit eingeschaltet werden, was einen Gleichstrompfad
direkt durch die CMOS-Vorrichtung
erzeugt. Der kontinuierliche eingeschaltete Zustand der beiden FETs
kann genug Strom abgeben, um die CMOS-Vorrichtung zu beschädigen.
-
CMOS-Vorrichtungen
erfahren auch Latch-Up-Bedingungen, wenn ein Eingang über eine der
CMOS-Stromzufuhrschienen hinaus angesteuert wird. In der Latch-Up-Bedingung
geben parasitäre Transistoren
in der CMOS-Struktur große
Mengen an Strom ab, die die CMOS-Vorrichtung zerstören können. Bei de
oben beschriebenen Verlustleistungsbedingungen können aus einem Hot Swapping
an dem Host-Schnittstellenbus resultieren.
-
Das
US-Patent mit der Nummer 5,793,987 und
das
US-Patent mit der Nummer
6,163,824 von Quackenbush et al. offenbaren einen Portadapter
mit separatem lokalen PCI-Bus und einem lokalen Bus und assoziierte
Verarbeitungsverfahren. Ein Portadapter ist eine elektronische Vorrichtung,
die einen oder mehrere Ports bereitstellt und die in ein Hostsystem
eingesetzt wird, um zusätzliche
Merkmale oder Funktionen für
den Host bereitzustellen. Die Technologie von Quackenbush et al.
ist in den PCI-Bus-basierten Portadaptern in den Routern der CISCO
7200 Serie und in den Routern der CISCO 7500 Serie der Firma Cisco
Systems, Inc., San Jose, Kalifornien verwendet worden. Aber die
Technologie von Quackenbush et al. ist nicht für Hosts geeignet, die SPI-4-Bus-Architekturen
aufweisen, weil große technische
Unterschiede zwischen dem PCI-Bus und dem SPI-4-Bus bestehen. Zum
Beispiel kann der PCI-Bus keine Daten verarbeiten, die von Schnittstellen
mit hohen Raten wie z.B. 10 Gigabit pro Sekunde (Gbps) ankommen.
-
Noch
ein weiterer Nachteil existierender Portadapter ist derjenige, dass
sie nicht nahtlos mit heterogenen Netzwerkumgebungen interoperabel sind.
Zum Beispiel kann ein Host mit einer Vielzahl von Portadaptern mit
externen Netzwerken oder Geräten
unter Verwendung irgendeiner einer großen Anzahl von Netzwerktechnologien
kommunizieren. Als Folge davon können
Datenpakete, die an den Portadaptern empfangen werden, irgendeines
einer großen
Anzahl von unterschiedlichen Formaten aufweisen. Wenn es notwendig
wäre, dass
das Hostsystem eine große
Anzahl von unterschiedlichen Paketformaten verstehen und verarbeiten
müsste,
so wäre dies
kompliziert, und es würde
die Skalierbarkeit auf neue Technologien fehlen. Ferner wäre es aufgrund von
Unterschieden bei dem Typ und der Quantität von Daten, die in Paketen
unterschiedlicher Technologien übertragen
werden, unpraktisch, ein generisches Paketformat zu haben, das zwischen
jedem Typ von Portadapter und dem Hostsystem verwendet wird.
-
Deshalb
besteht ein Bedürfnis
nach einem Portadapter, der ein bestimmtes Paketformat für eine bestimmte
Technologie verarbeiten kann und dem Host Daten in einem einzigen
gleichbleibenden Paketformat für
die interne Verarbeitung bereitstellt.
-
Auf
der Grundlage des oben Gesagten besteht in dem relevanten technischen
Gebiet ein eindeutiges Verlangen nach einem Portadapter, der ein Hostsystem,
das eine SPI-4-Bus-Architektur aufweist, mit verschiedenen Netzwerktechnologien
verbinden kann. Klarer ausgedrückt
besteht ein Bedürfnis
nach einer Vorrichtung, die eine Hot-Plug-fähige (während des Betriebs einsteckbare),
adaptive Schnittstelle von dem SPI-4-Bus eines Hosts zu externen
Peripheriegeräten
bereitstellen kann.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Die
vorliegende Erfindung wird beispielshalber und nicht auf beschränkende Weise
in den Figuren der beigefügten
Zeichnungen veranschaulicht, in denen sich ähnliche Bezugszeichen auf ähnliche
Elemente beziehen, und in denen:
-
1 ein
Blockdiagramm ist, das einen Überblick über ein
Hostsystem mit einem oder mehreren Portadaptern veranschaulicht;
-
2 ein
Blockdiagramm ist, das einen Überblick über einen
Portadapter für
den SPI-4-Bus veranschaulicht;
-
3 ein
ausführlicheres
Blockdiagramm des Portadapters von 2 gemäß einem
Ausführungsbeispiel
ist;
-
4A ein
Ablaufdiagramm eines Prozesses zur Anpassung des Betriebsverhaltens
des SPI-4-Busses eines Hostsystems auf der Grundlage einer Fähigkeit
eines Portadapters ist;
-
4B ein
Ablaufdiagramm ist, das einen Überblick über einen
Prozess der Umwandlung von empfangenen Datenpaketen veranschaulicht;
-
5 ein
Blockdiagramm eines umgewandelten Paketformats ist.
-
AUSFÜHRLICHE BESCHREIBUNG DES BEVORZUGTEN
AUSFÜHRUNGSBEISPIELS
-
Es
wird ein Hot-Plug-fähiger
Portadapter für einen
Hochgeschwindigkeits-Bus beschrieben. In der nachfolgenden Beschreibung
werden zum Zwe cke der Erläuterung
zahlreiche spezifische Einzelheiten dargelegt, um ein gründliches
Verständnis
der vorliegenden Erfindung bereitzustellen. Es wird einem Fachmann
auf dem Gebiet aber offensichtlich werden, dass die vorliegende
Erfindung ohne diese spezifischen Einzelheiten praktiziert werden
kann. Ansonsten werden wohlbekannte Strukturen und Vorrichtungen
in Blockdiagrammform gezeigt, um eine unnötige Undeutlichkeit der vorliegenden
Erfindung zu vermeiden.
-
Ausführungsbeispiele
werden hier gemäß der folgenden Übersicht
beschrieben:
- 1.0 Allgemeiner Überblick
- 2.0 Struktureller und funktioneller Überblick
- 2.1 Portadapter-Architektur
- 2.2 Anpassung an unterschiedliche SPI-4-Betriebsgeschwindigkeiten
- 2.3 Erweiterter Flusskontrollbus
- 2.4 Vorverarbeitung von Paketen mit einem Portadapter
- 3.0 Implementierungsmechanismen-Hardware-Überblick
- 4.0 Erweiterungen und Alternativen
-
1.0 ALLGEMEINER ÜBERBLICK
-
Die
im oben genannten Hintergrund identifizierten Bedürfnisse
und andere Bedürfnisse
und Aufgaben, die aus der nachfolgenden Beschreibung offensichtlich
werden, werden in der vorliegenden Erfindung verwirklicht, die in
einer Ausführungsform
einen Hot-Plug-fähigen
Portadapter für
das Anschließen
von Netzwerkschnittstellen an einem Hostsystem durch einen SPI-4-Bus
umfasst. Der Portadapter kommuniziert mit dem Hostsystem durch eine
Portadapter/Host-Schnittstelle, die den SPI-4-Bus und einen Steuerbus
umfasst; ein erweiterter Flusskontrollbus kann bereitgestellt sein.
Es werden Verfahren zum Auswählen
und Verwenden eines einer kleinen Vielzahl von unterschiedlichen
Paketformaten für verschiedene
Vernetzungstechnologien, damit der Portadapter Einzelheiten der
Technologie, die er handhabt, vor dem Hostsystem verbergen kann,
und zum Betreiben des SPI-4-Busses des Hostsystems bei einer von
mehreren Geschwindigkeiten auf der Grundlage von Bandbreitenanforderungen
des Portadapters bereitgestellt.
-
Gemäß einer
Ausführungsform
stellt die Erfindung einen Portadapter zum Koppeln von null oder mehreren
Netzwerkschnittstellen mit einem Hostsystem, das einen SPI-4-Bus
aufweist, wobei der Portadapter null oder mehrere Netzwerkschnittstellen
umfasst; einen SPI-4-Bus, der mit einem Hostsystem gekoppelt ist,
um einen Kommunikationskanal zwischen dem Host und den Netzwerkschnittstellen
bereitzustellen; einen Steuerbus, der mit dem Hostsystem gekoppelt
ist, um den Portadapter zu steuern und zu überwachen; und eine Schnittstellenlogik
bereit, die den SPI-4-Bus und den Steuerbus mit den Netzwerkschnittstellen
verbindet.
-
Gemäß einem
Merkmal umfasst die Schnittstellenlogik ein vom Anwender programmierbares Gate
Array (FPGA; Field Programmable Gate Array), eine anwendungsspezifische
integrierte Schaltung (ASIC; Application-Specific Integrated Circuit),
eine Kombination aus diesen und einem oder mehreren anderen Hardware-Elementen,
oder eine Kombination aus einem oder mehreren anderen Hardware-Elementen.
Gemäß einem
anderen Merkmal ist ein Identitätsbus
mit dem Hostsystem gekoppelt, um eine Identifizierung des Portadapters
durch das Hostsystem zu erlauben. In noch einem anderen Merkmal
ist ein erweiterter Flusskontrollbus bereitgestellt, auf dem der
Portadapter den FIFO-Status zu dem Hostsystem auf einer Vielzahl
von separaten logischen Kanälen übertragen
kann. In noch einem weiteren Merkmal kommuniziert ein Taktbus Netzwerk-Timing-Informationen
zwischen einem Port und dem Hostsystem zur Bereitstellung einer
Synchronisierung eines Ports mit einem anderen Port, einer Synchronisierung
eines Hostsystem-Referenzoszillators mit einem Port oder einer Synchronisierung
eines Ports mit einem Referenztakt, der sich extern zu dem Hostsystem
befindet.
-
Der
Portadapter kann des Weiteren eine Stromversorgungsschaltung umfassen,
die selektiv Strom für
den Adapter während
einer online Einfügung
und Entfernung des Portadapters von dem Hostsystem liefert, während das
Hostsystem in Betrieb bleibt. Gemäß einem Merkmal speichert ein Identifikationsrepositorium
einen eindeutigen Identifizierer eines Typs des Portadapters. In
einem darauf bezogenen Merkmal speichert das Identifikationsrepositorium
des Weiteren einen oder mehrere Konfigurationsparameterwerte, die
mit dem Portadapter assoziiert sind. In noch einem anderen darauf
bezogenen Merkmal umfasst das Identifikationsrepositorium einen
elektrisch löschbaren,
programmierbaren Lesespeicher. Das Identifikationsrepositorium kann Werte
speichern, die es dem Host erlauben festzustellen, ob der Portadapter
von dem Hostsystem unterstützt
werden kann. Das Identifikationsrepositorium kann Werte speichern,
die es dem Host erlauben, eine oder mehrere Betriebsfrequenzen des SPI-4-Busses
zu bestimmen.
-
In
noch einem anderen Merkmal ist ein erweiterter Flusskontrollbus
mit dem Hostsystem gekoppelt, der den Adapter befähigt, dass
er Informationen auf dem SPI-4-Bus unter Verwendung von mehr als
den 256 logischen Kanälen,
die herkömmlicherweise
bei der Verwendung des SPI-4-Busses zur Verfügung stehen, kommunizieren
kann. In einem darauf bezogenen Merkmal umfasst die Flusskontrollschnittstellenlogik
für den
Flusskontrollbus einen kalenderbasierten Mechanismus, der es dem
Portadapter erlaubt, den Pufferfüllstatus
von Tausenden von logischen Kanälen
zu dem Hostsystem zu übertragen.
Der erweiterte Flusskontrollbus kann ein TDM-Kalender-Rahmensynchronisationssignal,
ein Flusskontrolltaktsignal, ein Statussignal und ein Paritätssignal
umfassen.
-
Gemäß einem
Merkmal umfasst der Adapter null Schnittstellen, wobei die Schnittstellenlogik
so konfiguriert ist, dass sie ein oder mehrere Pakete von dem Hostsystem
empfängt,
die Pakete gemäß einer spezifizierten
Funktion umwandelt und die umgewandelten Pakete zu dem Hostsystem
sendet. In einem darauf bezogenen Merkmal umfasst die spezifizierte Funktion
die Verschlüsselung
oder die Entschlüsselung.
-
In
noch einer anderen Ausführungsform
stellt die Erfindung ein Verfahren zum selektiven Bestimmen einer
Betriebsfrequenz für
einen SPI-4-Bus eines Hostcomputersystems bereit, das einen Portadapter
verwendet, wobei die Betriebsfrequenz verschieden von einer herkömmlichen
SPI-4-Bus-Betriebsfrequenz
sein kann, wobei das Verfahren den Schritt des Ausgebens einer Abfrage
von einem Hostcomputersystem, das einen SPI-4-Bus aufweist, zu einem
Portadapter, wobei der Portadapter einen SPI-4-Bus, der mit einem
Hostsystem für
eine Steuerung und für
Daten zwischen dem Host und der SPI-4-Vorrichtung gekoppelt werden kann,
einen Steuerbus, der parallel mit dem SPI-4-Bus zwischen dem Hostsystem
und dem Portadapter für
den Portadapter unabhängig
von dem SPI-4-Bus gekoppelt ist, und eine Schnittstellenlogik, die
den SPI-4-Bus und den Steuerbus mit einer von einer Vielzahl von
Leitungsschnittstellen verbindet, und ein Identifikationsrepositorium
umfasst; den Schritt des Empfangens von dem Identifikationsrepositorium
einer Identifikation des Portadapters; den Schritt des Bestimmens
auf der Grundlage der Informationen, die von dem Identifikationsrepositorium
empfangen wurden, ob der Hostsystem-SPI-4-Bus bei einer Frequenz
arbeiten kann, die kompatibel mit wenigstens einer der SPI-4-Bus-Betriebsfrequenzen
ist, die von dem Portadapter unterstützt werden; und den Schritt
des Einstellens einer Betriebsfrequenz des Hostsystem-SPI-4-Busses
gleich zu einer ausgewählten
Betriebsfrequenz der SPI-4-Bus-Betriebsfrequenzen, die von dem Portadapter
unterstützt
werden, umfasst.
-
In
einem Merkmal dieser Ausführungsform umfasst
der Einstellungsschritt das Einstellen der Betriebsfrequenz des
Hostsystem-SPI-4-Busses gleich zu einer schnellsten der SPI-4-Bus-Betriebsfrequenzen,
die von dem Portadapter unterstützt
werden. In einem anderen Merkmal umfasst das Verfahren das Einschalten
des Portadapters nur dann, wenn der Hostsystem-SPI-4-Bus bei einer
Frequenz arbeiten kann, die mit wenigstens einer der SPI-4-Bus-Betriebsfrequenzen
kompatibel ist, die von dem Portadapter unterstützt werden. In einem darauf
bezogenen Merkmal umfasst das Verfahren das Einschalten des Portadapters
nur dann, wenn ein oder mehrere Faktoren zufriedengestellt sind,
wobei die Faktoren aus der Gruppe ausgewählt werden, die aus Folgendem besteht:
das Hostsystem weist eine Software-Unterstützung für ein Paketformat auf, das
von dem Portadapter benötigt
wird; der Portadapter gibt weniger als einen maximalen Betrag an
Verlustleistung ab, der von dem Hostsystem erlaubt wird; das Hostsystem kann
mit einer Bandbreite zusammenpassen, die von dem Portadapter benötigt wird:
oder eine Lizenzautorisierungsvoraussetzung, die mit dem Portadapter assoziiert
ist, erlaubt es, dass der Portadapter in dem Hostsystem laufen kann.
-
In
noch einem anderen Merkmal umfasst das Verfahren des Weiteren das
Empfangen von dem Identifikationsrepositorium von Werten, die es
dem Host erlauben, zu bestimmen, ob der Portadapter von dem Hostsystem
unterstützt
werden kann, und von einer oder mehreren Betriebsfrequenzen des SPI-4-Busses. Das Verfahren
kann ferner das Empfangen von dem Identifikationsre positorium von
Werten umfassen, die es dem Host erlauben, ein Paketformat von Daten
zu bestimmen, die quer durch den SPI-4-Bus von dem Portadapter gesendet
werden. In einem darauf bezogenen Merkmal kann das Verfahren ferner
das Empfangen von dem Identifikationsrepositorium von einem oder
mehreren Werten umfassen, die ein Paketformat von Daten spezifizieren,
die quer durch den SPI-4-Bus von dem Portadapter gesendet werden.
-
In
noch einer anderen Ausführungsform
stellt die Erfindung einen Portadapter zum Koppeln von null oder
mehreren Netzwerkschnittstellen mit einem Hostsystem bereit, das
einen SPI-4-Bus aufweist, wobei der Portadapter Folgendes umfasst:
Null oder mehr Netzwerkschnittstellen; einen SPI-4-Bus, der mit
einem Hostsystem gekoppelt ist, um einen Kommunikationskanal zwischen
dem Host und den Netzwerkschnittstellen bereitzustellen; einen Steuerbus, der
mit dem Hostsystem gekoppelt ist, zum Steuern und Überwachen
des Portadapters; eine Schnittstellenlogik, die den SPI-4-Bus und
den Steuerbus mit den Netzwerkschnittstellen verbindet; und eine
Paketverarbeitungslogik zum Vorverarbeiten von Paketen, die an den
Schnittstellen empfangen werden, durch das Durchführen der
Folgenden Schritte: Empfangen eines ersten Pakets an einer Eintrittsschnittstelle
des Portadapters; Erzeugen eines zweiten Pakets, das mit einem ausgewählten der
internen Paketformate übereinstimmt;
Umwandeln von Daten aus einem oder mehreren Feldern des ersten Pakets in
ein oder mehrere entsprechende Felder des zweiten Pakets; Bereitstellen
des zweiten Pakets zu einem Hostsystem.
-
In
einem Merkmal dieser Ausführungsform umfasst
die Paketverarbeitungslogik des Weiteren die Schritte des Bewegens
eines Rests eines Paket-Header
und eines Paket-Körpers
von dem ersten Paket in das zweite Paket. Die Paketverarbeitungslogik
kann so konfiguriert sein, dass sie den Schritt des Auswählens eines
einer Vielzahl von internen Paketformaten durchführt. Die Eintrittsschnittstelle
kann zum Beispiel eine Ethernet-Schnittstelle, eine ATM-Schnittstelle, ein
Frame Relay, eine serielle Schnittstelle, ein hochkanalisierte Schnittstelle,
eine RPR-Schnittstelle oder eine POS-Schnittstelle oder irgendeine
andere Schnittstelle sein, die jetzt bekannt ist oder später erfunden
werden wird.
-
In
anderen Ausführungsformen
umfasst die Erfindung eine Computervorrichtung und ein von einem
Computer lesbares Medium, die so konfiguriert sind, dass sie die
oben genannten Schritte ausführen.
-
2.0 STRUKTURELLER UND FUNKTIONELLER ÜBERBLICK
-
2.1 PORTADAPTER-ARCHITEKTUR
-
Ein
steckbarer Portadapter wird verwendet, um null oder mehr Ports oder
Schnittstellen mit einem Hostsystem durch einen SPI-4-Bus zu verbinden,
um dem Hostsystem eine Funktionalität hinzuzufügen. Typischerweise sind die
Ports oder Schnittstellen optische Ports oder Schnittstellen mit
hoher Bandbreite. Der Portadapter kommuniziert mit dem Hostsystem durch
eine Portadapter/Host-Schnittstelle, die den SPI-4-Bus, einen Steuerbus,
einen erweiterten Flusskontrollbus und andere Signale und Stromleitungen
umfasst. Die Ports oder Schnittstellen werden in einer normalen
Art und Weise über
den SPI-4-Bus konfiguriert
und kommunizieren über
diesen, während
eine andere Funktionalität
an dem Portadapter unabhängig
davon durch den Steuerbus gesteuert wird.
-
In
dem vorliegenden Dokument ist der Begriff "SPI-4" äquivalent
zu "SPI4.2" und umfasst Varianten der
SPI4.2-Bus-Architektur. Auf diese Weise kann ein Ausführungsbeispiel
einen Bus verwenden, der strikt die SPI-4-Spezifikation einhält, oder kann Varianten, Erweiterungen,
Modifikationen oder Verbesserungen der SPI-4-Spezifikation verwenden.
-
Das
Hostsystem verwendet einen spezialisierten Identitätsbus, um
die Identität
eines Portadapters zu bestimmen, welche das Hostsystem dann dazu
verwendet, zu bestimmen, welche Programmierung und Konfiguration
benötigt
werden. Der Steuerbus wird von dem Hostsystem zur Konfiguration
und zur Steuerung von Vorrichtungen an dem Portadapter verwendet,
sowie auch zum Aktualisieren von programmierbaren Schaltungen in
dem Portadapter, wie zum Beispiel vom Anwender programmierbare Gate Arrays
(FPGAs). Alternativ dazu kann ein JTAG-Bus verwendet werden, um
solche programmierbaren Vorrichtungen zu aktualisieren. FPGAs mit
flüchtigem
Programmspeicher müssen
jedes Mal dann programmiert werden, wenn sie eingeschaltet werden, und
können
in dem Feld von dem Hostsystem neu programmiert werden, um Pro grammfehler
zu reparieren und die Performanz und/oder die Funktionalität zu verbessern.
-
In
einem Ausführungsbeispiel
ist der SPI-4-Bus in dem Portadapter mit der SPI-4-Anschlusslogik
gekoppelt, die mit einer oder mehreren Netzwerkschnittstellen wie
etwa einem Framer, einem ATM SAR, etc. gekoppelt ist. Gemeinschaftlich steuern
die SPI-4-Anschlusslogik und die Netzwerkschnittstellen null oder
mehr Ports, die mit null oder mehr Kommunikationsleitungen, -vorrichtungen
oder -netzwerken wie etwa lokalen Netzen (LAN) und Weitbereichsnetzen
(WAN) gekoppelt sind. Die SPI-4-Anschlusslogik und die Netzwerkschnittstellen kooperieren,
um Daten von den Ports oder Schnittstellen zu empfangen und dann
die Daten auf dem SPI-4-Bus in einer umgearbeiteten Form weiterzusenden,
und um Daten von dem Hostsystem zu empfangen und solche Daten auf
einem Port weiterzusenden.
-
Der
Steuerbus kann zum Programmieren der Logik in dem Portadapter, wie
etwa einer Schnittstellenlogik, Netzwerkschnittstellen und Mehrzweckregister
und andere programmierbare Elemente verwendet werden. Der Steuerbus
stellt auch einen Zugriff auf Steuerschnittstellen von Vorrichtungen
an dem Portadapter bereit. Der Stromversorgungsbus wird zusammen
mit der Software, die das Anlegen von Strom steuert, zum Durchführen von Hot-Swap-Operationen verwendet,
in denen der Portadapter aus dem Hostsystem herausgezogen oder in
das Hostsystem eingesteckt wird, während das Hostsystem entweder
eingeschaltet ist und arbeitet oder während es abgeschaltet ist.
Der Portadapter kann einen Steckverbinder mit einem oder mehreren
Erkennungs-Pins
umfassen, die kürzer
als andere Stromversorgungsbus-Pins und andere Signal-Pins in dem
Steckverbinder sind. In einem Ausführungsbeispiel befinden sich
die kürzeren
Pins an entgegengesetzten Enden des Steckverbinders. Die kürzeren Erkennungs-Pins
erlauben es dem Portadapter und dem Hostsystem, eine Hot-Swap-Bedingung
vorauszusehen und wiederum auf eine Hot-Swap-Bedingung zu antworten, indem sie den Strom
zu dem Portadapter nur dann aktivieren, nachdem der Portadapter
vollständig
eingeführt
ist. Die kürzeren
Pins ermöglichen
es dem Hostsystem auch festzustellen, dass alle Pins korrekt an
ihrem Platz sind. Beim Entfernen eines Portadapters werden zuerst
die kurzen Pins entkoppelt und ermöglichen es dem Portadapter,
Signale zu dem Host zu senden, die dazu verwendet werden, den Strom
zu dem Portadapter zu deaktivieren.
-
Wenn
der Portadapter mit dem Hostsystem während einer Hot-Swap-Bedingung verbunden
wird, startet die Steuerschaltung eine gesteuerte Einschaltsequenz.
Wenn der Portadapter von dem Hostsystem während einer Hot-Swap-Bedingung getrennt wird,
startet die Steuerschaltung eine gesteuerte Abschaltsequenz.
-
Ein
Hot-Swap-Protokoll zwischen dem Portadapter und dem Hostsystem bricht
die Datenkommunikationen auf dem SPI-4-Bus in dem Portadapter ab,
wenn sich der Portadapter nicht auf einem Betriebsleistungspegel
befindet. Wenn der Portadapter von dem Hostsystem getrennt wird,
werden Signale, die von der Hostschaltung kommen, in bekannte sichere
Zustände
geändert,
um zu verhindern, dass potentiell hohe Ströme Vorrichtungen während online
Einfügeoperationen
beschädigen.
Das Hot-Swap-Protokoll verhindert auch die Beschädigung von Daten auf dem SPI-4-Bus
und die Beschädigung
von logischen Zuständen
in dem Host.
-
Ein
Portadapter, wie er hier offenbart wird, kann Daten verarbeiten,
die von Schnittstellen mit bis zu 10 Gigabit pro Sekunde (Gbps)
ankommen. In anderen Ausführungsbeispielen
können
Verbesserungen bei der SPI-4-Bus-Architektur,
die schnellere Datenübertragungsraten
erlauben, untergebracht werden.
-
1 ist
ein Blockdiagramm, das einen Überblick über ein
Hostsystem mit einem Portadapter veranschaulicht. Im Allgemeinen
umfasst ein Hostsystem 100 eine Zentraleinheit (CPU) 101,
die mit einem oder mehreren Portadaptern 104A, 104B, 104N unter
Verwendung eines Hostschnittstellenbusses 102A, 102B 102N kommuniziert,
die durch einen Hostschnittstellenbus-Hub oder Multiplexer 109 gemultiplext
werden. Jeder Hostschnittstellenbus 102A, 102B, 102N umfasst
einen SPI-4-Bus sowie auch andere Signale. Die CPU 101 kann
mit anderen Schaltungen und Vorrichtungen unter Verwendung eines oder
mehrerer anderer Busse 105 wie etwa einem Adressbus, einem
Datenbus, etc. kommunizieren. Als Klarheitsgründen ist die Darstellung des
Systems 100 ziemlich vereinfacht, und ein praktisches System kann
Speichervorrichtungen, E/A-Vorrichtungen, Routenprozessoren, Netzwerkprozessoren,
eine Koppelmatrix, etc. umfassen. Das System 100 kann als
ein Mehrzweck-Paketvermittlungs-Router oder -Switch implementiert
werden. In gewissen Ausführungsbeispielen
umfasst das System 100 Produkte aus den Cisco Serien 7300,
7600, 10000 oder 12000 der Firma Cisco Systems, Inc., San Jose,
Kalifornien.
-
Das
Hostsystem 100 kann einen oder mehrere Hot-Plug-fähige Portadapter 104A, 104B, 104N aufweisen.
Es kann in einem praktischen System jegliche Anzahl von Portadaptern
geben. Ein Portadapter wird hier auch mit dem äquivalenten Begriff "gemeinsam genutzter
Portadapter" bzw.
SPA (Shared Port Adapter) oder "vielseitiger
Portadapter" bzw. VPA
(Versatile Port Adapter) bezeichnet. Jeder der Portadapter 104A, 104B, 104N umfasst
null oder mehr Ports 106A, 106B, 106N.
Jeder Port ist kommunikativ mit einem der Netzwerke 110A, 110B, 110N oder
Vorrichtungen in solchen Netzwerken gekoppelt, die irgendeine geeignete
Netzwerkkommunikationstechnologie wie zum Beispiel Ethernet, Fast Ethernet,
Gigabit Ethernet, optische, serielle oder andere Schnittstellen
verwenden. Es kann jede Anzahl von Ports an einem Portadapter in
einem praktischen System geben. Jeder Port 106A, 106B, 106N kann mit
einem anderen Netzwerk 110A, 110B, 110N gekoppelt
sein.
-
Ein
Ausführungsbeispiel
mit null Ports kann einen Diensteadapter umfassen, in dem der Portadapter
anstatt einer Schnittstellenfunktion einen Berechnungs- oder Paketverarbeitungsdienst
bereitstellt. Ein Portadapter, wie er hier beschrieben wird, kann
null Ports aufweisen, kann aber zum Beispiel eine Verschlüsselungs-
oder Komprimierungsfunktion für
den Host bereitstellen. Ferner kann in einem anderen Ausführungsbeispiel
ein kombinierter Diensteadapter und Portadapter bereitgestellt werden, der
einen oder mehrere Ports aufweist und auch einen Paketverarbeitungsdienst
bereitstellt.
-
In
der Konfiguration von 1 stellt jeder der Portadapter
einen Mechanismus zum Verbinden seiner Ports jeweils mit dem Hostschnittstellenbus 102A, 102B, 102N bereit.
Jeder der Portadapter ist Hot-Plug-fähig, was bedeutet, dass die
Portadapter aus dem Hostsystem 100 entfernt bzw. in das
Hostsystem 100 installiert werden können, während das Hostsystem in Betrieb
ist. Als Folge davon kann das Hostsystem 100 mit unterschiedlichen
Anzahlen von Ports oder mit Ports neu konfiguriert werden, die unterschiedliche
Netzwerktechnologien verwenden, während die Vorteile aus der
SPI-4-Bus-Architektur beibehalten werden können.
-
2 ist
ein Blockdiagramm, das einen Überblick
eines Ausführungsbeispiels
eines Portadapters für
den SPI-4-Bus veranschaulicht. Das Hostsystem 100, das
in 2 aus Gründen
der Klarheit weggelassen worden ist, ist mit dem Portadapter 104C durch
den SPI-4-Bus 201, den Steuerbus 206, den erweiterten
Flusskontrollbus 222, den Taktbus 224, den Stromsteuerbus 226 und
den Identitätsbus 228 gekoppelt.
Der Portadapter 104C umfasst eine SPI-4-Anschlusslogik 202, die kommunikativ
mit dem SPI-4-Bus und mit einer Netzwerkschnittstelle 204 gekoppelt
ist. In einem Ausführungsbeispiel,
in dem die Ports 106A, 106B, 106N Ethernet-Ports
sind, kann die Netzwerkschnittstelle 204 ein MAC (Media Access
Controller) sein, der für
das schnelle Bilden und Verarbeiten von Datenrahmen verantwortlich
ist, und kann Daten temporär
im Speicher speichern. Alternativ dazu kann die Netzwerkschnittstelle 204 eine ATM
SAR, etc. umfassen. Die Netzwerkschnittstelle 204 ist kommunikativ
mit den Ports 106A, 106B, 106N gekoppelt.
-
In
dem Beispiel von 2 ist nur eine Netzwerkschnittstelle 204 gezeigt.
In anderen Ausführungsbeispielen
kann eine Vielzahl von Netzwerkschnittstellen bereitgestellt sein,
und jede dieser Netzwerkschnittstellen ist mit einer SPI-4-Anschlusslogik 202 gekoppelt.
Zum Beispiel kann es für
jeden der Ports 106A, 106B, 106N eine
andere Netzwerkschnittstelle 204 geben.
-
In
Ausführungsbeispielen
mit null Ports wird die Netzwerkschnittstelle 204 weggelassen,
und an ihrer Stelle kann eine andere Logik zum Durchführen von
Paketverarbeitungsdiensten bereitgestellt sein. Zum Beispiel kann
eine Verschlüsselungsmaschine oder
Komprimierungsmaschine die gleiche logische Stelle wie die Netzwerkschnittstelle 204 einnehmen.
-
Der
Steuerbus 206 ist mit einer lokalen Steuerlogik 208 in
einem Portadapter 104C verbunden. Der Identitätsbus 228 ist
mit einem Identitätselement 212 verbunden,
das von dem Hostsystem 100 befragt werden kann, um die
Hardware-Anordnung und die logische Konfiguration des Portadapters 104C zu bestimmen.
Der Portadapter 104C umfasst ferner ein Stromsteuerelement 214 und
eine Taktverteilungsschaltung 216, die jeweils mit dem
Stromsteuerbus 226 und dem Taktbus 224 gekoppelt
sind.
-
Der
erweiterte Flusskontrollbus 222 ist mit der erweiterten
Flusskontrolllogik 220 gekoppelt. Einzelheiten des erweiterten
Flusskontrollbusses werden in einem separaten Abschnitt unten weiter
beschrieben.
-
Der
Portadapter 104C kann als eine Vielzahl von integrierten
Schaltungen implementiert werden, die auf einer oder mehreren gedruckten
Schaltungskarten montiert sind, die in einem Schutzgehäuse untergebracht
sind. In einem Ausführungsbeispiel
ist jeder Portadapter in einem Slot einer Verarbeitungsschaltungskarte
in dem Hostsystem ("Hostkarte") angebracht. Das
Portadaptergehäuse
kann irgendeinen von mehreren Formfaktoren bzw. Abmessungen aufweisen,
wodurch eine modulare Anordnung bereitgestellt wird, so dass mehrere
unterschiedliche Portadapter in dem gleichen Host-Chassis miteinander
austauschbar sind. In einem Ausführungsbeispiel
kann ein Portadaptergehäuse
auf der Grundlage der Anzahl und des Typs von Ports oder Schnittstellen,
die in dem Portadapter bereitgestellt werden, des Betrag an Strom,
der von dem Portadapter abgegeben wird, oder der Fläche, die
für die
Schaltung in dem Portadapter benötigt
wird, einen Formfaktor mit halber Höhe, voller Höhe, doppelter
Breite oder einen Hochleistungsformfaktor aufweisen.
-
Die
lokale Steuerlogik 208, die erweiterte Flusskontrolllogik 220,
die Taktverteilungsschaltung 216, die Stromsteuerschaltung 214 und
das Identitätselement 212 sind
aus Gründen
der Klarheit in einer vereinfachten Blockform dargestellt. Insbesondere sind
Verbindungen zu jedem solchen Element vereinfacht dargestellt, und
jedes derartige Element kann in spezifischen Ausführungsbeispielen
andere Verbindungen aufweisen. Des Weiteren kann der Portadapter 104C andere
Schaltungselemente als die spezifischen Elemente umfassen, die in 2 gezeigt
sind.
-
3 ist
ein ausführlicheres
Blockdiagramm eines Portadapters von 2 gemäß einem
Ausführungsbeispiel.
-
Ein
Host-Steckverbinder 302 stellt eine physikalische Verbindung
mit dem Hostsystem 100 (aus Gründen der Klarheit in 3 nicht
gezeigt) bereit und überträgt Takt-,
Daten-, Steuer- und Stromsignale. Eine 12 Volt Stromzufuhrleitung 226A ist
mit einem Stromumwandlungsblock 304 gekoppelt, der eine
Vielzahl von Ausgangsstromleitungen 308 bei unterschiedlichen
Spannungspegeln bereitstellt, die von anderen Elementen des Portadapters 104D benötigt werden.
In einem Ausführungsbeispiel
stellt der Stromumwandlungsblock Ausgänge von 3,3 V, 2,5 V, 1,8 V
und 1,5 V bereit; andere Ausgangsspannungspegel können in
anderen Ausführungsbeispielen
bereitgestellt werden. Des Weiteren kann der Stromumwandlungsblock 304 eine
Stromverteilung (power sequencing), eine Einschalt-/Abschalt-Funktion,
eine Stromüberwachung,
eine Strombegrenzungseinstellung (power margining), etc. bereitstellen.
-
Der
SPI-4-Bus 332 ist mit dem FPGA 330 gekoppelt.
Der SPI-4-Bus 332 ist typischerweise ein 86-Pin-Paketdatentransferbus,
der Datenbussignale, Flusskontrollsignale, Taktsignale, etc. überträgt. In bestimmten
Ausführungsbeispielen
kann die Betriebsgeschwindigkeit aller solcher Signale für die Kompatibilität zwischen
verschiedenen Hosts und Portadaptern geändert werden, was hier noch
weiter beschrieben werden wird. Ein SPA-Bus 206A ist von dem
Hostsystem 100 zu dem FPGA 330 gekoppelt. Der
SPA-Steuerbus 206A ermöglicht
es dem Hostsystem, interne Elemente des Portadapters 104D zu steuern
und mit diesen zu kommunizieren. Ein JTAG-Bus 307 kann
Testsignale, die zum Testen oder für die PLD-Programmierung verwendet
werden, durch die Kommunikation zwischen dem Hostsystem 100 und
programmierbaren Komponenten wie zum Beispiel einem FPGA 330 übertragen,
das die Funktionen der SPI-4-Anschlusslogik 202 und der lokalen
Steuerlogik 208 von 2 implementiert.
Der Host-Steckverbinder 302 kann auch verschiedene Signale
für die
Unterstützung
von Online-Einfüge- und
Entfernungs-(OIR; online insertion and removal)-Operationen, Portadapter-Rücksetzfunktionen, etc. übertragen.
-
Das
FPGA 330 ist mit dem Framer 204A durch einen PL3-Bus 309,
einen Mikroprozessorbus 310 und einen Transport-Overhead-(TOH)-Pfad 312 gekoppelt.
In einem Ausführungsbeispiel
ist der Framer 204A der PM5360 S/UNI Multi-48 SONET/SDH Framer
der Firma PMC-Sierra, Inc., Santa Clara, Kalifornien, der vier (4)
Ports bereitstellt, die zwischen einer OC-12/STM-4- und OC-3/STM-1-Bandbreite auswählbar sind.
-
Der
Framer 204A ist mit einem oder mehreren optischen Modulen 314A, 314B, 314C, 314D,
die steckbar sind und einen kleinen Formfaktor aufweisen (SFP; small
form-factor pluggable), gekoppelt, die Netzwerkports und -schnittstellen
bereitstellen. Das FPGA 330 erfasst die Einfügung oder
die Extraktion der Module 314A, 314B, 314C, 314D in
oder aus dem Portadapter 104D.
-
Im
Allgemeinen funktioniert das FGPA 330 dahingehend, Signale
des SPA-Busses 206A in Signale von dem Mikroprozessorbus 310 zu
decodieren und sie damit zu verbinden. Das FPGA 330 stellt auch
Steuer- und Statusinformationen bezüglich der SFPs 314A, 314B, 314C, 314D bereit.
Des Weiteren stellt das FPGA 330 ein Bridging, eine Warteschlangenbildung
und eine Zeitablaufsteuerung für
Kommunikationen zwischen dem PL3-Bus 309 und dem SPI-4-Bus 332 einschließlich des
Managements von Eintritts- und Austritts-FIFO-Warteschlangen bereit, und das
FPGA 330 kann bei der Online-Einfügung -und
-Entfernung und bei den Stromsteuerfunktionen involviert sein. Das
FPGA 330 ist auch für
das Einfügen
und Extrahieren von SONET-Overhead-Informationen
aus Paketen konfiguriert, die zu oder von dem Framer 204A kommuniziert
werden. In einem Ausführungsbeispiel
wird das FPGA 330 unter Verwendung der Xilinx 2V1500 und
der SPI4-, PL3- und HDLCIP-Kerne implementiert.
-
Der
Portadapter 104D kann auch verschiedene andere funktionelle
Elemente umfassen, die das Takterzeugungs-/-wiederherstellungs-Modul 216A,
den elektrisch löschbaren,
programmierbaren Identitäts-Lesespeicher
("ID EEPROM") 212A,
den Spannungs-Supervisor 228A, die Temperatursensoren 320 und
die Spannungsbegrenzungseinstellungseinheit (voltage margining unit) 322 einschließen. Das
Takterzeugungs-/-wiederherstellungs-Modul 216A empfängt einen
77,76 MHz SONET-Referenztakt 224B von dem Host durch den
Host-Steckverbinder 302, stellt dem Host über den
Host-Steckverbinder einen wiederhergestellten 19,44 MHz Takt 224A bereit,
stellt dem Framer 204A einen 77,76 MHz Referenztakt 224C bereit
und empfängt
ein wiederhergestelltes 77,76 MHz Taktsignal 224D von dem
Framer. Die Verwendung eines wiederhergestellten Taktes ermöglicht es
dem Takterzeugungs-/-wiederherstellungs-Modul 216A, einen Systemtakt
aus jedem angeschlossenen SONET-Port abzu leiten. Das Takterzeugungs-/-wiederherstellungs-Modul 216A erzeugt
auch einen 100 MHz Takt für
den Betrieb des FPGA 330.
-
Die
Temperatursensoren 320 können einen programmierbaren
Temperaturbereich für
das Erfassen und die Signalisierung von Problemen bezüglich einer
zu hohen Temperatur aufweisen.
-
Optional
funktioniert ein erweiterter Flusskontrollbus, der von dem Hostsystem 100 zu
dem Portadapter 104D gekoppelt ist, dahingehend, einen Gegendruck
für Portadapter
mit sehr hohen Zahlen von physikalischen oder virtuellen Ports bereitzustellen.
Zum Beispiel können
in einem ATM zahlreiche virtuelle Schaltungen auf einer physikalischen
Leitung vorhanden sein. Auf diese Weise kann der erweiterte Flusskontrollbus
für hochkanalisierte
Portadapter, ATM-Portadapter, etc. verwendet werden.
-
Eine
ausführliche
Spezifikation für
ein Ausführungsbeispiel
eines Portadapters ist in dem Anhang zu diesem Dokument bereitgestellt,
dessen gesamter Inhalt durch Bezug darauf hier derart aufgenommen
wird, wie wenn er hier vollständig
dargelegt worden wäre.
-
2.2 ANPASSUNG AN UNTERSCHIEDLICHE SPI-4-BETRIEBSGESCHWINDIGKEITSRATEN
-
Das
Hostsystem 100 kann den ID EEPROM 212A unter Verwendung
eines Identitätsbusses 228A befragen,
um die Konfiguration des Portadapters 104D zu bestimmen
und um Stromsteuerfunktionen durchzuführen. In einem Ausführungsbeispiel
ist der Bus 228A konform zu dem 12C-Signalformat. Der ID
EEPROM 212A ist ein Beispiel eines Identifikationsrepositoriums.
Auf der Grundlage der Identifizierungsinformationen bestimmt eine
Software, die von dem Hostsystem ausgeführt wird, Werte, die eine Betriebsfrequenz
des Portadapters spezifizieren, und das Format der Daten, die durch
den SPI-4-Bus gesendet werden. Zum Beispiel kann die Hostsystem-Software
eine Nachschlagetabelle umfassen, die Busgeschwindigkeitswerte,
Datenpaketformate, etc. zu verschiedenen Portadapter-Identifizierern
zuordnet. In einem alternativen Ausführungsbeispiel speichert das
Identifikationsrepositorium Busgeschwindigkeitswerte, Datenpaketformate
und andere Konfigurationsparameter in Assozia tion mit einem oder
mehreren Portadapteridentifizierern für diesen Portadapter oder mehrere
unterschiedliche Portadapter.
-
Die
Informationen in dem Identifikationsrepositorium ermöglichen
es dem Hostsystem, sein Betriebsverhalten an bestimmte charakteristische
Merkmale des Portadapters oder seiner Ports anzupassen. Zum Beispiel
ist die Standardbetriebsfrequenz des SPI-4-Busses 350 MHz ("Vollraten-SPI-4"). Aber nicht alle
Portadapter benötigen
diese Frequenz. Zum Beispiel kann ein Portadapter, der eine verfügbare Datenkommunikationsbandbreite
von mehr als 2,4 Gbps an seinen Schnittstellen unterstützt, einen Vollraten/(Full-Rate)-SPI-4-Bus
benötigen,
aber andere Portadapter, die nur verfügbare Datenkommunikationsbandbreiten
von weniger als oder gleich 2,4 Gbps unterstützen, können auf adäquate Weise unter Verwendung
einer SPI-4-Bus-Signalisierung bei weniger als 350 MHz arbeiten.
-
Deshalb
kann in einem Ausführungsbeispiel der
SPI-4-Bus des Portadapters 104D so konfiguriert sein, dass
er bei einer Viertelraten/(Quarter-Rate)-Geschwindigkeit von 87,5 MHz arbeitet.
In anderen Ausführungsbeispielen
kann der SPI-4-Bus des Portadapters 104D so konfiguriert
sein, dass er bei einer anderen Geschwindigkeit arbeitet, zum Beispiel bei
700 MHz, was eine Doppelraten/(Double-Rate)-Geschwindigkeit bereitstellt,
etc.. Das Identifikationsrepositorium eines Portadapters enthält einen Portadapter-Typidentifizierer.
Auf der Grundlage des Portadapter-Typidentifizierers kann eine Software, die
von dem Hostsystem ausgeführt
wird, feststellen, ob der Portadapter eine Vollraten-SPI-4-Bus-Geschwindigkeit,
eine Viertelraten-Geschwindigkeit oder beide oder irgendeine andere
Geschwindigkeit unterstützt.
Im Allgemeinen muss in einem Ausführungsbeispiel
- 1. ein Portadapter 104D, der eine gesamte Bandbreite
von weniger als oder gleich 2,4 Gbps an seinen Schnittstellen unterstützt, eine
Viertelrate an seinem SPI-4-Bus unterstützen und kann optional auch
eine volle Rate unterstützen;
- 2. ein Portadapter, der eine gesamte Bandbreite von mehr als
2,4 Gbps an seinen Schnittstellen unterstützt, eine volle Rate an seinem
SPI-4-Bus unterstützen,
und kann optional auch eine Viertelrate unterstützen.
-
Hostsysteme
sollten mit ähnlichen
Regeln konform gehen, um eine Bandbreitenkompatibilität quer durch
die SPI-4-Verbindung zu einem Portadapter zu gewährleisten. Deshalb muss
- 3. ein Hostsystem, das eine Bandbreite von
weniger als oder gleich 2,4 Gbps in irgendeinem gemeinsam genutzten
Portadapter-Slot unterstützt, eine
Viertelrate an dem SPI-4-Bus für
diesen Slot unterstützen,
und kann optional auch eine volle Rate unterstützen.
- 4. ein Hostsystem, das eine Bandbreite von mehr als 2,4 Gbps
in irgendeinem Slot unterstützt,
eine volle Rate an dem SPI-4-Bus für diesen Slot unterstützen und
kann optional auch eine Viertelrate unterstützen.
-
Unter
Verwendung dieser Anordnung kann das Hostsystem das Identifikationsrepositorium
befragen und sein Betriebsverhalten auf der Grundlage der Informationen
in dem Identifikationsrepositorium anpassen.
-
4A ist
ein Ablaufdiagramm eines Prozesses zur Anpassung des Betriebsverhaltens
des SPI-4-Busses eines Hostsystems auf der Grundlage einer Fähigkeit
eines Portadapters. Im Block 402 wird eine Abfrage an ein
Identifikationsrepositorium in einem Portadapter ausgegeben. Das
Hostsystem 100 kann zum Beispiel unter Bezugnahme auf 3 Signale
auf dem Bus 228 ausgeben, um die Inhalte des ID EEPROM 212A zu
lesen. Der Block 402 kann durchgeführt werden, bevor das Hostsystem
einem Portadapter wie etwa dem Portadapter 104D Strom liefert.
Ein Identifikationsrepositorium wie etwa der ID EEPROM 212A kann
Strom von einem separaten Stromversorgungs-Pin in dem Steckverbinder 302 empfangen,
was das Hostsystem 100 in die Lage versetzt, Portkonfigurationsinformationen
aus dem Portadapter auszulesen, selbst wenn der Portadapter abgeschaltet
ist.
-
Im
Block 404 wird von dem Portadapter eine Antwort empfangen,
die einen eindeutigen Identifizierer für den Portadapter umfasst.
Zum Beispiel führt das
Lesen des ID EEPROM 212A dazu, dass der Portadapter 104D seinen
eindeutigen Identifiziererwert bereitstellt. Im Block 405 bestimmt
der Host eine oder mehrere SPI-4-Bus-Betriebsraten, die von dem Portadapter
unterstützt werden.
Zum Beispiel verwendet der Host eine gespeicherte Nachschlagetabelle,
um den empfangenen eindeutigen Identifiziererwert mit einem oder
mehreren Betriebsfrequenzwerten für den Portadapter zu assoziieren.
Außerdem
kann das Hostsystem feststellen, ob der Portadapter von dem Hostsystem
unterstützt
werden kann, und kann das Format der Daten feststellen, die von dem
Portadapter auf dem SPI-4-Bus gesendet werden. Alternativ dazu können solche
Werte und Konfigurationsparameter von dem Identifikationsrepositorium
des Portadapters bereitgestellt werden.
-
Im
Block 406 bestimmt das Hostsystem, ob es mit einer der
unterstützten
Raten kompatibel ist, die der Host auf der Grundlage des Identifizierers
bestimmt hat, der von dem Identifikationsrepositorium des Portadapters
empfangen wurde. Der Block 406 kann das Anwenden der Regeln
1–4, wie
sie oben angemerkt wurden, umfassen, um festzustellen, ob ein Portadapter
und ein Host kompatibel sind. Wenn der Portadapter zum Beispiel
nur Viertelraten-SPI-4 unterstützt und
der Host eine volle Rate benötigt, dann
ist der Host mit dem Portadapter nicht kompatibel. Wenn der Host
nicht kompatibel ist, dann schaltet der Host im Block 407 den
Portadapter, der von dem Hostsystem nicht verwendet werden kann,
nicht ein. Die oben aufgeführten
Regeln 1–4
können
in Software implementiert werden, die von dem Hostsystem ausgeführt wird.
-
Optional
umfasst der Prozess das Einschalten des Portadapters nur dann, wenn
ein oder mehrere Faktoren zufriedengestellt sind. Zum Beispiel kann
der Block 406 das Auswerten von Faktoren wie etwa die Folgenden
umfassen: ob das Hostsystem eine Software-Unterstützung für ein Paketformat
aufweist, das von dem Portadapter benötigt wird; ob das Hostsystem
eine Software-Unterstützung für den Portadapter
aufweist; ob der Portadapter weniger als einen maximalen Betrag
an Verlustleistung abgibt, der von dem Hostsystem erlaubt ist; ob
das Hostsystem zu einer Bandbreite passt, die von dem Portadapter
benötigt
wird; ob eine Lizenzautorisierungsvoraussetzung, die mit dem Portadapter
assoziiert ist, es dem Portadapter erlaubt, auf dem Hostsystem zu
laufen; etc..
-
Wenn
der Host mit dem Portadapter kompatibel ist, dann ändert der
Host in dem Block 408 die Betriebsrate seines eigenen SPI-4-Busses
auf die schnellste kompatible unterstützte Rate. Wenn das Portadapter- Identifikationsrepositorium
zum Beispiel anzeigt, dass der Portadapter sowohl Viertelraten- als
auch Vollraten-SPI-4 unterstützt,
dann ändert
der Host seine SPI-4-Betriebsrate auf die volle Rate. In einem alternativen
Ausführungsbeispiel ändert der Host
die Betriebsrate seines eigenen SPI-4-Busses auf irgendeine der
kompatiblen unterstützten
Raten.
-
Im
Block 410 schaltet der Host den Portadapter ein, indem
er geeignete Steuersignale sendet; in dem Beispiel von 2 können solche
Signale auf dem Stromsteuerbus 226 gesendet werden. Im
Block 412 setzt der Host den Portadapter auf die gleiche kompatible
Rate, die der Host verwendet. Bei dem Beispiel von 3 sendet
das Hostsystem 100 Steuersignale auf dem SPA-Bus 206A,
um den Portadapter zu instruieren, eine bestimmte Rate zu verwenden.
Die Rate, die eingestellt wird, kann die schnellste kompatible Rate
oder irgendeine ausgewählte kompatible
Rate sein.
-
Optional
kann in anderen Ausführungsbeispielen
die Reihenfolge der Durchführung
der Schritte 408, 410, 412 geändert werden,
und die Reihenfolge der Durchführung
solcher Schritte ist nicht entscheidend.
-
Deshalb
kann ein Host, wenn er den Lösungsweg
von 4A verwendet, einen Portadapter bezüglich Informationen über Betriebscharakteristiken
des Portadapters befragen, und auf der Grundlage der erhaltenen
Informationen bestimmt das Hostsystem, ob er kompatibel ist, ob
es den Portadapter einschalten soll und welche Betriebsrate verwendet werden
soll.
-
Ferner
kann das Hostsystem auf der Grundlage der empfangenen Informationen
eine Betriebsfrequenz bestimmen, bei der der SPI-4-Bus laufen soll.
Zum Beispiel kann ein Vollraten-SPI-4, eine Viertelrate, usw. verwendet
werden.
-
Das
Hostsystem kann zum Beispiel auch ein bestimmtes Format für die Datenkommunikation
auf dem SPI-4-Bus bestimmen, wie im Abschnitt 2.4 weiter unten noch
beschrieben wird.
-
2.3 ERWEITERTER FLUSSKONTROLLBUS
-
Ein
herkömmlicher
SPI-4-Bus adressiert maximal 256 Kanäle und stellt eine Unterstützung für FIFO-Warteschlangenstatusanzeigen
für 256
Kanäle in
einem normalen Adressierungsmodus bereit. Aber Portadapter, die
eine große
Anzahl von Kanälen
aufweisen ("hochkanalisierte" oder ATM SPAs zum
Beispiel), können
1.000 oder mehr Kanäle
benötigen. Deshalb
ist es wünschenswert,
einen Portadapter-Flusskontrollbus zu haben, der mehr als 256 Kanäle pro Portadapter
unterstützen
kann.
-
Demgemäß wird ein
erweiterter Flusskontrollbus und ein assoziiertes Verfahren bereitgestellt, um
einen Portadapter zu erweitern, um die Verwendung mit mehr als 256
Kanälen
zu ermöglichen.
In dieser Anordnung kann ein Portadapter, der weniger als oder gleich
256 Kanäle
benötigt,
einen herkömmlichen
SPI-4-Steuerbus für
die Flusskontrolle verwenden und kann optional einen erweiterten
Flusskontrollbus verwenden, wie er hier definiert ist. Wenn ein
Portadapter den erweiterten Flusskontrollbus, wie er hier definiert
ist, verwendet, verwendet der Portadapter auch immer noch den herkömmlichen SPI-4-Steuerbus für die gesamte
(anstatt der Subkanal- oder virtuellen Kanal-)Flusskontrolle von
Verkehrsdatenverbunden, wie etwa eine Flusskontrolle auf der Portadapter-Ebene
oder der physikalischen Port-Ebene.
-
In
einem Ausführungsbeispiel überträgt der erweiterte
Flusskontrollbus 222 ein einem Zeitmultiplexing (TDM) unterzogenes
Kalender-Rahmensynchronisationssignal,
ein Flusskontrolltaktsignal, ein Statussignal und ein Paritätssignal.
Das Flusskontrolltaktsignal stellt einen Quelltakt bereit, der von
dem Host verwendet wird, um den Datenwert in dem Statussignal anfänglich zu
takten, und wird von dem Sender der Flusskontrolldaten gespeist,
welcher normalerweise der Portadapter ist. Eine beispielhafte Taktfrequenz
ist 50 MHz, aber es kann irgendeine andere geeignete Taktfrequenz
verwendet werden.
-
In
einem Ausführungsbeispiel
ist das Statussignal ein Ein-Bit-Signal, aber andere Formen von Statussignalisierung
können
verwendet werden. Das Statussignal stellt eine Anzeige dahingehend
bereit, ob der Kanal-FIFO-Status oberhalb oder unterhalb eines Schwellwerts
liegt, der dem Kanal entspricht, der für den TDM-Zeitschlitz programmiert
ist. Das Paritätssignal
stellt in verschiedenen Ausführungsbeispielen
eine gerade oder ungerade Parität
quer durch das Statussignal und das Rahmensynchronisationssignal
für einen
bestimmten Taktzyklus bereit. Die Verwendung eines separaten Paritätssignals
erlaubt in verschiedenen Ausführungsbeispielen
eine Flexibilität
bei der Änderung
der Rahmengröße auf jegliche
Länge.
Optional kann ein Portadapter den erweiterten Flusskontrollbus nicht
unterstützen,
wobei in diesem Fall die oben genannten Signale nicht zugeschaltet
werden.
-
Auf
diese Weise verwendet der erweiterte Flusskontrollbus in einem Ausführungsbeispiel
einen TDM-Kalender-basierten Mechanismus, der Pro-Kanal-FIFO-Statusinformationen über ein
einziges Datenbit trägt.
Der Kalender wird von dem Hostsystem 100 programmiert,
wenn Kanäle
konfiguriert und an dem Portadapter und dem Host eingerichtet werden. In
einem Ausführungsbeispiel
werden Zeitschlitze im Verhältnis
zu der Bandbreite des Kanals zugeordnet. Ausführungsbeispiele können Kanalbandbreiten
an die nächste
Zweierpotenz approximieren und können Zeitschlitze
in einer Art und Weise zuordnen, die die gesamte Anzahl an Flusskontroll-Zeitschlitzen
reduziert. In einem Ausführungsbeispiel
umfasst der Kalender eine Tabelle, in der die Reihen den Zeitschlitzen
entsprechen und die Spalten Kanalnummern und FIFO-Statusinformationen
tragen. In einem bestimmten Ausführungsbeispiel
gibt es 16584 Reihen, die jeweils eine Kanalnummer in 12 Bits und
ein Statusbit umfassen.
-
Der
Portadapter verwendet den Kalender, um festzustellen, welcher Kanal
für den
FIFO-Status gewählt
wird und welcher Kanal in einem bestimmten Zeitschlitz oder in einer
bestimmten Taktperiode gesendet wird. Der Host verwendet einen ähnlich konfigurierten
Kalender, um festzustellen, für
welchen Kanal die FIFO-Statusflusskontrolinformationen in einem
bestimmten Zeitschlitz übertragen
werden.
-
In
einem Ausführungsbeispiel
ist die Anzahl an unterstützten
Kanälen
so konfigurierbar, dass dadurch die Fähigkeiten eines bestimmten
Hosts eingestellt werden können.
Zum Beispiel kann eine Hostkarte nur 1 K flusskontrollierbare Entitäten unterstützen, und
deshalb müssen
bestimmte Portadapter weniger als die maximale Anzahl an Kanälen unterstützen.
-
Eine
ausführliche
Beschreibung des erweiterten Flusskontrollbusses ist im Abschnitt
2.3 des Anhangs bereitgestellt.
-
2.4 VORVERARBEITUNG VON PAKETEN MIT EINEM
PORTADAPTER
-
In
einem Ausführungsbeispiel
kann jeder Portadapter 104A, 104B, 104N mit
externen Netzwerken oder Vorrichtungen kommunizieren, die irgendeine
einer großen
Anzahl von Netzwerktechnologien verwenden. Als eine Folge davon
können
Datenpakete, die an den Portadaptern empfangen werden, irgendeines
einer großen
Anzahl von unterschiedlichen Formaten aufweisen. In einem Ausführungsbeispiel
stellt jeder Portadapter Daten für
den Host in einem einer kleinen Anzahl von Basispaketformaten bereit,
die alle von dem Host verstanden werden. Zum Beispiel werden in
einem speziellen Ausführungsbeispiel
vier (4) Paketformate verwendet, und ein Portadapter unterstützt ein
oder mehrere der vier Formate, um mit einem Host zu kommunizieren.
Da die Portadapter auf viele unterschiedliche Hostsysteme abgezielt
sind, verbergen die Formate bei diesem Lösungsweg die Einzelheiten und
die Verarbeitungslast, die mit einem spezifischen Medientyp verbunden
ist, so weit wie möglich
innerhalb des Portadapters, um dem Host zu helfen, bei einer hohen
Geschwindigkeit oder mit einer weniger komplexen Paketverarbeitung
zu arbeiten. Außerdem
stellen die Paketformate Header-Felder bereit, die so klein wie
möglich
sind, um die Bandbreite zu reduzieren, die auf dem SPI-4-Bus verwendet
wird.
-
4B ist
ein Ablaufdiagramm, das einen Überblick über einen
Prozess der Umwandlung von empfangenen Datenpaketen veranschaulicht.
-
Im
Block 422 wird ein Paket an einer Eintrittsschnittstelle
eines Portadapters empfangen. In einem Ausführungsbeispiel wird der Prozess
von 4B von einem Portadapter durchgeführt, wie
er in 2 gezeigt ist. Auf diese Weise können die
Schritte von 4B zum Beispiel von der SPI-4-Anschlusslogik 202 durchgeführt werden.
Das Paket, das am Block 422 empfangen wird, wird gemäß einem
nativen Paketformat einer speziellen Vernetzungstechnologie formatiert,
die von dem Portadapter unterstützt
wird. Beispielhafte Technologien umfassen das Ethernet, ATM, Frame
Relay, etc..
-
Im
Block 424 wird eines einer Vielzahl von unterschiedlichen
Paketformaten ausgewählt.
Der Block 424 umfasst typischerweise das Auswählen eines
von mehreren Paketformaten, z.B. ein Format, das sich von dem nativen
Format unterscheidet, in dem das Paket empfangen wurde. In einem
spezifischen Ausführungsbeispiel,
das unten noch weiter beschrieben werden wird, wird ein Paketformat
aus dem Ethernet SPA 8-Byte-Shim-Format, dem ATM SPA 4-Byte-Shim-Format,
dem hochkanalisierten SPA 4-Byte-Shim-Format und einem Kein-Shim-Format
ausgewählt.
Das ausgewählte
Format kann mehr oder weniger Datenfelder als die Felder umfassen,
die sich in dem empfangenen Paket befinden. Das Durchführen des
Blocks 424 kann einfach das Auswählen eines spezifizierten Paketformats
umfassen, das mit dem zu diesem Zeitpunkt aktuellen Portadapter
assoziiert ist. Des Weiteren kann in dem Fall eines Portadapters,
der Ethernet-Pakete unterstützt,
ein bestimmtes Paketformat auf der Grundlage einer VLAN-Kennung
ausgewählt
werden, die in einem Paket getragen wird.
-
Im
Block 426 wird ein neues Paket, das dem ausgewählten Format
entspricht, erzeugt.
-
Im
Block 428 werden Daten aus den Feldern des empfangenen
Pakets in ein oder mehrere entsprechende Felder des neuen Pakets
umgewandelt. Die Datentransformation kann in Übereinstimmung mit einem datengesteuerten
Mapping oder mit programmatischen Regeln durchgeführt werden,
die spezifizieren, welche Felder eines bestimmten Eintrittspaketformats
in welche anderen Felder des Zielpaketformats umgewandelt werden
sollen. Ferner können
das Mapping oder die Regeln Transformationen von Daten oder Werten
spezifizieren, die von anderen Quellen als dem Paket erhalten wurden,
wie etwa eine Schnittstellenidentifizierung, eine Paketlänge, ein Überlastungsstatus,
Paketgültigkeitsprüfungen,
etc..
-
Im
Block 430 wird das neue Paket dem Hostsystem bereitgestellt.
In 2 wird das neue Paket zum Beispiel von der SPI-4-Anschlusslogik 202 auf dem
Hostsystembus 201 zu dem Hostsystem 100 kommuniziert.
-
Die
vier Paketformate, die in einem Ausführungsbeispiel verwendet werden,
können
zum Beispiel folgendermaßen
bezeichnet werden:
Format A: Ethernet SPA 8-Byte-Shim-Format
Format
B: ATM SPA 4-Byte-Shim-Format
Format C: Hochkanalisiertes SPA
4-Byte-Shim-Format
Format D: Kein-Shim-Format
-
Jedes
dieser Formate wird im Anhang ausführlich beschrieben.
-
5 ist
ein Blockdiagramm eines generalisierten umgewandelten Paketformats.
In dem Ausführungsbeispiel
von 5 umfasst ein Paket 500 Klassifizierungsbits 502,
einen Längenindikator 504, ein
Quellkanallabel 506 und Header-Felder 508. Die Klassifizierungsbits 502 tragen
Informationen, die einen Klassenwert übermitteln, der mit dem empfangenen
Paket assoziiert ist. Die Klassifizierungsinformationen können ursprünglich von
irgendeinem von mehreren unterschiedlichen Paketfeldern abgeleitet werden,
die zum Beispiel das Dienstetyp-(TOS; Type of Service)-Feld eines
IP-Pakets, 802.1q-Prioritätsinformationen,
MAC-Adressenfilterungsinformationen, etc. umfassen können, aber
nicht darauf beschränkt sind.
Der Längenindikator 504 kann
eine Längeneinstellung
spezifizieren, die bei dem ursprünglichen Paket
durchgeführt
worden war, oder kann eine absolute Länge des umgewandelten Pakets
spezifizieren. Das Quellkanallabel 506 spezifiziert einen
logischen oder physikalischen Kanal, auf dem das ursprüngliche
Paket angekommen ist. Die Header-Felder 508 tragen Informationen,
die von den Header-Feldern des ursprünglichen Pakets abgeleitet wurden.
-
Das
generalisierte Format von 5 kann auf
verschiedene Arten und Weisen an unterschiedliche Formate von ankommenden
Paketen angepasst werden. Zum Beispiel streift der Portadapter in
einem Ethernet SPA 8-Byte-Shim-Format
die Schicht-2-Einkapselung von einem Paket komplett ab und ersetzt diese
durch einen 8-Byte-Shim-Header, der alle relevanten Informationen
aus dem ursprünglichen
Paket für
eine Weiterleitungsmaschine des Host umfasst, damit diese eine effiziente
Weiterleitungsentscheidung treffen kann. Die niedrigeren 4 Bytes
sind etwa auf die gleiche Weise wie ein Frame-Relay-Header formatiert,
was eine mögliche
Vereinfachung des Designs der Weiterleitungsmaschine des Hosts erlaubt.
-
Das
Abstreifen des Schicht-2-Header ist auf einer Pro-Paket-Basis optional,
was eine Unterstützung
für Schicht-2-Tunnel
wie etwa Ethernet über MPLS
erlaubt. Wenn der Schicht-2-Header am Paket belassen wird, dann
kann er als eine optionale Optimierung für einige Hosts auch optional
mit zwei oder drei Bytes aufgefüllt
werden, um den Schicht-3-Header auf eine 4-Byte-Ausrichtung zu bringen.
Das erste Byte des Auffüllens
zeigt zum Beispiel die Anzahl an vorhandenen Auffüllbytes
an.
-
Weil
das Format des Pakets, das den Portadapter verlässt, das optionale Abstreifen
der Schicht-2-Einkapselung variabler Länge und die Hinzufügung eines
Shim-Header umfassen kann, zeigt der Längenindikatorwert 504 in
diesem Fall die Anzahl an Bytes an, um die das Paket kürzer ist
als im Vergleich dazu, als das Paket zum ersten Mal empfangen wurde.
Die Schicht-3-Maschine des Hostsystems 100 kann die ursprüngliche
Schicht-2-Länge bestimmen,
indem sie den Wert des Längenindikatorwerts 504 zu
der gesamten Anzahl von Bytes addiert, die von dem Portadapter empfangen
werden.
-
Die
Header-Felder 508 können
die Protokoll-ID ("PID") des Schicht-2-Header des Pakets
enthalten, und der Portadapter kann den Wert umgewandelt haben.
Bestimmte spezielle Wert des PID-Feldes zeigen an, dass der Host
bei dem bestimmten Paket eine Spezialbehandlung benutzen muss; die
speziellen Werte sind durch Software konfigurierbar. Zum Beispiel
können
spezielle PIDs verwendet werden, um ein getunneltes Paket, ein Ausnahmepaket
oder irgendwelche anderen speziellen Charakteristiken anzuzeigen.
Für ein
getunneltes Paket wird dann, wenn die VLAN ID und die Portnummer
des ankommenden Pakets so konfiguriert sind, dass sie einen Schicht-2-Tunnel
betreten, das gesamte Paket mit seiner ursprünglichen Schicht-2-Einkapselung
in das Hostsystem gebracht. Ein Ausnahmepaket zeigt an, dass der
Portadapter irgendetwas über
das Paket herausgefunden hat, das es notwendig macht, dass der Host
bei dem Paket eine Spezialbehandlung durchführt. Es können mehr als eine spezielle
Ausnahmepaket-PID definiert werden. Dies kann zum Beispiel eine
Klassifizierung der Pakete in unterschiedliche Prioritäts-CPU-Warteschlangen
erlauben.
-
Optional
kann als ein Teil der Umwandlung eines ersten Pakets in ein bestimmtes
ausgewähltes Paketformat
der Header 510 und/oder der Körper 512 des ursprünglichen
Pakets in das transformierte Paket 500 platziert werden.
Auf diese Weise kann das Paketformat, das in dem Host und dem Portadapter
verwendet wird, den ursprünglichen
Paket-Header 510 und/oder den ursprünglichen Paket-Körper 512 enthalten.
Der ursprüngliche
Header und der ursprüngliche
Körper
können
in Abhängigkeit von
der Natur des Verkehrs, der verarbeitet wird, oder des Kontextes,
in dem dieser verarbeitet wird, weggelassen werden.
-
Ähnliche
Transformationstechniken können bei
anderen Paketformaten von ankommenden Paketen verwendet werden.
-
Außerdem oder
alternativ dazu können
Pakete fallengelassen werden, anstatt dass diese Pakete transformiert
werden. Wenn zum Beispiel ein Portadapter ein Paket von einer Schicht-2-Adresse oder
einem VLAN empfängt,
das für
den Portadapter oder den Host nicht von Interesse ist, dann kann
dieses Paket fallengelassen werden.
-
3.0 ERWEITERUNGEN UND ALTERNATIVEN
-
In
der obigen Beschreibung ist die Erfindung unter Bezugnahme auf spezifische
Ausführungsbeispiele
davon beschrieben worden. Es wird aber offensichtlich sein, dass
verschiedene Modifikationen und Änderungen
daran durchgeführt
werden können, ohne
dass vom Schutzumfang der Erfindung abgewichen wird. Die Beschreibung
und die Zeichnungen sollen demnach eher in einem veranschaulichenden als
in einem beschränkenden
Sinne betrachtet werden.
-
Zum
Beispiel kann ein Portadapter Pakete als hohe Priorität oder niedrige
Priorität
klassifizieren und Prioritätsinformationen
in dem transformierten Paketformat bereitstellen, um den Host in
die Lage zu versetzen, festzustellen, welches Paket als erstes verarbeitet
werden soll. Als eine Alternative zum Übertragen von Paketprioritätsinformationen
in dem transformierten Paketformat können zwei oder mehr logische
SPI-4-Kanäle
mit einem physikalischen Port assoziiert sein, in dem ein erster
logischer Kanal Portverkehr überträgt, der
mit einer ersten Prioritätsebene
assoziiert ist, und der zweite oder weitere Kanal/Kanäle Verkehr überträgt/übertragen,
der mit einer zweiten oder anderen Prioritätsebene assoziiert ist. In
diesem Lösungsweg
kann der Host-Adapter durch Software konfigurierbar sein, um alle
Pakete, die in dem Kanal für
die höhere
Priorität
ankommen, zuerst zu verarbeiten, ohne die Prioritätsinformationen
in den Paketen konsultieren zu müssen.
-
In
einer anderen Abwandlung der oben beschriebenen Architektur kann
einer der logischen SPI-4-Kanäle
als ein Steuerpfad als eine Alternative zur Bereitstellung einiger
oder aller Steuersignale auf dem Steuerbus 206 (2)
oder dem SPA-Bus 206A (3) verwendet
werden. In dieser Alternative überträgt ein spezifizierter
logischer Kanal Steuerpakete separat von einem assoziierten logischen
Kanal, der Portdatenverkehr überträgt. Der
Steuerkanal kann als für
den Host die höchste
Priorität
aufweisend betrachtet werden. Des Weiteren ist ein Vorteil dieses
Lösungswegs,
dass die Steuerpakete mit der Übertragung
von assoziierten Datenpaketen synchronisiert werden können oder
bezüglich
der Zeit abgestimmt werden können.
Ferner ist die Bandbreite des SPI-4-Busses, die für den logischen
Kanal verwendet wird, der in diesem Lösungsweg für die Steuerung verwendet wird,
typischerweise höher
als die Bandbreite des SPA-Busses 206A oder
des Steuerbusses 206, was für das Senden von großen Volumen
an Steuerdaten, Statistiken, etc. nützlich sein kann.
-
In
noch einer anderen Variation kann ein spezifizierter logischer SPI-4-Kanal verwendet werden,
um Flusskontrollinformationen z.B. in der Form von Ereignissen zu übertragen.