DE3735187C2 - - Google Patents
Info
- Publication number
- DE3735187C2 DE3735187C2 DE19873735187 DE3735187A DE3735187C2 DE 3735187 C2 DE3735187 C2 DE 3735187C2 DE 19873735187 DE19873735187 DE 19873735187 DE 3735187 A DE3735187 A DE 3735187A DE 3735187 C2 DE3735187 C2 DE 3735187C2
- Authority
- DE
- Germany
- Prior art keywords
- input
- block
- bus
- flip
- output
- 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.)
- Expired - Lifetime
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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
Die Erfindung bezieht sich auf ein asynchrones Zeitviel
fachübermittlungssystem gemäß dem Oberbegriff des Patent
anspruchs 1.
Im Rahmen der Entwicklung zukünftiger, integrierter Breit
bandnetze 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 Verarbeitungsgeschwin
digkeiten, sowie den Forderungen der Benutzer und Netz
betreiber. Die Konzeption solcher Breitbandnetze geht aus
von dem kürzlich geschaffenen diensteintegrierten Fern
meldenetz ISDN.
Eine erste Möglichkeit zur Erweiterung des diensteinte
grierten 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 Durch
schaltevermittlung erfüllt jedoch nicht alle Anforderungen
der Netzbereiter an ein anpassungsfähiges Netz zur Über
mittlung aller möglichen Dienste, darunter
auch solcher Dienste mit noch nicht international stan
dardisierten Parameter, sowie für zukünftige Dienste.
In der europäischen Patentanmeldung mit der Veröffent
lichungsnummer 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 Adreßinformation, wobei die Adreßinformation
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 so lange zwischen
gespeichert, bis für diese ein freier Rahmen zur
Verfügung steht.
Hinsichtlich der Pufferanordnung können die Vermittlungs
knoten zentralgepufferte Systeme (wie beispielsweise aus
der europäischen Patentanmeldung mit der Veröffentlichungs
nummer 01 83 592 bekannt) oder dezentral gepufferte Systeme
sein. Bei zentral gepufferten Systemen gibt es nur
einen Puffer, in dem jede eingehende Leitung ihre ankom
menden Blöcke ablegt und aus dem jede ausgehende Leitung
für diese bestimmte Blöcke wieder ausliest. Systeme mit
dezentraler Pufferung werden weiter dahingehend unter
schieden, ob eine Pufferung von Blöcken ausschließlich auf
der Eingangsseite (eine Ausführungsform hierfür ist bei
spielsweise 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. bei
spielsweise "International Switching Symposium 1987 Pro
ceedings Thursday, March 19, 1987, Volume 3 of 4, Session
B10.2, 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 je
weils 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 "International Switching
Symposium 1987 Proceedings Thursday, March 19, 1987, Volume
3 of 4, Session B10.2"), bei dem jede eingehende Leitung
über einen Bus mit jeder Ausgangsschaltung in Verbindung
steht. Damit treffen in jeder der N Ausgangsschaltungen
M Busse ein.
Als erstes werden die Header gelesen und die für diese
ausgehende Leitung bestimmten Blöcke gekennzeichnet (Fil
terung). Dann werden alle gültigen Blöcke in einem Kon
zentrator auf eine beschränkte Zahl L (L<M) 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 zu
sätzliche Verlustwahrscheinlichkeit, die allerdings durch
entsprechende Wahl von L wohl in allen praktischen Anwen
dungen beliebig klein gehalten werden kann (z. B. für L=12
liegt auch bei 100%iger Belastung die Verlustwahrschein
lichkeit 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.
Aus der DE 26 20 220 B2 ist eine Schaltungsanordnung zum
Übertragen von Datenpaketen über einen Zwischenspeicher
bekannt, bei der über eine Eingangsleitung Datenpakete,
die in Zeitschlitzen untergebracht sind, über mehrere
Schieberegister in einem Paketspeicher eingeschrieben
werden. Anhand der Information im Kopf eines Datenpaketes
wird die Speicherorganisation des Datenpaketes im Paket
speicher vorgenommen. Dabei wird die Speicherung so aus
geführt, daß das Datenpaket in einem bestimmten Zeitschlitz
des Ausgangssignals eingeschrieben werden kann. Des weiteren
wird auch eine neue Information in den Kopf eines
Datenpaketes eingegeben.
Der Erfindung liegt die Aufgabe zugrunde, ein asynchrones
Zeitvielfachübermittlungssystem zu schaffen, bei dem die
interne Bitrate reduziert wird.
Diese Aufgabe wird erfindungsgemäß durch ein asynchrones
Zeitvielfachübermittlungssystem nach den Merkmalen des
Patentanspruchs 1 gelöst.
Diese Art der Verarbeitung von Bits eines Blocks ent
spricht einer teilweisen bitparallelen Verarbeitung inner
halb des Vermittlungsknotens. Durch die wenigstens
teilweise bitparallele Weiterverarbeitung innerhalb des
Vermittlungsknotens wird die Bitrate innerhalb des Ver
mittlungsknotens reduziert. Eine solche Bitratenreduktion
ist aus der DE 26 20 220 B2 nicht bekannt. Beispielsweise
kann die Taktfrequenz im Vermittlungsknoten um die Hälfte
gegenüber der Taktfrequenz außerhalb des Vermittlungs
knotens reduziert werden, wenn jeweils 2 Bit eines Blockes
parallel übertragen werden. Je größer die Breite des Busses
ist, um so kleiner wird die interne Taktfrequenz gegenüber
der äußeren Taktfrequenz. Der Buspuffer, der mit
wenigstens einer Eingangsleitung gekoppelt ist, dient zur
Zwischenspeicherung der Blöcke. Hierdurch wird ein Verlust
von Blöcken verhindert.
Aus den Unteransprüchen ergeben sich weitere Ausgestaltungen
der Erfindung.
Beim erfindungsgemäßen asynchronen Zeitvielfachübermitt
lungssystem werden die eintreffenden Blöcke behinderungsfrei
auf eine oder alle Ausgangsleitungen durchgeschaltet.
Die Ausgangspuffer können beliebig viele gleichzeitig
eintreffende Blöcke speichern. Es werden außer den Puffer
plätzen nur wenige zusätzliche Speicherplätze benötigt,
deren Zahl von der Headerlänge abhängt, und die im wesent
lichen 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 unmit
telbar, bevor der Block in den Puffer übernommen wird.
Vom Leistungsgesichtspunkt her gesehen, treten beim erfin
dungsgemäßen asynchronen Zeitvielfachübermittlungssystem
weder Konflikte noch Behinderungen auf. Die Verlustwahr
scheinlichkeit errechnet sich also wie im idealen Falle
aus der Verlustwahrscheinlichkeit eines Bin/D/1/K-Wartesystems.
Das asynchrone Zeitvielfachübermittlungssystem erfordert
einen geringen Schaltungsaufwand und ist aufgrund der
funktionellen Abgrenzung zwischen den verschiedenen Schal
tungsteilen einfach und sehr homogen aufzubauen. Hierzu
werden eingangsseitig die Blöcke in ein Eingangsschiebe
register 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 gespei
chert, 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 er
lä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
- eventuell 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 Aus
gangskanals ü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 Warte
puffers zu verlegen (siehe Fig. 3). Eine genauere Aus
führung hierzu wird später beschrieben werden.
Die Pufferung der Blöcke erfolgt in dem speziellen (wenn
gleich 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 R1 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" ge
schaltet. 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 so lange 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 R1 lesen.
Danach kann dieses überschrieben werden. Dazu stellt es
sich für eine halbe Taktperiode auf "forward", übernimmt
also den Inhalt vom Register R2 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 so lange Zeit, wie die Übertragung
eines Blocks dauert. Das Verfahren entspricht
jenem für die Umspeicherung des Blocks vom Register R2 in
das Register R1. 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 BNR1, BNR2, . . .) 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 Ausgangspuffer 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 N1, N2, N3
auf, deren Ausgänge jeweils mit einem Eingang eines
NAND-Gatters N4 verbunden sind. Der erste Eingang des
ersten NAND-Gatters N1 und der Inverter I1 sind über die
Steuerleitung s/fk mit der Entscheidungslogik ESL verbunden,
der Ausgang des Inverters I1 liegt am ersten Eingang
des dritten NAND-Gatters N3 an und dem ersten Eingang des
zweiten NAND-Gatters N2 werden die Bits des Blocks zugeführt.
Der Ausgang des vierten NAND-Gatters N4 ist sowohl
mit den zweiten Eingängen des zweiten und dritten
NAND-Gatters N2, N3 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 N5, N6 als auch über einen Inverter I2
mit dem ersten Eingang eines dritten NAND-Gatters N7 verbunden.
Mit dem zweiten Eingang des dritten NAND-Gatters
N7 bzw. über einen weiteren Inverter I3 mit dem zweiten
Eingang des ersten NAND-Gatters N5 ist das D-Flip-Flop DF
des Entscheidungslogikteils ESLT mit höherer Nummer verbunden.
Am zweiten Eingang des zweiten NAND-Gatters N6
liegt das D-Flip-Flop DF des Entscheidungslogikteils ESLT
mit niedrigerer Nummer an. Die Ausgänge des zweiten und
dritten NAND-Gatters N6, N7 sind jeweils mit dem Eingang
eines vierten NAND-Gatters N8 verbunden, dessen Ausgang
am D-Eingang des D-Flip-Flops DF anliegt. Dem dritten
Eingang des ersten NAND-Gatters N5 und dem Takteingang
des D-Flip-Flops DF wird der Bustakt BT zugeführt. Am
Ausgang des ersten NAND-Gatters N5 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/fk = Qv v BT (III)
D = ( ∧ Vk+1) v (Vk-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). Als 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 B1 mit k-facher Taktzeit
geschehen kann. Die Zwischenpuffer ZSP schreiben dann die
Blöcke parallel auf den Bus B aus.
Die Breite der Busse B1 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
paralleler Bus B benutzt wird, so daß die sonst be
kannten 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. Eventuell 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 eventuell ein
weiterer Treiber vorgesehen werden muß.
Der Hardwareaufwand ohne Bus B ist eingangsseitig propor
tional der Blocklänge plus der Header-Umsetzungsschaltung
HU. Diese kann z. B. aus einem größeren RAM-Speicher be
stehen, durch den jeder virtuellen Verbindung eine Aus
gangsleitung AL zugeordnet wird. Ausgangsseitig werden für
den Wartepuffer WP im wesentlichen nur so viel Speicher
elemente 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 (12)
1. Asynchrones Zeitvielfachübermittlungssystem mit einem
Vermittlungsknoten (VK),
- - welchem über wenigstens eine Eingangsleitung (EL) Nach richten in Blöcken zugeführt werden, die jeweils einen eine Information für den Bestimmungsort der Nachricht enthaltenen Header aufweisen,
- - welcher einen Puffer (AP, WP) enthält, in dem die Blöcke zwischengespeichert werden, und
- - welcher eine Entscheidungslogik (ESL) enthält, die entscheidet, ob ein Block über wenigstens eine mit dem Vermittlungsknoten (VK) gekoppelte Ausgangsleitung (AL) gesendet wird,
dadurch gekennzeichnet,
daß die auf wenigstens einer Eingangsleitung (EL) eintref fenden Bits eines Blockes wenigstens auf zwei Leitungen eines Busses (B) geführt werden und
daß eine Zwischenspeicherung der Blöcke in einem mit dem Bus (B) gekoppelten Buspuffer (BP) vorgesehen ist.
daß die auf wenigstens einer Eingangsleitung (EL) eintref fenden Bits eines Blockes wenigstens auf zwei Leitungen eines Busses (B) geführt werden und
daß eine Zwischenspeicherung der Blöcke in einem mit dem Bus (B) gekoppelten Buspuffer (BP) vorgesehen ist.
2. Asynchrones Zeitvielfachübermittlungssystem nach An
spruch 1, dadurch gekennzeichnet,
daß die auf wenigstens einer Eingangsleitung (EL) eintref
fenden Bits eines Blockes bitparallel auf die Leitungen
des Busses (B) geführt werden.
3. Asynchrones Zeitvielfachübermittlungssystem nach An
spruch 1, dadurch gekennzeichnet,
daß die Anzahl der Leitungen des Busses (B) im Vergleich
zur Anzahl der Bits des Blocks halbiert ist und
daß jeweils ein Umschalter mit jeder Leitung des
Busses (B) gekoppelt ist, welcher in Abhängigkeit vom
Bustakt (BT) umgeschaltet wird.
4. Asynchrones Zeitvielfachübermittlungssystem nach An
spruch 3, dadurch gekennzeichnet,
daß in der ersten Stellung des Umschalters Bits des Blocks
mit ungerader Bitnummer (BNR1, BNR3, . . .) und in der
zweiten Stellung Bits des Blockes mit gerader Bitnummer
(BNR2, BNR4, . . .) auf die Leitung des Busses (B)
geführt werden.
5. Asynchrones Zeitvielfachübermittlungssystem nach An
spruch 3, dadurch gekennzeichnet,
daß in der ersten Stellung des Umschalters die erste Hälfte
des Blocks und in der zweiten Stellung des Umschalters
die zweite Hälfte des Blocks auf die Leitung des
Busses (B) geführt werden.
6. Asynchrones Zeitvielfachübermittlungssystem nach einem
der vorhergehenden Ansprüche, dadurch gekennzeichnet,
daß die Anzahl der Leitungen des Busses (B) zur Anzahl der Bits des Blockes in einem geradzahligen Verhältnis steht und
daß mit jeder Leitung des Busses (B) ein Umschalter ver bunden ist, welcher in Abhängigkeit vom Bustakt (BT) umge schaltet wird, und
daß die Anzahl der Schaltstellungen dem geradzahligen Ver hältnis entspricht.
daß die Anzahl der Leitungen des Busses (B) zur Anzahl der Bits des Blockes in einem geradzahligen Verhältnis steht und
daß mit jeder Leitung des Busses (B) ein Umschalter ver bunden ist, welcher in Abhängigkeit vom Bustakt (BT) umge schaltet wird, und
daß die Anzahl der Schaltstellungen dem geradzahligen Ver hältnis entspricht.
7. Asynchrones Zeitvielfachübermittlungssystem nach einem
der vorhergehenden Ansprüche, dadurch gekennzeichnet,
daß der mit dem Bus (B) verbundene Puffer einen Ausgangs
puffer (AP) und einen mit diesem verbundenen Wartepuffer
(WP) aufweist,
daß der Wartepuffer (WP) zu Register (R) zusammengefaßte Flip-Flops enthält,
daß 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,
daß, falls der Block für eine Ausgangsleitung (AL) be stimmt ist, ein Registerzähler inkrementiert und gesteuert wird, durch diesen der Block im entsprechenden Register (R) abgespeichert wird und
daß mit dem Wartepuffer (WP) ein Ausgangsschieberegister (ASR) verbunden ist.
daß der Wartepuffer (WP) zu Register (R) zusammengefaßte Flip-Flops enthält,
daß 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,
daß, falls der Block für eine Ausgangsleitung (AL) be stimmt ist, ein Registerzähler inkrementiert und gesteuert wird, durch diesen der Block im entsprechenden Register (R) abgespeichert wird und
daß mit dem Wartepuffer (WP) ein Ausgangsschieberegister (ASR) verbunden ist.
8. Asynchrones Zeitvielfachübermittlungssystem nach An
spruch 7, 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.
daß das Steuersignal der Entscheidungslogik (ESL) auf den Takteingang des taktpegelgesteuerten D-Flip-Flops (FF) gelegt wird.
9. Asynchrones Zeitvielfachübermittlungssystem nach An
spruch 8, dadurch gekennzeichnet,
daß das taktpegelgesteuerte D-Flip-Flop (FF) drei parallel
zueinander angeordnete NAND-Gatter (N1, N2, N3) aufweist,
deren Ausgänge jeweils mit einem Eingang eines NAND-Gatters
(N4) verbunden sind,
daß der erste Eingang des ersten NAND-Gatters (N1) und ein Inverter (I1) mit der Entscheidungslogik (ESL) verbunden sind,
daß der erste Eingang des dritten NAND-Gatters (N3) mit dem Ausgang des Inverters (I1) verbunden ist, daß dem ersten Eingang des zweiten NAND-Gatters (N2) die Bits des Blocks zugeführt werden und
daß der Ausgang des vierten NAND-Gatters (N4) sowohl mit den zweiten Eingängen des zweiten und dritten NAND-Gatters (N2, N3) als auch mit dem ersten Eingang des Flip-Flops des Registers (RK+1) höherer Registernummer verbunden ist.
daß der erste Eingang des ersten NAND-Gatters (N1) und ein Inverter (I1) mit der Entscheidungslogik (ESL) verbunden sind,
daß der erste Eingang des dritten NAND-Gatters (N3) mit dem Ausgang des Inverters (I1) verbunden ist, daß dem ersten Eingang des zweiten NAND-Gatters (N2) die Bits des Blocks zugeführt werden und
daß der Ausgang des vierten NAND-Gatters (N4) sowohl mit den zweiten Eingängen des zweiten und dritten NAND-Gatters (N2, N3) als auch mit dem ersten Eingang des Flip-Flops des Registers (RK+1) höherer Registernummer verbunden ist.
10. Asynchrones Zeitvielfachübermittlungssystem nach einem
der Ansprüche 7 bis 9, dadurch gekennzeichnet,
daß die Entscheidungslogik (ESL) aus einer der Anzahl von
Registern (R) entsprechenden Anzahl gleicher Entscheidungs
logikteile (ESLT) aufgebaut ist,
daß jedes Entscheidungslogikteil (ESLT) ein D-Flip-Flop (DF) enthält, an dessen Q-Ausgang die Information abgreifbar ist, ob sich 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 (N5, N6) als auch über einen Inverter (I2) mit dem ersten Eingang eines dritten NAND-Gatter (N7) verbunden ist,
daß mit dem zweiten Eingang des dritten NAND-Gatters (N7) bzw. über einen weiteren Inverter (I3) mit dem zweiten Eingang des ersten NAND-Gatters (N5) das D-Flip-Flop des Entscheidungslogikteils (ESLT) mit höherer Nummer verbunden ist,
daß am zweiten Eingang des zweiten NAND-Gatters (N6) das D-Flip-Flop (DF) des Entscheidungslogikteils (ESLT) mit niedrigerer Nummer anliegt,
daß die Ausgänge des zweiten und dritten NAND-Gatters (N6, N7) jeweils mit dem Eingang eines vierten NAND- Gatters (N8) verbunden sind, dessen Ausgang am D-Eingang des D-Flip-Flops (DF) anliegt,
daß dem dritten Eingang des ersten NAND-Gatters (N5) und dem Takteingang des D-Flip-Flops (DF) der Bustakt (BT) zugeführt wird und daß am Ausgang des ersten NAND-Gatters (N5) die Steuerinformation für die Flip-Flops des Registers (R) abgreifbar ist.
daß jedes Entscheidungslogikteil (ESLT) ein D-Flip-Flop (DF) enthält, an dessen Q-Ausgang die Information abgreifbar ist, ob sich 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 (N5, N6) als auch über einen Inverter (I2) mit dem ersten Eingang eines dritten NAND-Gatter (N7) verbunden ist,
daß mit dem zweiten Eingang des dritten NAND-Gatters (N7) bzw. über einen weiteren Inverter (I3) mit dem zweiten Eingang des ersten NAND-Gatters (N5) das D-Flip-Flop des Entscheidungslogikteils (ESLT) mit höherer Nummer verbunden ist,
daß am zweiten Eingang des zweiten NAND-Gatters (N6) das D-Flip-Flop (DF) des Entscheidungslogikteils (ESLT) mit niedrigerer Nummer anliegt,
daß die Ausgänge des zweiten und dritten NAND-Gatters (N6, N7) jeweils mit dem Eingang eines vierten NAND- Gatters (N8) verbunden sind, dessen Ausgang am D-Eingang des D-Flip-Flops (DF) anliegt,
daß dem dritten Eingang des ersten NAND-Gatters (N5) und dem Takteingang des D-Flip-Flops (DF) der Bustakt (BT) zugeführt wird und daß am Ausgang des ersten NAND-Gatters (N5) die Steuerinformation für die Flip-Flops des Registers (R) abgreifbar ist.
11. Asynchrones Zeitvielfachübermittlungssystem nach einem
der vorhergehenden Ansprüche, dadurch gekennzeichnet,
daß mittels eines Multiplexers (M) die über die Eingangs
leitungen (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ührt 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 DE3735187A1 (de) | 1989-04-27 |
DE3735187C2 true 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) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3979733A (en) * | 1975-05-09 | 1976-09-07 | Bell Telephone Laboratories, Incorporated | Digital data communications system packet switch |
FR2572871B1 (fr) * | 1984-11-08 | 1987-01-23 | Labo Cent Telecommunicat | Commutateur de paquets asynchrone |
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
Also Published As
Publication number | Publication date |
---|---|
DE3735187A1 (de) | 1989-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3788606T2 (de) | Anordnung zur Überwachung von Steuerinformation für ein Vermittlungssystem mit verteilter Steuerung. | |
DE3788605T2 (de) | Paketvermittlung. | |
DE3586280T2 (de) | Gesteuertes sternnetz. | |
DE3587092T2 (de) | Kommunikationssystem. | |
DE68926650T2 (de) | Hochgeschwindigkeitspaketvermittlungsknotenentwurf | |
DE3533845C2 (de) | Weglenkende Paket-Vermittlungsanlage mit Mehrfachwegen | |
DE60113058T2 (de) | Empfänger korrigiert | |
DE68926651T2 (de) | Zeitmultiplexkoppelnetz | |
DE60119068T2 (de) | Warteschlangen-resynchronisation: synchrone aktualisierung eines verteilten vermittlungssystems in echtzeit | |
DE3787600T2 (de) | Koppelpunktschaltung für Datenpaketraumvermittlung. | |
DE2503111B2 (de) | Verfahren und schaltungsanordnung zur zeitmultiplexen uebertragung von nutzinformationen aus voneinander unabhaengigen quellen | |
DE69115548T2 (de) | Zeitmultiplex-Vermittlungssystem mit hoher Geschwindigkeit | |
DE2165667B2 (de) | Zeitmultiplex-Übertragungseinrichtung | |
DE3702614A1 (de) | Digitales koppelnetz fuer leitungs- und paketvermittlung und koppeleinrichtung hierzu | |
EP0351014B1 (de) | Koppelfeld für ein Vermittlungssystem | |
DE602004006573T2 (de) | Erzeugen eines schmalbandigen Kanals innerhalb einer breitbandigen Paketübertragung | |
DE19531749A1 (de) | Verkehrsgestaltungseinrichtung und Paket-Kommunikationsgerät | |
EP0329005B1 (de) | Verfahren zum Einrichten von über Koppelvielfache einer mehrstufigen Koppelanordnung verlaufenden virtuellen Verbindungen | |
DE3587336T2 (de) | Ringuebertragungssystem mit variabler verbindungsreihenfolge der stationen. | |
DE69022942T2 (de) | Schrittablauf innerhalb eines Knotens für ein schnelles Netzwerk. | |
DE69219390T2 (de) | ATM-Zellenvermittlungssystem | |
DE4416719C2 (de) | Schaltungsanordnung zum störungsfreien Umleiten eines Nachrichtenzellenstromes auf einen Ersatzweg | |
DE4416720C1 (de) | Verfahren und Schaltungsanordnung zum Synchronisieren von redundant übertragenen Nachrichtenzellenströmen | |
EP0692893B1 (de) | Vorrichtung zur Vermittlung in digitalen Datennetzen für asynchronen Transfermodus | |
DE60118385T2 (de) | Verfahren und vorrichtung zur übertragung von paketen in einem speicher |
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 |