-
TECHNISCHES
GEBIET DER ERFINDUNG
-
Die vorliegende Erfindung betrifft
Systeme, beispielsweise ein Asynchronübermittlungsnetz (ATM-Netz),
bei denen Informationen, die aus Strömen von Zellen fester Länge bestehen,
mittels eines Zeitschlitz-Übertragungsmediums übermittelt
werden. Sie ermöglicht
eine sofortige Verarbeitung der Zellen auch bei sehr hohen Datenübertragungsraten.
-
STAND DER
TECHNIK
-
Zellverarbeitungssysteme, z. B. Kommunikationsnetze
und Speichersysteme, gewinnen immer mehr an Bedeutung. Ein Vorteil
dieser Art von zellenbasierten Systemen ist, dass jede einzelne
Zelle autonom ist und beispielsweise die Leitweglenkung (Routing)
in einem Netz nur mit Hilfe der im Zellenkopf (Header) enthaltenen
Informationen möglich
ist. Datenübermittlungsnetze
mit Asynchronübermittlung (ATM)
sind die bekanntesten Zellverarbeitungssysteme. Die ATM-Datenübermittlungstechnologie
hat das Potential, die Art und Weise, in der Netze aufgebaut sind,
zu revolutionieren. Diese Technologie ermöglicht sehr schnelle Datenübermittlungsraten
und unterstützt
viele Verkehrsarten wie Daten, Faksimile, Sprache, Echtzeitvideo
und Bilder, um nur einige der wichtigsten Verkehrsarten zu nennen,
die in einer typischen Multimediaumgebung anzutreffen sind. ATM ist
sowohl für
lokale Datennetze (LAN) als auch für Fernnetze (WAN) geeignet
und nutzt die bei optischen Fasern möglichen hohen Durchsatzraten.
-
Typische Einrichtungen für alle Arten
von Zellverarbeitungssystemen sind Router, Netzknoten, Schaltteile,
wie sie z. B. zur Netzzusammenschaltung verwendet werden, und Adapterkarten
zur Verknüpfung
von Rechnern oder anderen Geräten
wie Drucker, Plotter, Scanner, Laufwerke, Faxgeräte, Netzwerk-Sniffer, mit einem
Zellverarbeitungssystem. Je schneller die Zellen in einem solchen
Zellverarbeitungssystem übermittelt
werden, desto komplexer und aufwendiger wird die Handhabung und
Verarbeitung der Zellen. Die Schwierigkeiten, die beim Erhöhen der
Datenübertragungsrate
auftreten, werden nachfolgend anhand eines Beispiels näher beschrieben
Je höher
die Datenübertragungsrate
in einem zellenbasierten System (z. B. einem ATM-System) ist, desto
schneller müssen
bestimmte Operationen mit den Zellen durchgeführt werden. Die sofortige Verarbeitung
der Zellen, bei der gewöhnlich
alle Operationen innerhalb einer festen Anzahl von Taktzyklen (entsprechend
der Zeit bis zum Eintreffen der nächsten Zelle an dem Zeitschlitzmedium)
abgeschlossen sein müssen,
wird schwierig, wenn nicht sogar unmöglich. Durch die Zeitschlitzeinheit
des Mediums ist festgelegt, wie lange ein Prozessschritt dauern
darf. Mit der Zunahme der Datenübertragungsraten
wird die Zeit bis zum Eintreffen der nächsten Zelle immer kürzer. Um
innerhalb dieser Zeit zu bleiben, muss entweder die Zahl der Taktzyklen
für eine
gegebene Operation verringert oder die Dauer der Zeitzyklen verkürzt werden.
Die erste Möglichkeit
wird oft durch die Art der durchzuführenden Operation eingeschränkt, z.
B. werden für
eine binäre Suche
von 16000 Adressen log2(16000) = 14 Vergleiche
und damit 14 Taktzyklen benötigt.
Die zweite Möglichkeit
wird von der ausgewählten
Technologiebasis eingeschränkt,
welche die Zeit bestimmt, die eine logische Schaltung zur Durchführung ihrer Funktion
benötigt.
Für jede bekannte
Technologiebasis gibt es eine genau festgelegte obere Geschwindigkeitsgrenze
für die
Verarbeitung, die von den zugrundeliegenden genutzten physikalischen
Effekten definiert wird.
-
Einige Zellverarbeitungssysteme haben
Datenübertragungsraten
erreicht, bei denen die Grenzen der Möglichkeiten bereits erreicht
wurden oder in Kürze
erreicht sein werden. Es gibt einen Bedarf an neuen Lösungsmöglichkeiten
zur Umgehung oder Lösung
dieses Problems. Insbesondere bei ATM-Netzwerken, die mit Übertragungsraten
im Bereich Gigabit pro Sekunde arbeiten, wurde eine Stufe erreicht,
an der neue Lösungen
gebraucht werden.
-
In dem Artikel "Parallel "ATOM" Switch
Architecture for High-Speed
ATM Networks" von
T. Aramaki et al., Discovering a new world of communications, Chicago,
14.–18.
Juni 1992, Band 1 von 4, 14. Juni 1992, IEEE, Seite 250–254, wird
ein ATM-Schaltteil mit mehreren parallelen Schaltebenen beschrieben.
Nach diesem Artikel werden Zellen auf die einzelnen Schaltebenen
demultiplexiert, dann durch diese Schaltebenen gesendet, und an
der Ausgangsseite wieder in die richtige Sequenz gebracht.
-
In der US Patentschrift 5,357,510
werden eine Methode und eine Vorrichtung zur Überwachung und Steuerung von
ATM-Verkehr angesprochen.
-
Es ist also eine Aufgabe der Erfindung,
ein neues Konzept für
eine Verarbeitung von Zellen fester Länge auch bei sehr hohen Datenübertragungsraten
bereitzustellen.
-
Es ist eine weitere Aufgabe der vorliegenden Erfindung,
eine Vorrichtung und eine Methode bereitzustellen, die eine sehr schnelle
sofortige Verarbeitung von Zellen fester Länge ermöglichen.
-
Eine weitere Aufgabe der vorliegenden
Erfindung ist die Anwendung der erfinderischen Methode auf Asynchronübermittlungssysteme.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Die Erfindung, wie sie in den Ansprüchen beschrieben
wird, soll diese Aufgaben erfüllen.
Entsprechend der vorliegenden Erfindung werden die aufeinanderfolgenden
Zellen fester Länge
auf einem Zeitschlitzmedium N parallelen identischen Verarbeitungswegen
zugeordnet, die jeweils ein oder mehr Verarbeitungseinheiten umfassen.
Dadurch wird die Anzahl der Taktzyklen, die einer solchen Verarbeitungseinheit
zur Verfügung
stehen, mit N multipliziert, wenn nur jede (N + 1)-te Zelle von
demselben Verarbeitungsweg verarbeitet wird. Hierdurch erhält man N virtuelle
jedoch identische Datenverarbeitungswege.
-
BESCHREIBUNG
DER ZEICHNUNGEN
-
Die Erfindung wird nachfolgend ausführlich unter
Bezugnahme auf die folgenden Zeichnungen beschrieben:
-
1 ist
eine schematische Darstellung eines ersten Ausführungsbeispiels der vorliegenden Erfindung,
das eine Parallelverarbeitungseinheit mit N = 5 parallelen Verarbeitungswegen
umfasst.
-
2 zeigt
einen Strom von Zellen fester Länge
in einem Zeitschlitzmedium.
-
3A-3G sind
schematische Momentaufnahmen einer Parallelverarbeitungseinheit
mit N = 5 parallelen Verarbeitungswegen, die zur Darstellung der
Leitweglenkung und Verarbeitung von Zellen dienen.
-
4A ist
eine schematische Darstellung eines Schaltteils mit Asynchronübermittlung
mit einer Schaltteil-Adapterkarte gemäß der vorliegenden Erfindung.
-
4B ist
eine schematische Darstellung eines zweiten Ausführungsbeispiels der vorliegenden Erfindung,
wobei es sich bei diesem Ausführungsbeispiel
um eine ATM-Schaltteil-Adapterkarte handelt, mit der ATM-Zellen
in Zellen umgewandelt werden, die von einer ATM-Schaltstruktur verarbeitet
werden können.
-
5 ist
eine schematische Darstellung eines, dritten Ausführungsbeispiels
der vorliegenden Erfindung, wobei dieses Ausführungsbeispiel eine Parallelverarbeitungseinheit
mit N = 3 parallelen Verarbeitungswegen umfasst, wobei jeder Verarbeitungsweg
eine Verzögerungseinheit
hat.
-
6 ist
eine schematische Darstellung eines vierten Ausführungsbeispiels der vorliegenden Erfindung,
wobei dieses Ausführungsbeispiel
eine Parallelverarbeitungseinheit mit N = 2 parallelen Verarbeitungswegen
umfasst.
-
7 ist
eine schematische Darstellung eines fünften Ausführungsbeispiels der vorliegenden Erfindung,
wobei dieses Ausführungsbeispiel
eine Parallelverarbeitungseinheit mit N = 2 parallelen Verarbeitungswegen
umfasst, eine Verarbeitungseinheit von beiden Verarbeitungswegen
genutzt wird und jeder Verarbeitungsweg eine Verzögerungseinheit
hat.
-
ALLGEMEINE
BESCHREIBUNG
-
Nachfolgend soll anhand der ATM-Datenübertragungstechnologie
die vorliegende Erfindung ausführlich
beschrieben werden. Hierbei ist jedoch davon auszugehen, dass das
Erfindungskonzept für jede
andere Art von zellenbasiertem Datenübertragungssystem eingesetzt
werden kann, wie später noch
gezeigt wird.
-
In der nun folgenden Beschreibung
wird der Ausdruck 'Teilstrom
von Zellen fester Länge' verwendet. Dieser
Ausdruck beinhaltet nicht nur Ströme, die mehrere Zellen umfassen,
sondern auch eine einzelne Zelle. Eine solche Einzelzelle kann eine
ATM-Zelle sein.
-
Wie in der Einleitung erwähnt gibt
es Bedarf für
ein neues Konzept, das die sofortige Verarbeitung von Strömen mit
Zellen fester Länge,
die über
ein Zeitschlitzmedium empfangen werden, vereinfacht. Dieses Zeitschlitzmedium
kann beispielsweise ein Datenübertragungskanal
eines Datenübermittlungsnetzes,
ein Speicherkanal mit einer Speichereinrichtung oder ein Rechnerbus
sein.
-
Es muss berücksichtigt werden, dass es
auf einem solchen Zeitschlitzmedium möglicherweise zeitkritische
Informationen gibt, die in einer geeigneten Weise verarbeitet werden
müssen.
Außerdem muss
die Zuweisung von Zeitschlitzen auf diesem Zeitschlitzmedium 11 unbeeinflusst
bleiben, da einer bestimmten Anwendung Bandbreite zugewiesen wird,
indem Zeitschlitze auf dem Zeitschlitzmedium zugewiesen werden.
Jedes Eingreifen, das zum Vertauschen von Zellen oder zur Behinderung
zeitkritischer Zellen führt,
ist zu vermeiden.
-
Da sich herausgestellt hat, dass
die herkömmliche
sequentielle Zelle-für-Zelle-Verarbeitung für Hochgeschwindigkeits-Datenübertragungssysteme
nicht geeignet ist, ist ein neuer Ansatz erforderlich. Das grundlegende
Konzept der vorliegenden Erfindung wird nun unter Bezugnahme auf 1 beschrieben. Auf der linken
Seite der 1 wird ein
ankommender Strom 10 von Zellen fester Länge auf
einem Zeitschlitzmedium 11 gezeigt. Gemäß der Erfindung wird der ankommende
Strom 10 von Zellen fester Länge in eine Parallelverarbeitungseinheit 9 eingespeist,
wo er in N Teilströme
von Zellen fester Länge
demultiplexiert wird (mit N = 1, 2, 3, ...). Das Demultiplexieren
geschieht ohne Verfälschung
des Zelleninhalts und ohne Veränderung
der Zellenlänge. Die
Zahl N hängt
ab von der Datenübertragungsrate, von
der Anzahl der Zyklen, die die nachfolgende Verarbeitung in Anspruch
nimmt, von der Länge
der Zellen und von anderen Parametern. Der Demultiplexer 12 teilt
den Zellenstrom 10 in fünf
Teilströme
(d. h. N = 5) auf. Diese fünf
Teilströme
werden dann an den N Ausgangsports des Demultiplexers 12 bereitgestellt und
in N identische Parallelverarbeitungswege 13.1–13.5 eingespeist.
In dem vorliegenden Beispiel umfasst jeder Verarbeitungsweg zwei
Verarbeitungseinheiten 14.x und 15.x. Die Verarbeitung
der Zellen 16 durch die Parallelverarbeitungswege 13.–13.5 wird
in Zusammenhang mit 2 und
den 3A–3G dargestellt. Auf der rechten
Seite der Parallelverarbeitungswege 13.1–13.5 werden
die Teilströme – nachdem
sie verarbeitet wurden – in
einen Multiplexer 17 eingespeist und ergeben einen Ausgangsstrom 18 aus
Zellen fester Länge
auf dem Zeitschlitzausgangsmedium 19. Dieser Multiplexer 17 ist so
ausgeführt,
dass die ursprüngliche
Sequenz der Zellen, d. h. die chronologische Reihenfolge des Eingangsmediums 11,
wieder hergestellt wird. Das heißt, dass nicht nur die Reihenfolge
der Zellen (wie in einer FIFO-Einrichtung; first in first out),
sondern auch die genaue Anordnung innerhalb der Zeitschlitze beibehalten
wird.
-
In 2 ist
ein typischer Strom 30 von Zellen fester Länge A–G dargestellt.
Der Zeitschlitzcharakter des Übertragungsmediums
ist dargestellt, indem die Zeitachse in Schlitze aufgeteilt wurde.
Die Zeitschlitzlänge
wird durch den Buchstaben 'T' angegeben. Die in 2 gezeigte Momentaufnahme
wurde zum Zeitpunkt t = t0 aufgenommen.
Der Strom 30 aus Zellen fester Länge A-G wird jetzt durch die
Parallelverarbeitungseinheit 9 der Erfindung, die in 1 dargestellt ist, geführt. Momentaufnahmen
wurden zu den Zeitpunkten t = t0 + T, t
= t0 + 2T, t = t0 +
3T, t = t0 + 4T, t = t0+
5T, t = t0 + 6T, und t = t0 +
7T aufgenommen. Diese Sequenz von Momentaufnahmen ist in den 3A–3G dargestellt.
Wie man aus dieser Sequenz erkennen kann, wird der erste Teilstrom
von Zellen (man beachte, dass bei dem vorliegenden Beispiel ein
Teilstrom von Zellen nur aus einer Zelle besteht) in den ersten
Verarbeitungsweg 13.1 eingespeist, der zweite Teilstrom
wird eine Zeitschlitzlänge später in den
zweiten Verarbeitungsweg 13.2 eingespeist, und so weiter.
Wie in 3C und D dargestellt ist, ist der erste Teilstrom
(Zelle A) der erste, der den Multiplexer 17 erreicht. Der
zweite Teilstrom (Zelle B) liegt einen Schritt dahinter. Der Multiplexer 17 gibt jetzt
den ersten Teilstrom (Zelle A) auf das Zeitschlitzmedium 19 aus, während alle
anderen Teilströme noch
verarbeitet werden. Teilstrom für
Teilstrom werden nun die Ströme,
die am Multiplexer 17 ankommen, auf das Ausgangsmedium 19 multiplexiert,
und ein Strom 18 von Zellen fester Länge wird, wie man auf der rechten
Seite der 3G sehen kann,
wieder hergestellt. Die chronologische Reihenfolge auf der Ausgangsseite
ist genauso, wie sie ursprünglich
auf der Eingangsseite war.
-
Wie in 4A gezeigt
wird, ist die Anordnung der Zellenverarbeitungseinheiten in dem
Datenweg von der physikalischen Schicht bis zu einem ATM-Schaltteil 72 und
weiter auf dem physikalischen Medium auf der anderen Seite des Schaltteils 72 streng
sequentiell und enthält
normalerweise nur den einen Abzweigungspunkt, an dem die Zellen
entweder an das Schaltteil 72 oder an einen Mikroprozessor 47,
der bestimmte Zellen für
den Verwaltungsbetrieb (OAM: Operation and maintenance cells) verarbeitet,
weitergeleitet werden. Sie ist daher ideal geeignet für eine sofortige
Zellenverarbeitung. Eine Standardanordnung wird in 4A gezeigt. Die erste Einheit ist der
Leitungsschnittstellenhandler 42, der den Empfang der ATM-Zellen 40 von
mehreren first-in-first-out-Einheiten
(FIFOs) regelt. Die nächste Einheit
ist eine VPI/VCI-Nachschlageinheit 78 (VPI: virtual
path identifier; VCI: virtual channel identifier), welche die VPI/VCI-Felder
einer ATM-Zelle mit einer vordefinierten Nachschlagtabelle vergleicht
und vor der Zelle mehrere Bits anfügt, die anderen Einheiten mitteilen,
was mit dieser Zelle zu tun ist. Eine weitere Einheit ist die Kopf-Fehlerkorrektureinheit 79,
welche den ATM-Zellenkopf
im Hinblick auf Bitfehler analysiert und bestimmte Fehler korrigiert
oder Zellen mit nicht korrigierbaren Fehlern markiert, damit sie
entfernt werden können.
Die OAM-Zellenverarbeitungseinheit 48 extrahiert
OAM-Zellen für
den Mikroprozessor 47 oder fügt solche Zellen in den Zellenstrom ein.
Die AAL5-Segmentierungs- und Neugruppierungseinheit 70 (AAL:
ATM adaption layer) fasst ATM-Zellen zu größeren Paketen für den Mikroprozessor 47 zusammen
oder umgekehrt. Die Routing-Header-Einfügeeinheit 71 des
Schaltteils fügt
an die ATM-Zelle einen schaltteilspezifischen Header an, mit dessen
Hilfe der Schaltteil 72 erkennt, an welche(n) Ausgangsport
(s) er die Zelle schicken soll. Die VPI/VCI-Einfügeeinheit 73 entfernt den Routing-Header
des Schaltteils und ersetzt den alten VPI/VCI-Wert durch den entsprechenden Wert für das nächste Link.
Die Zellenregistriereinheiten 74 und 75 zählen die
Zellen, die für
eine Verbindung übersandt
wurden, die ungültigen
Zellen und so weiter. Die Zellstromkontrolleinheit 76 an
einer Netzbenutzerschnittstelle (UNI) kontrolliert, dass die Zellspitzenrate
und die Zellmittelrate den für
eine Verbindung gewährten
Genehmigungen entsprechen und entfernt Zellen, die diese Regel verletzen.
Die Verkehrsformungseinheit 77 verzögert Zellen innerhalb des Netzes,
bis sie wieder mit den Genehmigungen übereinstimmen, d. h. sie korrigiert
Verletzungen von Verkehrsgenehmigungen, die vom Netz und nicht vom
Benutzer verursacht werden. Wie auf der Eingangsseite gibt es auch
auf der Ausgangsseite einen Leitungsschnittstellenhandler 80.
All diese Einheiten benötigen
für ihre
Funktion eine bestimmte Anzahl von Taktzyklen und einige von ihnen
benötigen
möglicherweise
mehrere Paralleleinheiten, um zeitgerecht zu arbeiten. Außerdem können bestimmte
Einheiten zum Teil weiter unterteilt werden, mit einer sequentiellen
Anordnung dieser Teileinheiten, und es kann sein, dass entsprechend
der vorliegenden Erfindung nur bestimmte Teileinheiten eine Parallelisierung
benötigen.
-
Ein schematisches Ausführungsbeispiel
der vorliegenden Erfindung, das als Teil eines ATM-Schaltteil-Adapters 43 zur Koppelung
eines ATM-Datenübertragungskanals 41 mit
einer herstellerspezifischen ATM-Schaltstruktur 72 konzipiert wurde,
ist in 4B dargestellt.
Wie weiter oben beschrieben, wird ein solcher ATM-Schaltteil-Adapter 43 eingesetzt,
um einen Strom 40 von ATM-Zellen in einen Strom 50 von
Zellen umzuwandeln, die für
eine Leitweglenkung durch eine Schaltstruktur 72, die speziell
vorbereitete Zellen benötigt,
geeignet sind. Struktur und Inhalt dieser speziell vorbereiteten
Zellen hängen
von der Art des verwendeten Schaltteils ab und sind von Hersteller
zu Hersteller unterschiedlich. Wie in 4B schematisch
dargestellt umfasst eine solche ATM-Schaltteil-Adapterkarte 43 die
in 4A gezeigten Einheiten,
wobei einige dieser Einheiten Teil einer Parallelverarbeitungseinheit 45 sind. Im
ATM-Schaltteil-Adapter 43 werden
diejenigen Einheiten, die nicht schnell genug sind, parallel ausgeführt (siehe
Kästchen 45).
Einige der anderen Einheiten werden jedoch nur einmal gebraucht.
Insbesondere diejenigen Verarbeitungseinheiten, die zur Verarbeitung
einer Zelle mehr als eine Zeitschlitzlänge benötigen, sind mehrmals (N mal)
vorhanden, um eine Parallelverarbeitung zu ermöglichen, und sind zwischen
einem Demultiplexer und einem Multiplexer angeordnet. Die Ausführung einiger
Prozessschritte in einer parallelen und gestaffelten Art und Weise wird
in 4B vereinfacht durch
die Parallelverarbeitungseinheit 45 der Erfindung angezeigt,
welche die Funktionselemente der 1 umfasst.
Nachdem der Zellenstrom 50 von dem ATM-Schaltteil-Adapter 43 verarbeitet
wurde, wird er durch die Schaltstruktur 72 gelenkt, auf
deren Ausgangsseite eine weitere ATM-Schaltteil-Adapterkarte 81 angeordnet
sein kann. Diese ATM-Schaltteil-Adapterkarte 81 kann eingesetzt
werden, um den Zellenstrom wieder in einen ATM-Zellenstrom umzuformen.
-
Die Verarbeitung wird komplizierter,
wenn der Betrieb einer Datenverarbeitungseinheit 55.1 davon
abhängig
ist, dass die Operation der vorherigen Einheit 54.1 desselben
Datenwegs 53.1 abgeschlossen sein muss. In diesem Fall
muss sichergestellt sein, dass eine Zelle diese Datenverarbeitungseinheit 55.1 erst
dann erreicht, wenn die Verarbeitung in der vorherigen Einheit 54.1 abgeschlossen
ist. Gemäß einem
anderen Ausführungsbeispiel
der vorliegenden Erfindung kann dieses Problem gelöst werden,
indem man in jeden parallelen Verarbeitungsweg 53.x eine
Verzögerungseinheit 56.1 integriert,
so dass garantiert ist, dass eine Zelle die nächste Verarbeitungseinheit 55.1 erst
dann erreicht, wenn die Verarbeitung der vorherigen Einheit 54.1 abgeschlossen ist.
Dieses Prinzip wird schematisch durch ein Ausführungsbeispiel der Parallelverarbeitungseinheit 50 dargestellt,
die über
drei parallele Verarbeitungswege 53.x verfügt. Es ist
offensichtlich, dass eine solche Verzögerungseinheit 56.1 bei
allen N = 3 parallelen Verarbeitungswegen vorhanden sein muss. Hiermit ist
gewährleistet,
dass die Funktionalität
der gesamten parallelen Verarbeitungseinheit 50 unverändert bleibt.
Nur die gesamte Verzögerung
der Verarbeitung der Verarbeitungseinheit 50 erhöht sich
um die Summe aller Verzögerungseinheiten
pro Verarbeitungsweg. Die Verzögerungseinheit 56.x kann
auch als integrierter Bestandteil der Einheit 54.1 betrachtet werden,
wodurch gewährleistet
ist, dass die Einheit 54.1 die Zelle erst dann an die nächste Einheit
weitergibt, wenn alle Vorgänge
abgeschlossen sind.
-
Die Multiplexer in 3 wie auch die in 7 können
sehr einfach realisiert werden. Im Prinzip muss nur der Ausgang
der vorhergehenden Einheit zwischengespeichert werden, d. h. der
Ausgang wird in Registern gespeichert, die ihren Inhalt mit der Flanke
eines Taktsignals weitergeben. Das Zeitverhalten des Zeitschlitzsystems
garantiert dann automatisch, dass die unterschiedlichen Datenwege
direkt zusammenpassen.
-
Die Demultiplexer sind komplizierter.
Es gibt zwei grundsätzliche
Realisierungsmöglichkeiten. Erstens:
bei N parallelen Wegen können
sie an ein Zählwerk
angeschlossen werden, dessen Wert mit 1 beginnt, für jede Zelle
um 1 hochgezählt
und für
jede (N + 1)te Zelle wieder auf 1 zurückgesetzt wird. Die Zellen
werden dann, je nach Zählerwert,
an die verschiedenen Datenwege weitergeleitet. Ein solcher Demultiplexer
wird zumindest an der Startposition in 3 benötigt,
aber auch nach jeder gemeinsam genutzten Einheit in 7. Zweitens: die allererste Einheit von
der Leitungsschnittstelle kann der ankommenden Zelle ein Bitmuster
voranstellen, das von 1 bis N zählt
und dann wieder auf 1 zurücksetzt,
wobei N die Höchstzahl
der parallelen Datenwege ist, die in der gesamten Parallelverarbeitungseinheit
verwendet werden. Jeder nachfolgende Multiplexer schickt die Zellen
entsprechend diesem Zählbitmuster
weiter. Diese Methode ist eventuell zu bevorzugen, wenn die Zahl
der notwendigen Multiplexer groß ist
und die betreffende Anzahl von zugehörigen Zählwerken zu viel Platz auf
dem Chip beanspruchen würde.
-
Ein drittes Ausführungsbeispiel ist in 6 dargestellt. In diesem
Ausführungsbeispiel
umfasst die Parallelverarbeitungseinheit 60 zwei Parallelverarbeitungswege 63.1 und 63.2.
Statt Verzögerungseinheiten,
die dafür
sorgen, dass die Verarbeitung einer Zelle in einer bestimmten Verarbeitungseinheit erst
dann startet, wenn die Verarbeitung in einer vorherigen Einheit
abgeschlossen ist, können
zwischen den beiden Einheiten, die voneinander abhängen, andere
Verarbeitungseinheiten eingesetzt werden. In 6 arbeitet die Verarbeitungseinheit 65.1 nur dann
richtig, wenn die Verarbeitung in den Einheiten 64.1 abgeschlossen
ist. Das gleiche gilt für
die Einheiten 65.2 und 64.2. Um dies zu gewährleisten
wurden dazwischen noch weitere Verarbeitungseinheiten 66.1 und 66.2 eingefügt. Daher
kommt es zu keiner zusätzlichen
Verzögerung,
wie es bei Verwendung von Verzögerungseinheiten
der Fall ist (siehe 5).
Es wird nur die Reihenfolge der Verarbeitungsschritte verändert. Diese
Methode kann jedoch nur dann eingesetzt werden, wenn nicht kritisch
ist, wann die Verarbeitung in den Einheiten 66.1 und 66.2 tatsächlich ausgeführt wird.
-
Ein anderes Ausführungsbeispiel der vorliegenden
Erfindung ist in 7 dargestellt.
Die Vervielfachung der Chipfläche
aufgrund der Anordnung vieler paralleler Verarbeitungswege in einer
Parallelverarbeitungseinheit kann beträchtlich reduziert werden, wenn
bestimmte Verarbeitungseinheiten von allen genutzt werden, oder
durch einige Parallelverarbeitungswege. Für diesen Zweck sind azyklische
kritische Einheiten am besten geeignet. Wie in 7 gezeigt wird, gibt es hierfür eine Parallelverarbeitungseinheit 81,
die einen Demultiplexer 83 umfasst, gefolgt von zwei Parallelverarbeitungswegen 88.1 und 88.2.
Auf der Ausgangsseite dieser Parallelverarbeitungswege befindet
sich ein Multiplexer 89. In diesem Ausführungsbeispiel wird die azyklische
kritische Verarbeitungseinheit 86 von den beiden parallelen Verarbeitungswegen
genutzt, d. h. alle Zellen auf der Ausgangsseite der Verarbeitungseinheiten 84.1 und 84.2 werden
von derselben Verarbeitungseinheit 86 eingespeist und verarbeitet.
Dies ist deswegen möglich,
weil Zellen von den verschiedenen Verarbeitungswegen gestaffelt,
also nicht gleichzeitig, eintreffen. Die gemeinsame Verarbeitungseinheit 86 muss eine
Einheit sein, welche die Verarbeitung einer Zelle innerhalb der
Taktzykluszahl abschließt,
die einer Zeitschlitzlänge
T entspricht. Auf der Ausgangsseite der gemeinsamen Verarbeitungseinheit 86 befindet sich
ein Demultiplexer 87, der die Signale in die richtigen
Verarbeitungseinheiten 85.1 und 85.2 einspeist. Die
Kennzeichnung der Verarbeitungseinheiten, die von mehreren parallelen
Verarbeitungswegen verwendet werden können, kann entweder vom Chipentwerfer übernommen
werden oder sie kann mit den heutigen Entwurfswerkzeugen automatisch
in den Syntheseoptimierungsschritten durchgeführt werden, entweder in der
High-Level-Synthese oder in der Gatter-Level-Synthese.
-
Ein Teil der Bandbreite eines Zellenverarbeitungssystems
kann einer bestimmten Anwendung zugewiesen werden. Dies ist ein
sehr wichtiges Merkmal eines zellenbasierten Systems und wird in ATM-Netzwerken
zur Übertragung
zeitkritischer Daten (Echtzeitdaten) eingesetzt. Wenn solche zeitkritischen
Dienste jedoch in einem Netzwerk unterstützt werden, müssen alle
Adapter, Schaltteile usw. ebenfalls diese Dienstart unterstützen, d.
h. es muss gewährleistet
sein, dass die einer Anwendung zugeordneten Zeitschlitze unverändert bleiben.
Dies wird durch die parallelen Verarbeitungseinheiten gemäß der vorliegenden
Erfindung gewährleistet.
-
Die vorliegende Architektur, basierend
auf dem Konzept, N parallele Verarbeitungswege zu nutzen, um eine
einzelne zeitkritische Verarbeitungseinheit zu ersetzen, kann in
allen zellenbasierten Systemen eingesetzt werden und ist damit nicht
auf ATM-Datenübermittlungssysteme
begrenzt. Andere Beispiele, in denen die vorliegende Erfindung eingesetzt
werden kann, sind Speichereinrichtungen, bei denen Daten in Form
von Zellen fester Länge übermittelt
werden, oder Rechnerbussysteme.