DE3735187A1 - Verfahren und schaltungsanordnung zur koppelfeldsteuerung in einem vermittlungsknoten eines breitband-vermittlungssystems - Google Patents
Verfahren und schaltungsanordnung zur koppelfeldsteuerung in einem vermittlungsknoten eines breitband-vermittlungssystemsInfo
- Publication number
- DE3735187A1 DE3735187A1 DE19873735187 DE3735187A DE3735187A1 DE 3735187 A1 DE3735187 A1 DE 3735187A1 DE 19873735187 DE19873735187 DE 19873735187 DE 3735187 A DE3735187 A DE 3735187A DE 3735187 A1 DE3735187 A1 DE 3735187A1
- Authority
- DE
- Germany
- Prior art keywords
- bus
- block
- input
- output
- buffer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
- H04L49/254—Centralised controller, i.e. arbitration or scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/101—Packet switching elements characterised by the switching fabric construction using crossbar or matrix
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/102—Packet switching elements characterised by the switching fabric construction using shared medium, e.g. bus or ring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/40—Constructional details, e.g. power supply, mechanical construction or backplane
Description
Die Erfindung betrifft ein Verfahren zur Koppelfeld
steuerung in einem Vermittlungsknoten eines Breitband-
Vermittlungssystems gemäß dem Oberbegriff des Patentan
spruchs 1.
Im Rahmen der Entwicklung zukünftiger, integrierter
Breitbandnetze wird diskutiert, nach welchem Verfahren
die digitale oder analoge Information - zum Teil mit
hohem Bandbreitebedarf - in digitalen Netzen übertragen
werden soll. Die Verfügbarkeit von Breitbandnetzen hängt
von vielen Faktoren ab, unter anderem von der Normung,
der kostengünstigen optischen Breitbandübertragung, von
VLSI-Schaltkreisen für sehr hohe Verarbeitungsgeschwindigkeiten,
sowie den Forderungen der Benutzer und
Netzbetreiber. Die Konzeption solcher Breitbandnetze geht
aus von dem kürzlich geschaffenen diensteintegrierten
Fernmeldenetz ISDN.
Eine erste Möglichkeit zur Erweiterung des dienste
integrierten Fernmeldenetzes ISDN besteht in der Bereitstellung
einer begrenzten Anzahl von Breitbandkanälen,
wobei für jeden Breitbandkanal eine physikalische Verbindung
hergestellt wird. Das dadurch geschaffene Netz mit
Durchschaltevermittlung erfüllt jedoch nicht alle
Anforderungen der Netzbereiter an ein anpassungsfähiges
Netz zur Übermittlung aller möglichen Dienste, darunter
auch solcher Dienste mit noch nicht international standardisierten
Parameter, sowie für zukünftige Dienste.
In der europäischen Patentanmeldung mit der Veröffentlichungsnummer
01 83 592 wurde ein Breitband-Vermittlungssystem
vorgeschlagen, bei dem die Nachricht in
Blöcke (Cell) zerlegt und über breitbandige Übertragungswege
nach einem asynchronen Zeitvielfachverfahren übertragen
werden. Die Blöcke (Cell) können gleiche oder
unterschiedliche Länge aufweisen. Die Blöcke bestehen aus
Nutz- sowie aus Adressinformation, wobei die Adressinformation
in einem sogenannten Nachrichtenkopf (Header)
untergebracht ist. Die Anzahl der Bits eines Blocks wird
als dessen Länge bezeichnet, wobei in den Standardisierungsvorschlägen
hierfür Werte zwischen 120 und 256 Bits
für die Nutzinformation und 32 oder 16 Bits für den
Header vorgesehen sind. Die Zeitintervalle, in denen
Blöcke übertragen werden, werden als Rahmen (Frames)
bezeichnet. Dabei kann ein Rahmen einen gültigen Block
enthalten oder leer sein. Zwischen zwei Teilnehmern des
Breitband-Vermittlungssystems besteht eine "virtuelle
Verbindung" (virtual Connection), welche dadurch aufrechterhalten
wird, daß die von den Teilnehmereinrichtungen
abgesandten Blöcke mit eindeutigen Header-Kennungen
versehen werden, die den Vermittlungsknoten das
korrekte Weiterleiten der Blöcke gestatten. Die im
Vermittlungsknoten ankommenden Blöcke von einer eingehenden
Leitung werden unter Umsetzung des Headers auf eine
ausgehende Leitung übertragen. Da während eines Rahmens
zwei oder mehrere Blöcke für die gleiche Ausgangsleitung
eintreffen können, müssen im Vermittlungsknoten sogenannte
Wartepuffer vorgesehen werden. Im Wartepuffer
werden einer oder mehrere dieser Blöcke solange zwischengespeichert,
bis für diese ein freier Rahmen zur
Verfügung steht.
Hinsichtlich der Pufferanordnung können die Vermittlungsknoten
zentralgepufferte Systeme (wie beispielsweise aus
der europäischen Patentanmeldung mit der Veröffentlichungsnummer
01 83 592 bekannt) oder dezentral gepufferte
Systeme sein. Bei zentral gepufferten Systemen gibt
es nur einen Puffer, in dem jede eingehende Leitung ihre
ankommende Blöcke ablegt und aus dem jede ausgehende
Leitung für diese bestimmte Blöcke wieder ausliest.
Systeme mit dezentraler Pufferung werden weiter dahingehend
unterschieden, ob eine Pufferung von Blöcken ausschließlich
auf der Eingangsseite (eine Ausführungsform
hierfür ist beispielsweise in der nicht vorveröffenlichten
deutschen Patentanmeldung mit dem amtlichen Aktenzeichen
P 37 14 358.9 beschrieben) erfolgt oder ob die
Puffer ausschließlich vor den ausgehenden Leitungen
(vgl. beispielsweise IEEE, B 10.2.1, 1987, "The Knockout
Switch: A Simple, Modular Architecture for
High-Performance Packet Switching von J. S. Yeh et al)
angeordnet sind oder ob es sich um Systeme mit Eingangs-
und Ausgangspufferung handelt.
Der Vermittlungsknoten hat dabei die Aufgabe, Verbindungen
zwischen den Teilnehmern des Breitbandvermittlungssystems
herzustellen, welches wie folgt
charakterisiert ist:
- - Die Information muß in digitaler Form vorliegen, analoge Daten sind gegebenenfalls zu digitalisieren.
- - Die in digitaler Form vorliegende Information wird in Blöcke gleicher Länge aufgeteilt.
- - Die Blöcke werden - mit einem Nachrichtenkopf (Header) der Länge h Bits versehen - an einen Vermittlungsknoten abgesetzt.
- - Dieser sendet die Blöcke, abhängig von ihrem Ziel, an andere Vermittlungsknoten weiter, bis einer dieser Knoten den Block an den gewünschten Endteilnehmer abgeben kann.
- - Der Header eines Blocks darf gegebenenfalls von einem Knoten verändert (umgesetzt) werden.
- - Die Blöcke werden in einem festen Zeitrahmen übertragen, in welchem gerade für die Übertragung eines Blocks Zeit ist. Die Länge eines Blocks wird in Bits gemessen, die Dauer eines Zeitrahmens ist somit die Taktzeit mal der Gesamt-Blocklänge.
- - Vor der Übertragung müssen sich die Vermittlungsknoten mit dem Beginn eines Zeitrahmens synchronisieren. Da ein Netz größerer Ausdehnung nicht vollständig synchron arbeiten kann, ist jeweils die Verbindungsleitung zwischen zwei Knoten - auch Fernleitungen genannt - zu synchronisieren. Die Vermittlungsknoten selbst haben den externen Takt durch Pufferung ihrem internen Takt anzugleichen.
Die wichtigsten Gütekriterien eines solchen Systems sind
die erwartete Anzahl verlorengegangener Blöcke, sowie die
Verzögerung von Blöcken in dem Vermittlungsknoten, bzw.
deren Verweilzeitschwankung. Ersteres kann stets durch
ausreichend große Puffer beliebig verringert werden, was
jedoch die Verweilzeiten vergrößert. Hieraus sieht man
bereits, daß diese beiden Anforderungen widersprüchliche
Ziele darstellen.
In jedem Falle sind bei der Realisierung eines Koppelfelds
Wartepuffer vorzusehen. Dabei können sich die
Wartepuffer an der Eingangsseite an den Kreuzungspunkten
der Koppelmatrix oder an der Ausgangsseite befinden. Am
wenigsten aufwendig wird eine solche Koppelmatrix, wenn
die Puffer nur an der Eingangs- bzw. nur an der Ausgangsseite
eingebaut werden müssen.
Der Header muß aus ökonomischen Gründen recht knapp
gehalten werden, so daß nicht eine Nummer von z. B.
mehreren Millionen Teilnehmern übergeben werden kann. Aus
diesem Grunde werden für je zwei Teilnehmer nur virtuelle
Verbindungen aufgebaut: der Header ist somit nur für
jeweils eine Verbindung festgelegt. Es zeigt sich sogar,
daß es am günstigsten ist, wenn ein Block auf jeder Fernleitung
zwischen zwei Knoten stets wieder einen neuen
Header erhält. Dieses bedingt, daß jeder Header erst umgerechnet
(umgesetzt) werden muß, ehe der Block auf die
Fernleitung, auf der er weiterzusenden ist, gegeben
werden kann. Für diese Umsetzung, sowie für die Ermittlung
der abgehenden Fernleitung, ist ausreichend Zeit zur
Verfügung zu stellen.
Im folgenden werden Systeme mit ausschließlicher Pufferung
auf der Ausgangsseite betrachtet. Ein Beispiel hierfür
ist der Knockout-Schalter (Siehe IEEE, B 10.2.1,
1987), bei dem jede eingehende Leitung über einen Bus mit
jeder Ausgangsschaltung in Verbindung steht. Damit
treffen in jeder der N Ausgangsschaltung M Busse ein.
Als erstes werden die Header gelesen und die für diese
ausgehende Leitung bestimmten Blöcke gekennzeichnet
(Filterung). Dann werden alle gültigen Blöcke in einem
Konzentrator auf eine beschränkte Zahl LM von weiteren
Leitungen zusammengeschoben. Durch einen Verschieber
werden die Blöcke auf L Puffer gleichmäßig verteilt, und
zwar so, daß sich bei zyklischem Lesen der Puffer durch
die ausgehende Leitung keine Blöcke überholen können.
Durch den Konzentrator entsteht in jedem Falle eine zusätzliche
Verlustwahrscheinlichkeit, die allerdings durch
entsprechende Wahl von L wohl in allen praktischen
Anwendungen beliebig klein gehalten werden kann (z. B. für
L=12 liegt auch bei 100%iger Belastung die Verlustwahrscheinlichkeit
unter der Annahme symmetrischer Last bei
1·E-10).
Die Breite des Busses kann flexibel der tatsächlichen
Zahl ein- und ausgehender Leitungen angepaßt werden.
Allerdings ist im Knockout-Schalter der Schaltungsaufwand
sehr komplex, was für die Hochintegration eher hinderlich
ist, da die Konzentratoren und Verschieber mehrere sich
kreuzende Leitungen enthalten.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren
zur Koppelfeldsteuerung in einem Vermittlungsknoten eines
Breitband-Vermittlungssystems derart anzugeben, daß die
interne Bitrate des Vermittlungsknotens reduziert wird.
Diese Aufgabe wird erfindungsgemäß durch ein Verfahren
mit den Merkmalen des Patentanspruchs 1 gelöst.
Beim erfindungsgemäßen Verfahren werden die eintreffenden
Blöcke behinderungsfrei auf eine oder alle Ausgangsleitungen
durchgeschaltet. Die Ausgangspuffer können beliebig
viele gleichzeitig eintreffenden Blöcke speichern. Es
werden außer den Pufferplätzen nur wenige zusätzliche
Speicherplätze benötigt, deren Zahl von der Headerlänge
abhängt, und die im wesentlichen genauso wie die Puffer
aufgebaut sind.
Das Problem der Übertragung aller eintreffenden Blöcke
ist durch einen entsprechend breiten Bus gelöst, was
keine besonderen Anforderungen an die Schaltgeschwindigkeit
der verwendeten Elektronik stellt. Die Aufnahme
aller Blöcke in einen Puffer ist ebenso durch eine bitparallele
(statt der zumeist vorgeschlagenen bitseriellen)
Speicherung gelöst worden. Dieser Puffer dient
zugleich zur Selektion gültiger Blöcke, was die Hardware
homogener, und damit leichter integrierbar macht. Die
Entscheidung, ob ein Block weitergesendet werden muß oder
nicht, fällt unmittelbar, bevor der Block in den Puffer
übernommen wird.
Vom Leistungsgesichtspunkt her gesehen, treten beim erfindungsgemäßen
Verfahren weder Konflikte noch Behinderungen
auf. Die Verlustwahrscheinlichkeit errechnet sich
also wie im idealen Falle aus der Verlustwahrscheinlichkeit
eines Bin/D/1/K-Wartesystems.
Bevorzugte Ausgestaltungen der Erfindung sind in weiteren
Patentansprüchen gekennzeichnet.
Die Schaltungsanordnung zur Durchführung des erfindungsgemäßen
Verfahrens erfordert einen geringen Schaltungsaufwand
und ist aufgrund der funktionellen Abgrenzung
zwischen den verschiedenen Schaltungsteilen einfach und sehr
homogen aufzubauen. Hierzu werden eingangsseitig die
Blöcke in ein Eingangsschieberregister eingelesen und
sychronisiert, sowie deren Header umgesetzt. Synchron zu
einem zentralen Takt werden die Blöcke parallel auf den
zentralen Bus gegeben. Dieser kann somit mit jedem Taktimpuls
des Bustaktes einen ganzen Block übertragen.
Ausgangsseitig werden alle Blöcke in einem Puffer
gespeichert, in welchem die Blöcke taktweise weitergeschaltet
werden. Durch bitweisen Vergleich werden die für
diese Ausgangsleitung bestimmten Blöcke aussortiert,
indem die nicht für diese bestimmten für ungültig erklärt
(durch Löschen eines entsprechenden Bits) werden. Alle
gültigen Blöcke werden in dem Wartepuffer, der einfacher
als ein übliches statisches RAM aufgebaut sein kann,
weitergetaktet, bis sie auf einen wartenden gültigen
Block treffen. Die wartenden Blöcke werden dann nach dem
an sich bekannten FIFO-Verfahren abgearbeitet.
Die Erfindung wird im folgenden anhand in der Zeichnung
dargestellter Ausführungsformen näher beschrieben und
erläutert. Es zeigt
Fig. 1 in Blockschaltform einen Vermittlungsknoten gemäß
der Erfindung,
Fig. 2 eine erste Ausführungsform einer Eingangsschaltung
des Vermittlungsknotens,
Fig. 3 eine Ausführungsform einer Ausgangsschaltung des
Vermittlungsknotens
Fig. 4 eine Ausführungsform für einen Bus mit raum/zeitparalleler
Übertragung der Blöcke
Fig. 5 eine Ausführungsform eines Wartepuffers
Fig. 6 eine Ausführungsform einer Entscheidungslogik und
Fig. 7 eine zweite Ausführungsform einer Eingangsschaltung
des Vermittlungsknotens.
Fig. 1 zeigt einen Vermittlungsknoten VK mit M Eingangs
leitungen EL und N Ausgangsleitungen AL. Die Steckerleisten
der Eingangs- und Ausgangsleitungen EL, AL sind
in der Zeichnung durch Blöcke angedeutet.
Kernstück des Vermittlungsknotens VK ist ein Bus B,
dessen Breite vorläufig mit der Anzahl der Bits pro Block
angenommen wird (siehe Fig. 1). Andere Ausführungsformen
hierzu werden später beschrieben.
Die Eingangsleitung EL (die hier vorhandene Hardware wird
auch als Eingangskanal bezeichnet) ist mit der ihr zugeordneten
Fernleitung (pipe) synchronisiert. Sobald ein
Block eintrifft, wird dieser in einem Eingangsschieberegister
ESR übernommen (siehe Fig. 2). Da jeder Block
mit seinem Header voran gesendet wird, kann dieser nach h
Takten (h=Headerlänge) in einem besonderen Puffer EP
übernommen werden. Während im Eingangsschieberegister ESR
die restlichen L-h Bits des Blocks eingelesen werden,
kann eine Umsetzung des Headers mittels einer Header-Umsetzungs
schaltung HU vorgenommen werden. Sollte die hierbei
zur Verfügung stehende Zeit nicht ausreichen, so kann
durch Verlängerung des Eingangsschieberegisters ESR aus
reichende Zeit zur Verfügung gestellt werden. Dadurch
wird lediglich die Übertragungsdauer eines Blocks weiter
verzögert.
Allerdings kann nach L Takten ein weiterer Block eintreffen,
welcher ebenfalls von dieser Eingangsleitung EL
abgenommen werden muß. Daher ist, falls die Umsetzung
eines Headers nicht in L-h Takten geschehen kann, für die
Headerumsetzung eine entsprechend vervielfältigte
Header-Umsetzungsschaltung HU vorzusehen. Diese
Header-Umsetzungsschaltungen HU können z. B. als Pipeline
organisiert sein.
Für die Headerumsetzung genügt jedoch häufig das Adressieren
und Auslesen eines Speichers. Beträgt die Taktzeit
auf der Eingangsleitung EL z. B. 0,5 ns und liegt L-h bei
256 Bits, so verbleibt für das Auslesen aus dem Speicher
eine Zeit von ca. 126 ns, was bei heutiger Halbleiter
technologie relativ unkritisch ist.
Nachdem die Headerumsetzung erfolgt ist - was stets eine
gleiche Zeit dauern soll - wird der neue, evtl. erweiterte
Header in einem Header-(Schiebe-)register HSR bitparallel
übernommen. Dieses wird auf der Eingangsseite
von dem Eingangschieberegister ESR mit Daten versorgt.
Sobald das erste zu übertragende Bit aus dem Eingangs
schieberegister ESR hier ankommt, wird das Headerregister
HSR den Header bitweise auf einen Buspuffer BP dieser
Eingangsleitung EL übertragen. Auf diese Weise wird der
neue Header vor dem zu übertragenden Blockrumpf (welcher
je nach Anforderung auch noch seinen alten Header enthalten
kann) auf den Bus B geschrieben.
Durch Verlängerung des Eingangsschieberegisters ESR kann
die Synchronisation zwischen Ausgabe eines Blocks auf den
Bus B und dem Bus B bzw. den anderen Eingangsleitungen EL
sichergestellt werden.
An der Schnittstelle zum Bus B wird jede Eingangsleitung
EL mit jeder Leitung des Busses B verbunden. Dies
erfolgt derart, daß zu jedem Taktimpuls T, an dem dieser
Eingangskanal ausgewählt wurde, der gesamte Block
parallel auf den Bus B gelegt wird.
Damit jeweils nur ein Eingangskanal auf eine Busleitung
schreibt, müssen die Schreibphasen aller Eingangkanäle
jeweils um mindestens eine Taktperiode gegeneinander
verschoben sein. Dadurch ergibt sich eine obere
Beschränkung der Anzahl der Eingangskanäle. Diese kann
nicht größer als die der Breite des Busses B (bzw. der
Anzahl der Bits pro Block) sein.
Bei diesem Verfahren können keine Konflikte zwischen den
Eingangskanälen auftreten, d. h. jeder Eingangskanal kann
- evtl. nach einer Phasenverschiebung zur Angleichung an
den Systemtakt, während der eine Blockpufferung erfolgen
muß - den Block auf den Bus B absetzen. Daher sind auf
der Eingangsseite auch keine weiteren Puffer vorzusehen.
Die Ausgangssignale (siehe Fig. 3) sämtlicher Busleitungen
werden parallel gelesen und auf einmal in einem
Puffer AP abgespeichert. In diesem stehen also die Blöcke
in paralleler Form.
Die Headerbits eines Blocks werden stets an der gleichen
Stelle in den Ausgangs-(kanal-)puffer AP übernommen
(siehe Fig. 3). Sobald diese eingelesen sind, können sie
aus dem Ausgangspuffer AP über für das Lesen vorgesehene
Leitungen ausgelesen werden. Dann kann geprüft werden, ob
die Adresse in diesem Header mit der Adresse dieses Ausgangskanals
übereinstimmt. Ist dieses der Fall, so wird
der Block in einem Wartepuffer WP übernommen.
Der Vergleich von Headerbits und Kanaladresse muß in
jeder Taktperiode des Takts T durchgeführt werden, da
während jeder Taktperiode ein Block von einer Eingangsleitung
EL auf jeder Ausgangsleitung AL eintreffen kann.
Daher muß der verwendete Vergleicher entsprechend schnell
sein. Es ist unmöglich, diesen Vergleich in einzelne Stufen
des Wartepuffers zu verlegen (siehe Bild 3). Eine
genauere Ausführung hierzu wird später beschrieben
werden.
Die Pufferung der Blöcke erfolgt in dem speziellen (wenngleich
sehr einfachen) Wartepuffer WP, dessen technische
Realisierung und Funktion später genauer beschrieben
wird. Der Wartepuffer WP besteht aus speichernden
Elementen, die in diesem Falle einfache
"store-and-forward" Flipflops sind.
Ein Block wird in so vielen Flipflops, wie dieser Bits
enthält gespeichert. In einem solchen Register werden
alle Flipflops gleich gesteuert. Warten k Blöcke, so sind
die Flipflops der Register R 1 bis RK auf "store" geschaltet
(siehe Fig. 3). Ihr Inhalt sind die letzten k
Blöcke. Die Flipflops aller anderen Register R sind auf
"forward" geschaltet. Ein vorne in Register R eingespeicherter
Block wird also durch alle Register R
hindurchgeschaltet, bis dieser im k +1-ten Register RK +1
"hängen" bleibt, da das k-te Register RK auf "store"
geschaltet ist, also keine Daten von seinem Eingang
übernimmt.
Dies wird für alle Blöcke durchgeführt, gleichgültig, ob
diese für diese Ausgangsleitung AL bestimmt sind oder
nicht. Dadurch werden keine Schalter in den Leitungen
zwischen Ausgangspuffer AP und Wartepuffer WP benötigt.
Sind diese Blöcke jedoch für diese Ausgangsleitung AL
bestimmt, so wird ein Registerzähler inkrementiert (auf
k +1), das k +1-te Register RK +1 auf "store" geschaltet,
und somit der Block gespeichert.
Bei dieser Speicheroperation sind u. U. sehr viele Gatter
zu durchlaufen. Es handelt sich also um eine asynchrone
Lösung, da die Laufzeit durch die Flipflops der Register
R von der Anzahl k wartender Blöcke abhängt. Dies muß bei
der Ausgestaltung einer Entscheidungslogik ESL, welche
die Register R ansteuert, berücksichtigt werden, da die
Flipflops des Registers RK +1 erst dann eine Speicheroperation
durchführen dürfen, wenn alle Bits des zu
speichernden Blocks sicher in diesem Register R eingetroffen
sind. Wegen der stark schwankenden und auch recht
großen Zahl zu durchlaufender Gatter wäre dieses u. U. bei
geringen Taktzeiten nur schwierig zu realisieren.
Eine nicht in der Zeichnung dargestellte Ausführungsform
wäre eine synchron getaktete Lösung, bei der der neue
Block in jeder Taktperiode vom letzten Register R zum
vorletzten gereicht wird, dann zum vorvorletzten usw.
Dies wird solange wiederholt, bis sich dieser Block in
der Warteschlange hinten angestellt hat.
Ein scheinbarer Nachteil dieses Verfahrens liegt darin,
daß bei leerem Wartepuffer WP ein Block unnötig verzögert
wird, da dieser taktweise durch den Wartepuffer WP
geschoben werden muß, ehe dieser auf das Ausgangs
schieberegister ASR gegeben werden kann. Dieser Nachteil
tritt nur bei leerem Wartepuffer WP auf, also wenn die
Lastsituation des Systems sowie völlig unbedenklich ist.
Auch ist die Verzögerung in den meisten Fällen gering, da
häufig die Anzahl der Blockspeicherplätze kleiner sein
wird als die Zahl der Taktperioden, die benötigt werden,
einen Block zu übertragen (Länge eines Blocks). Da auch
die Ausgangsschieberegister ASR nur synchron arbeiten
können, muß vor dem Senden eines Blocks stets auf den
Start eines Senderrahmens, ab dem eine Blockübertragung
begonnen werden kann, gewartet werden. Daher kann bei
diesem Verfahren - gegenüber dem anhand der Fig. 3
erläuterten Verfahren - die Übertragung eines Blocks
höchstens um die Sendedauer eines solchen Rahmens
verzögert werden. Dies kann zu Zeiten, in denen ein Kanal
nur schwach ausgelastet ist, in Kauf genommen werden.
Da in jeder Taktperiode ein Block im Ausgangspuffer AP,
und somit auch im Wartepuffer WP, ankommen kann, wäre ein
paralleler Zugriff auf einen zentralen Speicher durch
den Ausgangspuffer AP und das Ausgangsschieberegister ASR
(siehe Fig. 3) nicht konfliktfrei. Bei dem vorgenannten
Wartepuffer WP kann jedoch das Ausgangsschieberegister
ASR jederzeit den Inhalt eines Blocks im Register R 1
lesen. Danach kann dieses überschrieben werden. Dazu
stellt es sich für eine halbe Taktperiode auf "forward",
übernimmt also den Inhalt vom Register R 2 und wird in der
nächsten halben Taktperiode wieder auf "store" geschaltet
(siehe Fig. 5). Damit liegt - spätestens eine Taktperiode
nach der Übernahme des ersten Blocks ins Ausgangsschieberegister
ASR - stets Taktperiodenweise der nächste zu
sendende Block am Eingang des Ausgabeschieberegisters ASR
an, weshalb also hier keine Zeitprobleme entstehen.
Der Wartepuffer WP selbst muß noch reorganisiert werden,
d. h. alle anderen Blöcke müssen weitergerückt werden.
Dafür hat der Wartepuffer WP solange Zeit, wie die Übertragung
eines Blocks dauert. Das Verfahren entspricht
jenem für die Umspeicherung des Blocks vom Register R 2 in
das Register R 1. Dies kann der Wartepuffer WP selbständig
und völlig konfliktfrei parallel zu den anderen Verarbeitungen
im Ausgabekanal erledigen.
Würde gleichzeitig ein neuer Block gespeichert werden, so
hätte dies keine nachteiligen Folgen. Bei dem anhand
Fig. 3 beschriebenen Verfahren ist festgelegt, welches
der letzte Block im Wartepuffer WP ist. Hinter diesem
würde sich der neue Block anstellen. Danach könnte dieser
genau so verschoben werden wie alle anderen Blöcke.
Bei den oben beschriebenen Verfahren mit synchroner
Taktung würde ein neuer Block sich entweder hinter dem
letzten Block anstellen, wenn dieser noch nicht verschoben
ist, oder dieser würde sich an den bereits verschobenen
Block anschließen, also ebenfalls ordnungsgemäß
einordnen. Eine genauere Erläuterung der Architektur
dieses Speichers wird anhand Fig. 6 erläutert werden.
Der Bus B ist im allgemeinen sehr breit und benötigt
viele kostenträchtige, fehleranfällige und aufwendig zu
erstellende Verbindungen.
Eine einfache Methode zur Verkleinerung des Busses B ist
die Vergrößerung der Geschwindigkeit des Busses B. Wird
diese z. B. verdoppelt, die Taktzeit des Busses B also
halb so groß wie die des Systems (=Dauer der Übertragung
eines Bits auf einer Fernleitung), so könnten in jeder
Taktperiode genau zwei Bits von der Eingangsleitung EL
auf die Ausgangsleitung AL gelegt werden, so daß die
halbe Anzahl von Leitungen im Bus B genügen würden.
Während bei der in Fig. 1 dargestellten Ausführungsform
eine raumparallele Übertragung vorgesehen ist, würde man
dann eine raum/zeitparallele Übertragung anwenden.
Ein solches Verfahren wird anhand Fig. 4 erläutert:
In der Ausgangsleitung AL sind Umschalter S vorgesehen,
die synchron mit dem Bustakt BT die Bits (angedeutet
durch die Bitnummer BNR 1, BNR 2,. . . ) der einzelnen Bus
leitungen auf das jeweilige Flipflop der Ausgangsleitung
AL legen. In der ersten Stellung legt der Umschalter S
die ungeraden Bits auf den Bus B, in der zweiten Stellung
die geraden Bits. Dadurch werden abwechselnd die gelesenen
Bits auf die entsprechenden Leitungen der Schieberegister
im Ausgangspuffer AP gelegt. Bei einer weiteren
Ausführungsform, bei der ebenfalls die Anzahl der Busleitungen
des Busses B im Vergleich zur Anzahl der Bits des
Blocks halbiert ist, werden in der ersten Stellung des
Umschalters S die erste Hälfte und in der zweiten
Stellung die zweite Hälfte des Blockes übertragen. Steht
die Anzahl der Busleitungen des Busses B zur Anzahl der
Bits des Blockes in einem ganzzahligen Verhältnis, so
weist der Umschalter S diesem Verhältnis entsprechende
Anzahl verschiedener Schaltstellungen auf. Der geschilderte
Vorgang wird auch Aufweitung genannt.
Da der Bustakt BT doppelt so hoch ist wie der Systemtakt,
wird ein Block mit der gleichen Geschwindigkeit übertragen,
wie bei der ersten Ausführungsform. Daher ist die
Leistung des Systems gleich der des zuerst beschriebenen,
obgleich sich die Zahl der Busleitungen halbiert hat.
Allerdings ist - bei hohen Übertragungsgeschwindigkeiten
- für die Verringerung des Bustaktes BT nur noch wenig
Spielraum vorhanden.
Bei gleicher Taktrate könnte der Bus B aber auch verkleinert
werden, wenn die Anzahl der Eingangsleitungen EL
entsprechend kleiner als die Anzahl der Busleitungen
ist. Das Übertragungsverfahren ist das gleiche, wie bei
dem oben besprochenen Verfahren mit Erhöhung des Bustaktes
BT. Bleibt der Bustakt BT jedoch unverändert, so
läßt sich nur die Hälfte der Eingangskanäle während der
Übertragungszeit eines Blocks auf den Bus B legen.
Der nachfolgenden Betrachtung liegt die Annahme zugrunde,
daß sowohl die Taktzeiten als auch die Anzahl der Leitungen
des Busses B und im Ausgangspuffer AP verschieden
sein können. Es sei:
t die Taktzeit des Systems, b die Taktzeit des Busses B, d die Taktzeit des Ausgangspuffers AP, M die Anzahl der Eingangsleitungen EL, L die Länge eines Blocks, B die Anzahl der Busleitungen des Busses B und D die Anzahl der Leitungen des Ausgangspuffers AP. In der Zeit t*L, in der genau ein Block übertragen wird, kann auf jeder Eingangsleitung EL ein Block der Länge L Bits ankommen, auf M Eingangsleitungen EL also L*M Bits. Der Bus B hat in der Zeit t*L höchstens t*L/b Taktimpulse, infolgedessen können also höchstens B*t*L/b Bits übertragen werden. Dadurch ergibt sich die Ungleichung:
t die Taktzeit des Systems, b die Taktzeit des Busses B, d die Taktzeit des Ausgangspuffers AP, M die Anzahl der Eingangsleitungen EL, L die Länge eines Blocks, B die Anzahl der Busleitungen des Busses B und D die Anzahl der Leitungen des Ausgangspuffers AP. In der Zeit t*L, in der genau ein Block übertragen wird, kann auf jeder Eingangsleitung EL ein Block der Länge L Bits ankommen, auf M Eingangsleitungen EL also L*M Bits. Der Bus B hat in der Zeit t*L höchstens t*L/b Taktimpulse, infolgedessen können also höchstens B*t*L/b Bits übertragen werden. Dadurch ergibt sich die Ungleichung:
L*M≦ B*t*L/b (I)
oder
M ≦ B*(t/b) (II)
Bei einem Verhältnis t/b von System- zu Bustaktzeit läßt
sich also das Verhältnis der Anzahl von Eingangsleitungen
EL und Leitungen des Busses B berechnen. Allerdings
sollte die Blocklänge L weiter ein ganzzahliges Vielfaches
der Anzahl der Leitungen des Busses B sein, da
ansonsten die Übertragung der Daten auf den Bus B nur mit
hohem Aufwand durchgeführt werden könnte.
Die Rate der im Augangspuffer AP eintreffenden Daten in
Bits ist M/t (denn je Taktzeit t trifft auf jeder Eingangsleitung
EL ein Bit ein). Dann ist die Rate, mit der
Blöcke im Ausgangspuffer AP transportiert werden müssen,
M/(D*t). Daher kann die Taktzeit im Ausgangspuffer AP auf
d=D*t/M gesetzt werden. Ist D=L, also gleich der Blocklänge
L, so kann die Taktzeit im Ausgangspuffer AP auf
d=L*t/M gesetzt werden.
Dieses bedeutet zugleich, daß die Schieberegister nur
noch mit einer entsprechend veränderten Taktrate geschaltet
zu werden braucht. Ist daher L M, so kommt der Ausgangspuffer
AP mit einer größeren Taktzeit aus. Dieses
würde die Realisierung eines solchen Systems verbilligen.
Die folgenden Zahlenbeispiele sollen die vorgenannten
Aussagen veranschaulichen. Wird die Anzahl der Eingangsleitungen
EL als fest angenommen und werden solche Vermittlungsknoten
VK mit M Eingangsleitungen EL und N Ausgangsleitungen
AL zu größeren Raummatrizen zusammengeschaltet,
ist M=N= 16 und L =256, so kann die Taktzeit des
Ausgangspuffers AP auf D=16*t vergrößert werden. Diese
Änderung der Taktzeit um mehr als eine Größenordnung
ermöglicht die Verbilligung des Systems als sonst für die
Taktzeit t notwendig wäre.
Ebenso könnte die Taktzeit b oder die Anzahl B der Busleitungen
des Busses B gemäß der Ungleichung b*M ≦ t*B
verändert werden. Ist für den Bus B z. B. die Taktzeit mit
b=8*t vorgegeben, und ist weiter M = 16, so ist B = 8*M =128
zu wählen. Also käme man bei dieser Taktzeit b des Busses
mit der halben Blocklänge L für die Anzahl B der Busleitungen
aus.
Mittels des Wartepuffers WP sollen Datensätze in einer
Liste so verwaltet werden, daß auf Anweisung hin ein vorher
gespeicherter Datenschutz übergeben werden kann. Dieses
ließe sich mit einem üblichen random access memory (RAM)
realisieren, wenn gleichzeitig einige Zeiger auf den
Anfang und das Ende eines zyklisch organisierten
Speichers verwaltet werden. Das ist nicht nur rechenzeitaufwendig,
sondern hat auch den Nachteil, daß Datensätze
nicht gleichzeitig gelesen und geschrieben werden
können.
Aus diesem Grunde wird ein spezieller Wartepuffer WP
benutzt, welcher aus "store-and-forward" Flip-Flops FF
(D-Flipflops) besteht, die in einer Kette zusammengeschaltet
sind. Die beiden Funktionen eines solchen Flipflops
FF sind:
- - Behalte (store) ein Bit: lege dessen Wert an den Aus gang
- - Lese ein Bit vom Eingang: lege dessen Wert an den Aus gang
Ein solches "store-and-forward" Flipflops FF kann sehr
einfach aufgebaut werden (siehe Fig. 5). Als Flip-Flops
werden taktpegelgesteuerte D-Flip-Flops FF verwendet und
das Steuersignal der Entscheidungslogik ESL wird auf den
Takteingang des taktpegelgesteuerten D-Flip-Flops FF
gelegt.
Das taktpegelgesteuerte D-Flip-Flop FF weist drei
parallel zueinander angeordnete NAND-Gatter N 1, N 2, N 3
auf, deren Ausgänge jeweils mit einem Eingang eines
NAND-Gatters N 4 verbunden sind. Der erste Eingang des
ersten NAND-Gatters N 1 und der Inverter I 1 sind über die
Steuerleitung s/fk mit der Entscheidungslogik ESL verbunden,
der Ausgang des Inverters I 1 liegt am ersten Eingang
des dritten NAND-Gatters N 3 an und dem ersten Eingang des
zweiten NAND-Gatters N 2 werden die Bits des Blocks zugeführt.
Der Ausgang des vierten NAND-Gatters N 4 ist sowohl
mit den zweiten Eingängen des zweiten und dritten
NAND-Gatters N 2, N 3 als auch mit dem ersten Eingang des
Flip-Flops FF des Registers RK +1 höherer Registernummer
verbunden.
Hierbei muß gegebenenfalls noch berücksichtigt werden, ob
die Laufzeitbedingungen in dem Schaltnetz (insbesondere
der Rückkopplung für die "store"-Funktion) ein ordnungsgemäßes
Funktionieren garantieren. Es ist eine einfache
Integration möglich und der Aufbau kann einfacher sein
als der eines normalen RAM-Speichers, da hier kein allgemeiner
Datenbus notwendig ist, und auch die Auswahlschaltung
sehr einfach ist.
Im folgenden wird anhand der in Fig. 5 dargestellten Ausführungsform
ein Wartepuffer WP beschrieben, der sich
selbsttätig durch eine dezentrale Logik so organisiert,
daß Blöcke gespeichert und auf Anforderung des zuerst
gespeicherten Blocks ausgelesen werden, wobei keine Konflikte
durch gleichzeitige Zugriffe entstehen.
Für jedes Register R ist noch ein zusätzliches Flipflop
vorgesehen, das angibt, ob dieses Register R einen
gültigen Block enthält. Ist das der Fall, so steuert die
dezentrale Logik derart, daß ein nachfolgender Block
diesen nicht überschreibt. Enthält des Register R keinen
gültigen Block, so steuert die dezentrale Logik derart,
daß synchron zum Systemtakt ein nachfolgender Block in
dieses Register R hineingeschrieben wird. Danach ist dann
das vorhergehende Register R "ungültig" zu erklären
(siehe Fig. 5).
Die in Fig. 6 dargestellte Ausführungsform der Entscheidungslogik
ESL wird bei einem synchron getakteten Wartepuffer
WP benutzt.
Die Entscheidungslogik ESL ist aus einer der Anzahl von
Registern R entsprechenden Anzahl gleicher Entscheidungslogikteilen
ESLT aufgebaut. Jedes Entscheidungslogikteil
ESLT enthält ein D-Flip-Flop DF, an dessen Q-Ausgang die
Information abgreifbar ist, ob sich in dem diesem Entscheidungslogikteil
ESLT zugeordneten Register ein
gültiger Block befindet oder nicht. Der Q-Ausgang des
D-Flip-Flops DF ist sowohl mit den ersten Eingängen
zweier NAND-Gatter N 5, N 6 als auch über einen Inverter I 2
mit dem ersten Eingang eines dritten NAND-Gatters N 7 verbunden.
Mit dem zweiten Eingang des dritten NAND-Gatters
N 7 bzw. über einen weiteren Inverter I 3 mit dem zweiten
Eingang des ersten NAND-Gatters N 5 ist das D-Flip-Flop DF
des Entscheidungslogikteils ESLT mit höherer Nummer verbunden.
Am zweiten Eingang des zweiten NAND-Gatters N 6
liegt das D-Flip-Flop DF des Entscheidungslogikteils ESLT
mit niedrigerer Nummer an. Die Ausgänge des zweiten und
dritten NAND-Gatters N 6, N 7 sind jeweils mit dem Eingang
eines vierten NAND-Gatters N 8 verbunden, dessen Ausgang
am D-Eingang des D-Flip-Flops DF anliegt. Dem dritten
Eingang des ersten NAND-Gatters N 5 und dem Takteingang
des D-Flip-Flops DF wird der Bustakt BT zugeführt. Am
Ausgang des ersten NAND-Gatters N 5 ist die Steuerinformation
für die Flip-Flops FF des Registers R abgreifbar.
Das Steuersignal auf der Leitung vk gibt an, ob in dem
k-ten Register RK gerade ein gültiger Block ist oder
nicht. Befindet sich kein gültiger Block in diesem
Register RK, jedoch in dem vorhergehenden Register RK +1,
so wird bei der negativen Flanke des Taktimpulses vom
Bustakt BT die Steuerleitung s/fk auf den Wert log-0
gesetzt, wodurch der Inhalt des vorhergehenden Registers
RK +1 in dieses gelesen wird. Sobald die Taktflanke des
Bustaktes BT wieder auf den Wert log-1 geht, ist die
Speicherung abgeschlossen.
Das Steuersignal auf der Leitung vk wird auf gültig
gesetzt, wenn dieses entweder vorher ungültig war und in
dem vorhergehenden Register RK +1 ein gültiger Block gewesen
war (welcher bei der letzten negativen Flanke des
Taktimpulses vom Bustakt BT in dieses Register RK +1 gelesen
worden war); oder wenn sowohl dieses Register RK +1,
als auch das nachfolgende Register RK +1 einen gültigen
Block enthalten (weshalb der Block in diesem Register
nicht weitergereicht werden konnte).
Die Funktionsweise dieser Steuerlogik läßt sich durch
nachfolgende Gleichungen beschreiben:
s/f k = Qv v BT (III)
D = ( ∧V k +1) v (V k-1∧Q) (IV)
Dadurch organisiert sich der Wartepuffer WP weitgehend
selbständig. Sobald in der Kette der gültigen Blöcke eine
Lücke entsteht, rücken die nachfolgenden Blöcke automatisch
nach.
Darüber hinaus kann der Wartepuffer WP verwendet werden,
um bitweise die Kanalnummer mit dem Header des Blocks zu
vergleichen. In Fig. 3 ist angenommen, daß die im Eingangskanal
bestimmte Ausgangskanalnummer in den obersten
Bits des Headers untergebracht ist. Die Kanalnummer ist
fest eingestellt (in Fig. 3 durch 0/1 angedeutet). Eine
Äquivalenzlogik vergleicht das jeweilige Bit im Header
mit dem entsprechenden Bit der Kanalnummer und gibt das
Ergebnis an die Entscheidungslogik ESL weiter. Liegt
keine Übereinstimmung vor, so wird das Gültigkeitsbit für
diesen Block gelöscht. Die Entscheidungslogik ESL sorgt
dann dafür, daß dieser Block nicht weitertransportiert
wird. Damit ist eine relativ einfache Logik entworfen, die
im Ausgangskanal eine komplexe Schaltlogik vermeidet.
(Die Logik kann auch durch einfache UND-Gatter ersetzt
werden, wenn die 0-Bits dieser Kanalnummer am Eingang
invertiert werden).
Alle beschriebenen Ausführungsformen sind besonders für
die Hochintegration geeignet - zum einen wegen ihres
homogenen Aufbaus, zum anderen wegen der sehr lokalen
Kommunikation zwischen den Schaltungsbestandteilen. Deshalb
ergibt sich ein großer Kostenvorteil.
Ein Nachteil im Hinblick auf die Hochintegration ist die
relativ große Anzahl benötigter Verbindungsleitungen.
Diese läßt sich jedoch mittels Modularisierung der Baueinheiten
verringern. Werden z. B. die Eingangspuffer EP
in verschiedene Module einer standardisierten Größe zerlegt
(z. B. für jeweils 32 Bit), so können diese, parallel
angeordnet, die gleiche Funktion übernehmen wie ein einziger
Baustein mit über 256 Bit Speicher (siehe Fig. 7).
Auf der Ausgangsseite ließen sich die Ausgangs- bzw.
Wartepuffer AP, WP gleichfalls in entsprechende Module
zerlegen. Dabei wäre nur eines dieser Module für die
Adreßaussonderung zuständig. Die Entscheidungslogik ESL
wäre entweder in einem Wartepuffermodul unterzubringen,
was entsprechende Signalleitungen zu den anderen Puffermodulen
erfordern würde, oder es wäre in jedem Wartepuffermodul
eine eigene Entscheidungslogik nötig, deren
Funktionen jedoch identisch wären.
Ein weiterer Punkt ist die Schaltgeschwindigkeit der verwendeten
Bauelemente. Bei der Verwendung handelsüblicher
Halbleiterbauelemente sind hier Grenzen gesetzt, die nur
bedingt nach kleineren Schaltzeiten hin verschoben werden
können. Aus diesem Grunde ist eine Verringerung der
Schaltzeiten durch parallele Übertragungsstrukturen, wie
sie für den Bus B und die Ausgangsseite beschrieben
wurden, von Vorteil.
Auf der Eingangsseite kann eine Modularisierung durchgeführt
werden, die zugleich Möglichkeiten der Parallelisierung
aufzeigt (siehe Fig. 7). Aks erstes wird das Eingangssignal
von einem Multiplexer M auf k parallele
Puffer EPP gelegt, welche mit einer k-fachen Taktzeit
arbeiten können. Ist z. B. k=16, so kann ein 0,5 ns Takt
auf 8 ns vergrößert werden.
Sobald die Adreßbits in dem Puffer EP eingetragen wurden,
können diese über entsprechende Leitungen ausgelesen
werden und der Header-Umsetzungsschaltung HU zugeführt
werden. Diese berechnet den neuen Header für diesen
Block.
Im nächsten Schritt sind die aus dem Puffer EPP herauskommenden
Daten, sowie der Header, auf den Bus B zu legen.
Dazu werden sie in Zwischenpuffer ZSP übertragen,
was wieder über einen Bus B 1 mit k-facher Taktzeit
geschehen kann. Die Zwischenpuffer ZSP schreiben dann die
Blöcke parallel auf den Bus B aus.
Die Breite der Busse B 1 und B und der Zwischenpuffer ZSP
wird vorzugsweise genau so groß gewählt, wie die Breite
der umgesetzten Adresse. Allerdings sind auch andere
Realisierungen, wenngleich mit größerem Aufwand an
Schaltlogik, realisierbar.
Aus der vorangegangenen Ausführung folgt, daß sehr viel
langsamere Bauelemente verwendet werden können, weil die
Datenströme entsprechend parallel aufgeweitet werden.
Dieser Vorteil ist einfach ausnutzbar, indem ein hochgradig
parallelen Bus B benutzt wird, so daß die sonst
bekannten Durchsatzprobleme nicht mehr auftreten. Dabei
kann der Bus B durch entsprechende Parallelisierung
durchaus mit langsameren Bauelementen realisiert werden,
da auch die Taktrate des Busses B kleiner sein kann als
die der Fernleitungen. Evtl. kann der Bus mittels Lichtleitern
realisiert werden.
Es treten keine Konflikte bei der Übertragung der Blöcke
von den Eingangs- zu den Ausgangsleitungen EL, AL auf.
Alle Blöcke können auf alle Ausgangsleitungen AL übertragen
und dort die überflüssigen vernichtet werden. Durch
den speziellen Ausgangspuffer AP werden bekannte Probleme,
wie das Überholen von Blöcken, vermieden.
Da über den Bus B Signale im Nanosekundenbereich übertragen
werden, ist seine Realisierung mit einigem Aufwand
verbunden. Allerdings liegt in dieser Busorganisation
auch ein wichtiger Vorteil, nämlich die Modularität. Ein
weiterer Kanal kann durch einfaches Dazustecken einer
entsprechenden Karte auf den Bus B geschaltet werden,
wobei lediglich eingangsseitig ein entsprechender
Synchronisationszeitpunkt zu vergeben ist, und ausgangsseitig
evtl. ein weiterer Treiber vorgesehen werden muß.
Der Hardwareaufwand ohne Bus B ist eingangsseitig
proportional der Blocklänge plus der Header-Umsetzungsschaltung
HU. Diese kann z. B. aus einem größeren
RAM-Speicher bestehen, durch den jeder virtuellen Verbindung
eine Ausgangsleitung AL zugeordnet wird. Ausgangsseitig
werden für den Wartepuffer WP im wesentlichen nur
soviel Speicherelemente benötigt, wie an Pufferspeicher
aufgrund von Verkehrsuntersuchungen sowieso vorzusehen
war. Dabei ist dieser Puffer WP sogar einfacher aufgebaut
als ein normaler RAM-Speicher, da er zwar - wie bei RAMs
- eine zentrale Ansteuerung benötigt, jedoch jedes
Flipflop FF nur mit seinen beiden Nachbarn Daten
austauscht, also kein zentraler Datenbus notwendig ist.
Claims (13)
1. Verfahren zur Koppelfeldsteuerung in einem Vermittlungsknoten
eines Breitband-Vermittlungssystems, bei dem
die Nachricht in Blöcke zerlegt und über breitbandige
Übertragungswege nach einem asynchronen Zeitvielfachverfahren
übertragen werden, dadurch gekennzeichnet, daß
zwischen Eingangs- und Ausgangsleitung (EL, AL) des Vermittlungsknotens
(VK) ein Bus (B) angeordnet ist, wobei
eine bitparallele Übertragung der Blöcke über den Bus (B)
vorgenommen wird, daß die über die Eingangsleitungen (EL)
ankommenden Blöcke nacheinander dem Bus (B) zugeführt
werden und daß ausgangsseitig der Bus (B) mit einem
Puffer (AP, WP) verbunden ist, wobei von einer mit dem
Puffer (AP, WP) verbundenen Entscheidungslogik (ESL)
entschieden wird, welche abgehenden Blöcke über welche
Ausgangsleitung (AL) gesendet werden.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
während der Taktperiode eines Taktes (T) der ankommende
Block bitparallel auf den Bus (B) gelegt wird und daß die
Ausgangssignale aller Busleitungen des Busses (B) bit
parallel gelesen und in bitparalleler Form im Puffer (AP, WP)
gespeichert werden.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet,
daß zur Bildung einer Warteschlange im Puffer (WP) die zugeführten
Blöcke nach dem ansich bekannten FIFO-Verfahren
zwischengespeichert werden.
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß
ein neu ankommender Block mit synchroner Taktung solange
durch den Puffer (WP) geschoben wird, bis der Blockanfang
des neuen Blocks sich an das Blockende des zuletzt im
Puffer (WP) abgespeicherten Blocks anfügt.
5. Schaltungsanordnung zur Durchführung des Verfahrens
nach Anspruch 1, dadurch gekennzeichnet, daß der mit dem
Bus (B) verbundene Puffer (AP, WP) einen Ausgangspuffer
(AP) und einen mit diesem verbundenen Wartepuffer (WP)
aufweist, daß der Wartepuffer (WP) zu Register (R) zusammengefaßte
Flip-Flops enthält, wobei die Anzahl der
Flip-Flops der Anzahl der Bits je Block entspricht, daß
mittels der Entscheidungslogik (ESL) eine der Anzahl
wartender Blöcke entsprechende Anzahl von Registern (R)
angesteuert wird und falls der Block für eine Ausgangsleitung
(AL) bestimmt ist, ein Registerzähler inkrementiert
und gesteuert durch diesen der Block im
entsprechenden Register (R) abgespeichert wird und daß
mit dem Wartepuffer (WP) ein Ausgangsschieberegister
(ASR) verbunden ist.
6. Schaltungsanordnung nach Anspruch 5, dadurch gekennzeichnet,
daß die Anzahl der Busleitungen des Busses (B)
im Vergleich zur Anzahl der Bits des Blocks halbiert ist
und daß mit jeder Busleitung des Busses (B) ein Umschalter
(S) verbunden ist, welcher synchron zum Bustakt (BT)
umgeschaltet wird.
7. Schaltungsanordnung nach Anspruch 6, dadurch gekennzeichnet,
daß in der ersten Stellung des Umschalters (S)
Bits des Blocks mit ungerader Bitnummer (BNR 1, BNR 3,
. . .) und in der zweiten Stellung Bits mit gerader Bitnummer
(BNR 2, BNR 4, . . .) dem Ausgangspuffer (AP) zugeführt
werden.
8. Schaltungsanordnung nach Anspruch 6, dadurch gekennzeichnet,
daß in der ersten Stellung des Umschalters (S)
die erste Hälfte des Blocks und in der zweiten Stellung
die zweite Hälfte des Blocks dem Ausgangspuffer (AP)
zugeführt werden.
9. Schaltungsanordnung nach Anspruch 1 und 5, dadurch gekennzeichnet,
daß die Anzahl der Busleitungen des
Busses (B) zur Anzahl der Bits des Blockes in einem
geradzahligen Verhältnis steht und daß mit jeder Busleitung
des Busses (B) ein Umschalter (S) verbunden ist,
welcher synchron zum Bustakt (BT) umgeschaltet wird und
dessen Schaltstellungen dem ganzzahligen Verhältnis ent
sprechen.
10. Schaltungsanordnung nach Anspruch 5, dadurch gekennzeichnet,
daß als Flip-Flops taktpegelgesteuerte
D-Flip-Flops (FF) verwendet werden und daß das Steuersignal
der Entscheidungslogik (ESL) auf den Takteingang
des taktpegelgesteuerten D-Flip-Flops (FF) gelegt wird.
11. Schaltungsanordnung nach Anspruch 10, dadurch gekennzeichnet,
daß das taktpegelgesteuerte D-Flip-Flop (FF)
drei parallel zueinander angeordnete NAND-Gatter (N 1, N 2,
N 3) aufweist, deren Ausgänge jeweils mit einem Eingang
eines NAND-Gatters (N 4) verbunden sind, daß der erste
Eingang des ersten NAND-Gatters (N 1) und ein Inverter
(I 1) mit der Entscheidungslogik (ESL) verbunden sind,
daß der erste Eingang des dritten NAND-Gatters (N 3) mit
dem Ausgang des Inverters (I 1) verbunden ist, daß dem
ersten Eingang des zweiten NAND-Gatters (N 2) die Bits des
Blocks zugeführt werden und daß der Ausgang des vierten
NAND-Gatters (N 4) sowohl mit den zweiten Eingängen des
zweiten und dritten NAND-Gatters (N 2, N 3) als auch mit
dem ersten Eingang des Flip-Flops des Registers (RK +1)
höherer Registernummer verbunden ist.
12. Schaltungsanordnung nach Anspruch 5, dadurch gekennzeichnet,
daß die Entscheidungslogik (ESL) aus einer der
Anzahl von Registern (R) entsprechenden Anzahl gleicher
Entscheidungslogikteilen (ESLT) aufgebaut ist, daß jedes
Entscheidungslogikteil (ESLT) ein D-Flip-Flop (DF) ent
hält, an dessen A-Ausgang die Information abgreifbar ist,
ob in dem diesem Entscheidungslogikteil (ESLT) zugeordneten
Register ein gültiger Block befindet oder nicht, daß
der Q-Ausgang des D-Flip-Flop (DF) sowohl mit den ersten
Eingängen zweier NAND-Gatter (N 5, N 6) als auch über einen
Inverter (I 2) mit dem ersten Eingang eines dritten
NAND-Gatter (N 7) verbunden ist, daß mit dem zweiten Eingang
des dritten NAND-Gatters (N 7) bzw. über einen
weiteren Inverter (I 3) mit dem zweiten Eingang des ersten
NAND-Gatters (N 5) das D-Flip-Flop des Entscheidungslogikteil
(ESLT) mit höherer Nummer verbunden ist, daß am
zweiten Eingang des zweiten NAND-Gatters (N 6) das
D-Flip-Flop (DF) des Entscheidungslogikteils (ESLT) mit
niedrigerer Nummer anliegt, daß die Ausgänge des zweiten
und dritten NAND-Gatters (N 6, N 7) jeweils mit dem Eingang
eines vierten NAND-Gatters (N 8) verbunden sind, dessen
Ausgang am D-Eingang des D-Flip-Flops (DF) anliegt, daß
dem dritten Eingang des ersten NAND-Gatters (N 5) und dem
Takteingang des D-Flip-Flops (DF) der Bustakt (BT) zugeführt
wird und daß am Ausgang des ersten NAND-Gatters
(N 5) die Steuerinformation für die Flip-Flops des
Registers (R) abgreifbar ist.
13. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet,
daß mittels eines Multiplexers (M) die über die
Eingangsleitungen (EL) ankommenden Blöcke in parallel
liegenden Eingangspuffern (EPP) zwischengespeichert werden
und daß die zwischengespeicherten Bits des Blocks mit
einer entsprechend dem Multiplexfaktor höheren Taktzeit
ausgelesen und dem Bus (B) zugefügt werden.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19873735187 DE3735187A1 (de) | 1987-10-17 | 1987-10-17 | Verfahren und schaltungsanordnung zur koppelfeldsteuerung in einem vermittlungsknoten eines breitband-vermittlungssystems |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19873735187 DE3735187A1 (de) | 1987-10-17 | 1987-10-17 | Verfahren und schaltungsanordnung zur koppelfeldsteuerung in einem vermittlungsknoten eines breitband-vermittlungssystems |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3735187A1 true DE3735187A1 (de) | 1989-04-27 |
DE3735187C2 DE3735187C2 (de) | 1992-12-03 |
Family
ID=6338535
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19873735187 Granted DE3735187A1 (de) | 1987-10-17 | 1987-10-17 | Verfahren und schaltungsanordnung zur koppelfeldsteuerung in einem vermittlungsknoten eines breitband-vermittlungssystems |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE3735187A1 (de) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2620220B2 (de) * | 1975-05-09 | 1980-04-03 | Western Electric Co., Inc., New York, N.Y. (V.St.A.) | Schaltungsanordnung zum Übertragen von Datenpaketen über einen Zwischenspeicher |
EP0183592A1 (de) * | 1984-11-08 | 1986-06-04 | LABORATOIRE CENTRAL DE TELECOMMUNICATIONS Société anonyme: | Asynchrone Paketvermittlung |
DE3714385A1 (de) * | 1987-04-30 | 1988-11-10 | Philips Patentverwaltung | Verfahren und schaltungsanordnung zur koppelfeldsteuerung in einem vermittlungssystem |
-
1987
- 1987-10-17 DE DE19873735187 patent/DE3735187A1/de active Granted
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2620220B2 (de) * | 1975-05-09 | 1980-04-03 | Western Electric Co., Inc., New York, N.Y. (V.St.A.) | Schaltungsanordnung zum Übertragen von Datenpaketen über einen Zwischenspeicher |
EP0183592A1 (de) * | 1984-11-08 | 1986-06-04 | LABORATOIRE CENTRAL DE TELECOMMUNICATIONS Société anonyme: | Asynchrone Paketvermittlung |
DE3714385A1 (de) * | 1987-04-30 | 1988-11-10 | Philips Patentverwaltung | Verfahren und schaltungsanordnung zur koppelfeldsteuerung in einem vermittlungssystem |
Non-Patent Citations (1)
Title |
---|
US-Z.: YEH, Y.S., u.a.: The Knockout Switch: A simple, modular architecture for high- performance pocket switching, IN: International Switching Symposium 1987 Proceedings, Thursday, March 19, 1987, Vol. 3 of 4, Session B 10.2.8, S. 0801-0808 * |
Also Published As
Publication number | Publication date |
---|---|
DE3735187C2 (de) | 1992-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69434705T2 (de) | Multiprozessorsystem und Verfahren zur Zusammensetzung von ATM Zellen | |
DE3752370T2 (de) | Vermittlungssystem | |
DE2503111C3 (de) | Verfahren und Schaltungsanordnung zur zeitmultiplexen Übertragung von Nutzinformationen aus voneinander unabhängigen Quellen | |
DE3533845C2 (de) | Weglenkende Paket-Vermittlungsanlage mit Mehrfachwegen | |
DE69833708T2 (de) | Kommunikationsverfahren für eine medienunabhängige Schnittstelle (MII) für ein hochintegriertes Ethernet-Netzelement | |
DE2165667C3 (de) | Zeitmultiplex-Übertragungseinrichtung | |
DE60113058T2 (de) | Empfänger korrigiert | |
DE69637462T2 (de) | ATM-Vermittlungsstelle mit Eingangs- und Ausgangsanschlussstellen | |
DE3214189C2 (de) | ||
DE60119068T2 (de) | Warteschlangen-resynchronisation: synchrone aktualisierung eines verteilten vermittlungssystems in echtzeit | |
DE3702614A1 (de) | Digitales koppelnetz fuer leitungs- und paketvermittlung und koppeleinrichtung hierzu | |
DE19531749A1 (de) | Verkehrsgestaltungseinrichtung und Paket-Kommunikationsgerät | |
EP0351014B1 (de) | Koppelfeld für ein Vermittlungssystem | |
EP0329005B1 (de) | Verfahren zum Einrichten von über Koppelvielfache einer mehrstufigen Koppelanordnung verlaufenden virtuellen Verbindungen | |
DE4416719C2 (de) | Schaltungsanordnung zum störungsfreien Umleiten eines Nachrichtenzellenstromes auf einen Ersatzweg | |
DE4416720C1 (de) | Verfahren und Schaltungsanordnung zum Synchronisieren von redundant übertragenen Nachrichtenzellenströmen | |
DE60118385T2 (de) | Verfahren und vorrichtung zur übertragung von paketen in einem speicher | |
DE2827270A1 (de) | Schaltungsanordnung fuer eine vermittlungsanlage | |
DE60126470T2 (de) | Netzwerkvorrichtung und Verfahren zum Laufzeitausgleich von Datenpaketen | |
EP0322075B1 (de) | Koppelfeld und Koppelfeldsteuerung für ein Vermittlungssystem | |
EP0321050B1 (de) | Vermittlungsknoten eines Breitband-Vermittlungssystems | |
EP0173274B1 (de) | Verfahren und Schaltungsanordnung zur Herstellung und zum Betreiben einer Zeitvielfach-Breitbandverbindung | |
EP0442581B1 (de) | Asynchrones Zeitvielfachübermittlungssystem | |
DE3735187C2 (de) | ||
DE10307424A1 (de) | Datenvermittlungsvorrichtung und Multiplex-Kommunikationssysteme |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: PHILIPS CORPORATE INTELLECTUAL PROPERTY GMBH, 2233 |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: PHILIPS INTELLECTUAL PROPERTY & STANDARDS GMBH, 20 |