-
HINTERGRUND DER ERFINDUNG
-
1. Gebiet der Erfindung
-
×Die vorliegende
Erfindung betrifft eine Vorrichtung zum Verknüpfen von mindestens zwei Datensignalen
mit einer Eingangsdatenrate zu einem einzigen Datenstrom mit einer
Ausgangsdatenrate, die höher
als die Eingangsdatenrate ist, für
die Übertragung
auf einem gemeinsamen Medium, oder umgekehrt. Insbesondere betrifft
die vorliegende Erfindung einen einzelnen SDH/SONET-Rahmenanpasser,
der einen großen
Bereich von SDH/SONET-Rahmen von STM-i bis STM-j mit einer Gesamtkapazität verarbeiten
kann, die einem STM-j-Rahmen entspricht, wobei i und j gemäß der STM-N-Definition
der Standards SDH/SONET ganze Zahlen im Bereich von 1 bis 64 sind.
Außerdem
kann die vorliegende Erfindung dahingehend erweitert werden, dass
sie mit STS-1 als unterstem Bereich arbeitet. STS-1 gibt es nicht
in SDH, sondern nur in SONST, es entspricht einer Datenrate von
51,84 Mbit/s, also einem Drittel der STM-1-Datenrate von 156 Mbit/s.
-
2. Beschreibung
der zugrunde liegenden Technik
-
Das
American National Standards Institute hat einen neuen Basisstandard
für die
Hochgeschwindigkeitsübertragung
von gemultiplexten digitalen Daten eingeführt, den Standard „synchrones
optisches Netzwerk",
der im Folgenden als SONET bezeichnet wird. Der SONET-Standard legt
optische Schnittstellen, Datenraten, Arbeitsprozeduren und Rahmenstrukturen
für die Übertragung
von gemultiplexten digitalen Daten über Lichtwellenleiternetze
fest.
-
Die
Internationale Fernmeldeunion (International Telecommunication Union,
ITU) hat die Schnittstellenfestlegungen von SONET übernommen
und für
die Hochgeschwindigkeitsübertragung
von digitalen Daten einen neuen globalen Übertragungsstandard empfohlen.
Dieser Standard wird als „synchrone
digitale Hierarchie" (Synchronous
Digital Hierarchy, SDH) bezeichnet.
-
Eine
Beschreibung des SDH-Standards hinsichtlich der „General Aspects of Digital
Transmission Systems" (Allgemeine
Aspekte digitaler Übertragungssysteme)
kann den Dokumenten G.707 (Synchronous Digital Hierarchy Bit Rates),
G.708 (Network Node Interface for the Synchronous Digital Hierarchy),
G.709 (Synchronous Multiplexing Structure), G.782 (Types and General
Characteristics of Synchronous Digital Hierarchy (SDH) Equipment)
und G.783 (Characteristics of Synchronous Digital Hierarchy (SDH)
Equipment Functional Blocks) der ITU-Standards entnommen werden,
die sämtlich
im März
1993 erschienen sind.
-
Der
SDH-Standard wurde so gestaltet, dass Hersteller Telekommunikationsgeräte entwickeln
können, die:
a) austauschbar in allen auf der Erde nach diesem Standard gebauten
Fernmeldenetzen verwendet werden können und b) abwärts kompatibel
sind, d. h. mit Daten der in Nordamerika, Europa und Japan gebräuchlichen älteren Datenübertragungsformate
genutzt werden können.
-
Dies
wird durch eine Hierarchie so genannter „Container" (C) und „Virtueller Container" (VC) erreicht (siehe 1).
Die Container, z. B. C-4, C-3, C-12 usw. stellen Datenstrukturen
dar, mit denen Datenverkehr mit bestimmten Übertragungsraten abgewickelt
werden kann. Der Container C-4 befördert Datenverkehr mit einer
Basisrate von bis zu 139 264 kbit/s, C-3 befördert Datenverkehr mit bis
zu 44 736 oder 34 368 kbit/s usw. Die Container werden durch Hinzufügen von
Informationen zum Systemaufwand für den Pfad (Path Overhead Information,
POH) zu virtuellen Containern. Durch solche Prozeduren wie Multiplexen,
Zuordnen oder Ausrichten werden Datenstrukturen erzeugt, die für die SDH
maßgebend
sind. Diese Datenstrukturen werden als „Gruppen von Verwaltungseinheiten" (Administrative
Unit Group, AUG) und „Synchrones
Transportmodul" (Synchronous
Transport Module, STM) bezeichnet. Die Bezeichnung eines STM zeigt
an, wie viele AUGs es enthält:
ein STM-4 enthält
zum Beispiel vier AUGs. Eine AUG enthält entweder eine „Verwaltungseinheit" (Administration
Unit, AU) vom Typ 4 oder drei AU-3. Im einfachsten Fall enthält eine
AU-4 wiederum ein Signal C-4 und eine AU-3 ein Signal C-3.
-
Die
SDH/SONET-Datenrahmen, d. h. die Signale STM-N, haben eine Länge von
125 μs.
Der Umfang der in jedem Rahmen übertragenen
Daten hängt
von der Hierarchieebene N des Signals ab.
-
Die
höheren
Hierarchieebenen werden mit höheren
Datenraten übertragen
als die Basisebene STM-1 mit etwa 155 Mbit/s. (Die genaue Übertragungsrate
beträgt
laut Definition 155,52 Mbit/s. Die Übertragungsraten werden jedoch
hier und im Folgenden oft mit ihren Näherungswerten angegeben. Dies
ist darauf zurückzuführen, dass
die genauen Datenübertragungsraten
durch Systemdatenverkehr und Auffüllen mit Leerlaufzellen verfälscht werden.)
Die ganze Zahl N zeigt an, wie viel schneller als auf der Ebene
STM-1 die Daten übertragen
werden.
-
Die
Bezeichnung STM-4 beispielsweise zeigt eine Datenübertragungsrate
von 622 Mbit/s an, wobei jeder Datenrahmen viermal so viele Bytes
enthält
wie ein Rahmen von STM-1. Die höchste
gegenwärtig
definierte SDH/SONET-Ebene ist STM-256/STS-768 mit einer Datenrate
von 39,81312 Gbit/s. Zwar wird jeder Teil des Signals STM-N innerhalb
derselben Zeit übertragen
wie der entsprechende Teil eines Signals STM-1, jedoch enthält er N
mal so viele Bytes.
-
Das
in 2 gezeigte Signal STM-1 enthält ein Datenrechteck von 9
Zeilen mit 270 Byte/Zeile, was einer SDH/SONET-Datenrate von 155,52
Mbit/s entspricht. Die ersten 9 Byte/Zeile stellen die Information „Abschnittsaufwand" (Section Overhead,
SOH) dar. Die restlichen 261 Byte/Zeile sind für die VCs reserviert, wobei in 1 ein
VC-4 dargestellt ist. Die erste Spalte eines virtuellen Containers
VC-4 besteht aus der Information „Pfadsystemaufwand" (Path Overhead,
POH). Der Rest wird durch die Nutzdaten (ein Signal C-4) belegt.
Mehrere VCs können
miteinander verkettet werden, um einen einzigen Übertragungskanal mit einer
entsprechenden Bandbreite zu schaffen. Zum Beispiel können vier
VC-4 in einem Signal STM-4 miteinander verkettet werden, sodass
sie einen einzigen Datenkanal mit einer Kapazität von etwa 600 Mbit/s bilden:
in diesem Fall werden die vier VCs gemäß der Standardterminologie
als VC-4-4c und das Signal als STM-4c bezeichnet.
-
Diese
Flexibilität
des SDH-Standards ist zum Teil auf das Zeigerkonzept zurückzuführen. Bei
der SDH sind die Rahmen zwar synchronisiert, die darin befindlichen
VCs sind jedoch nicht fest mit den Rahmen gekoppelt. Die einzelnen
Container der SDH-Signale
brauchen also nicht an die Rahmen angepasst oder untereinander synchronisiert
zu sein. Ein „Zeiger" ist im Abschnittsaufwand
vorhanden und zeigt die Position der oben eingeführten POH an, d. h. den Anfang
eines virtuellen Containers im SDH-Rahmen. Die POH kann somit flexibel
an einer beliebigen Position im Rahmen angeordnet werden.
-
Das
Multiplexen von Daten zu SDH-Rahmen höherer Ordnung wird einfacher
als bei den alten Datenstandards, und bei der SDH sind keine aufwendigen
Synchronisierungspuffer erforderlich.
-
Desgleichen
können
Signale niedrigerer Ordnung in SHD-Signale höherer Ordnung eingefügt und aus diesen
extrahiert werden, ohne die gesamte Signalhierarchie demultiplexen
zu müssen.
Die Zeiger sind in der vierten Zeile der Information Abschnittsaufwand
gespeichert.
-
Die
Information Abschnittsaufwand ist weiter unterteilt in: 1. Die Information „Regenerator-Abschnittsaufwand" (Regenerator Section
Overhead, RSOH). Diese Information enthält Datenbytes, die von den
Verstärkerstationen
entlang der Übertragungsstrecke
des SDH/SONET-Signals benutzt werden.
-
Die
Information Regenerator-Abschnittsaufwand belegt die Zeilen 1 bis
3 der Information Abschnittsaufwand.
-
2.
Die Information „Multiplexer-Abschnittsaufwand" (Multiplexer Section
Overhead, MSOH). Diese Information enthält Datenbytes, die von den
Multiplexern entlang der Übertragungsstrecke
des SDH/SONET-Signals benutzt werden. Die Information Multiplexer-Abschnittsaufwand
belegt in der Information Abschnittsaufwand die Zeilen 5 bis 9.
Diese Abschnitte werden in den verschiedenen Stadien des Übertragungsprozesses zusammengefügt und getrennt. 2 zeigt
auch eine Explosionsdarstellung der Information MSOH.
-
Im
SONET-System wird ein Basissignal von 51,84 Mbit/s verwendet. Dieses
Signal wird als synchrones Transportsignal Ebene 1 und im Folgenden
als STS-1 bezeichnet. Dieses Signal weist ein Datenrechteck von
9 Zeilen mit 90 Byte/Zeile auf. Die ersten drei Byte/Zeile stellen
die Information Abschnittsaufwand und die restlichen 87 Byte/Zeile
dem „synchronen
Nutzdatenmantel" (Synchronous
Payload Envelope, SPE) dar.
-
Drei
dieser SPEs passen genau in einen virtuellen Container VC-4. Somit
können
Signale im Signalformat STS-1 in einen Rahmen STM-1 eingepasst werden.
Außerdem
können
an den Rahmen angepasste Signale STS-1 oder STM-1 in STM-N-Rahmen
höherer
Ordnung gemultiplext werden.
-
Allgemein
wird jedes Signal mit einer niedrigeren Datenrate, das mit anderen
derartigen Signalen zu neuen Datenrahmen mit einer höheren Datenrate
verknüpft
wird, als „Nebensignal" bezeichnet. Im vorangehenden
Absatz beispielsweise sind die drei zu einem Signal STM-1 verknüpften Signale
STS-1 Nebensignale.
-
Die
Funktionalität
digitale Querverbindung (Digital Cross-Connect, DCC) gestattet die Änderung
der zeitlichen (im Falle eines seriellen Signals mit hoher Datenrate)
oder räumlichen
(im Falle eines gedemultiplexten Signals mit hoher Datenrate) Ordnung
der Signale oder Nebensignale mit niedriger Datenrate innerhalb des
Signals mit hoher Datenrate.
-
Die
Funktionalität
Add/Drop (Hinzufügen/Löschen) gestattet
das Entnehmen und/oder Ersetzen eines oder mehrerer Nebensignale
aus dem Signal mit hoher Datenrate. Dies ist auch als Funktionalität Löschen/Einfügen bekannt.
-
Aus
der Patentschrift WO 98/26531 sind eine digitale Querverbindung
und eine Multiplexereinheit zum Hinzufügen/Löschen von SDH- oder SONET-Signalen
bekannt. In der Vorrichtung sind vier Module zum Senden und vier
Module zum Empfangen von SDH/SONET-Datenverkehr zu einem integrierten
STM-4-Chip vereint,
da die vier Module jeweils ein Signal STM-1 ausgeben. Wenn vier
dieser STM-4-Chips parallel arbeiten, können sie ein Signal STM-16
verarbeiten. Jeder der vier STM-4-Chips ist über vier externe Schnittstellen
mit einer Multiplexer-/Demultiplexereinheit verbunden. Jede dieser
externen Schnittstellen wird durch eines der Basismodule auf dem
jeweiligen Chip gesteuert. Die über
die Netzwerkleitungen übertragenen
SDH/SONET-Signale werden aus der Multiplexer-/Demultiplexereinheit
und in sie hinein geleitet. Über
vier interne Schnittstellen jedes STM-4-Chips laufen Datensignale,
die aus den SDH/SONET-Rahmen extrahiert wurden oder in sie eingefügt werden
sollen. Je nachdem, wie die internen Schnittstellen miteinander
verknüpft
sind, wird entweder die Funktion digitale Querverbindung oder die
lokale Funktion Hinzufügen/Löschen realisiert.
-
Herkersdorf
et al. beschreiben in „A
scalable SDH/SONET framer architecture for data com and telco applications", Broadband Communications
2000, Proceedings, 2000 International Zurich Seminar, Zürich, Schweiz,
15. bis 17. Februar 2000, Piscataway, New Jersey, USA, IEEE, USA,
15. Februar 2000, S. 191 bis 198, eine skalierbare SDH/SONET-Rahmenanpassungsarchitektur
für Datenübertragungs-
und Telekommunikationsanwendungen. Ein generischer Baustein führt die
Funktionen SDH-Rahmenanpassung und Nutzdatenverarbeitung für ATM-,
IP- und TDM-Datenströme
mit der STM-1-Datenrate aus. STM-Nc wird durch N identische Blöcke unterstützt, die
parallel betrieben werden. Als wesentlicher Vorteil dieses Ansatzes
gilt die Tatsache, dass der STM-Nc-Rahmenanpasser auch so konfiguriert
werden kann, dass er echte STM-N-Signale und N-mal STM-1-Signale
unterstützt.
Das ist bei anderen verfügbaren
Rahmenanpassern offensichtlich nicht der Fall, welche Einkanalkonfigurationen
nur für
Signale STM-1, STM-4c und STM-16c unterstützen. Gemäß einer. Ausführungsart
werden in vier STM-1-Blöcken
vier voneinander unabhängige
Nutzdatenströme
verarbeitet und im Multiplexer MUX byteweise verschachtelt, sodass
sie einen STM-4-Rahmen bilden.
-
AUFGABE DER ERFINDUNG
-
Auf
dieser Grundlage besteht die Aufgabe der vorliegenden Erfindung
darin, ein Verfahren und eine Vorrichtung zum effizienten Verknüpfen von
mindestens zwei Datensignalen mit einer Eingangsdatenrate zu einem
einzigen Datenstrom mit einer Ausgangsdatenrate, die höher als
die Eingangsdatenrate ist, für
die Übertragung
auf einem gemeinsamen Medium, oder umgekehrt.
-
KURZÜBERBLICK ÜBER DIE
ERFINDUNG
-
Die
obige Aufgabe wird durch ein Verfahren und ein System gelöst, die
in den Hauptansprüchen
dargelegt sind. Weitere vorteilhafte Ausführungsarten der vorliegenden
Erfindung sind in den Unteransprüchen beschrieben
und werden in der folgenden Beschreibung dargelegt.
-
Gemäß der vorliegenden
Erfindung werden ein Verfahren und eine Vorrichtung zum Verknüpfen von mindestens
zwei Datensignalen mit einer Eingangsdatenrate zu einem einzigen
Datenstrom mit einer Ausgangsdatenrate beschrieben, die höher als
die Eingangsdatenrate ist, für
die Übertragung
auf einem gemeinsamen Medium, oder umgekehrt. Die Vorrichtung gemäß der vorliegenden
Erfindung umfasst mindestens zwei Ports zum Empfangen und/oder Senden
der mindestens zwei Datensignale, eine Portabfrageeinheit zum Extrahieren
von Daten aus den durch die Ports empfangenen Datensignalen und/oder
zum Erzeugen von über die
Ports zu übertragenden
Daten, eine mit der Portabfrageeinheit verbundene Steuerlogikeinheit
und einen Datenbus mit fester Breite, wobei die Portabfrageeinheit
so konfiguriert ist, dass sie Daten von Ports extrahiert, die Datenströme mit mindestens
zwei unterschiedlichen Eingangsdatenraten liefern, und/oder über die
Ports zu übertragende
Daten aus Datenströmen
mit mindestens zwei unterschiedlichen Datenraten erzeugt, und wobei
die Steuerlogikeinheit so konfiguriert ist, dass sie ermittelt,
welcher von mindestens zwei Ports bezüglich seiner Ein-/Ausgangsdatenrate
während
welchem Taktzyklus bearbeitet werden muss. Ferner wird der Datenbus
mit fester Breite durch einen einzigen Systemtakt getaktet und umfasst
die Vorrichtung für
jeden Rahmenport verschiedene Speicherblöcke.
-
Die
Merkmale der vorliegenden Erfindung werden zuerst für die Empfangsseite
der Vorrichtung beschrieben. Die Vorrichtung gemäß der vorliegenden Erfindung
kann vorteilhaft als SDH/SONET-Rahmenanpasser
verwendet werden. Daten von einer Anzahl von Ports werden, wie oben
erwähnt,
gemäß dem SDH/SONET-Standard
so gemultiplext, dass bei jedem Zyklus des Systemtaktes eine bestimmte
Anzahl von m Bytes, die einer fest vorgegebenen Datenpfadbreite
m des Systems entsprechen und einem bestimmten Port zugehören, auf
einen Datenpfad geleitet werden, auf dem einzelne Logikeinheiten
die Verarbeitungsschritte für
diese Daten gemäß dem SDH/SONET-Standard
ausführen.
-
Diese
Verarbeitungsschritte betreffen die Rahmen/Byte-Ausrichtung, die Neuordnung von Rahmen, die
Verarbeitung des Abschnittsaufwands, die Zeigerverarbeitung, die
Verarbeitung des Pfad-Systemaufwands und die Verarbeitung der Nutzdaten.
Dabei trennt die Vorrichtung gemäß der vorliegenden
Erfindung Daten und Funktion in der Weise, dass z. B. eine einzelne
Abschnittsaufwands-Verarbeitungseinheit während eines Taktzyklus Daten
von einem STM-N-Rahmen verarbeitet, alle Zwischenergebnisse und
Statusinformationen in einem zu diesem Rahmen gehörenden Speicherblock
speichert und während
des nächsten
Taktzyklus in derselben Weise Daten von einem STM-J-Rahmen verarbeitet,
wobei N und J SONET-Ebenen darstellen. Da die Ports über unterschiedliche
Datenraten verfügen,
zum Beispiel durch STM-1-, STM-4-, STM-16-, STM-64- und STM-256-Rahmen, wird eine
hohe Flexibilität
erreicht. Dadurch kann jeder Port an seiner Empfangsseite einen
anderen Takt haben (der seiner Datenrate entspricht), während der
Datenbus mit der Breite m Byte durch einen einzigen Systemtakt getaktet
wird.
-
Auf
der Sendeseite einer Vorrichtung gemäß der vorliegenden Erfindung
werden dieselben Operationen in umgekehrter Reihenfolge durchgeführt, wobei
ebenfalls Funktion und Daten mit Hilfe einer Reihe von Speicherblöcken voneinander
getrennt werden.
-
Alle
möglichen
SDH/SONET-Nutzdaten, z. B. ATM-Zellen, PPP-Pakete (Punkt-zu-Punkt-Protokoll), Ethernet-Rahmen
usw. können
auf vorteilhafte Weise durch Zuordnen zu entsprechenden virtuellen
Containern und STM-N-Rahmen mit virtuellen Containern und durch
den bei jedem Taktzyklus möglichen
Wechsel der Rahmen verarbeitet werden, wodurch die Rahmen verwürfelt und
an den entsprechenden Ausgängen
ausgegeben werden. In dieser Richtung ist die Rahmen/Byte-Ausrichtung
nicht erforderlich, sodass die entsprechende Einheit umgangen wird.
-
Ein
weiterer Vorteil besteht darin, dass für einen so großen Umfang
von Rahmen nur eine einzige Vorrichtung benötigt wird. Außerdem kann
diese zusammen mit einem Netzwerkprozessor integriert werden oder unter
anderen Umständen
arbeiten, bei denen mit komplexen Konfigurationen von SDH/SONET-Verbindungen
zu rechnen ist. Ein Netzwerkprozessor ist normalerweise so ausgelegt,
dass er mit vielen unterschiedlichen Konfigurationen arbeiten kann,
was auf dem Gebiet der Weitverkehrsnetze auch umfangreiche Konfigurationen
von SDH/SONET-Rahmen beinhaltet.
-
Eine
bevorzugte Ausführungsart
der Vorrichtung gemäß der vorliegenden
Erfindung ist ein Rahmenanpasser für STM-1- bis STM-64-Rahmen,
welcher Rahmen von STM-1 (entsprechend der SONET-Bezeichnung STS-3) bis STM-64 (entsprechend
der SONET-Bezeichnung
STS-192) mit einer Gesamtkapazität verarbeitet,
die einem STM-64-Rahmen entspricht. Daraus folgt, dass die folgenden
Rahmenkonfigurationen verarbeitet werden können:
- 1.
1 × STM-64
- 2. 4 × STM-16
- 3. 3 × STM-16
plus
a. 4 × STM-4
b.
3 × STM-4
plus 4 × STM-1
c.
2 × STM-4
plus 8 × STM-1
d.
1 × STM-4
plus 12 × STM-1
- 4. 2 × STM-16
plus
a. 8 × STM-4
b.
...
- 5. 1 × STM-16
plus
a. 12 × STM-4
b.
...
- 6. 16 × STM-4
- 7. 15 × STM-4
plus 4 × STM-1
- 8. 14 × STM-4
plus 8 × STM-1
- 9. ...
...
- 22. 1 × STM-4
plus 60 × STM-1
-
Innerhalb
eines Rahmens sind alle geeigneten Konfigurationen von virtuellen
SDH-Containern möglich:
STM-64:
64 VC-4 oder 16 VC-4-4c oder 4 VC-4-16c oder 1 VC-4-64c
STM-16:
16 VC-4 oder 4 VC-4-4c oder 1 VC-4-16c
STM-4: 4 VC-4 oder 1
VC-4-4c
STM-1: 1 VC-4
-
Die
vorliegende Erfindung löst
die Probleme der Konfigurierbarkeit und des Platzbedarfs durch Multiplexen
der SDH/SONET-Daten von Rahmen mit Datenraten kleiner als STM-64
auf einen 9 Byte breiten Datenpfad, der mit der Taktrate des STM-64
getaktet wird. Die Systemsteuerlogik hat Kenntnis von der Portkonfiguration
und davon, von welchem Port die Daten stammen, die innerhalb welchem
Taktzyklus verarbeitet werden. Dies kann entweder dadurch erreicht
werden, dass die Portkonfiguration in einer zentralen Registerdatenbank
gespeichert wird und die Daten dementsprechend verarbeitet werden
oder indem die Daten um ein zusätzliches
Byte erweitert werden, welches die codierte Portnummer darstellt,
und diese Portnummer in allen Verarbeitungseinheiten als Kennung
verwendet wird. Ein Byte reicht aus für die Bearbeitung von bis zu
64 Ports.
-
Die
Vorrichtung gemäß der vorliegenden
Erfindung arbeitet je nach Funktion der entsprechenden Einheit mit
verschiedenen Speicherblöcken
für die
einzelnen Rahmenports oder virtuellen Container VC-4-xc. Die Speicherblöcke speichern
alle Daten, die zur Verarbeitung der Daten für den entsprechenden Port oder VC-4-xc erforderlich
sind.
-
Für den Datenpfad
des Rahmenanpassers gemäß der vorliegenden
Erfindung wird vorzugsweise eine Breite von 9 Bytes gewählt, da
3 Bytes und 9 Bytes diejenigen Breiten des Datenpfads darstellen,
die zur Länge
aller SDH/SONET-Rahmen von STM-1 bis STM-64 passen. Eine Breite
des Datenpfads von 3 Bytes ist aber auch möglich, jedoch wird hierfür eine höhere Verarbeitungsgeschwindigkeit
benötigt.
Bei einer Breite des Datenpfads von 3 Bytes wird der Bereich des
Rahmenanpassers gemäß der vorliegenden
Erfindung von STM-1/STM-64 auf STS-1/STM-64 erweitert (die Datenrate von STS-1
beträgt
ein Drittel der Datenrate von STM-1).
-
Ein
Rahmenanpasser gemäß der vorliegenden
Erfindung kann z. B. 64 STM-1- oder 16 STM-4-Eingangsports auf seiner
Empfangsseite verwenden, die als serielle Datenverbindung zuzüglich des
Taktsignals realisiert ist. Die 16 STM-4-Ports können aus der Anzahl der 64
STM-1-Ports ausgewählt
werden und wieder dieselben Kontaktstifte belegen. Außerdem kann
es für
STM-64-Rahmen 4 STM-16-Ports
mit z. B. 8 Bit breiten parallelen Schnittstellen zuzüglich einer
einzelnen 16 Bit breiten Schnittstelle geben.
-
Natürlich kann
jede beliebige Verteilung der Ports zwischen STM-1, STM-4 und STM-16 mit einer dem STM-64
entsprechenden Gesamtdatenrate oder auch die alleinige Nutzung eines
STM-64-Rahmens von
Vorteil sein. Nach den Ports schließt sich als erste Einheit eine
Puffereinheit an, um die Daten so zu ordnen, dass während jedes
Systemtaktzyklus 9 Datenbytes von einem einzelnen Port zur Verfügung stehen.
-
Eine
mögliche
Ausführungsform
besteht darin, dass die STM-1- und STM-4-Empfangsports für jeden der
Ports über
1:72-Demultiplexer und einen nachfolgenden kleinen FIFO-Puffer,
die STM-16-Empfangsports über 8:72-Demultiplexer
und einen nachfolgenden kleinen FIFO-Puffer und der STM-64-Port über einen 16:72-Demultiplexer und
einen nachfolgenden kleinen FIFO-Puffer verfügen. Auf der Seite des Rahmenanpassers
arbeiten die FIFOs für
alle Ports mit derselben Datenrate mit einem einzigen Takt. Auch
eine Kombination von Ports mit unterschiedlichen Datenraten ist
möglich,
indem entweder die zu den Ports mit hoher Datenrate gehörenden FIFOs
mit einem entsprechenden Vielfachen der Taktrate der Ports mit niedrigerer
Taktrate betrieben und die Daten aus diesen Puffern mit höherer Datenrate öfter extrahiert
werden als aus den Puffern mit niedrigerer Datenrate oder indem
auf der Seite des Rahmenanpassers eine einzige Pufferanordnung und
ein einziger Systemtakt verwendet und der Platz von 4 Puffern für STM-1-Ports
für 1 Puffer
für einen
STM-4-Port, der Platz von 16 Puffern für STM-1-Ports für 1 Puffer
für einen
STM-16-Port und
der Platz von allen 64 Puffern für
STM-1-Ports für
den Puffer für
einen STM-64-Port genutzt wird. Diese Ausführungsart benötigt jedoch
einen größeren FIFO-Puffer.
-
Eine
andere Ausführungsart
besteht in der Verwendung eines zentralen Puffers, zum Beispiel
eines 9×64
Byte-Puffers, in den mit einer einzigen Taktrate Daten von allen
Ports geschrieben werden, indem zuerst Daten von einem STM-1-Port
im Verhältnis
1:8 (1 Bit zu 1 Byte), Daten von einem STM-4-Port im Verhältnis 1:32
(4 Byte) sowie Daten von einem STM-16-Port im Verhältnis 1:128
(16 Byte) gedemultiplext und diese Daten so in den zentralen Puffer
geschrieben werden, dass 9 Bytes (= 72 Bit) zu einem STM-1-Port,
4 × 9
= 36 Bytes zu einem STM-4-Port und 16 × 9 = 144 Bytes zu einem STM-16-Port
gehören.
Bei Verwendung eines STM-64-Ports würde der gesamte Puffer benötigt oder
könnte
der Puffer direkt umgangen werden.
-
Gemäß einer
dritten Ausführungsart
der vorliegenden Erfindung werden die ankommenden Datenströme für jeden
Port auf eine Breite von 1 oder 2 Bytes umgesetzt. Anschließend werden
die Ports mit unterschiedlichen Wiederholfrequenzen abgesucht, um
die Daten in den zentralen Puffer zu schreiben. Dadurch würde die
Anzahl der Registerbits je Port außerhalb des zentralen Puffers
auf vorteilhafte Weise verringert.
-
Bei
einer vierten Ausführungsart
wird vor dem zentralen Puffer des Rahmenanpassers gemäß der oben
beschriebenen dritten Ausführungsart
eine Rahmen/Byte-Ausrichtungseinheit angeordnet. Demzufolge werden
Daten erst dann in den zentralen Puffer geschrieben, wenn zuvor
die Rahmen/Byte-Ausrichtung gefunden wurde. Dies hat den Vorteil,
dass kein zusätzlicher
Speicherplatz benötigt
wird, der ansonsten von der Rahmen/Byte-Ausrichtungseinheit in Anspruch genommen
würde.
Eine solche Rahmen/Byte-Ausrichtungseinheit kommt mit Datenblöcken zu
je 1 oder 2 Bytes aus und kann so den gesamten Pufferspeicherbedarf weiter
verringern. In allen diesen Anordnungen nutzt jeder STM-N-Port (N = 1...64)
N × 9
Bytes des Puffers, wobei diese 9 Bytes während eines Taktzyklus auf
den Datenpfad geschickt werden.
-
Die
nächsten
Verarbeitungsschritte für
ankommende Daten bestehen in der Rahmen/Byte-Ausrichtung (außer bei
der oben beschriebenen vierten Ausführungsart) und der Rahmenentwürfelung.
Da alle 9 Bytes eines einzigen Taktzyklus zum selben Empfangsport
gehören,
können
eine entsprechende Rahmen/Byte-Ausrichtungseinheit und eine Rahmenentwürfelungseinheit
im Datenmultiplexmodus betrieben werden. Die nächste Einheit wird von einer
Abschnittsaufwands-Verarbeitungseinheit
(SOH) gebildet. Vor der für die
Zeigerverarbeitung und die Pfad-Systemaufwandsverarbeitung zuständigen Verwaltungseinheitenroutine (AUH)
wird eine Datenneuordnungseinheit benötigt, sofern die Konfigurationen
der virtuellen Container nicht auf die maximal mögliche Verkettung innerhalb
des entsprechenden STM-N-Rahmens beschränkt sind. Für einen STM-64-Rahmen kommen
folgende Aufteilungen in Betracht:
- 1. 1 × VC-4-64c
- 2. 4 × VC-4-16c
- 3. 16 × VC-4-4c
- 4. 64 × VC-4
-
Für den Fall
64 × VC-4
waren die 64 VC-4 im STM-64-Rahmen mit dem zweiten Byte aus dem
ersten VC-4 byteweise verschachtelt, das 64 Bytes nach dem ersten
ankommt. In einem VC-4-4c sind vier Bytes der Nutzdaten in einem
einzelnen Container verkettet und die nächsten 4 Bytes desselben VC-4-4c
kommen wiederum nach 64 Bytes an. In einem VC-4-16c wurden 16 Bytes
mit den nächsten
16 Bytes aus demselben VC-4-16c verkettet, die ebenfalls nach 64
Bytes ankommen. Im Falle eines VC-4-64c sind die gesamten Nutzdaten
in einem einzelnen VC-4-64c verkettet.
-
Für einen
STM-16-Rahmen kommen folgende Aufteilungen in Betracht:
- 1. 1 × VC-4-16c
- 2. 4 × VC-4-4c
- 3. 16 × VC-4
-
Und
für einen
STM-4-Rahmen kommen folgende Aufteilungen in Betracht:
- 1. 1 × VC-4-4c
- 2. 4 × VC-4
-
Bei
einem STM-1-Rahmen gibt es nur einen einzelnen VC-4.
-
Die
Daten werden gemäß der vorliegenden
Erfindung so umgeordnet, dass die 9 Eingangsbytes für die AUH-Einheit
während
eines einzelnen Taktzyklus zu demselben VC-4 gehören. Hierfür sind eine Pufferstufe der
Größe 64 × 9 = 576
Bytes und eine entsprechende Pipeline der maximalen Größe von 64
Taktzyklen erforderlich, die den 64 Ports und der Breite des Datenpfades
von 9 Bytes entsprechen. (Allgemein gilt, dass ein Puffer der Größe m × N mit
einer Pipeline der maximalen Größe von N
Taktzyklen benötigt
wird, wenn die Gesamtdatenrate des Rahmenanpassers dem Rahmen STM-N
entspricht und die Breite des Datenpfades gleich m ist.) Eine solche
Auslegung verringert auf vorteilhafte Weise die Komplexität der entsprechenden AUH.
Angenommen, der Puffer wird als Puffer B(i, j) mit i = 1...9 und
j = 1...64 definiert und B (1:9, j) sind die zur AUH weitergeleiteten
Daten. Der Wert j entspricht einem bestimmten Eingangsport, wobei
jedem STM-4 4 Werte j, jedem STM-16 16 Werte j zugeordnet sind und
der STM-64 mit allen Werten j arbeitet, die zu Anfang bei der Portpufferanordnung
beschrieben wurden.
-
Da
die Verkettung in Vielfachen von 4 Bytes erfolgt, kommt es zu einer
Diskrepanz zur Breite des Datenpfades von 9 Byte, dies kann jedoch
innerhalb der Datenaufzeichnungseinheit verarbeitet werden. Spätere Verarbeitungsschritte
brauchen dieses Problem nicht mehr zu berücksichtigen. Der genaue Algorithmus
für die vollständige Datenaufzeichnung
hängt zwar
von der an den Ports gewählten
Pufferanordnung ab, jedoch ist diese bekannt und beschreibt lediglich,
in welcher Reihenfolge die Daten von verschiedenen Ports ankommen. Ein
wichtiger Punkt, der hier beschrieben werden muss, ist die Neuordnung
der Daten von einem Einzelport oder STM-N. Für jeden STM-N besteht die Datenanordnung
aus 9 Datenzeilen, wobei jede Zeile mit 9 × N SOH-Bytes beginnt, auf
die 29 × N
STM-N-Bytes Nutzdaten folgen.
-
Von
den SOH-Bytes sind nur die 9 × N
Zeigerbytes der vierten Zeile wichtig, denn alle anderen SOH-Bytes
sind bereits in den vorangehenden Einheiten verarbeitet worden und
für die
AUH und die Nutzdatenroutine ohne Bedeutung. Mit einem 9 Byte breiten
Datenpfad stellt die STM-N-Rahmenstruktur automatisch sicher, dass
es sich bei den je Taktzyklus ankommenden 9 Bytes entweder um SOH-Bytes
oder um Nutzdatenbytes handelt. Die beiden Datentypen sind nicht
miteinander vermischt. Dasselbe gilt für einen 3 Byte breiten Datenpfad.
Für die
Datenneuordnung sind nur die 9 × N
Zeigerbytes der vierten Zeile und die Nutzdatenbytes wichtig. Diese
Zeigerbytes (und alle anderen SOH-Bytes) werden im entsprechenden
Puffer gespeichert, als gäbe
es außer
der Verkettung der Nutzdatenbytes keine weitere Verkettung. Dies
ist möglich
durch die deutliche Trennung von SOH- und Nutzdatenbytes. Das Ergebnis
dieser Speicherung besteht darin, dass die Zeigerbytes für jeden
VC-4 in der Form
H1 Y Y H2 1* 1* H3 H3 H3
zur AUH-Einheit
weitergeleitet werden, wobei H1, H2 und H3 die Zeigerbytes, welche
den Zeigerwert darstellen, und Y und 1* die im SDH/SONET-Standard
definierten festen Auffüllbytes
sind. Im Falle der Verkettung ist nur der Wert des Zeigers des ersten
VC-4 real, während
die den folgenden verketteten VC-4 entsprechenden Werte die im Standard
definierte Verkettungsanzeige liefern.
-
Im
Falle eines STM-N-Rahmens gibt es N Werte j, die zu diesem Rahmen
gehören.
Diese Werte bilden einen Teilpuffer B1(i, j1) des Puffers B mit
i = 1:9 und j1 = 1:N. Ohne die VC-4-Verkettung gibt es N VC-4, und bei
der Neuordnung werden für
den Wert i = 1 für
diesen Rahmen einfach die ersten 9 Bytes des STM-N-Rahmens in die
ersten 9 j1-Werte geschrieben. Die nächsten 9 Bytes werden für diesen
Rahmen in die nächsten 9
j1-Werte geschrieben, wobei i auf den nächsthöheren Wert gesetzt wird, sobald
für einen
Wert i der Zustand j1 > N
eintritt. Nach N Zyklen werden die letzten 9 Bytes in die letzten
9 j1-Werte geschrieben. Dann werden alle zu diesem STM-N-Rahmen
gehörenden
N × 9
Bytes im N × 9
Puffer B1 gespeichert, sodass der zu diesem Rahmen gehörende Teilpuffer
B1(1:9, j1) mit j1 auch zu einem bestimmten VC-4 aus den N VC-4
gehört.
-
Im
Falle der Verkettung zum virtuellen Container VC-4-xc werden die
4x verketteten SDH-Nutzdatenbytes (nicht aber die SOH-Bytes) in
den Teilpuffer mit einem festen Wert j1 und steigendem i geschrieben
und wenn der Zustand i = 9 erreicht ist, bevor alle 4x Bytes geschrieben
wurden, wird der Wert j1 um 1 erhöht und der Wert i auf 1 zurückgesetzt
und die Schreiboperation für
diesen Wert j1 und steigendes i fortgesetzt. Wenn alle verketteten
4x Bytes geschrieben worden sind und der Wert i kleiner als 9 ist,
wird der Wert i auf 1 zurückgesetzt
und der Wert j1 um 1 erhöht,
und die nächsten
4x verketteten Bytes genauso in den Puffer geschrieben. Genauer
gesagt, es muss nur darauf geachtet werden, dass x < N ist, da bei einer
vollständigen
Verkettung keine Neuordnung der Daten erforderlich ist. Das bedeutet,
dass x = 4 oder x = 16 für
STM-64 und x = 4 für
STM-16 gilt. In allen anderen Fällen
liegt entweder keine oder eine vollständige Verkettung vor. Für den Einzelfall
mit x = 4 oder x = 16 und x nicht größer als N werden die ersten
9 Bytes in:
B1(i = 1:4, j1 = 1) und B1(i = 1:4, j1 = 2) und
B1(i = 1, j1 = 3) für
x = 4
und
B1(i=1:9, j1=1) für x = 16 geschrieben.
-
Die
zweiten 9 Bytes werden in:
B1(i = 2:4, j1 = 3) und B1(i = 1:4,
j1 = 4) und B1(i = 1:2, j1 = 5) für x = 4
und
B1(i
= 1:7, j1 = 1) und B1(i = 1:2, j1 = 2) für x = 16 geschrieben.
-
Wichtig
ist hierbei, dass dies mindestens einen Taktzyklus nach dem Schreiben
der ersten 9 Bytes in den Puffer erfolgt, sodass der Teilpuffer
B1(i = 1:7, j1 = 1) bereits wieder für neue Daten zur Verfügung steht.
-
Bezüglich dieser
Neuordnung der Daten und des 9 Byte breiten Datenpfades ist ferner
wichtig, dass die für
einen bestimmten VC-4 vorgesehenen 9 Zeigerbytes der AUH-Einheit,
welche die Zeiger- und die Pfad-Systemaufwandsverarbeitung vornimmt,
immer innerhalb eines einzigen Taktzyklus zur Verfügung stehen.
Da die Zeigerverarbeitung ein Prozess mit vielen Logikebenen ist,
kann man nach der Zeigererzeugung durch weitere Pipelineverarbeitung
sicherstellen, dass die Verarbeitung bei einer Taktfrequenz von
9,96 Gbit/9 = 138,33 MHz innerhalb eines einzigen Taktzyklus erfolgen
kann.
-
Als
letzter Verarbeitungsschritt in Empfangsrichtung folgt die Verarbeitung
der Nutzdaten. Diese richtet sich stark nach den unterschiedlichen
zu verarbeitenden Nutzdaten. Die Ausführungsform für die entsprechende
Anwendung unterscheidet sich nur insofern vom Normalfall, als unterschiedliche
Speicherblöcke
für verschiedene
Taktzyklen und somit verschiedene virtuelle Container VC-4-xc verwendet
werden, wie bei der Datenneuordnungseinheit beschrieben.
-
Eine
mögliche
Alternative besteht darin, dass die Breite des Datenpfades nach
der Zeigerverarbeitung von 9 auf beispielsweise 8 Bytes geändert werden
kann, da die Vorteile des 9 Byte breiten Datenpfades nach der SOH-Einheit
nicht mehr in Erscheinung treten. Außerdem werden die SOH-Bytes
(außer
den Zeigerbytes) nach der SOH-Einheit nicht mehr benötigt, sodass
diese Bytes nicht mehr zum Puffer gesendet und darin gespeichert
werden brauchen. Die Datenneuordnung kann im vorliegenden Fall jedoch
komplizierter sein, sodass eine neue Taktrate benötigt wird,
wenn diese Daten nicht weitergeleitet werden.
-
Auf
der Sendeseite des Rahmenanpassers wird mit der Verarbeitung der
Nutzdaten begonnen, dann werden die Zeiger erzeugt und die Nutzdaten
in die virtuellen Container VC-4xc eingefügt. Die Datenneuordnungseinheit
arbeitet nun in umgekehrter Reihenfolge und verschachtelt dabei
Daten von verschiedenen virtuellen Containern VC-4xc gemäß den Verkettungskonfigurationen
byteweise. Als nächste
Einheiten folgen die SOH-Verarbeitung und die Rahmenverwürfelung,
bevor die Rahmen zu den verschiedenen Ausgangsports weitergeleitet
werden.
-
KURZBESCHREIBUNG DER VERSCHIEDENEN
ANSICHTEN DER ZEICHNUNG
-
Das
oben Gesagte sowie weitere Aufgaben, Merkmale und Vorteile der vorliegenden
Erfindung werden in der folgenden detaillierten Beschreibung verdeutlicht.
-
Die
neuartigen Merkmale der Erfindung werden in den beiliegenden Ansprüchen dargelegt.
Die Erfindung selbst jedoch sowie eine bevorzugte Verwendungsform,
weitere Aufgaben und Vorteile der Erfindung lassen sich am besten
anhand der folgenden detaillierten Beschreibung einer anschaulichen
Ausführungsart
in Verbindung mit den beiliegenden Zeichnungen verstehen, wobei:
-
1 einen Überblick über die
SDH-Signalhierarchie bis zum STM-N-Signal zeigt;
-
2 ein
STM-1-Signal mit einem virtuellen Container VC-4 gemäß den Standardvorgaben
zeigt;
-
3 eine
Vorrichtung in Form eines STM-1- bis STM-64-SDH/SONET-Rahmenanpassers zum Verknüpfen von
mindestens zwei Datensignalen mit einer Eingangsdatenrate zu einem
einzigen Datenstrom mit einer Ausgangsdatenrate, die höher als
die Eingangsdatenrate ist, für
die Übertragung
auf einem gemeinsamen Medium, oder umgekehrt, zeigt.
-
DETAILLIERTE BESCHREIBUNG
DER ERFINDUNG
-
3 zeigt
in Form eines STM-1- bis STM-64-SDH/SONET-Rahmenanpassers eine Vorrichtung zum Verknüpfen von
mindestens zwei Datensignalen mit einer Eingangsdatenrate zu einem
einzigen Datenstrom mit einer Ausgangsdatenrate, die höher als
die Eingangsdatenrate ist, für
die Übertragung
auf einem gemeinsamen Medium, oder umgekehrt. Der im Folgenden beschriebene
STM-1- bis STM-64-SDH/SONET-Rahmenanpasser beruht auf einer Datenmultiplex- oder inhaltsabhängigen Vermittlungsarchitektur,
bei welcher ein einziger Rahmenanpasser mehrere STM-N-Rahmen mit
N = (1, 4, 16, 64) bis zu einer dem STM-64 (gemäß der SONET-Bezeichnungsweise:
STS-192 oder OC-192) entsprechenden Gesamtdatenrate, d. h. 9,96
Gbit/s, verarbeiten kann. Diese Rahmen können die entsprechenden Gruppen
von virtuellen Containern VC-4-xc, x = {1, 4, 16, 64 ≤ N}, verwenden.
Auch virtuelle Container VC-3-xc, x = {3, 12, 48, 192}, können unterstützt werden.
Da die Einheiten im Datenpfad während
jedes Taktzyklus mit verschiedenen Ports/Rahmen/VC-4 zusammenarbeitet,
muss für
jeden Rahmen oder jeden VC-4 die Statusinformation der Einheit gespeichert
werden. Es gibt Informationen, die für den Rahmen und die Einheit
oder für
den VC-4 und die Einheit gespeichert werden müssen, und es gibt Informationen,
die für
den Rahmen oder den VC-4 gespeichert werden müssen und von verschiedenen
Einheiten im Datenpfad genutzt werden. Die Breite des Datenpfades
für den
STM-1- bis STM-64-Rahmenanpasser wird auf 9 Bytes festgelegt.
-
Die
Datenmultiplexarchitektur gestattet auf vorteilhafte Weise die einfache
Unterstützung
der SDH/SONET-Funktionen Hinzufügen/Löschen, digitale
Querverbindung und automatisch geschützte Vermittlung auf einem
Chip. Wenn diese Funktionen auf Systemebene realisiert werden, kann
der Rahmenanpasser nicht nur als CPN-Pfadabschluss, sondern auch
als WAN (Wide Area Network, Weitverkehrsnetz)-Multiplexbereich oder
als digitale Querverbindung genutzt werden.
-
3 zeigt
die Basisarchitektur des Rahmenanpassers. Je nach Einsatz der Vorrichtung
als Pfadabschluss oder als Multiplexbereich oder in Form einer möglichen
Partitionierung der gesamten Architektur auf mehreren Chips können mit
dieser Architektur verschiedene Vorrichtungen geschaffen werden.
Vor der ausführlichen
Betrachtung der Gesamtarchitektur werden kurz die mögliche Positionierung
und Partitionierung erörtert.
-
Für die Anordnung
des Rahmenanpassers gibt es zwei grundlegende Möglichkeiten, entweder als reine
Pfadabschlusseinheit oder als WAN-Multiplexbereichseinheit.
-
Bei
der ersten Positionierung kann der Rahmenanpasser vorteilhaft zum
Abschließen
eines SDH/SONET-Pfades eingesetzt werden, um direkt die SDH/SONET-Nutzdaten,
zum Beispiel ATM-Zellen,
IP-Pakete oder Gigabit-Ethernetrahmen, zu verarbeiten, oder er kann
solche Nutzdaten in SDH/SONET-Rahmen einfügen.
-
Bei
der zweiten Positionierungsmöglichkeit
kann der Rahmenanpasser vorteilhaft zum SDH/SONET-Multiplexen in
einem WAN eingesetzt werden. In diesem Fall verlässt normalerweise der größte Teil
der in eine Einheit gelangenden Daten diese Einheit wieder und wird
zur nächsten
Einheit weitergeleitet. von besonderer Bedeutung sind hier die Funktionen
Hinzufügen/Löschen, digitale
Querverbindung und automatisch geschützte Vermittlung. Die Zuweisung
ankommender VC-n zu abgehenden VC-n wird als „verbindungsmuster" definiert, das durch
eine unidirektionale Verbindungsmatrix CM(Vi, Vj) beschrieben werden
kann, in welcher Vi das i-te ankommende VC-Signal und Vj das j-te abgehende VC-Signal
bezeichnet. Die Verbindungsmatrix wird durch Schreib-/Leseoperationen
eines Mikroprozessors konfiguriert und gelesen.
-
Für die Partitionierung
des Rahmenanpassers gibt es entweder die Möglichkeit, den Sende- und den Empfangsteil
voneinander zu trennen (wenn die Größe eine Rolle spielt) oder
die Verarbeitung der Nutzdaten in einen extra Chip auszulagern.
Durch die Trennung der Nutzdatenroutine vom Rahmenanpasser können Aktualisierungen
zur Verarbeitung neuer Arten von Nutzdaten vorgenommen werden, indem
einfach neue Nutzdatenroutinen zur Verfügung gestellt werden, ohne
den Rahmenanpasser selbst zu ändern.
Der SDH/SONET-Teil ist stabil, aber die Art der zu verarbeitenden
Nutzdaten kann sich im Laufe der Zeit stark ändern. Solche Nutzdaten sind
nicht nur ATM-Zellen, IP-Pakete und Gigabit-Ethernetrahmen, sondern
auch ganze VC-4/VC-3.
-
Vorzugsweise
wird eine vom Optical Internetworking Forum (OIF) definierte SPI-4-Schnittstelle
oder eine vom ATM-Forum definierte Schnittstelle Utopia level 4
dazu verwendet, vollständige
VC-4 zu einer Nutzdatenroutine weiterzuleiten, die auch eine Verbindung
zu DS3-Zuordnungseinheiten gestattet, oder vollständige VC-4
von einer solchen Zuordnungseinheit zu empfangen. Dann kann der
Rahmenanpasserteil ohne die Nutzdatenroutine auf einem einzelnen
Chip untergebracht werden, der auch die Funktionen Hinzufügen/Löschen-Multiplexen,
digitale Querverbindung und automatische Schutzumschaltung auf Systemebene
beinhaltet. Von Vorteil ist, dass für diese Hinzufügungen nur
sehr geringer Aufwand und wenig Siliciumfläche erforderlich sind. Für die digitale
Querverbindung ohne die Funktion Add/Drop würde dieser Teil bereits ohne
einen zusätzlichen
Chip für
die Nutzdatenverarbeitung ausreichen.
-
Für die Skalierbarkeit
des Rahmenanpassers gemäß der vorliegenden
Erfindung gibt es erstens die Möglichkeit,
die Größe des Rahmenanpassers
zu verringern, indem die Anzahl der Ports und die Art der zu verarbeitenden
Rahmen begrenzt und der Systemtakt auf die Datenrate des STM-64
beschränkt
wird:
-
Zweitens
gibt es für
die Skalierbarkeit die Möglichkeit,
den Rahmenanpasser mit einer geringeren Systemtaktrate als der Taktrate
des STM-64 (OC-192) zu betreiben. Dann kann man eine Systemtaktrate
wählen, die
dem STM-16 (OC-48), dem STM-4 (OC-12) oder sogar dem STM-1 entspricht:
-
Die
beiden Möglichkeiten
der Skalierbarkeit führen
bei der vorliegenden Architektur zu etwa 10 verschiedenen Rahmenanpassern,
aber zu einer unterschiedlichen Anzahl von Leitungsports und unterschiedlichen
Ansprüchen
an den Speicher auf dem Chip:
- – ein Rahmenanpasser
mit STM-1 bis STM-64
- – ein
Rahmenanpasser mit STM-4 bis STM-64
- – ein
Rahmenanpasser mit STM-16 bis STM-64
- – ein
Rahmenanpasser ausschließlich
mit STM-64
- – ein
Rahmenanpasser mit STM-1 bis STM-16
- – ein
Rahmenanpasser mit STM-4 bis STM-16
- – ein
Rahmenanpasser ausschließlich
mit STM-16
- – ein
Rahmenanpasser mit STM-1 bis STM-4
- – ein
Rahmenanpasser ausschließlich
mit STM-4
- – ein
Rahmenanpasser ausschließlich
mit STM-1
-
Ein
SDH/SONET-Rahmenanpasser benötigt
mindestens einen Referenztakt gemäß den SDH/SONET-Standards.
Auch der vorliegende Rahmenanpasser benötigt einen Systemtakt an seiner
Empfangsseite, der etwas schneller als der entsprechende Referenztakt
für STM-64
(oder STM-16, STM-4, STM-1 im Fall der im Abschnitt Skalierbarkeit
erwähnten
verringerten Systemtakte) ist, um sicherzustellen, dass alle FIFO-Puffer der
Leitungsports oft genug gelesen werden, damit keine Aktualisierung
verpasst wird. Auf seiner Empfangsseite empfängt der Rahmenanpasser für die Leitungsports
die folgenden Referenztakte:
- – STM-1-Ports:
155,52 MHz (von elektrooptischen Modulen mit Takt-/Datenwiederherstellung)
- – STM-4-Ports:
622,08 MHz (von elektrooptischen Modulen mit Takt-/Datenwiederherstellung)
- – STM-16-Ports:
311,04 MHz (von der 8-Bit-SERDES (Serialisierung/Deserialisierung)
mit Takt-/Datenwiederherstellung)
- – STM-64-Ports:
311,04 oder 622,08 MHz (konfigurierbar, von der 16-Bit-Schnittstelle)
-
Dies
sind auch Referenztakte im SDH/SONET-Standard. Für eine STM-64-Taktrate und
einen 9 Byte breiten Datenpfad wird ein Systemtakt benötigt, der
schneller als 138,24 MHz ist. Am einfachsten wird ein solcher Takt
von den üblichen
Referenztakten abgeleitet, indem entweder ein Takt von 155,52 MHz
direkt von einem STM-1-Leitungsport abgenommen oder aus dem Takt
an einem STM-4-, STM-16- oder STM-64-LeitungsPort erzeugt oder extern
als Referenztakt 155,52 MHz bereitgestellt wird. Dieser Takt ist
dann um 11 % schneller als nötig.
Es wird jedoch immer Zyklen geben, in denen keine gültigen Daten
zu verarbeiten sind. Wenn das System so ausgelegt ist, dass keine
Einheit aktiv ist (außer
der Prüfung
des Gültig-Bits
der Daten), wenn die Daten als ungültig gekennzeichnet sind (keine
Datenaktualisierung seit der letzten FIFO-Leseoperation), ist der
zusätzliche
Stromverbrauch infolge des um 11 % schnelleren Systemtakts sehr
gering. Aus diesem Grunde scheint die Verwendung des Taktes von
155,52 MHz als Systemtakt auf der Empfangsseite die beste Lösung darzustellen.
-
Im
Folgenden wird die allgemeine Architektur beschrieben. Die Empfangsseite
der in 3 gezeigten Vorrichtung besteht aus 64 seriellen
Schnittstellen 102 bis 108 für STM-1-Leitungsports, 64 9-Byte-/2-Wort-FIFO-Puffer,
einer Portabfrageeinheit 110, einer Byteausrichtungseinheit 112,
einer B1-Berechnungseinheit 114, einer Rahmenentwürfelungseinheit 116,
einer B2-Berechnungseinheit 118,
einer Datenneuordnungseinheit 120, einer Abschnittsaufwandsroutine 122,
einer Verwaltungseinheitsroutine 124, einer Nutzdatenverarbeitungseinheit 126 und
einer Utopialevel-4-Schnittstelle 128. Mit jeder der Einheiten
ist ein aus mehreren Speicherelementen bestehender Speicher funktionell
verbunden. Der Speicher speichert Daten, welche die mit dem Speicher
verbundene Einheit einem Datenstrom entnimmt. Ein Datenbus und ein
Adressbus sind funktionell mit den Einheiten im Empfangspfad bzw.
im Sendepfad verbunden. In 3 ist nur
der Datenbus dargestellt. Der Adressbus ist zur einfacheren Darstellung
weggelassen worden.
-
Die
64 seriellen STM-1-Leitungsports 102 bis 108 mit
den entsprechenden Takteingängen
können auch
in Form von 16 seriellen Schnittstellen für STM-4-Leitungsports, zuzüglich 4
Schnittstellen für 8-Bit-STM-16-Leitungsports,
zuzüglich
einer Schnittstelle für
einen 16-bit-STM-64-Leitungsport gemäß dem im Dokument OIF-99-102
dargelegten Standard verwendet werden. Jeder Port 102 bis 108 enthält einen
Multiplexer, welcher die Daten auf eine Breite des Datenpfades von
9 Bytes multiplext. Bei der 2-Byte-STM-64-Schnittstelle und dem
Multiplexen auf 9 Bytes ist zu berücksichtigen, dass die nächste Einheit ein
FIFO-Puffer mit 2 9-Byte-Wörtern
ist und 2 × 9
= 18 Bytes wiederum ein ganzzahliges Vielfaches des Ausgangswertes
von 2 Bytes darstellt.
-
Wenn
an einem Port 102 bis 108 ein Signalverlust (Loss
Of Signal, LOS) festgestellt wird, wird ein Mikroprozessorinterrupt
erzeugt. Wenn der LOS innerhalb von zwei Rahmen festgestellt wird,
wird ein Alarmsignal (Alarm Indication Signal, AIS) erzeugt, aufgrund
dessen die SOH- und die AUH-Einheit das empfangene SDH/SONET-Signal
als ausschließlich
aus logischen Einsen bestehendes Signal verarbeitet. Das AIS wird
innerhalb von 2 Rahmen nach Beendigung der LOS-Fehlerbedingung gelöscht.
-
Die
64 9-Byte-/2-Wort-FIFO-Puffer werden zum Puffern der auf den STM-N-Leitungen
ankommenden Daten verwendet.
-
Die
Portabfrageeinheit enthält
eine Finite State Machine (FSM), die funktionell mit einem Mehrfachadressregister
A verbunden ist. Jeder Port ist durch eine Portadresse gekennzeichnet,
die in einen der Speicherplätze
in den Mehrfachadressregistern geladen wird. Jeder Port ist mit
einem Port-FIFO-Register ausgestattet, in welchem die von zugehörigen Eingangsleitungen
empfangenen Daten gespeichert Server. Jedes Port-FIFO-Register ist
mit einem Datenbus verbunden. Desgleichen ist der Ausgang der Mehrfachadressregister
mit einem Adressbus verbunden, der wiederum mit allen Port-FIFO-Registern
verbunden ist. Bei einer Ausführungsart
der Erfindung ist die Anzahl der Adressen (Positionen) im Mehrfachadressregister
mit der Anzahl der Ports identisch. Auch hier umfasst der Adressbus
72 Bit und ein Statusbit. Das Port-FIFO-Register beinhaltet ebenfalls
zwei (2) Wörter.
-
Die
Finite State Machine (FSM) in der Portabfrageeinheit sendet einfach
während
jedes Taktzyklus den Inhalt eines Registers an den auf dem Chip
befindlichen 8-Bit-Adressbus. Wie im vorliegenden Dokument beschrieben,
stellt der Inhalt jeder Registerposition eine Portkennung dar. Zu
diesem Zweck werden einfach die Registeradressen 1 bis 64 umlaufend
gelesen. Die Reihenfolge der Portadressen im Register bestimmt direkt
die Reihenfolge der an den Adressbus gesendeten Portadressen. Der
2-Wort-Empfangs-FIFO-Puffer
(mit je 72 Bit) in jedem Port wird immer dann gelesen, wenn die
Portadresse der FIFO-Warteschlange gleich der Adresse auf dem Adressbus
ist. Das bedeutet, dass das erste Wort des FIFO-Puffers auf den
Datenbus geschrieben wird. Wenn die Adresse nicht gleich der Portadresse
des FIFO-Puffers ist, wird der Gerätetreiber, der 1 Wort aus dem
FIFO-Puffer zum Datenbus sendet, deaktiviert. Aus diesem Grund werden
nur die Daten vom ausgewählten
Port an den Datenbus gesendet. Gemeinsam mit den Daten wird das
Signal FIFO-voll zum erweiterten Datenbus gesendet. Das Signal FIFO-voll
ist gleich „1", wenn Daten vorhanden
sind. Nach dem Lesen eines Wortes aus dem FIFO-Puffer wird dieses
Signal auf „0" gesetzt. Das Signal
nimmt wieder den Wert „1" an, wenn über den
SDH/SONET-Leitungsport neue Daten in den FIFO-Puffer geschrieben
werden. Somit kennzeichnet das Signal FIFO-voll Daten, die verarbeitet
werden müssen,
wenn das Signal gleich „1" ist, und Daten,
die nicht verarbeitet werden sollen (da die Daten bereits nach der
letzten Leseoperation aus diesem FIFO-Puffer verarbeitet worden
sind), wenn das Signal gleich „0" ist.
-
Jede
folgende Einheit im Empfangspfad verbindet die Logikeinheit mit
einer Reihe von Speichereinheiten, die durch die Portadresse auf
dem Adressbus gekennzeichnet sind. Wenn für das Statusbit auf dem erweiterten
Datenbus der Wert „1" gefunden wird, werden
die Daten verarbeitet. Ansonsten unternimmt die Logikeinheit während dieses
Taktzyklus nichts. Dieses Statusbit zusammen mit der Tatsache, dass
der Systemtakt für
den gesamten Empfangspfad schneller als die Summe aller Leitungsports
ist, stellt sicher, dass es im Port-FIFO-Puffer keine aktualisierten
Daten gibt, die nicht gelesen werden, und dass ein und dieselben
Daten nicht zweimal verarbeitet werden, wenn die Daten eines FIFO-Puffers
seit der letzten Leseoperation nicht aktualisiert worden sind.
-
Die
Portabfrageeinheit 110 liest die Daten in einer konfigurierbaren
Weise, z. B. bei Gleichwertigkeit aller Ports umlaufend, mit einem
einzigen Systemtakt aus den FIFO-Puffern in den Empfangsdatenpfad.
Der Systemtakt muss unter Berücksichtigung
der gemäß den SDH/SONET-Standards
zulässigen
Taktrateschwankungen mindestens genauso schnell sein wie der schnellste
Leitungseingangstakt. Die Portabfrageeinheit 110 setzt
eine Markierung, wenn ein FIFO-Puffer ohne Aktualisierung von Eingangsdaten
gelesen wurde. In diesem Fall verarbeitet keine Einheit im Datenpfad
dieses Datenwort.
-
Die
Byteausrichtungseinheit 112 passt die ankommenden 72-Bit-Daten so an, dass
ihre Ausgangswerte genau 9 Bytes in ihrer SDH/SONET-Rahmenposition
entsprechen. Diese Anpassung erfolgt durch die Suche nach dem A1/A2-Byteausrichtungsmuster
im Sammelmodus und durch ständiges
Prüfen
der Wiederholung des A1/A2-Byteausrichtungsmusters im Synchronmodus.
Wenn das Muster für
m aufeinander folgende Rahmen, z. B. für m = 5 Rahmen, nicht gefunden
wird, kehrt die Einheit vom Synchronmodus wieder zum Sammelmodus
zurück
und zeigt einen Fehler „Rahmenfehler" (out of frame, OOF)
an. Wenn der OOF-Zustand während
einer konfigurierbaren Zeitdauer TOOF bestehen
bleibt, wird ein LOF-Zustand
festgestellt und ein entsprechender Mikroprozessorinterrupt ausgelöst. Der
LOF-Zustand wird wieder verlassen, wenn der Zustand „in frame" eine bestimmte Zeitdauer
TLOF lang ununterbrochen andauert. Wenn
der LOF-Zustand innerhalb zweier Rahmen festgestellt wird, wird
ein Alarmsignal (AIS) erzeugt, welches die SOH- und die AUH-Einheit veranlasst,
das empfangene SDH/SONET-Signal als Signal zu behandeln, das nur
aus logischen Einsen besteht. Das AIS wird 2 Rahmen nach Beendigung
des LOF-Fehlerzustandes aufgehoben. Für jeden Rahmen brauchen nur
der Wert der so genannten Ausrichtungsposition (1 <= Ausrichtungsposition <= 71), der Status (Sammelmodus,
Vorsynchronmodus, Synchronmodus), die Anzahl der ordnungsgemäß festgestellten A1/A2-Muster
(im Vorsynchronmodus) und die Anzahl der nicht ordnungsgemäß festgestellten
A1/A2-Muster (im Synchronmodus) gespeichert zu werden.
-
Die
B1-Berechnungseinheit 114 berechnet das B1-Paritätsbyte (gerade
Parität)
für den
gesamten STM-N-Rahmen, bevor der Rahmen wieder entwürfelt wird.
Das aktuelle B1-Byte wird für
jeden Rahmen im Speicher gespeichert. Der Endwert für einen
kompletten Rahmen wird so gespeichert, dass er später durch die
Einheit der Abschnittsaufwandsroutine (SOH) 122 verwendet
werden kann.
-
Die
Rahmenentwürfelungseinheit 116 entwürfelt alle
ankommenden Rahmenbytes bis auf die SOH-Bytes der ersten Zeile des
Rahmens, die nicht verwürfelt
sind. Die Einheit benötigt
für jeden
STM-N-Rahmen die
folgenden Werte: N, 3*N, 9*N und 2430*N.
-
-
Im
vorliegenden Beispiel handelt es bei GRA und GRA2 um Speicherregister,
die zur portweisen Speicherung der Variablen von dieser Einheit
benötigt
werden. Die Verwendung von zwei Registerblöcken ist auf die Größe der Daten
zurückzuführen und
hat nichts mit den oben erörterten
verschiedenen Speichereinheiten zu tun. Die Zuordnung der Register
zu bestimmten Speichereinheiten entsprechend der gültigen Portadresse erfolgt
außerhalb
dieser logischen Einheit. Wichtig ist, dass der oben gezeigte Code
für die
Hardwarebeschreibung „lokale
Variablen", die
nicht während
jedes Taktzyklus in einem bestimmten Speicher gespeichert, sondern
während
des nächsten
Taktzyklus durch Daten von einem neuen Port überschrieben werden, sowie „Variablen,
die für
jeden Rahmen (und damit für
jeden Port) gespeichert werden müssen", definiert. Weiterhin
sind die Variablen stm_n, stm_n_3, stm_n_9 und stm_n_2430 von Bedeutung.
Dies sind Variablen, die für
jede Portadresse gespeichert sind und den Ramentyp angeben, d. h.
N in STM-N. Prinzipiell wäre
stm n ausreichend, da alle anderen Werte lediglich ein Vielfaches
dieses Wertes darstellen, jedoch müssen alle diese Werte in einem
Speicher gespeichert werden, da beim Entwerfen eines Chip-Designs
nicht mit Zahlen gearbeitet werden kann, die erst noch berechnet
werden müssen.
Auf die Variable stm n könnte
verzichtet werden, da sie in dieser Einheit eigentlich nicht benötigt wird.
Die Variable stm_n_9 = 9*stm_n gibt die Anzahl Bytes in einer Zeile
an, die den Abschnittsaufwand darstellen, während alle nachfolgenden Bytes
Nutzdaten darstellen. Die Variable stm_n_2430 gibt die Anzahl der
Bytes in einer einzelnen Zeile und somit das Ende einer Zeile und den
Beginn der nächsten
Zeile eines STM-N-Rahmens an. Die Variable stm_n_3 wird zur korrekten
Anpassung der Daten an den Rahmen benötigt.
-
Alle
anderen Einheiten im Datenpfad benötigen einige dieser Zahlenwerte
stm n, stm_n_3, stm_n_9 oder stm_n_2430 genau in der oben beschriebenen
Weise und müssen
genauso wie beim obigen Beispiel auch zu Beginn eines Taktzyklus
Daten in einem portspezifischen Speicher speichern und Daten aus
dem portspezifischen Speicher in lokale Variablen kopieren, bevor
die Daten auf dem Datenbus verarbeitet werden.
-
Die
B2-Berechnungseinheit 118 berechnet die 3*N B2-Bytes des
STM-N-Rahmens als gerade Parität BIP-N×24 für den gesamten
Rahmen bis auf die SOH-Bytes der ersten 3 Zeilen nach dem Entwürfeln des
Rahmens.
-
Die
Datenneuordnungseinheit 120 ordnet jede ankommende Zeile
eines STM-N-Rahmens so, dass die byteweise Verschachtelung der N
STM-1-Teilrahmen aufgehoben wird und das 9-Byte-Ausgangssignal im Falle
der SOH-Bytes 9 aufeinander folgenden Bytes und im Falle der SDH/SONET-Nutzdatenbytes
9 aufeinander folgenden Bytes eines einzelnen virtuellen Containers
VC-4-xc entspricht. Die Zeigerbytes H3 werden so neugeordnet, dass
sie mit den Nutzdatenbytes, nicht aber mit den SOH-Bytes kompatibel
sind. Diese Einheit benötigt
für ihren
Betrieb einen Puffer von 2 × 64 × 9 Byte.
-
Die
Einheit 122 der Abschnittsaufwandsroutine (SOH) entnimmt
den ankommenden Daten alle benötigten
SOH-Bytes und speichert diese Bytes für jeden Rahmen im Speicher.
Jedes SOH-Byte steht dem Mikroprozessor zum Lesen/Schreiben zur
Verfügung.
Es wird eine Wortmaske gesetzt, welche für die nachfolgenden Einheiten
im Empfangsdatenpfad die Unterscheidung der Datenbytes von den SOH-Bytes vornimmt. Diese
Maske wird zusammen mit den Daten auf dem Datenpfad weitergeleitet.
Wenn alle 9 Bytes SOH-Bytes sind, ist die Maske gleich „00", wenn die ersten
6 Bytes SOH-Bytes und die letzten 3 Bytes Datenbytes sind (die Bytes
H3 und Zeigerverringerung), ist die Maske gleich „01", wenn die ersten
3 Bytes SOH-Bytes und die letzten 6 Bytes Datenbytes sind (Zeigererhöhung), ist
die Maske gleich „10", und wenn alle 9
Bytes Datenbytes sind, ist die Maske gleich „11". Darüber hinaus gibt es keine weiteren
SDH/SONET-Bytemuster. Diese Einheit verarbeitet die Bytes für den Regenerierungsabschnittsaufwand
(RSOH) und die Bytes für
den Multiplexabschnittsaufwand (MSOH).
-
Die
Einheit 124 der Verwaltungseinheitsroutine (AUH) entnimmt
den ankommenden Daten alle Bytes für den Pfadaufwand (POH) und
speichert diese Bytes für
jeden virtuellen Container VC-4 im Speicher. Jedes POH-Byte steht
dem Mikroprozessor zum Lesen/Schreiben zur Verfügung. Zum Ermitteln der POH-Bytes
in den ankommenden Daten dient der durch die SOH-Einheit ausgewertete
und im Speicher gespeicherte Zeigerwert der AU-4 in Verbindung mit
einem entsprechenden Bytezähler
und der zusammen mit den ankommenden Daten auf dem Datenbus gelieferten
Mustermaske. Je nach Konfiguration leitet die AUH-Einheit entweder den
gesamten VC-4 (einschließlich
der POH-Bytes) oder nur die Nutzdatenbytes C-4 an ein FIFO-Register weiter,
aus welchem dann die Nutzdatenroutine die Daten zur weiteren Verarbeitung
liest. Im ersten Fall wird der VC-4 über die Schnittstelle Utopia
level 4 zu Zuordnungseinheiten DS3 weitergeleitet. Im zweiten Fall
wird der Pfad durch ATM-, PPP- oder
andere Nutzdatenroutinen abgeschlossen. Wenn der Rahmenanpasser
als Multiplexeinheit mit Hinzufügen/Löschen-Multiplexen und digitaler
Querverbindung eingesetzt ist, gibt es eine weitere Konfiguration,
in welcher die AUH-Einheit den VC-4 auf der Sendeseite in das entsprechende FIFO-Register
schreibt. Dadurch wird das Rückkoppeln
und damit die Ausführung
der Funktionen auf Systemebene ermöglicht, die weit über die
Funktion einer Pfadabschlusseinheit hinausgehen.
-
Die
Einheit 126 der Nutzdatenroutine leitet die Nutzdaten in
Form von ATM-Zellen oder PPP-Paketen zu einem gemeinsamen konfigurierbaren
FIFO-Puffer (bis zu 64 Ports), aus welchem die Schnittstelle Utopia level
4 nach der erforderlichen Prüfung
der Zellen-/Paketabgrenzung und der Datenkonsistenz die Daten liest.
-
Die
Schnittstelle 128 Utopia level 4 dient zur Übertragung
der Daten zu einer Verbindungsschichteinheit oder zu Zuordnungseinheiten
DS-3.
-
Die
Sendeseite besteht aus einer Schnittstelle 130 Utopia level
4, einer Einheit 132 der Nutzdatenroutine, einer Verwaltungseinheitsroutine 134,
einer VC-4-Verschachtelungseinheit 136,
einer Einheit 138 der Abschnittsaufwandsroutine, einer
B2-Berechnungseinheit 140, einer Rahmenverwürfelungseinheit 142,
einer B1-Berechnungseinheit 144 und
einer Portadresseinheit 146.
-
Die
Schnittstelle 130 Utopia level 4 empfängt Daten von einer Verbindungsschichteinheit
oder von den Zuordnungseinheiten DS-3 und schreibt die Daten in
einen gemeinsamen konfigurierbaren FIFO-Puffer (bis zu 64 Ports),
aus welchem die Einheit der Nutzdatenroutine die Daten liest.
-
Die
Einheit 132 der Nutzdatenroutine ordnet den ATM-Zellen
und den PPP-Paketen die erforderlichen Formate für die virtuellen Container
VC-4 zu.
-
Die
Einheit 134 der Verwaltungseinheitenroutine (AUH) erzeugt
die Pfad-Systemaufwandsbytes je VC-4 und ordnet die Nutzdaten (ATM-Zellen
oder PPP-Paketstrom) in die VC-4 ein. Im Modus der Pfadabschlusseinheit
wird keine Pfaderzeugungsfunktion benötigt und der entsprechende
AU-4-Zeigerwert gleich null gesetzt. Für eine Multiplexabschnittseinheit
mit den Funktionen Hinzufügen/Löschen-Multiplexen
und digitale Querverbindung gibt es mehrere Möglichkeiten.
-
Bei
der ersten Variante, der Durchgangstaktung, wird als Sendetakt des
Ports der SDH/SONET-Leitung der Empfangstakt des Ports der entsprechenden
Eingangsleitung genommen, sodass der Eingangs- und der Ausgangstakt
identisch sind und keine Zeigerverarbeitung erforderlich ist. Da
es jedoch mehrere Eingangsports mit verschiedenen Referenztakten
gibt, wird als Systemtakt auf der Sendeseite derselbe Takt wie auf
der Empfangsseite gewählt,
wobei wie bei der Verwendung leerer Taktzyklen auf der Empfangsseite,
wenn ein FIFO-Register des Eingangsports zwischen zwei Leseoperationen
vom Eingangsport nicht aktualisiert wurde, auf der Sendeseite leere
Taktzyklen eingefügt
werden müssen,
wenn der Füllungsgrad
des Puffers auf der Sendeseite unter einen bestimmten Wert fällt. Da
die Referenztakte auf der Empfangs- und der Sendeseite identisch
sind, bewirken die Einheiten mit einem etwas höheren Systemtakt zwischen den
Eingangs- und Ausgangsports lediglich eine Beschleunigung zwischen
den Ports. Zum Erzielen eines gleichmäßigen Betriebs muss die Größe des FIFO-Puffers
auf der Ausgangsseite noch berechnet werden.
-
Bei
der zweiten Variante, der Leitungstaktung, wird einer der Referenztakte
auf der Empfangsseite als Referenztakt für alle Ausgangsleitungen auf
der Sendeseite ausgewählt.
Dieser Takt wird dann auch als Systemtakt auf der Sendeseite festgelegt.
Zur Berücksichtigung
der Taktratenunterschiede zwischen den verschiedenen Referenztakten
auf der Empfangsseite und dem ausgewählten Referenztakt auf der
Sendeseite. ist dann die Erzeugung von Zeigern erforderlich.
-
Bei
der dritten Variante, der externen Sendetaktung, wird als Sendetakt
ein extern bereitgestellter Referenztakt verwendet. Im Übrigen liegt
dieselbe Situation wie bei der Leitungstaktung vor.
-
Die
VC-4-Verschachtelungseinheit 136 verschachtelt byteweise
die verschiedenen zu einem einzigen STM-N-Rahmen gehörenden VC-4.
Diese Einheit benötigt
einen 2 × 64 × 9 Byte
großen
Puffer und führt
mit den Bytes der SDH/SONET-Nutzdaten im Vergleich zur Datenneuordnungseinheit
im Empfangspfad die umgekehrte Operation durch.
-
Die
Einheit 138 der Abschnittsaufwandsroutine (SOH) für jeden
der STM-N-Rahmen die SOH-Bytes.
-
Die
B2-Berechnungseinheit 140 berechnet die 3*N B2-Bytes eines
STM-N-Rahmens als gerade Parität
BIP-N×24
für den
gesamten Rahmen bis auf die SOH-Bytes der ersten 3 Zeilen vor dem
Verwürfeln.
Die Einheit speichert für
jeden Rahmen die tatsächlichen
Werte von B2 und die endgültigen
Werte von B2 im Speicher, um sie dann durch die SOH-Einheit in die
Bytes von B2 des nächsten
Rahmens für
denselben Port einzufügen.
-
Die
Rahmenverwürfelungseinheit 142,
die der Rahmenentwürfelungseinheit
im Empfangspfad identisch ist, verwürfelt alle Rahmenbytes bis
auf die SOH-Bytes der ersten Zeile des Rahmens, die unverwürfelt bleiben.
Die Einheit benötigt
für jeden
STM-N-Rahmen die folgenden Werte: N, 3*N, 9*N und 2430*N.
-
Die
B1-Berechnungseinheit 144 berechnet nach der Rahmenverwürfelung
das B1-Paritätsbyte
(gerade Parität)
für den
gesamten STM-N-Rahmen. Das eigentliche B1-Byte wird für jeden
Rahmen im Speicher gespeichert. Der endgültige Wert eines vollständigen Rahmens
wird so gespeichert, dass er später
durch die Einheit der Abschnittsaufwandsroutine (SOH) genutzt werden
kann.
-
Die
Portadresseinheit 146 leitet die Daten jedes Rahmens auf
dem Datenbus und die Portadresse auf dem Adressbus zum entsprechenden
FIFO-Puffer der Ausgangsports weiter. Wenn die Adresse auf dem Adressbus
mit der Portadresse identisch ist, empfängt der entsprechende FIFO-Puffer
die Daten. Von allen anderen FIFO-Puffern werden die Daten nicht
empfangen.
-
Vorzugsweise
werden die FIFO-Puffer entsprechend dem Takt ihres Leitungsports
auf der Seite des Leitungsports gelesen. Die Reihenfolge der Weiterleitung
kann konfiguriert werden. Falls alle Ports gleich sein sollten (64
STM-1, 16 STM-4 oder 4 STM-16)
wird die Reihenfolge im Umlaufverfahren festgelegt. Das Schreiben
in die FIFO-Puffer der Ausgangsports erfolgt mit dem Systemtakt,
während
das Lesen dieser FIFO-Puffer mit dem jeweiligen Leitungstakt erfolgt.
-
Gemäß einer
anderen Ausführungsart
der vorliegenden Erfindung kann ein STM-4 bis STM-256-Rahmenanpasser
realisiert werden. In diesem Fall kann aufgrund der Grenzen der
heutigen Technologie ein 9 Byte breiter Datenpfad unerwünscht sein
und stattdessen ein 18 Byte oder ein 36 Byte breiter Datenpfad verwendet werden.
Diese Ausführungsart
wäre dann
bis auf die speziellen Einzelheiten bezüglich des 9 Byte breiten Datenpfades
mit der oben beschriebenen Ausführungsart
identisch.