Die vorliegende Erfindung bezieht sich auf eine Schalt
vorrichtung zur Verwendung zum Beispiel beim Schalten von
Daten in Netzen mit asynchronem Transportmodus (ATM).
Fig. 1 der beiliegenden Zeichnungen zeigt ein Block
diagramm einer herkömmlichen Schaltvorrichtung 1 zur Verwen
dung in einem ATM-Netz. In der Vorrichtung von Fig. 1 ist
eine Vielzahl von selbstlenkenden Schaltelementen (SREs) 2
in Matrixform zusammen verbunden. Jedes SRE 2 hat vier
Eingangsports I1 bis I4 und vier Ausgangsports O1 bis O4.
Innerhalb von jedem individuellen SRE 2 können ATM-Zellen,
die an irgendeinem Eingangsport I1 bis I4 empfangen werden,
zu irgendeinem Ausgangsport O1 bis O4 geleitet werden, und
eine Leitwegkennung, die jeder ATM-Zelle zugeordnet ist, die
ein SRE 2 durchläuft, wird verwendet, um zu bestimmen, zu
welchem Ausgangsport die betreffende Zelle gesendet wird.
Jeder Ausgangsport hat einen zugeordneten First-in-first-
out-Zellenpuffer mit einer Speicherkapazität von zum Bei
spiel 75 Zellen.
Wie in Fig. 1 gezeigt, sind die SREs 2 in einer Matrix
angeordnet, so daß bei diesem Beispiel die gesamte Schalt
vorrichtung zwölf Eingangsports und 16 Ausgangsports hat. Um
solch eine matrixförmige Verbindung zu vereinfachen, hat
jedes SRE 2 vier Regenerationsausgänge R1 bis R4, die jewei
lig den Eingangsports I1 bis I4 des betreffenden SRE 2
zugeordnet sind, und auch vier Expansionseingänge E1 bis E4,
die jeweilig den Ausgangsports O1 bis O4 des betreffenden
SRE 2 zugeordnet sind. Zellen, die an einem der Eingangs
ports I1 bis I4 empfangen werden, werden zur Ausgabe durch
den zugeordneten Regenerationsausgang R1 bis R4 regeneriert
und neu getaktet. Zellen, die an einem der Expansionsports
E1 bis E4 empfangen werden, werden dem Zellenpuffer des
zugeordneten Ausgangsports O1 bis O4 eingegeben.
Die SREs 2 der Vorrichtung von Fig. 1 sind in der
gezeigten Matrixform gut zu verwenden, da jedes SRE neu
getaktete aktive Ausgaben vorsieht, die die direkte Verbin
dung zu den nächsten benachbarten SREs gestatten. Dadurch
wird die Notwendigkeit passiver Busse eliminiert, und die
Zwischenverbindungsprobleme zwischen aneinandergrenzenden
SREs auf Leiterplattenebene werden reduziert.
Die Anzahl von Schaltelementen, die erforderlich sind,
um einen Schalter mit N Eingangsports mal N Ausgangsports zu
bilden, ist proportional zu N², und daher ist die Matrixkon
figuration tatsächlich nur für relativ kleine Schaltvorrich
tungen geeignet, zum Beispiel bis zu 32 Eingangsports mal 32
Ausgangsports. Bei größeren Schaltern können individuelle
Matrizen 1 der in Fig. 1 gezeigten Art unter Verwendung
einer Mehrweg-Deltaanordnung, wie in Fig. 2 der beiliegen
den Zeichnungen gezeigt, untereinander verbunden werden.
In Fig. 2 umfaßt die Schaltvorrichtung 5 acht SRE-
Matrizen 1 der in Fig. 1 gezeigten Art. Somit enthält jede
der SRE-Matrizen 1 in Fig. 2 eine Vielzahl von SREs 2, die
in Matrixform angeordnet sind. Die Matrizen 1 in Fig. 2
sind in zwei Spalten angeordnet, und jede Matrix in der
linken Spalte hat Ausgangsports, die jeweilig mit den Ein
gangsports von jeder SRE-Matrix 1 in der rechten Spalte
verbunden sind, und umgekehrt.
Die in den Schaltvorrichtungen der Fig. 1 und 2 ver
wendeten Matrizen haben feststehende Busanordnungen und
feststehende Speichermengen (typischerweise hat der Zellen
puffer, der jedem Ausgangsport eines SRE 2 zugeordnet ist,
eine Speicherkapazität von 75 Zellen). Jede Erhöhung der
Größe der Schaltvorrichtung führt zu einer quadratischen
Zunahme der Anzahl von SREs und auch zu einer quadratischen
Zunahme des Volumens der "Statistik" (d. h. von Verkehrs
flußinformationen), die erforderlich ist, um die verschiede
nen Schaltknoten innerhalb der Schaltvorrichtung zu überwa
chen. Solch eine Erhöhung des Volumens der Statistik erhöht
unvermeidlich die Verarbeitungsanforderungen an den
Schaltcontroller.
So wie die Anzahl von Schaltknoten ferner zunimmt, sind
es mehr Punkte, an denen ein Besetztzustand auftreten kann.
Es ist schwierig, all diese Punkte gleichzeitig zu überwa
chen, um die Verkehrsflüsse zu bewerten und nachzuweisen,
welche Quellenports zu dem Besetztzustand führen.
Zusätzlich ist die Zellenverzögerungsschwankung (CDV)
eines Schalters auf SRE-Matrix-Basis zu der Größe des Schal
ters proportional.
Ein weiteres Problem besteht darin, daß die Speicher
kapazität von jedem SRE auf einen gewissen relativ begrenz
ten Wert festgelegt ist und nicht expansionsfähig ist, um
verschiedenen Schalterarchitekturen gewachsen zu sein.
Gemäß der vorliegenden Erfindung ist eine Schaltvor
richtung vorgesehen, mit einer Vielzahl von Schalteinheiten,
von denen jede ein Speichermittel enthält, das Speicherzonen
hat, die jeweilig den anderen Schalteinheiten von der Viel
zahl entsprechen, welche Vorrichtung eine Schreibphase hat,
in der, wenn Daten durch eine erste der Schalteinheiten zur
Ausgabe durch eine zweite der Schalteinheiten empfangen
werden, die erste Schalteinheit die empfangenen Daten in der
Speicherzone ihres Speichermittels speichert, die der zwei
ten Schalteinheit entspricht, und auch eine Lesephase hat,
in der die zweite Schalteinheit die gespeicherten Daten aus
ihrer entsprechenden Speicherzone in dem Speichermittel der
ersten Schalteinheit heraussucht und jene Daten ausgibt.
In solch einer Schaltvorrichtung werden die empfangenen
Daten von der Schalteinheit, an der sie empfangen werden,
direkt zu der Schalteinheit übertragen, von der sie auszuge
ben sind. Somit werden die Daten in der Schaltvorrichtung
einmal "stationär" gespeichert und werden nicht mehrere Male
von Einheit zu Einheit übertragen, wie in der Schaltvorrich
tung nach Stand der Technik, die zuvor beschrieben wurde und
bei der selbstlenkende Elemente verwendet werden. Dadurch
können Schaltverzögerungen und Probleme des Besetztseins
vermieden werden und kann somit auch die Zellenverzögerungs
schwankung (CDV) reduziert werden, wenn die Schaltvorrich
tung in einem ATM-Netz verwendet wird.
Weiterhin erfolgt die Datenübertragung von der empfan
genden Schalteinheit zu der Ausgabeschalteinheit in der
Vorrichtung vollkommen intern und kann in Raten ausgeführt
werden, die größer als die Datenraten der Kommunikationslei
tungen/-netze sind, mit denen die Schaltvorrichtung verbun
den ist. Somit werden Schaltverzögerungen und das Besetzt
sein noch weiter reduziert.
Zusätzlich ist die Anzahl von Eingangs-/Ausgangsknoten
der Schaltvorrichtung einfach gleich (oder proportional zu)
der Anzahl von Schalteinheiten, so daß in dem Fall, wenn
mehr Eingangs-/Ausgangsknoten erforderlich sind, die Erhö
hung der Anzahl von Schalteinheiten, die erforderlich sind,
linear ist und nicht dem Quadratwert folgt, wie bei der
matrixförmigen Schaltvorrichtung nach Stand der Technik. Die
Anzahl von Schaltknoten innerhalb der Vorrichtung nimmt auch
nur linear zu, und so unterliegt das Volumen von statisti
schen Daten auch nur einer linearen (statt einer quadrati
schen) Erhöhung. Somit ist die Schaltvorrichtung, die die
vorliegende Erfindung verkörpert, besonders vorteilhaft und
kosteneffektiv, wenn relativ große Anzahlen von Eingangs-
/Ausgangsknoten erforderlich sind.
In der genannten Schreibphase sind die Schalteinheiten
vorzugsweise gleichzeitig betriebsfähig, wobei jede von
ihnen dabei empfangene Daten, zur Ausgabe durch eine andere
der Schalteinheiten, in der Speicherzone ihres Speichermit
tels speichert, die jener anderen Schalteinheit entspricht.
Ähnlich sind in der genannten Lesephase zwei beliebige der
Schalteinheiten oder mehr vorzugsweise gleichzeitig
betriebsfähig, um aus ihren jeweiligen entsprechenden Spei
cherzonen in den Speichermitteln der anderen Schalteinheiten
die darin gespeicherten Daten herauszusuchen. Da die Schalt
einheiten auf diese Weise parallel arbeiten, kann der Daten
durchsatz angenehm hoch sein.
Die Vorrichtung umfaßt vorzugsweise ferner ein Steuer
mittel, das mit jeder der Schalteinheiten verbunden ist und
betriebsfähig ist, um mehrere Schalteinheit-Speichermittel-
Paare zur Verwendung in der Lesephase auszuwählen, wodurch
die Schalteinheit von jedem Paar dazu bestimmt wird,
gespeicherte Daten aus ihrer entsprechenden Speicherzone in
dem Speichermittel des betreffenden Paares während der
Lesephase herauszusuchen. Dadurch kann die Vorrichtung die
Paare intelligent und adaptiv selektieren, um den maximalen
Datendurchsatz zu erreichen und das Besetztsein zu vermei
den.
Die Lesephase kann eine Anzahl von Lesezyklen umfassen.
In diesem Fall ist das Steuermittel vorzugsweise betriebsfä
hig, um verschiedene Schalteinheit-Speichermittel-Paare in
verschiedenen Lesezyklen derselben Lesephase zu selektieren,
damit jede Schalteinheit die für sie bestimmten Daten aus
all den anderen Schalteinheiten der Reihe nach heraussuchen
kann. Das Steuermittel kann auch wenigstens eines der
Schalteinheit-Speichermittel-Paare in mehr als einem Lesezy
klus derselben Lesephase selektieren, um jenem Paar (das zum
Beispiel eine höhere Verkehrsebene als andere Paare hat)
eine längere Datenübertragungsperiode zu verschaffen und
daher zuzulassen, daß über jenes Paar mehr Daten als über
die anderen Paare übertragen werden können.
Die Schreib- und Lesephasen können alternierend sein,
oder es kann eine Schreibphase zwischen zwei Lesezyklen
derselben Lesephase liegen. Die Dauer von jeder Phase/jedem
Zyklus braucht nicht gleich zu sein und kann, zum Beispiel
durch das Steuermittel, nach Bedarf verändert werden, um
einen optimalen Datendurchsatz zu erreichen.
Vorzugsweise ist das Steuermittel betriebsfähig, um die
Schalteinheit-Speichermittel-Paare in Abhängigkeit von den
Verkehrsflußbedingungen in der Vorrichtung zu selektieren.
Das Steuermittel kann zum Beispiel ein Verkehrsflußüberwa
chungsmittel enthalten, das betriebsfähig ist, um die Daten
mengen, die in jeder Speicherzone der Speichermittel der
Schalteinheiten gespeichert sind, zu überwachen, wobei das
Steuermittel die überwachten Mengen beim Vornehmen der
Auswahl der Schalteinheit-Speichermittel-Paare verwendet.
Diese Lösung hat den weiteren Vorteil, daß auf Grund der
Überwachungsfunktion des Steuermittels Schaltstatistiken
auch automatisch erzeugt werden.
Wenn die Vorrichtung in einem ATM-Netz verwendet wird,
kann das Steuermittel auch Zellenprioritäten berücksichti
gen, wenn die Auswahl der Schalteinheit-Speichermittel-Paare
erfolgt. Wenn die Vorrichtung in einem ATM-Netz verwendet
wird, kann das Steuermittel unter Verwendung seiner Kennt
nisse über die Verkehrsflüsse ferner auch bewirken, daß eine
der Schalteinheiten geeignete Verkehrsverwaltungszellen zu
der Datenquelle sendet, die Daten zu jener Schalteinheit
sendet, um zu verursachen, daß die Quelle ihre Zellenrate
"drosselt". So können potentielle Besetztsituationen vermie
den werden.
Die Vorrichtung umfaßt vorzugsweise ferner ein Busmit
tel, das die Schalteinheiten untereinander verbindet, wel
ches Busmittel eine Vielzahl von individuellen Busleitungs
einheiten enthält, wobei so viele Busleitungseinheiten wie
Schalteinheiten vorhanden sind und jede Schalteinheit mit
allen Busleitungseinheiten verbunden ist, aber die jeweili
gen Speichermittel der Schalteinheiten nur mit jeweiligen
verschiedenen der Busleitungseinheiten verbunden ist. Da so
viele Busleitungseinheiten wie Schalteinheiten vorhanden
sind, sind gleichzeitige (parallele) Operationen durch alle
Schalteinheiten möglich. Solch ein Busmittel kann einfache
Verbindungen zwischen den verschiedenen Schalteinheiten
vorsehen, die auf Leiterplattenebene leicht implementiert
werden können. Die Schalteinheiten können zum Beispiel eine
nach der anderen in einer Spaltenrichtung angeordnet sein,
wobei die Busleitungen in jener Spaltenrichtung durch die
Schalteinheiten oder an einer Seite von ihnen Seite an Seite
verlaufen.
Vorzugsweise synchronisiert das Steuermittel die Opera
tion der Schalteinheiten, um eine effektive Gesamtleistung
der Schaltvorrichtung zu erreichen. In der Lesephase ist das
Steuermittel vorzugsweise betriebsfähig, um die Schaltein
heit-Speichermittel-Paare so zu selektieren, daß in jener
Phase alle Schalteinheiten, die gespeicherte Daten aus ihren
jeweiligen gepaarten Speichermitteln gleichzeitig heraussu
chen, dies über verschiedene Busleitungseinheiten tun, um
während solch einer gleichzeitigen Operation der Schaltein
heiten Buskollisionen zu vermeiden. Dies vermeidet die
Notwendigkeit einer separaten Kollisionsvermeidungslogik
schaltungsanordnung, die erforderlich wäre, falls die ver
schiedenen Schalteinheiten ihre jeweiligen Buszugriffe
unabhängig voneinander und asynchron steuern könnten.
Das Speichermittel von jeder Schalteinheit wird vor
zugsweise verwendet, um virtuelle First-in-first-out-Spei
cherblöcke vorzusehen, die jeweilig den genannten Speicher
zonen entsprechen, wobei jeder Block jeweilige Schreib- und
Lesezeiger hat, die auch in dem Speichermittel der betref
fenden Schalteinheit gespeichert sind, zur Verwendung durch
die Schalteinheiten, wenn Daten in der entsprechenden Spei
cherzone gespeichert werden und aus ihr herausgesucht wer
den. Dadurch kann eine einfache (und selbst bei großer
Speicherkapazität kostengünstige) Speichervorrichtung mit
wahlfreiem Zugriff zum Vorsehen des Speichermittels verwen
det werden, zum Beispiel anstelle einer zweckbestimmten
First-in-first-out-Vorrichtung.
In einer bevorzugten Ausführungsform hat jede Schalt
einheit ein Mehrsendebearbeitungsmittel, das operativ ist,
wenn durch die betreffende Schalteinheit Mehrsendedaten zur
Ausgabe durch eine Vielzahl von bezeichneten anderen Schalt
einheiten empfangen werden, um die empfangenen Mehrsende
daten in der Speicherzone ihres Speichermittels zu spei
chern, die genau einer ersten von jenen bezeichneten Schalt
einheiten entspricht, und in den Speicherzonen, die jeweilig
den verbleibenden bezeichneten Schalteinheiten entsprechen,
einen Mehrsendeadressenzeiger zu speichern, der auf die
Stelle der Mehrsendedaten in der Speicherzone verweist, die
der ersten bezeichneten Schalteinheit entspricht. Dadurch
wird vermieden, daß die Mehrsendedaten mehrere Male in die
verschiedenen Speichereinheiten geschrieben werden müssen,
die jeweilig den bezeichneten Mehrsendeschalteinheiten
entsprechen, und daher wird die Effektivität erhöht. Statt
dessen kann in jedem Speichermittel eine zweckbestimmte
Mehrsendespeicherzone vorgesehen werden, wobei etwaige
Mehrsendedaten nur in jene Zone geschrieben werden und in
den Speicherzonen aller bezeichneten Mehrsendeschalteinhei
ten Mehrsendeadressenzeiger gespeichert werden.
In einer anderen Ausführungsform hat das Speichermittel
jeweils jeweilige Schreib- und Leseports und ist so ausge
legt, daß Daten zu derselben Zeit in den Schreibport
geschrieben werden können wie Daten aus dem Leseport heraus
gesucht werden; dabei ist der Leseport des Speichermittels
von jeder Schalteinheit mit allen anderen Schalteinheiten
verbunden, aber der Schreibport des Speichermittels von
jeder Schalteinheit ist nicht mit irgendwelchen anderen
Schalteinheiten verbunden. So können in der Lesephase Daten,
die durch jede Schalteinheit empfangen werden, in dem Spei
chermittel der betreffenden Einheit gespeichert werden,
während früher gespeicherte Daten aus jenem Speichermittel
durch eine andere Schalteinheit herausgesucht werden. Daher
kann die Schreibphase mit der Lesephase überlappt sein.
Jede Schalteinheit kann einen Schaltportsteuerabschnitt
enthalten, der mit jeweiligen Eingangs- und Ausgangsports
der Schalteinheit verbunden ist und betriebsfähig ist, wenn
Daten an dem genannten Eingangsport empfangen werden, um
eine Leitwegkennung zu erzeugen, die die Speicherzone in dem
Speichermittel der Schalteinheit bezeichnet, in der die
empfangenen Daten zu speichern sind. Diese Leitwegkennung
wird durch die Schalteinheit verwendet, um die Daten in der
erforderlichen Speicherzone ihres Speichermittels zu spei
chern, jedoch ist es aber nicht erforderlich, die Leitweg
kennung selbst (ebenso wie die Daten) in der Speicherzone zu
speichern, da die Daten einmal stationär in der Speicherzone
gespeichert werden und nicht viele verschiedene Schaltein
heiten durchlaufen, wie bei den oben beschriebenen selbst
lenkenden Elementen nach Stand der Technik. Somit wird die
Übertragungseffektivität erhöht, und der Leitwegaufwand und
Speicheranforderungen werden reduziert.
Jede Schalteinheit enthält vorzugsweise ein adaptives
Schaltelement, das mit dem Steuermittel verbunden ist, zum
Empfangen von Bussteuerinformationen von ihm, die die selek
tierten Schalteinheit-Speichermittel-Paare für jene Schalt
einheit in der Lesephase bezeichnen, und das gemäß jenen
Steuerinformationen betriebsfähig ist, um die passenden
Busleitungseinheiten der Reihe nach während der Dauer der
Lesephase zu aktivieren, um die Datenübertragung von dem
Speichermittel zu der Schalteinheit von jedem selektierten
Paar für die betreffende Schalteinheit zu erleichtern. Durch
Vorsehen solch eines adaptiven Schaltelementes in jeder
Schalteinheit, um die Busfolgesteuerung und andere Operatio
nen im Auftrag des Steuermittels auf niedriger Ebene aus zu
führen, kann das Steuermittel zum Ausführen der notwendigen
Aufgaben auf hoher Ebene und zum Überwachen von Verkehrs
flüssen freigehalten werden.
Als Beispiel wird nun Bezug auf die beiliegenden Zeich
nungen genommen, in denen:
Fig. 1, die zuvor erläutert wurde, ein Blockdiagramm
einer herkömmlichen ATM-Schaltvorrichtung zeigt;
Fig. 2, die auch zuvor erläutert wurde, ein weiteres
Beispiel einer herkömmlichen Schaltvorrichtung zeigt;
Fig. 3 ein Blockdiagramm einer ATM-Schaltvorrichtung
zeigt, die die vorliegende Erfindung verkörpert;
Fig. 4 bis 6 Blockdiagramme sind, die die Operation
der Vorrichtung von Fig. 3 in verschiedenen Operationspha
sen zeigen;
Fig. 7 ein Blockdiagramm zeigt, das eingehender als
Fig. 3 einen Teil der Vorrichtung von Fig. 3 darstellt;
Fig. 8 ein Beispiel des Formats von Steuerinformatio
nen in der Vorrichtung von Fig. 3 zeigt;
Fig. 9(A) bis 9(C) Tabellen zeigen, zur Verwendung
beim Erläutern dessen, wie die Operation der Vorrichtung von
Fig. 3 in Abhängigkeit von Verkehrsflußbedingungen abgewan
delt wird;
Fig. 10 ein schematisches Diagramm von einem Teil der
Vorrichtung von Fig. 3 zeigt;
Fig. 11 ein Beispiel des Formats zeigt, in dem in dem
Teil von Fig. 10 Daten gespeichert sind;
Fig. 12 ein Blockdiagramm eines Schaltungselementes
von Fig. 7 zeigt;
Fig. 13 ein detailliertes Schaltungsdiagramm von einem
anderen Schaltungselement von Fig. 7 zeigt;
Fig. 14(A) und 14(B) jeweilige Flußdiagramme bezüg
lich der Operation der Vorrichtung von Fig. 3 zeigen; und
Fig. 15 ein Blockdiagramm einer weiteren ATM-Schalt
vorrichtung zeigt, die die vorliegende Erfindung verkörpert.
In Fig. 3 enthält die ATM-Schaltvorrichtung 10, die
die vorliegende Erfindung verkörpert, eine Vielzahl von
Schalteinheiten 20₀ bis 20 2 und eine Steuereinheit 30. Die
Schalteinheiten 20₀ bis 20₂ haben jeweilige Eingangsports I₀
bis I₂ und jeweilige Ausgangsports O₀ bis O₂. Jede Schalt
einheit 20₀ bis 20₂ enthält einen Schaltportverwaltungs-
(SPM)-Abschnitt 22, der mit dem Eingangsport I und dem
Ausgangsport O der betreffenden Schalteinheit verbunden ist,
und enthält auch einen Speicherabschnitt 24. Busleitungen B₀
bis B₂, von denen jede Daten-, Adreß- und Steuerleitungen
umfaßt, dienen dazu, die SPM-Abschnitte 22₀ bis 22₂ und die
Speicherabschnitte 24₀ bis 24₂ miteinander zu verbinden.
Während jeder SPM-Abschnitt 22 mit allen drei Busleitungen
B₀ bis B₂ verbunden ist, ist jeder Speicherabschnitt 24 nur
mit einer der Busleitungen verbunden.
Wie in Fig. 3 gezeigt, ist jeder Speicherabschnitt 24
in zwei Speicherzonen geteilt. Im Fall des Speicherabschnit
tes 24₀ der ersten Schalteinheit 20₀ sind die zwei Zonen mit
R₁ und R₂ bezeichnet und entsprechen jeweilig den Ausgangs
ports O₁ und O₂ der zweiten und dritten Schalteinheiten 20₁
und 20₂. Im Fall des Speicherabschnittes 24₁ in der zweiten
Schalteinheit 20₁ sind die zwei Zonen mit R₂ und R₀ bezeich
net und entsprechen jeweilig den Ausgangsports O₂ und O₀ der
dritten und ersten Schalteinheiten 20₂ und 20₀. Im Fall des
Speicherabschnittes 24₂ in der dritten Schalteinheit 20₂
sind die zwei Zonen mit R₀ und R₁ bezeichnet und entsprechen
jeweilig den Ausgangsports O₀ und O₁ der ersten und zweiten
Schalteinheiten 20₀ und 20₁. Somit ist ersichtlich, daß der
Speicherabschnitt 24 von jeder Schalteinheit 20 Speicher
zonen hat, die jeweilig den anderen Schalteinheiten der
Vorrichtung entsprechen. Jede Speicherzone R dient als
sequentielle Liste oder FIFO-(First-in-first-out)-Einheit.
Die beispielhafte Vorrichtung von Fig. 3 ist für
Erläuterungszwecke vereinfacht und zeigt nur drei Schaltein
heiten und drei Busleitungen. In der Praxis wären mehr
Schalteinheiten und Busleitungen als hier vorhanden, zum
Beispiel insgesamt acht Busleitungen.
Nun wird unter Bezugnahme auf Fig. 4 bis 6 die Ope
ration der Vorrichtung von Fig. 3 beschrieben. In einer
ersten Operationsphase (Schreibphase), die in Fig. 4 gezeigt
ist, empfängt der SPM-Abschnitt 22 von jeder Schalteinheit
20 Zellen von seinem zugeordneten Eingangsport I. An diese
Zellen ist ein Portnummerindikator, der den Ausgangsport
bezeichnet, zu dem die Zelle zu leiten ist, und/oder ein
Mehrsendeindikator angehängt. Solch ein Mehrsendeindikator
wird verwendet, wenn Zellen, die an einem Eingangsport
empfangen werden, zu einer Vielzahl von verschiedenen Aus
gangsports statt nur zu einem einzelnen Ausgangsport zu
leiten sind. Als Reaktion auf den Empfang von jeder Zelle
schreibt der SPM-Abschnitt 22 die Zelle an die nächsten
aufeinanderfolgenden freien Stellen in der relevanten Spei
cherzone R des Speicherabschnittes 24 in seiner eigenen
Schalteinheit 20. Dieser Prozeß wird gleichzeitig durch die
anderen SPM-Abschnitte ausgeführt, wobei jeder SPM-Abschnitt
eine andere der Busleitungen B₀ bis B₂ verwendet, wie durch
die dicken Linien in Fig. 4 gezeigt. Wenn zum Beispiel eine
Zelle am Eingangsport I₁ empfangen wird und für den Aus
gangskanal O₂ bestimmt ist, speichert der SPM-Abschnitt 22₁
in der Schalteinheit 20₁ die betreffende Zelle in der Spei
cherzone R₂ des Schalteinheitsspeicherabschnittes 24₁ seiner
eigenen Schalteinheit 20₁.
Dann schaltet die Operation auf eine Lesephase. In
einem ersten Zyklus der Lesephase, der in Fig. 5 gezeigt
ist, bewirkt die Steuereinheit 30 der Vorrichtung, daß jeder
SPM-Abschnitt 22 seine Busselektion neu konfiguriert, um
Zugriff auf Speicherabschnitte 24 in anderen Schalteinheiten
zu erhalten, die von seiner eigenen getrennt sind. Wie in
Fig. 5 gezeigt, adressiert jeder SPM-Abschnitt 22 nun den
Speicherabschnitt 24 der vorhergehenden Schalteinheit. Jeder
SPM-Abschnitt 22 liest deshalb jetzt Zellendaten aus seiner
entsprechenden Speicherzone in jenem Speicherabschnitt, zum
Beispiel liest der SPM-Abschnitt 22₀ Zellendaten aus der
Speicherzone R₀ des Speicherabschnittes 24₀, liest der SPM-
Abschnitt 22₁ Zellendaten aus seiner entsprechenden Spei
cherzone R₁ in dem Speicherabschnitt 24₀, und liest der SPM-
Abschnitt 22₂ Zellendaten aus der Speicherzone R₂ in dem
Speicherabschnitt 24₁.
So werden durch die Steuereinheit mehrere Schaltein
heit-Speicherabschnitt-Paare zur Verwendung beim Lesen von
Zellendaten selektiert, wobei jedes Paar seinen eigenen
Datenübertragungsweg hat, indem es eine verschiedene der
Busleitungen B₀ bis B₂ benutzt.
Unter der Steuerung der Steuereinheit 30 könnten dann
in sukzessiven weiteren Zyklen der Lesephase die SPM-
Abschnitte 22₀ bis 22₂ programmiert werden, um die Speicher
abschnitte 24₀ bis 24₂ in Folge auf einer Modulo-n-Basis zu
lesen (hier ist Klein n = 3).
Jedoch steuert in einer bevorzugten Ausführungsform der
vorliegenden Erfindung die Steuereinheit 30 das Zugreifen
durch die SPM-Abschnitte der Speicherabschnitte in Abhängig
keit von den Verkehrsflüssen zu irgendeiner gegebenen Zeit.
Durch Überwachen der Anzahl von Zellen, die in die Speicher
zonen geschrieben werden, und der Anzahl von Zellen, die
ausgelesen werden, ist die Steuereinheit 30 in der Lage zu
berechnen, wo potentielle Quellen des Besetztseins auftreten
werden, und die SPM-Abschnitte zu programmieren, um gewisse
SPM-Abschnitt-Speicherabschnitt-Wege für längere Perioden
einrichten zu können, wodurch potentielle Besetztsituationen
reduziert werden.
Als Beispiel zeigt Fig. 6 ein mögliches Verkehrs
flußszenario, bei dem ein relativ großes Verkehrsvolumen
vorhanden ist, das am Eingangsport I₀ zur Ausgabe über den
Ausgangsport O₁ ankommt. In diesem Fall detektiert die
Steuereinheit 30, daß sich der Verkehr auf unerwünschte
Weise in der Speicherzone R₁ des Speicherabschnittes 24₀
akkumuliert. Um diese Situation zu bewältigen, gestattet die
Steuereinheit, daß der Weg zwischen dem SPM-Abschnitt 22₁
und dem Speicherabschnitt 24₀ "offen" bleibt, wenn der
nächste Lesezyklus im Anschluß an den ersten in Fig. 5
gezeigten Lesezyklus startet. Obwohl der SPM-Abschnitt 22₀
vom Zugreifen auf den Speicherabschnitt 24₂ auf Zugreifen
auf den Speicherabschnitt 24₁ wechselt und der SPM-Abschnitt
22₂ vom Zugreifen auf den Speicherabschnitt 241 auf Zugrei
fen auf den Speicherabschnitt 24₂ wechselt, bleibt somit der
Weg, der beim ersten Lesezyklus von Fig. 5 eingerichtet
wurde, vom SPM-Abschnitt 22₁ zum Speicherabschnitt 24₀ in
Fig. 6 offen. Als Resultat können mehr Zellen aus dem
Speicherabschnitt 24₀ zu dem SPM-Abschnitt 22₁ übertragen
werden, um den starken Verkehrsfluß zu bewältigen.
Demzufolge kann die Steuereinheit 30 die Mengen von
Zellendaten, die in den verschiedenen Speicherzonen gespei
chert sind, überwachen und berechnen, welche SPM-Abschnitt-
Speicherabschnitt-Wege in der Lesephase aufgebaut werden
müssen, um die optimale Menge von Zellendaten zu übertragen
und somit irgendwelche potentielle Besetztprobleme zu
reduzieren. Die Steuereinheit 30 umfaßt zum Beispiel einen
Mikroprozessor.
Einzelheiten der Konstruktion und Operation der Vor
richtung von Fig. 3 werden nun erläutert.
Fig. 7 zeigt ein Blockdiagramm einer möglichen Kon
struktion von jedem SPM-Abschnitt 22. Bei dem Beispiel von
Fig. 7 soll der SPM-Abschnitt 22 in einer Schaltvorrichtung
mit insgesamt acht Schalteinheiten und acht Busleitungen B₀
bis B₇ verwendet werden.
Der SPM-Abschnitt 22 in Fig. 7 enthält eine Schalt
portcontroller- (SPC) -Einheit 40, eine Adressenübersetzungs
schaltung (ATC) 41, ein adaptives Schaltelement (ASE) 42 und
zwei Busmultiplexereinheiten 44. Die SPC-Einheit 40 ist
direkt mit den Eingangs- und Ausgangsports I und O des
betreffenden Schalters verbunden. Jeder Port kann einen
einfachen ATM-Zellenstrom von 622 Mb/s oder vier individu
elle Zellenströme von 155 Mb/s empfangen oder senden, je
nachdem.
Wenn eine ATM-Zelle durch die SPC-Einheit 40 empfangen
30 wird, prüft die ATC-Einheit 41 die Adressierinformationen
(virtuelle Wegidentifikator-(VPI)- und virtuelle Kanal
identifikator-(VCI)-Felder des Zellenkopfabschnittes), die
durch die Zelle transportiert werden, und führt eine geeig
nete Adressenübersetzungsoperation aus, um zu bestimmen, zu
welchem Ausgangsport die Zelle zu leiten ist. Gemäß den
Adressenübersetzungsinformationen hängt die SPC-Einheit 40
den obengenannten Portnummerindikator und/oder Mehrsende
indikator an die Zelle an.
Dann empfängt das ASE 42 die betreffende Zelle und
steuert deren Übertragung zu dem Speicherabschnitt 24 seiner
eigenen Schalteinheit. In der Schreibphase wendet das ASE 42
geeignete Busselektionssignale auf die Busmultiplexereinhei
ten 44 an, um genau die Busleitung B zu selektieren, mit der
der eigene Speicherabschnitt der Schalteinheit verbunden
ist. Die obere Busmultiplexereinheit 44 in Fig. 7 ent
spricht den ersten vier Busleitungen B₀ bis B₃, während die
untere Busmultiplexereinheit 44 in Fig. 7 den übrigen vier
Busleitungen B₄ bis B₇ entspricht. Falls zum Beispiel der in
Fig. 7 gezeigte SPM-Abschnitt in der Schalteinheit 20₂
enthalten ist, ist die erforderliche Busleitung B₂, so daß
das ASE 42 die untere Busmultiplexereinheit 44 sperrt und
die obere Busmultiplexereinheit 44 freigibt und anweist, daß
die obere Busmultiplexereinheit 44 für die Datenübertragung
zwischen der Busleitung B₂ und dem ASE 42 Vorkehrungen
treffen muß. Sobald die Busselektion auf diese Weise vorge
nommen worden ist, wird die empfangene Zelle durch das ASE
zu der Speicherzone des eigenen Speicherabschnittes der
Schalteinheit übertragen, die dem erforderlichen Ausgangs
port entspricht.
Bei Vollendung der Schreibphase schaltet das ASE 42 auf
die Lesephase. Das ASE 42 empfängt von der Steuereinheit 30
Steuerinformationen, die die Speicherabschnitte spezifizie
ren, die es in jedem Zyklus der Lesephase zu adressieren
hat. Das ASE 42 verwendet diese Informationen, um die erfor
derlichen Busse B₀ bis B₇ zu selektieren, die in jedem
verschiedenen Zyklus gebraucht werden, um die Datenübertra
gung von dem spezifizierten Speicherabschnitt zu dem ASE 42
zu erleichtern. Das ASE 42 nimmt die geeigneten Selektionen
unter Verwendung der Busmultiplexereinheiten 44 vor. Daten,
die aus den Speicherabschnitten ausgelesen wurden, werden
durch das ASE 42 zu der SPC-Einheit 40 übertragen und durch
den Ausgangsport O der betreffenden Schalteinheit ausgege
ben.
Daher steuert die Steuereinheit 30 in der Lesephase
durch das ASE 42 in jedem SPM-Abschnitt 22 effektiv die
Operation der Busmultiplexereinheiten 44 in dem betreffenden
SPM-Abschnitt. Die Steuereinheit 30 bewirkt, daß das gesamte
Busschalten durch die verschiedenen SPM-Abschnitte 22
gleichzeitig erfolgt, um Buskollisionen und eine daraus
entstehende potentielle Datenkorruption zu verhindern.
Wie zuvor erwähnt, bestimmt die Steuereinheit 30 die
SPM-Abschnitt-Speicherabschnitt-Paarselektionen zur Verwen
dung in jedem Zyklus der Lesephase. Fig. 8 zeigt ein Bei
spiel der Steuerinformationen, die durch die Steuereinheit
30 erzeugt und zu jeder Schalteinheit gesendet werden, um
deren Operation während der Lesephase zu steuern.
Die Steuerinformationen enthalten einen Anfangszeitla
gendatenabschnitt. Der Zeitlagendatenabschnitt enthält
Zeitlagendaten, die verwendet werden, um die Dauer von jedem
individuellen Zyklus der Lesephase zu bestimmen. Solch eine
Dauer könnte zum Beispiel auf 10 Zellen oder 20 Zellen
spezifiziert sein. Diese Zeitlagendaten sind für alle
Schalteinheiten dieselben. Die Dauer der individuellen
Zyklen könnte immer dieselbe sein, in welchem Fall die
Zeitlagendaten kurz sind, oder sich voneinander unterschei
den.
Die Steuerinformationen enthalten ferner Folgedatenab
schnitte für jede Schalteinheit. In dem Beispiel von Fig. 8
hat jeder Folgedatenabschnitt acht Einträge. Somit ent
spricht das Beispiel von Fig. 8 dem SPM-Abschnitt 22 von
Fig. 7, in dem acht verschiedene Speicherabschnitte vorhan
den sind und so jede Lesephase acht Lesezyklen umfaßt. Die
acht verschiedenen Einträge entsprechen jeweilig den acht
Lesezyklen, und jeder Eintrag gibt daher an, auf welchen
Speicherabschnitt die betreffende Schalteinheit in dem
betreffenden Zyklus zuzugreifen hat.
Die Steuerinformationen werden durch die Steuereinheit
periodisch auf die ASEs 42 in den Schalteinheiten abgezogen,
wobei die SPM-Abschnitt-Speicherabschnitt-Paarselektionen
gemäß Verkehrsflußbedingungen abgewandelt werden können.
Wie später eingehender erläutert, enthält jede ASE-Ein
heit 42 ein Busfolgeregister, zum Speichern der Folgedaten
bezüglich ihrer eigenen Schalteinheit, und auch ein Zeitla
genregister zum Speichern der Zeitlagendaten.
Die Fähigkeit der Steuereinheit, die SPM-Abschnitt-
Speicherabschnitt-Paarselektionen als Reaktion auf Verkehrs
flußbedingungen dynamisch zu ändern, ist ein Hauptvorteil
der Schaltvorrichtung von Fig. 3.
Fig. 9 zeigt weitere Beispiele von SPM-Abschnitt-Spei
cherabschnitt-Paarselektionsmöglichkeiten in verschiedenen
Verkehrsflußszenarios. In der Tabelle von Fig. 9(A) sind
vier SPM-Abschnitte A bis D und vier Speicherabschnitte W
bis Z vorhanden. Somit bilden SPM-Abschnitt A und Speicher
abschnitt W einen Teil derselben Schalteinheit (20 in Fig.
3), bilden SPM-Abschnitt B und Speicherabschnitt X einen
Teil einer anderen Schalteinheit, und so weiter.
Unter Bezugnahme nun auf Fig. 9(B) besteht in dem
ersten dieser zwei Verkehrsflußszenarios ein starker Ver
kehrsfluß von dem Eingangsport IB von SPM-Abschnitt B zu dem
Ausgangsport OD von SPM-Abschnitt D. In diesem Fall umfaßt
die Lesephase drei Lesezyklen mit jeweiligen Zeitkanälen T1
bis T3. Die Steuereinheit 30 detektiert, daß eine große
Menge von Zellendaten in der Speicherzone RD des Speicher
abschnittes X, der dem SPM-Abschnitt D entspricht, akkumu
liert ist, und hält daher den Weg zwischen dem Speicher
abschnitt X und dem SPM-Abschnitt D während aller drei
Zeitkanäle T1 bis T3 offen. Die Paarselektionen für die
verbleibenden SPM-Abschnitte A bis C und Speicherabschnitte
W, Y und Z verändern sich bei jedem Lesezyklus auf zyklische
Weise, die in Fig. 9(B) gezeigt ist.
Fig. 9(C) bezieht sich auf ein zweites Verkehrs
flußszenario, bei dem zwei dominante Verkehrsflüsse vorhan
den sind, nämlich von dem Eingangsport IC von SPM-Abschnitt
C zu dem Ausgangsknoten OA von SPM-Abschnitt A und von dem
Eingangsknoten IB von SPM-Abschnitt B zu dem Ausgangsknoten
OD von SPM-Abschnitt D. In diesem Fall hält die Steuerein
heit 30 den Weg von Speicherabschnitt Y zu SPM-Abschnitt A
und den Weg von Speicherabschnitt X zu SPM-Abschnitt D
während aller drei Zeitkanäle T1 bis T3 offen. Die Wege
zwischen den anderen zwei SPM-Abschnitten B und C und den
anderen zwei Speicherabschnitten W und Z werden während der
drei Zeitkanäle zyklisch verändert, wobei bei diesem Bei
spiel die Zeitkanäle T1 und T3 identische Wegselektionen
haben.
Schließlich kann, falls ein Besetztsein unvermeidlich
ist, die Steuereinheit 30 den relevanten SPM-Abschnitt
anweisen, vorwärtsexplizite Besetztmeldungs-(FECN)-Zellen,
rückwärtsexplizite Besetztmeldungs-(BECN)-Zellen oder
Ressourcenverwaltungs-(RM)-Zellen an die Quelle auszugeben,
die dem Eingangsport des betreffenden SPM-Abschnittes Daten
zuführt, so daß die Quelle die Zellenerzeugung dann vorüber
gehend "drosseln" würde.
Fig. 10 ist eine schematische Ansicht von einer der
Schalteinheiten 20 in Fig. 3, die Datenübertragungen zeigt.
Der Speicherraum von dem Speicherabschnitt 24 in jeder
Schalteinheit 20 ist durch die Anzahl N von Schalteinheiten
in der Vorrichtung gleich aufgeteilt. Falls zum Beispiel
acht Schalteinheiten in der Vorrichtung vorhanden sind, wird
dann jeder Speicherabschnitt in acht separate Speicherzonen
R₀ bis R₇ von gleicher Länge geteilt. Genaugenommen, der
Speicherraum in jedem Speicherabschnitt 24 sollte in N-1
Speicherzonen geteilt sein, da ein SPM-Abschnitt keine
Speicherzone für seine eigene Schalteinheit in seinem eige
nen Speicherabschnitt braucht, da dies nur zu Zellen führen
würde, die in jene Speicherzone geschrieben würden und durch
dieselbe Schalteinheit wieder zurückgelesen würden. Solch
ein Schreiben und Zurücklesen könnte in einem Testmodus
nützlich sein oder falls Rückschleifzellen gespeichert
werden müßten. Diese Betriebsmodi werden jedoch statt dessen
vorzugsweise durch die SPC-Einheit 40 in jedem SPM-Abschnitt
22 ausgeführt.
Jede Speicherzone R₀ bis R₇ in Fig. 10 stellt eine
virtuelle First-in-first-out-(FIFO)-Einheit dar, wobei das
FIFO eine Datenwarteschlange für seine entsprechende Schalt
einheit in der Schaltvorrichtung vorsieht. Wie in Fig. 10
gezeigt, darf ein SPM-Abschnitt Zellendaten nur in seinen
zugeordneten Speicherabschnitt schreiben, d. h., in den
Speicherabschnitt seiner eigenen Schalteinheit, wogegen ein
SPM-Abschnitt Zellendaten aus jedem der Speicherabschnitte
lesen kann, aber nur aus den Speicherzonen in jenen Spei
cherabschnitten, die dem betreffenden SPM-Abschnitt entspre
chen.
Fig. 11 zeigt detaillierter eine mögliche organisato
rische Struktur von jedem Speicherabschnitt 24. Für jede
Warteschlange sind entsprechende FIFO-Lese- und -Schreibzei
ger vorhanden. Diese Zeiger sind in einem Zeigerspeicher
abschnitt PS des Speicherabschnittes selbst gespeichert, da
sie für alle SPM-Abschnitte in der Schaltvorrichtung verfüg
bar sein müssen. Diese Zeiger werden durch die ASEs 42 in
den SPM-Abschnitten 22 initialisiert, gelesen und aktuali
siert. Die Zeiger sind an denselben Stellen in jedem Spei
cherabschnitt gespeichert, um quer durch alle Schalteinhei
ten 20 eine stetige Operation zu erleichtern. Dies trägt
auch zur leichteren Programmierung durch die Steuereinheit
30 bei.
Anfangs werden die Zeiger und die Größe von jeder War
teschlange (Speicherzone) innerhalb eines Speicherabschnit
tes durch die Steuereinheit 30 bestimmt. Die Steuereinheit
30 initialisiert die Lese- und Schreibzeiger für jede Warte
schlange über die jeweiligen ASEs 42 der Schalteinheiten.
Nach solch einer Initialisierung überwachen und aktua
lisieren die ASEs 42 die Zeiger wie folgt. Zuerst lesen alle
ASEs gleichzeitig alle Lese- und Schreibzeiger aus ihren
zugeordneten Speicherabschnitten. Die ASEs speichern diese
Zeiger intern. Zweitens verwendet jedes ASE die Zeiger, um
die nächste Lese- oder Schreibadresse für Zellen, die es
verarbeitet, einzurichten. Wenn die Zellenübertragungen für
eine besondere Schreibphase oder einen Lesezyklus
(Buszyklus) vollendet sind, schreibt das ASE den neuen Wert
für jeden Zeiger zurück in den relevanten Speicherabschnitt.
Dies gewährleistet, daß die Zeigerintegrität beibehalten
wird.
Die Steuereinheit 30 überwacht die Warteschlangenpegel
durch Lesen der Zeigerwerte, die in jedem ASE gespeichert
sind. Die Steuereinheit berechnet dann die Leistung der
Schaltvorrichtung und bestimmt die (optimalen) SPM-Ab
schnitt-Speicherabschnitt-Paarselektionen zur Verwendung in
der Lesephase und sendet geeignete Steuerinformationen zu
den ASEs, um die erforderlichen Paarselektionen zustande zu
bringen.
Obwohl in Fig. 10 und 11 nicht gezeigt, wäre es mög
lich, jede Speicherzone auf der Basis der Verkehrspriorität
in separate Warteschlangen zu unterteilen, zum Beispiel
würden Dienste mit konstanter Bitrate (CBR) eine Warte
schlange von höchster Priorität haben, würden Dienste mit
variabler Bitrate (VBR) eine Warteschlange von nächsthöch
ster Priorität haben und würden Dienste mit verfügbarer
Bitrate (ABR) die Warteschlange von niedrigster Priorität
haben. Solch eine Unterteilung ist jedoch nicht nötig; eine
effektivere Lösung besteht für die SPC-Einheit 40 in jedem
SPM-Abschnitt darin, den Verkehr für das ASE 42 des betref
fenden SPM-Abschnittes auf der Basis der Verkehrsprioritäten
zu planen, wobei das ASE dann den Verkehr für seinen beson
deren Port auf FIFO-Basis bewältigt.
Bei einem Beispiel hat jeder Speicherabschnitt 24 2²⁰
Speicherstellen (d. h., der Adressenbus in jeder Busleitung
B hat eine Breite von 20 Bits), und jede Speicherstelle
umfaßt 32 Datenbits (d. h., der Datenbus in jeder Busleitung
hat eine Breite von 32 Bits). Somit könnte jeder Speicher
abschnitt 24 in diesem Fall durch einen Speicher mit wahl
freiem Zugriff (RAM) von 4 Mbyte, der der statische oder
dynamische Typ sein kann, implementiert werden. Falls in dem
Speicherabschnitt acht Speicherzonen R₀ bis R₇ vorhanden
sind, kann dann, da jede ATM-Zelle 53 Bytes lang ist, jede
Speicherzone R₀ bis R₇ bis zu 9892 ATM-Zellen speichern. Die
Gesamtspeicherkapazität einer Schaltvorrichtung mit acht
Schalteinheiten, die jeweils einen 4-Mbyte-Speicherabschnitt
enthalten, beträgt 8 × 8 × 9892 = 633088 Zellen. Dies hält
übrigens einem Vergleich mit einer Speicherkapazität von nur
19200 Zellen bei einer 32 x 32 Schaltmatrix stand, die aus
selbstlenkenden Elementen (SRE) konstruiert ist, die in
Fig. 1 gezeigt ist.
Fig. 12 zeigt eingehender eine mögliche Implementie
rung von jeder Busmultiplexereinheit 44, die in Fig. 7
gezeigt ist. Diese Busmultiplexereinheit muß auf Instruktio
nen von dem ASE 42 reagieren, mit dem sie verbunden ist, um
zum Lesen und Schreiben von Zellendaten Zugriff auf die
Speicherabschnitte vorzusehen. Typischerweise wird die
Anzahl von Busleitungen ein Vielfaches von 4 sein. Aus
diesem Grund ist die bevorzugte Implementierung der Busmul
tiplexereinheit 44, die in Fig. 11 gezeigt ist, eine expan
dierbare 4-Wege-Bus-Multiplexereinheit. Diese Einheit 44 ist
konstruiert, um irgendeine der vier Busleitungen B₀ bis B₃,
von welchen Busleitungen jede Adressen-A- und Daten-D-Busse
umfaßt, zu einem einzelnen Port P zu leiten, der mit dem ASE
42 verbunden ist. Die Einheit 44 muß die Adressenübertragung
nur in einer Richtung bewältigen (von Port P zu dem selek
tierten der Busse B₀ bis B₃), aber sie muß die bidirektio
nale Übertragung von Daten vorsehen.
Die Busleitung B₀, B₁, B₂ oder B₃, die zur Adressen-
und Datenübertragung verwendet werden wird, wird durch das
ASE 42 selektiert, das ein 2-Bit-Selektionssignal auf die
Selektionseingänge S₁ und S₂ der Einheit anwendet.
Falls mehr als vier Busleitungen erforderlich sind,
können dann zwei oder mehr der Busmultiplexereinheiten 44 in
Parallelformation angeordnet werden, wie in Fig. 7 gezeigt.
Jede Einheit hat dann einen Freigabeeingang E zum Empfangen
eines Freigabesignals E, das verwendet wird, um die betref
fende Einheit zu selektieren.
Der ASE-Port P von jeder Busmultiplexereinheit 44 wird
in einen offenen Schaltungszustand versetzt, wenn die Ein
heit nicht selektiert wird. Dies gewährleistet, daß zu
irgendeiner gegebenen Zeit nur eine Busmultiplexereinheit 44
Datensignale auf das ASE anwenden kann.
Obwohl in Fig. 12 nicht gezeigt, passieren die Signale,
die durch das ASE verwendet werden, um die Datenübertragung
zwischen sich und den Speicherabschnitten zu steuern (zum
Beispiel Lese-, Schreib- und Chipselektionssignale), auch
die Busmultiplexereinheit.
Fig. 13 zeigt ein Blockdiagramm von Teilen des ASE 42.
Das ASE 42 enthält jeweilige Empfangs- und Sendezellenpuffer
420 und 421, die jeweilig mit Ausgangs- und Eingangsports
des SPC 40 (Fig. 7) verbunden sind. Jeder Puffer 420 oder
421 ist eine FIFO-Vorrichtung mit einer Speicherkapazität
von mehreren ATM-Zellen. Empfangene Zellendaten von dem SPC
40 können von einem bidirektionalen Datensignalport des ASE
über eine Dreizustandsausgabeeinheit 422 an den (oder jeden)
Busmultiplexer 44 ausgegeben werden. Ähnlich können Daten,
die an jenem Port von einem Busmultiplexer 44 empfangen
werden, über die Eingabeeinheit 423 zu dem Sendezellenpuffer
421 zur Ausgabe an den SPC 40 gelangen.
Das ASE 42 enthält ferner eine Busmultiplexerfolge
steuerungseinheit 424 und zugeordnete Dauer- und Busfolge
register 425 und 426. Die Dauer- und Busfolgeregister 425
und 426 sind mit einer Steuereinheitsschnittstellenschaltung
427 verbunden, so daß die Steuereinheit Steuerinformationen
(Fig. 8) auf die Busmultiplexerfolgesteuerungseinheit 424
abziehen kann. Die Zeitlagendaten von jenen Steuerinforma
tionen sind in dem Dauerregister 425 gespeichert, und die
Folgedaten bezüglich der betreffenden Schalteinheit (ASE)
sind in dem Busfolgeregister 426 gespeichert. Zwei Folgere
gister könnten in dem ASE anstelle von nur einem vorgesehen
werden, so daß die Steuereinheit ein Register aktualisieren
kann, während das andere Register durch das ASE in dem
laufenden Lesezyklus verwendet wird.
Die Busmultiplexerfolgesteuerungseinheit 424 erzeugt
geeignete Busselektionssignale, die auf den Busmultiplexer
44 angewendet werden, um die erforderlichen Busse für Spei
cherübertragungen zu selektieren, und führt die erforderli
chen Lese- und Schreiboperationen unter Verwendung des
selektierten Speicherabschnittes aus.
Eine Speichersteuereinheit 428 erzeugt geeignete
Schreib-, Lese- und Chipselektionssignale zum Steuern des
Speicherabschnittes, auf den zugegriffen wird.
Eine Mehrsendesteuereinheit 429 ist auch zum Steuern
der Operation des ASE 42 als Reaktion auf den Empfang von
Mehrsendedaten vorgesehen. Solch eine Operation wird später
unter Bezugnahme auf Fig. 14(A) beschrieben.
Das ASE 42 enthält ferner eine Zeigerspeichereinheit
430, die mit der Steuereinheitsschnittstellenschaltung 427
verbunden ist und über eine Adressenberechnungs-/Zeiger
wartungseinheit 432 auch mit dem Datensignalport des ASE
verbunden ist. Die Adressenberechnungs-/Zeigerwartungs
einheit 432 erzeugt auch Adressensignale A zur Anwendung auf
die oder jede Busmultiplexereinheit 44.
Wenn eine Lese- oder Schreiboperation durch das ASE 42
auszuführen ist, sucht das ASE aus dem für die Datenübertra
gung zu verwendenden Speicherabschnitt den relevanten Lese-
oder Schreibzeiger heraus, der in der Zeigerspeicherzone PS
(Fig. 10) des betreffenden Speicherabschnittes gespeichert
ist. Dieser Zeiger wird in der Zeigerspeichereinheit 430
temporär gespeichert. Die Adressenberechnungs-/ Zeiger
wartungseinheit 432 benutzt dann den Zeiger, um die nötigen
Adressensignale zur Anwendung auf den Speicherabschnitt zu
erzeugen, um die Zellendaten zu lesen oder zu schreiben.
Nachdem die Operation vollendet ist, wird der relevante
Lese- oder Schreibzeiger, der in der Zeigerspeichereinheit
430 gehalten wird, durch die Adressenberechnungs-/Zeiger
wartungseinheit 432 aktualisiert, und der aktualisierte
Zeiger wird zurück in die Zeigerspeicherzone PS des
betreffenden Speicherabschnittes geschrieben.
Fig. 14(A) und 14(B) sind Flußdiagramme, die jewei
lig die Operation der Vorrichtung von Fig. 3 in den
Schreib- und Lesephasen zeigen. Wie in Fig. 14(A) gezeigt,
selektiert das ASE 42 in jeder Schalteinheit 20 in der
Schreibphase seinen eigenen Speicherabschnitt und nimmt die
erforderliche Busselektion für jenen Speicherabschnitt vor
(Schritt S1). Dann liest das ASE bei Schritt S2 den relevan
ten Schreibzeiger aus seinem eigenen Speicherabschnitt und
speichert ihn temporär in der Zeigerspeichereinheit 430.
Dann werden bei Schritt S3 empfangene Zellendaten von dem
SPC 40, die gegenwärtig in dem Empfangszellenpuffer 420
gespeichert sind, in die relevante Speicherzone innerhalb
des eigenen Speicherabschnittes der Schalteinheit geschrie
ben. Die Leitwegkennung, die an jede Zelle durch den SPC 40
angehängt wurde, um die Zielausgangsportnummer anzugeben,
wird durch das ASE 42 entfernt, und nur die ATM-Zelle selbst
wird in dem Speicherabschnitt gespeichert. Das Entfernen der
Leitwegkennung ist möglich, da die Zellendaten in der
Schaltvorrichtung "stationär" verbleiben und in der Lese
phase das lesende ASE weiß, daß die Daten, die es auszugeben
hat, immer an ihrer entsprechenden Speicherstelle innerhalb
der Speicherabschnitte anderer Schalteinheiten zu finden
sein werden. Somit wird der Übertragungsaufwand reduziert
und die Buseffektivität erhöht.
Nachdem die Schreiboperation vollendet ist, wird der
Schreibzeiger bei Schritt S4 aktualisiert und zurück in den
Zeigerspeicherabschnitt des eigenen Speicherabschnittes der
Einheit geschrieben. Dann gibt das ASE bei Schritt S5 den
Bus frei, und die Schreibphase endet.
Der obengenannte Schritt S3 wird in dem Fall verändert,
wenn die empfangenen Zellendaten Mehrsendedaten sind, d. h.,
wenn sie an eine Anzahl von verschiedenen Schalteinheiten
gerichtet werden sollen. In diesem Fall könnte die SPC-
Einheit 40 der Empfangsschalteinheit die Zellendaten für
jede beabsichtigte Ausgangsschalteinheit wiederholt reprodu
zieren und eine verschiedene Leitwegkennung an jeden Satz
von Zellendaten anhängen. Dieselben Zellendaten würden dann
der Reihe nach durch das ASE in jede relevante Speicherzone
in dem Speicherabschnitt der Schalteinheit geschrieben.
Alternativ könnte die SPC-Einheit 40 eine "Mehrsende
leitwegindikator"-Kennung auf die empfangenen Zellendaten
anwenden, und die Mehrsendesteuereinheit 429 in dem ASE 42
könnte das wiederholte Datenschreiben in die verschiedenen
Speicherzonen ausführen. Jedoch muß das ASE auf jeden Fall
den Speicherabschnitt seiner eigenen Schalteinheit für eine
Periode besetzen, die gleich der Zeit ist, die erforderlich
ist, um die gesamten Mehrsendezellendaten einmal in den
Speicherblock zu schreiben, x der Anzahl von Mehrsende
ausgangsschalteinheiten.
Um die Speicherabschnittbesetzungszeit bei Mehr
endeoperationen zu reduzieren, reagiert in einer bevorzugten
Ausführungsform der vorliegenden Erfindung die Mehrsende
steuereinheit 429 in dem ASE 42 auf die Mehrsendedatenindi
katorkennung, indem sie die Mehrsendedaten in eine einzelne
"Primär"-Speicherzone schreibt, die die Speicherzone (in
ihrem eigenen Speicherabschnitt) ist, die genau einer der
Mehrsendeausgangsschalteinheiten entspricht, und in den
Speicherzonen, die jeweilig den verbleibenden Mehrsende
ausgangsschalteinheiten entsprechen, Schreibadressenzeiger
einfach auf die Stelle in der Primärspeicherzone der
Mehrsendedaten verweisen. Es wäre auch möglich, eine
zweckbestimmte Mehrsendespeicherzone innerhalb jedes
Speicherabschnittes zum Speichern der Mehrsendedaten
vorzusehen.
Fig. 14(B) zeigt die Operation der Schaltvorrichtung
von Fig. 3 in der Lesephase.
Zu Beginn der Lesephase zieht die Steuereinheit 31 auf
die ASEs 42 in den verschiedenen Schalteinheiten die nötigen
Zeitlagen- und Folgedaten für jeden Zyklus der Lesephase ab.
Daher selektiert zu Beginn eines Lesezyklus bei Schritt
S10 das ASE 42 in jeder Schalteinheit den Speicherabschnitt
einer anderen Schalteinheit gemäß den Folgedaten, die in
seinem Busfolgeregister 426 für den betreffenden Zyklus
gehalten werden. Es erfolgt die erforderliche Busselektion
für jenen Speicherabschnitt.
Bei Schritt S11 sucht dann das ASE aus der Zeigerspei
cherzone PS des selektierten Speicherabschnittes den Lese
zeiger für die Speicherzone in dem selektierten Speicher
abschnitt heraus, die der Schalteinheit des ASE entspricht.
Bei Schritt S12 liest dann das ASE 42 Zellendaten aus
der betreffenden Speicherzone und überträgt die Daten zu dem
Sendezellenpuffer 421, von dem sie an die SPC-Einheit 40
ausgegeben werden.
Bei Schritt S13 wird der Lesezeiger aktualisiert und
zurück in die Zeigerspeicherzone des selektierten Speicher
abschnittes geschrieben. Bei Schritt S14 gibt das ASE 42 den
Bus frei, und der laufende Lesezyklus endet.
Bei Schritt S15 prüft das ASE 42, ob alle geplanten
35 Lesezyklen für die laufende Lesephase vollendet worden sind.
Falls nicht, kehrt die Verarbeitung zu Schritt S10 zum Start
des nächsten Lesezyklus zurück.
Falls bei Schritt S15 anderenfalls bestimmt wird, daß
die Lesephase vollendet ist, bewertet die Steuereinheit 31
bei Schritt S16 die Mengen von Daten in den Speicherzonen
aller Speicherabschnitte und bestimmt, ob verschiedene
SPM-Abschnitt-Speicherabschnitt-Paare in der nächsten Lese
phase selektiert werden sollten. Etwaige erforderliche
Veränderungen der Selektionen erfolgen bei Schritt S17 durch
Abziehen neuer Steuerinformationen auf die ASEs 442. Für die
Steuereinheit wäre es auch möglich, die Paarselektionen im
Verlaufe einer Lesephase zu modifizieren, falls Verkehrs
flußbedingungen dringende Veränderungen an jenen Selektionen
erfordern würden.
Fig. 15 zeigt ein weiteres Beispiel einer Schaltvor
richtung, die die vorliegende Erfindung verkörpert. Wie in
der Vorrichtung von Fig. 3 enthält jede Schalteinheit 20
einen SPM-Abschnitt 22 und einen Speicherabschnitt 24′. In
diesem Fall ist der Speicherabschnitt 24′ ein Dualportspei
cher, zum Beispiel ein statischer Dualportspeicher mit
wahlfreiem Zugriff, wie z. B. der IDT 7026S/L 16K X 16,
hergestellt von Integrated Device Technologies, Inc. Jeder
derartige Dualportspeicherabschnitt 24′ hat einen ersten
Port PW, der ausschließlich zum Schreiben von Zellendaten in
den Speicherabschnitt verwendet wird, und einen zweiten Port
PR, der ausschließlich zum Lesen von Zellendaten aus dem
Speicherabschnitt verwendet wird. Der Schreibport PW ist nur
mit dem SPM-Abschnitt 22 der Schalteinheit 20 verbunden, in
der der Speicherabschnitt 24′ angeordnet ist. Denn empfan
gene Zellendaten werden immer in den eigenen Speicherab
schnitt der Schalteinheit geschrieben. Damit andererseits
jeder der SPM-Abschnitte jeden Speicherabschnitt 24′ lesen
kann, ist der Leseport PR von jedem Dualportspeicherab
schnitt 24′ mit einer anderen der Busleitungen B₀ bis B₂
verbunden, und jeder der SPM-Abschnitte 22 hat Zugriff auf
alle drei Busleitungen.
Obwohl die oben beschriebenen Ausführungsformen zur
Verwendung beim Schalten von ATM-Daten dienen, wird einge
schätzt, daß die vorliegende Erfindung verwendet werden
kann, um eine Schaltvorrichtung zur Verwendung bei irgend
einer Anwendung vorzusehen, bei der viele Eingangs- und
Ausgangsports erforderlich sind.
Für die Steuereinheit, die zum Bestimmen der SPM-Ab
schnitt-Steuerabschnitt-Paarselektionen verwendet wird, ist
es möglich, Zellenprioritäten sowie Verkehrsmengen zu
berücksichtigen. Ferner kann die Steuereinheit durch ein
Neuralnetz oder ein anderes Lernsystem implementiert werden,
so daß die Steuereinheit lernen kann, wie verschiedene
Verkehrsflußsituationen zu bewältigen sind, und ihr gesam
meltes Wissen anwenden kann, wenn in Zukunft ähnliche Situa
tionen auftreten.