-
HINTERGRUND
DER ERFINDUNG
-
1. Gebiet
der Erfindung
-
Die
vorliegende Erfindung betrifft allgemein das Gebiet der Telekommunikation.
Insbesondere betrifft die Erfindung Vorrichtungen und Verfahren
für eine
Betriebsverhaltensüberwachung
während
des Dienstes von synchronen digitalen Telekommunikationssignalen
hoher Geschwindigkeit.
-
2. Stand der
Technik
-
Das
Telekommunikationsnetz, das die Vereinigten Staaten und den Rest
der Welt bedient, entwickelt sich gegenwärtig von analoger Übertragung
zu digitaler Übertragung
mit immer mehr anwachsenden Bandbreitenanforderungen. Faseroptische
Kabel haben sich als ein wertvolles Werkzeug dieser Evolution erwiesen, die
Kupferkabel in fast jeder Anwendung von großen Amtsverbindungsleitungen
bis zu Teilnehmerverteilungsanlagen ersetzen. Faseroptische Kabel
sind im Stande, wesentlich mehr Information als Kupfer mit besserer Störfestigkeit
gegen Rauschen zu tragen.
-
Mit
dem Erscheinen der faseroptischen Kommunikation sind verschiedene
Standards entstanden, die den Transport von Daten bestimmen. Ein
Standart ist allgemein als „SONST", das „synchrone
optische Netz" bekannt.
Einzelheiten, die den SONST-Standard betreffen, sind in dem Bellecore-Dokument
TR-NWT-000253 ausgeführt.
wie dies in den Bellecore-Dokumenten ausgeführt ist und wie dies beispielsweise
in der 1 des Standes
der Technik dargestellt ist, die einen SONST STS-1-Rahmen zeigt,
werden SONST-Signale in einem Rahmenformat gesendet, das Abschnittsoverhead
und Leitungsoverhead einschließt,
die zusammen als Transportoverhead (TOH) genommen werden, die als
Spalten von Bytes angeordnet sind, und eine Nutzlast einschließt, die
ebenfalls in Form von Spalten von Bytes angeordnet ist. Die Bytes
der Nutzlast wiederum schließen „Pfadschichtoverhead" (POH) Bytes ein.
Wie dies vom Stand der Technik, der in 2 gezeigt ist, ersichtlich ist, der Details
der TOH- und POH-Bytes
zeigt, sind unter den TOH-Bytes Bytes B1 und B2, die acht Bit Verschachtelungsparitäts (BIP-8)
Codes sind. Ähnlich
schließt
der Pfadoverhead Byte B3 ein, der ein BIP-8-Code Byte ist.
-
SONST-Signale
und SDH (synchrone digitale Hierarchie)-Signale, die in enger Beziehung
zu den SONST-Signalen stehen (siehe ITU-T Empfehlungen G.707, G.708
und G. 709) verwenden die BIP-8 Bytes beim Transportoverhead und
Pfadoverhead, um das Betriebsverhalten während des Dienstes zu überwachen. Die
Anzahl von empfangenen BIP-8 Codeverletzungen kann in die Bitfehlerrate
(BER) eines Signals vom STS-N-Typ
umgewandelt werden. Wie dies im Bellecore-Dokument TR-NWT-000253
ausgeführt
ist, wird dann ein vom Benutzer ausgewählter BER-Schwellwert, der
im Bereich von 1 × 10–3 bis
1 × 10–9 liegt,
verwendet, um Signalversagen (SF) und Signalverschlechterungsbedingungen
(SD) für
die Einleitung eines automatischen Schutzschaltens (ASP) anzuzeigen
(siehe Abschnitt 5.3 von Bellecore TR-NWT-000253). Außerdem gibt
es ein Erfordernis der maximalen Detektionszeit und ein Durchschnittsdetektionszeitziel,
die vom gewählten
BER-Pegel abhängen.
Wie dies zum Beispiel in Tabelle 5-2 von Bellecore TR-NWT-000253
ausgeführt
ist, ist die maximale Alarmdetektionszeit für einen BER von 1 × 10–3 10
ms, während
die maximale Detektionszeit für
einen BER von 1 × 10–5 eine
Sekunde beträgt.
Das durchschnittliche Detektionszeitziel für den BER von 1 × 10–3 beträgt 8 ms,
während
das durchschnittliche Detektionszeitziel für den BER von 1 × 10–5 300/N
ms oder 8 ms beträgt,
was immer größer ist,
wobei N der Pegel des STS-Signals
ist (N = 1 für
ein STS-1-Signal). Der Algorithmus, der zum Feststellen von Alarmbedingungen
verwendet wird, sollte auch tolerant gegen Burst-Fehler von bis
zu 3 ms sein.
-
Beim
Detektieren und Erzeugen von Alarmbedingungen aufgrund Verletzungen
des BIP-8 Codes, wird in Bellecore TR-NWT-000253 ein Algorithmus
mit gleitendem Fenster (SWA) vorgeschlagen. Insbesondere werden
Mt aufeinanderfolgende Datenblöcke untersucht,
wobei Mt gleich der maximalen Anzahl von
Blöcken ist,
die vor Reinitialisierung (für
einen Alarm) beobachtet worden sind. Wenn es mt oder
mehr Blöcke
gibt (wo mt die gewünschte Flag-Zählungsschwellwertzahl
ist), die jeweils m oder mehr Paritätsverletzungen (wobei m ein
Paritätsverletzungszählungsschwellwert
ist) in dem Mt-Blöcken
haben, wird ein Alarm ausgegeben. Falls dies nicht der Fall ist,
wird das Fenster der Mt aufeinanderfolgenden
Blöcke
um einen einzelnen Block fortgeschaltet (verschoben), und die Berechnungen
werden für
diesen Satz von Mt aufeinanderfolgenden
Blöcken wiederholt.
Gibt es mt oder mehr Blöcke, die m oder mehr Paritätsverletzungen
haben, wird wiederum ein Alarm ausgegeben. Falls dies nicht der
Fall ist, wird das Fenster erneut verschoben, und die Berechnungen werden
wiederholt.
-
Beim
Einrichten des Algorithmus mit gleitendem Fenster für eine Fenstergröße von N
Rahmen kann die BIP-8 Codeverletzung für den gegenwärtigen Rahmen
und die vorhergehenden N – 1
Rahmen geprüft
werden, und die vorhergehenden N – 1 BIP-8-Codeverletzungen
müssen
gespeichert werden. Das Erfordernis, BER für jeden Rahmen zu prüfen und
die vorhergehenden N – 1
BIP-8-Codeverletzungen zu speichern, setzt eine große Belastung
auf die Hardware und/oder Software, die SWA implementieren. Um den
BER-Schwellwert von 1 × 10–3 mit
dem Detektionszeitziel von 8 ms zu erfüllen, ist in der Tat nur Hardware
oder VLSI Implementierung möglich.
Zusätzlich
ist mit dem Algorithmus des gleitenden Fensters die Rate zum Erzeugen
von Falschalarmen, um eine Signalverschlechterung oder ein Signalversagen
zu melden, unannehmbar hoch.
-
US-A-3,991,278
offenbart ein Verfahren und eine Vorrichtung zum Erzeugen einer
Anzeige einer übermäßigen Bit-Fehlerrate für ein DS4-Telekommunikationssignal,
um ASP zu initiieren, in dem die Anzahl von Codeverletzungen im
Telekommunikationssignal in einem Zeitintervall gezählt werden.
-
Die
vorliegende Erfindung schafft ein Verfahren, wie es in Anspruch
1 definiert ist, und eine Vorrichtung, wie sie in Anspruch 15 definiert
ist.
-
Eine
Ausführungsform,
die hier zu beschreiben ist, schafft ein Verfahren zum Durchführen von
Erzeugung und Löschung
eines Alarms übermäßiger Bitfehlerrate
(EBER), das in Hardware oder Software implementierbar ist. Diese
Ausführungsform
verwendet einen EBER-Alarm Erzeugungs- und Löschungsalgorithmus, der maximale
Detektionszeit und Detektionszeitzielstandards erfüllt und
hat eine verringerte Fehlalarmrate im Verhältnis zum Algorithmus mit gleitendem
Fenster. Der Algorithmus zum Erzeugen und Löschen von EBER-Alarm ist in VLSI-Logik
mit Zählern,
Registern, Komparatoren und logischen Elementen implementierbar.
-
In
der Ausführungsform,
die detaillierter unten diskutiert werden soll, weist das Verfahren
zum Erzeugen und Löschen
eines EBER-Alarms allgemein es auf, einen Rückstellfensteralgorithmus anstelle
eines Algorithmus eines gleitenden Fensters zu verwenden. Insbesondere
werden BIP-8 Bytes (d. h. B2-Bytes) ankommender Datenblöcke (wobei
jeder Block B Rahmen lang ist) in einem „Leerlauf zustand" für Codeverletzungszählungen
(CV) überwacht.
Beim Empfang eines Datenblocks, der eine Codefehlerzählung hat,
die gleich einem Codeverletzungszählungsschwellwert (CVSET) ist
oder größer ist
als derselbe, wird ein Zähler
in einem „kreuzenden
Berechnungszustand" initialisiert,
und ein Fenster, das eine Mehrzahl (W) von Blöcken (einschließlich des
ersten Blocks und der W-1 nachfolgenden Blöcke) wird überwacht. Der Zähler wird
verwendet, um die Anzahl von an kommenden Blöcken im Fenster zu zählen, die
eine Codeverletzungszählung
(CV) haben, die den Codeverletzungszählungsschwellwert (CVSET) gleichkommen
oder denselben überschreiten. Wenn
im kreuzenden Berechnungszustand die Zählung (SC) gleich ihrem eigenen
Schwellwert (X) ist oder denselben überschreitet, wird ein BER-Alarm
(d. h. EBER-Bedingung
einer übermäßigen Bitfehlerrate)
oder ein „Alarmzustand" erklärt. Falls
nicht, kehrt das System in den „Leerlaufzustand" zurück, wo ankommende
Daten wieder blockweise überwacht
werden, bis ein Block eine Codeverletzungszählung CV hat, die gleich dem Schwellwert
CVSET ist oder größer ist
als derselbe.
-
Wenn
der Alarmzustand einmal erreicht ist, wird jeder empfangene Block
auf seine Codeverletzungszählung überwacht.
Der erste empfangene Block mit einer CV-Zählung von CVCLR (Codeverletzungslöschen) oder
weniger initialisiert eine Alarmlöschungsprüfung („Löschungsberechnungszustand"), die einen Löschzähler CC
setzt. Im Löschungsberechnungszustand
wird der Löschungszähler CC
verwendet, um die Anzahl von ankommenden Blöcken im Fenster zu zählen, die
eine Codeverletzungszählung
(CV) von CVCLR oder weniger haben. Wenn die CC-Zählung gleich einem dritten
Schwellwert Y innerhalb des Zeitfensters ist, wird der Alarm gelöscht, und
das System kehrt in den Leerlaufzustand zurück. Ansonsten geht des System
in den Alarmzustand.
-
In Übereinstimmung
mit einem bevorzugten Gesichtspunkt der Erfindung werden die Anzahl
von Rahmen B in einem Block, die Anzahl von Blöcken W in einem Fenster und
die Schwellwerte X, Y, CVSET und CVCLR so ausgewählt, dass sie die maximale
Detektionszeit und das Ziel der durchschnittlichen Detektionszeit
für unterschiedliche
Bitfehlerraten treffen. So kann z. B. für ein BER von 10–3,
um eine maximale Detektionszeit von 10 ms und das Ziel einer durchschnittlichen
Detektionszeit von 8 ms zu treffen, jeder Rahmen als ein Block (B
= 1) angesehen werden, siebenundsechzig Blöcke können in einem Fenster verwendet
werden (W = 67), der Codeverletzungszählungsschwellwert kann auf
drei Codeverletzungen pro Block (CVSET = 3) eingestellt werden,
der Löschcodeverletzungsschwellwert
kann auf null Codeverletzungen pro Block (CVCLR = 0) eingestellt
werden, die Schwellwertnummer von Blöcken in einem Fenster, die
gleich oder größer als
CVSET ist, um den Alarm einzustellen, kann auf neununddreißig (X =
39) eingestellt werden, und die Schwellwertanzahl von Blöcken in
einem Fenster, die den CVCLR-Schwellwert
erfüllen,
um den Alarm zu löschen, kann
achtundzwanzig (Y = 28) sein. Mit einer solchen Anordnung wird das
Erfordernis der Burst-Sicherheit ebenfalls erfüllt. Für ein unterschiedliches BER
können
unterschiedliche Werte verwendet werden. Z. B. für ein BER von 10–6 werden
die folgenden Werte die maximale Detektionszeit und das Ziel einer
durchschnittlichen Detektionszeit erfüllen: W = 160, B = 200, X =
48, CVSET = 2, Y = 122, CVCLR = 0.
-
In Übereinstimmung
mit einem weiteren Gesichtspunkt der Erfindung wird eine Hardware
oder Softwarevorrichtung, die vier oder fünf Zähler und sechs Register hat,
beim Ausführen
des Verfahrens der Erfindung verwendet. Insbesondere schließen die
Zähler
einen Codeverletzungszähler
CV zum Zählen
von BIP-8-Fehlern, einen Einstellzähler SC zum Zählen der
Anzahl von Blöcken,
die CV ≥ CVSET
haben, einen Löschzähler CC
zum Zählen
der Anzahl von Blöcken,
die CV ≤ CVCLR
haben, einen Blockzähler
BC zum Zählen
der Fensterlänge
W und einen Rahmenzähler
FC zum Zählen
der Anzahl von Rahmen B in einem Block ein. Falls gewünscht, kann
der Einstellzähler
SC als der Löschzähler CC
erneut verwendet werden. Die Register schließen Register zum Speichern
von Werten für
Schwellwerte CVSET, CVCLR, X und Y und Register zum Speichern von
Werten für
die Anzahl von Blöcken
W in einem Fenster und der Anzahl von Blöcken B in einem Block ein.
-
Zusätzliche
Ziele und Vorteile der Erfindung werden für den Fachmann bei Bezugnahme
auf die detaillierte Be schreibung in Verbindung mit den vorgesehen
Figuren deutlich werden.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Es
zeigen:
-
1 eine Darstellung des Standes
der Technik des Aufbaus eines SONET STS-1 Rahmens;
-
2 eine Darstellung des Standes
der Technik besonderer Bytes im Abschnitts-Linien- und Pfadschichtoverheadteil
des STS-1 Rahmens von 1;
-
3 ein Ablaufdiagramm des
Rückstellfensterverfahrens
der Erfindung zum Erzeugen und Löschen von
Bitfehlerratenalarmen;
-
4 ein Blockdiagramm einer
VLSI-Vorrichtung, die Bitfehlerratenalarme in Übereinstimmung mit dem Rückstellfensterverfahren
der Erfindung erzeugt und löscht.
-
DETAILLIERTE BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORM
-
Bezugnehmend
nun auf 3 ist das „Rückstellfenster"-Verfahren der Erfindung
zum Erzeugen und Löschen
von Bitfehlerratenalarmen in Ablaufdiagrammform gezeigt. Das Verfahren
definiert vier Zustände:
einen Leerlaufzustand 10, einen kreuzenden Berechnungszustand 20,
einen Alarmzustand 30 und einen Löschberechnungszustand 40.
Wie dies weiter unten deutlicher beschrieben werden wird, werden
im Leerlaufzustand 10 die Anzahl von Codeverletzungen,
die in Blöcken
von Daten enthalten sind (wobei jeder Block B Rahmen lang ist) blockweise überwacht,
um zu bestimmen, ob im Leerlaufzustand verblieben werden soll oder
ob vom Leerlaufzustand in den kreuzenden Berechnungszustand 20 übergegangen
werden soll. Im kreuzenden Berechnungszustand 20 wird ein
Fenster, das eine Mehrzahl von Blöcken enthält, überwacht, um zu bestimmen,
ob zum Leerlaufzustand zurückgegangen
werden soll oder ob ein Alarmzustand 30 erklärt werden
soll und der EBER-Alarm gesetzt werden soll. Im Alarmzustand wird
wiederum die Anzahl von Codeverletzungen blockweise überwacht,
um zu bestimmen, ob im Alarmzustand verblieben werden soll oder
ob vom Alarmzustand in den Löschberechnungszustand 40 übergegangen
werden soll. Schließlich
wird im Löschberechnungszustand 40 ein
anderes Fenster von Blöcken überwacht,
um zu bestimmen, ob zum Alarmzustand zurückgekehrt werden soll oder
ob zum Leerlaufzustand übergegangen
werden soll und der EBER-Alarm gelöscht werden soll.
-
Das
Verfahren beginnt mit dem Leerlaufzustand 10, wo kein EBER-Alarm
erklärt
worden ist, oder wo ein solcher Alarm gelöscht worden ist. Im Leerlaufzustand
wird/werden die BIP-8-Byte(s), die überwacht werden (d. h. der
B2-Byte des Rahmens) überwacht,
so dass eine Zählung
der Anzahl von Codeverletzungen CV durchgeführt wird, die in jedem empfangenem
Datenblock enthalten sind. Für
einen gegebenen Datenblock wird die kumulative Anzahl von Codeverletzungen
bestimmt und mit dem vorbestimmten Wert CVSET (Codeverletzung SET)
verglichen. Wenn die Anzahl von Codeverletzungen für den Block
weniger ist als CVSET, wie dies bei 12 angezeigt ist, bleibt
das Verfahren im Leerlaufzustand, und der nächste Datenblock wird auf die kumulative
Anzahl von Codeverletzungen untersucht, die darin enthalten ist.
Wenn die Anzahl von Codeverletzungen für den Block jedoch gleich ist
mit oder größer ist
als CVSET, wie dies bei 14 angedeutet ist, werden zwei
Zähler
(Einstellzähler
SC und Blockzähler
BC) initialisiert (z. B. setze auf einen Wert „eins") bei 16, und der „kreuzende Berechnungszustand" 20 wird
erklärt.
-
Im
kreuzenden Berechnungszustand 20 wird ein Fenster überwacht,
das eine Mehrzahl (W) aufeinanderfolgender Blöcke (einschließlich des
Blocks, der die Bewegung vom Leerlaufzustand 10 in den
kreuzenden Berechnungszustand 20 be wirkt hat) aufweist.
Der Blockzähler
BC wird verwendet, um die Blöcke
im Fenster zu verfolgen, während
der Einstellzähler
SC verwendet wird, um die Anzahl von Blöcken zu verfolgen, die eine kumulative
Anzahl von Codeverletzungen haben, die größer ist als oder gleich mit
CVSET. Während
im kreuzenden Berechnungszustand 20 jeder Block der Fensters
auf Fehlerverletzungen analysiert wird, wird, wenn die Anzahl von
Codeverletzungen kleiner ist als CVSET für diesen Block, wie dies bei 21 angezeigt
ist, nur der Blockzähler
BC bei 21 hochgeschaltet. Wenn die Anzahl von Codeverletzungen
größer ist
oder gleich mit CVSET für
diesen Block, wie dies bei 23 angezeigt ist, so werden
jedoch sowohl der Einstellzähler
SC als auch der Blockzähler
BC bei 24 in ihrer Zählung
erhöht.
Wenn der Wert des Einstellzählers
SC einen Schwellwert X erreicht (oder überschreitet), wie dies bei 26 ersichtlich
ist, bevor der Blockzähler
einen Wert W erreicht oder wenn er diesen Wert erreicht (d. h. innerhalb
des Fensters von Blocks erreicht die Anzahl von Blocks, die Codeverletzungen
größer als
oder gleich CVSET enthalten, einen vorbestimmten Schwellwert), wird
der Alarmzustand bei 30 erklärt (wenn der Schwellwert erreicht
wird), und der EBER-Alarm wird eingestellt. Ansonsten kehrt das
Verfahren, wie dies bei 27 angezeigt ist, in den Leerlaufzustand 10 zurück, wo jeder
Block blockweise analysiert wird, um zu bestimmen, ob wieder in
den kreuzenden Berechnungszustand 20 eingetreten werden soll.
-
Im
Alarmzustand 30, wo ein EBER-Alarmsignal erzeugt wird (siehe 4) werden die Codeverletzungen
wieder blockweise analysiert. Wenn die Anzahl von Codeverletzungen
in einem Block einen vorbestimmten Schwellwert CVCLR (Code Violation
CLeaR, Codeverletzungslöschung) überschreitet,
wie dies bei 32 angedeutet ist, bleibt das Verfahren im
Alarmzustand und der nächste
Block wird analysiert. Wenn die Anzahl von Codeverletzungen in einem
Block jedoch kleiner ist oder gleich ist dem Wert CVCLR, wie dies
bei 34 angezeigt ist, werden zwei Zähler (der „Löschzähler" CC und der Blockzähler BC) wieder auf einen Wert „1" bei 36 (zurück) initialisiert,
und der Löschungsberechnungszustand
wird bei 40 erklärt.
-
Im
Löschungsberechnungszustand
wird ein zweites Fenster einer vorbestimmten Anzahl W von Blöcken analysiert,
um zu bestimmen, wieviele Blöcke
Codeverletzungen aufweisen, die den Schwellwert CVCLR überschreiten.
Da jeder Block analysiert wird, so wird nur der Blockzähler BC
bei 42 in seiner Zählung
hochgeschaltet, wenn die Codeverletzungen für diesen Block den Schwellwert
CVCLR überschreiten,
wie dies bei 41 angezeigt ist. Wenn die Codeverletzungen
für diesen
Block gleich oder geringer ist als der Schwellwert CVCLR, wie dies
bei 43 angezeigt ist, werden sowohl der Löschzähler CC
als auch der Blockzähler
BC bei 44 in ihrer Zählung
hochgeschaltet. Wenn die Zählung
des Löschzählers einen
vorbestimmten Schwellwert Y erreicht oder überschreitet, wie dies bei 45 angezeigt
ist, bevor oder wenn der Blockzähler
BC das Ende des Fensters erreicht (d. h. BC = W) wird der EBER-Alarm
gelöscht
(beim Erreichen des Schwellwerts), und das Verfahren kehrt in den
Leerlaufzustand zurück.
Wenn der Löschzähler jedoch
nicht den Schwellwert Y vor dem Ende oder am Ende des Fensters erreicht
(d. h. wenn BC = W), wie dies bei 47 angezeigt ist, kehrt
das verfahren in den Alarmzustand 30 zurück, und
jeder Block von Daten wird erneut blockweise analysiert, zu bestimmen,
ob der Alarmzustand verlassen werden soll oder darin verblieben
werden soll.
-
In Übereinstimmung
mit einem bevorzugten Gesichtspunkt können die Anzahl B der Rahmen
in einem Block, die Anzahl W von Blöcken in einem Fenster und die
Schwellwerte X, Y, CVSET und CVCLR eingestellt werden, um die maximale
Detektionszeit und das Ziel der durchschnittlichen Detektionszeit
für unterschiedliche
Bitfehlerraten zu erreichen.
-
Demgemäß sind bevorzugte
Schwellwerte und Werte für
Parameter B und W in der Tabelle 1 aufgeführt.
-
-
Mit
den werten, wie sie gezeigt sind, wo der BER-Schwellwert von 10–3 gewünscht ist,
wird die maximale Detektionszeit gleich der Länge des Fensters von siebenundsechzig
Rahmen sein, d. h. 67 × 125 μsec = 8.375
ms, was geringer ist als das maximale Detektionszeiterfordernis
von 10 ms für
diesen BER-Schwellwert. Ähnlich
wird die minimale Detektionszeit neununddreißig Rahmen = 4.875 ms sein
(was mehr als das Erfordernis der Burst-Sicherheit ist). Daher wird
auch das Ziel der durchschnittlichen Detektionszeit von 8 ms für diesen
BER-Schwellwert erreicht.
-
Bezugnehmend
nun auf 4 wird ein Blockdiagramm
einer Vorrichtung 100 gezeigt, die das Verfahren der Erfindung
implementiert. Wie der Fachmann verstehen wird, sind die BIP-8-Codes,
die in den B1, B2 und B3-Bytes des STSn Signalrahmens enthalten
sind, Paritäts-Bits
unterschiedlicher Teile des vorhergehenden Rahmens. Man wird auch
verstehen, dass beim Erhalten einer Bitfehler- (Codeverletzungs)
Zählung
es notwendig ist, vom ankommenden Rahmen den BIP-Codewert für den Rahmen
zu berechnen, der empfangen wurde, und dann diesen Wert mit dem
BIP-8-Wert zu vergleichen, der im nächsten Rahmen empfangen wird. Daher,
wie dies in 4 gezeigt
ist, wird unter Verwendung eines Rahmensynchronisierungssignals
als auch der interessierenden entschlüsselten Bytes als Eingaben
der BIP-Code für
den gewünschten
Byte (z. B. B2) durch den Block 102 berechnet und im Puffer 104 gespeichert,
so dass er durch einen Kom perator 106 mit dem BIP-Code
verglichen werden kann, der im nächsten
Rahmen empfangen wird. Der Vergleich, der durch den Komperator durchgeführt wird,
kann Werte irgendwo zwischen null und acht Codeverletzungsfehler
(CV) ergeben. In Übereinstimmung
mit der Erfindung wird die BIP-8-Fehlerzählung (CV) in einem Akkumulator
oder Zähler 108 für jeden
Block der Daten akkumuliert, die empfangen werden. Wenn der Block
von Daten nur ein einziger Rahmen ist, wird der Akkumulator 108,
der die BIP-8-Fehlerzählung
empfängt,
die durch den Komperator 106 bestimmt wird, bei jedem Rahmen
zurückgesetzt,
nachdem er Ergebnisse zur EBER-Zustandsmaschine 110 liefert.
Wo der Block von Daten eine Mehrzahl von Rahmen einschließt, wird
die BIP-Fehlerzählung im
Akkumulator 108 angesammelt, bis der Datenblock beendet
ist. Erst, nachdem der Datenblock beendet ist und die Resultate
der Zustandsmaschine 110 geliefert worden sind, wird der
Akkumulator zurückgestellt.
-
Die
angesammelte BIP-8-Fehlerzählung
CV ist nur einer von mehreren Werten, die der EBER-Zustandsmaschine 110 zugeführt werden
(obwohl sie die einzige regelmäßig geänderte Variable
ist). Die anderen Werte schließen
Registerwerte für
die Schwellenwerte CVSET, CVCLR, X und Y und Registerwerte ein,
die die Anzahl W von Blöcken
in einem Fenster und die Anzahl B von Rahmen in einem Block anzeigen.
Zusätzlich werden
ein Rahmensignal und ein Taktsignal der Zustandsmaschine 110 zugeführt. Verknüpft mit
der EBER-Zustandsmaschine 110 sind
vier Zähler:
ein Blockzähler
(BC) 112, ein Einstellzähler
(Set Counter SC) 114, ein Löschzähler (CC) 116 und
ein Rahmenzähler
(FC) 118.
-
Die
EBER-Zustandsmaschine 110 ist eine Zustandsmaschine, die
vorzugsweise durch VLSI-Hardware implementiert wird, obwohl sie
entweder in Software oder anderer Hardware implementiert werden
kann. Unabhängig
davon, wie sie implementiert ist, wird die Funktionsweise der Maschine
gemäß dem Abflaufdiagramm
von 3 durchgeführt. Ähnlich sollte
es verstanden werden, dass die Zähler 112, 114, 116 und 118 und
auch der BIP-8-Berechnungsblock 102, der Puffer 104,
der Komparator 106 und der Akkumulator 108 ebenfalls
als Hardware oder Software implementiert sein könnten. Weiter können die
Eingaben CVSET, CVCLR, X, Y, W und B in die Zustandsmaschine 110 als
werte implementiert werden, die in Hardwareregistern oder in Software
gespeichert sind. Falls gewünscht
können
der Einstellzähler 114 und
der Löschzähler 116 als ein
einziger Zähler
implementiert werden, da die Einstell- und Löschfunktionen niemals zur selben
Zeit verwendet werden; d. h., Zähler 114 und 116 werden
nie zusammen aktiv sein.
-
Mit
dem Verfahren und der Vorrichtung, wie sie vorgesehen sind, ist
es dem Benutzer vorzugsweise erlaubt, den Bitfehlerratenschwellwert
einzustellen, bei dem Alarm erzeugt werden wird. Der Benutzer definiert daher
vorzugsweise Werte für
die Parameter B, W, X, Y, CVSET und CVCLR, wobei die bevorzugten
Werte in Tabelle 1 aufgeführt
sind. Wenn die Parameterwerte eingestellt sind, werden, wenn STSn-Signale
empfangen werden, sie verwendet, den BIP-8-Wert für diesen Datenblock zu berechnen.
Der berechnete BIP-8-Wert wird dann mit dem empfangenen entsprechenden
BIP-8-Wert des nächsten
Rahmens verglichen, um eine BIP-Fehlerzählung zu
bestimmen. Da das Verfahren der Erfindung erfordert, dass die BIP-Fehlerzählung mit dem
Schwellwert CVSET blockweise verglichen wird, wobei ein Block aus
mehr als einem Rahmen besteht, wird der Rahmenszähler 118 bei jedem
Rahmen aktualisiert und wird verwendet, den Anfang (oder das Ende) jedes
Blocks zu verfolgen (d. h. die Zählung
des Rahmenzählers 118 wird
mit dem in die EBER-Zustandsmaschine
eingegebenen Wert B verglichen). Es gibt also, wie dies in 4 angezeigt ist, die EBER-Zustandsmaschine 110 ein
Rückstellsignal
an den BIP-Fehlerzähler 108 aufgrund
der Zählung
des Rahmenzählers 118. Bis
er zurückgestellt
ist, akkumuliert jedoch der BIP-Fehlerzähler 108 die BIP-Fehlerzählung für den Block. Wenn
die Zustandsmaschine 110 feststellt, dass die Zählung des
Zählers 108 den
Schwellwert CVSET überschreitet,
werden der Blockzähler 112 und
der Einstellzähler 114 vorzugsweise
auf den Wert „1" initialisiert. Die Vorrichtung
einschließlich
der Zustandsmaschine funktioniert dann weiter wie vorher beschrieben,
jedoch im kreuzenden Berechnungszustand.
-
Im
kreuzenden Berechnungszustand verfolgt nicht nur der Rahmenzähler die
Blöcke,
um den BIP-8-Fehlerzähler 108 zurückzustellen,
es wird vielmehr der Blockzähler 112 nach
jedem Block in seiner Zählung
erhöht
und mit dem Wert W verglichen, um zu bestimmen, ob das Fenster vervollständigt ist.
Außerdem wird
der Einstellzähler 116,
der bei jedem Block in seiner Zählung
erhöht
wird, wo die BIP-8-Fehlerzählung
CV den Schwellwert CVSET überschreitet,
mit dem Alarmeinstellschwellwert X verglichen. In Abhängigkeit
vom Wert des Einstellzählers
(verglichen mit X) kann sich die Zustandsmaschine entweder in den
Alarmzustand bewegen und einen Alarm BN*EBER ausgeben, oder bei
Vervollständigung
des Fensters W in den Leerlauf zustand zurückkehren.
-
Im
Alarmzustand arbeitet die EBER-Zustandsmaschine auf eine Weise,
die dem Leerlaufzustand ähnlich
ist, mit der Ausnahme, dass die angesammelte BIP-Fehlerzählung CV
mit dem Schwellwert CVCLR anstelle von CVSET verglichen wird, und
der EBER-Alarm wird ausgegeben. Wenn die Zustandsmaschine 110 feststellt,
dass die Zählung
des Zählers 108 geringer
ist als der Schwellwert CVCLR oder gleich diesem Wert ist, werden
der Blockzähler 112 und
der Löschzähler 116 vorzugsweise
auf einen Wert „1" initialisiert. Die
Vorrichtung einschließlich
der Zustandsmaschine arbeitet dann weiter wie oben beschrieben,
aber im Löschberechnungszustand.
-
Im
Löschberechnungszustand
verfolgt nicht nur der Rahmenzähler
die Blöcke,
um den BIP-Fehlerzähler 108 zurückzustellen,
es wird vielmehr der Blockzähler 112 nach
jedem Block in seiner Zählung
erhöht
und mit dem Wert W verglichen, um zu bestimmen, ob das Fenster vervollständigt worden
ist. Außerdem
wird der Löschzähler 114,
der bei je dem Block in seiner Zählung
erhöht
wird, wo die BIP-Fehlerzählung CV
gleich ist oder geringer ist als der Schwellwert CVCLR, mit dem
Alarmlöschschwellwert
Y verglichen. In Abhängigkeit vom
Wert des Löschzählers 114 (verglichen
mit Y) kann sich die Zustandsmaschine in den Leerlaufzustand bewegen
und den EBER-Alarm löschen,
oder bei Vervollständigung
des Fensters kann sich die Zustandsmaschine zurück in den Alarmzustand bewegen.
-
Man
wird verstehen, dass sowohl im kreuzenden Berechnungszustand als
auch im Löschberechnungszustand
eine Bestimmung vorgenommen wird, ob in den Leerlaufzustand oder
den Alarmzustand übergangen
(oder zurückgegangen)
werden soll, beruhend auf der Information von einem einzigen Fenster.
Nachdem die Entscheidung getroffen ist und der Zustand in den Leerlaufzustand
oder den Alarmzustand geändert ist,
wird eine Bestimmung vorgenommen, ob in den kreuzenden Berechnungszustand
oder den Löschberechnungszustand
vom Leerlaufzustand oder Alarmzustand übergegangen werden soll, und
zwar blockweise. Wenn wieder in den kreuzenden oder Löschungsberechnungzustand
zurückgekehrt
wird, wird ein völlig
neues Fenster eingerichtet, das nicht mit dem vorherigen Zeitfenster überlappt.
Die Vorrichtung und das Verfahren der Erfindung verwenden daher
eine „Fensterrückstellung" wirksam im Gegensatz
zum Gleitfensteralgorithmus mit den entsprechenden Vorteilen, wie
dies vorher erwähnt
wurde.
-
Es
sollte auch verstanden werden, dass die Vorrichtung und das Verfahren
der Erfindung verwendet werden können,
Alarme für
einen beliebigen oder alle der B1, B2 und B3 Bytes des Sonettsignals
einzustellen, und das Sonettsignal SONET kann ein STS-1, STS-3 oder
irgendein anderes SONET Signal sein, das von Interesse ist. Natürlich können, wenn
es gewünscht
ist, mehr als ein Alarmsignal zu verwenden, zusätzliche Vorrichtungen verwendet
werden, die im wesentlichen identisch mit der Vorrichtung ist bzw.
sind, die in 4 gezeigt
ist.
-
Es
ist hier eine Vorrichtung und ein Verfahren zum Detektieren und
Löschen
eines Alarms einer übermäßigen Bitfehlerrate
beschrieben und dargestellt worden, die einen Fensterrückstellalgorithmus
verwenden. Obwohl besondere Ausführungsformen
der Erfindung beschrieben worden sind, ist es nicht beabsichtig,
dass die Erfindung darauf eingeschränkt ist, da es beabsichtig
ist, dass die Erfindung in ihrem Schutzbereich so weit ist, wie
es der Stand der Technik erlaubt, wobei die Unterlagen entsprechend
gelesen werden sollten. Obwohl eine besondere Vorrichtung (d. h.
eine VLSI-Zustandsmaschine mit damit verknüpften Zählern) beschrieben worden ist,
um das Verfahren durchzuführen,
wird man verstehen, dass andere Vorrichtungen verwendet werden könnten. Zum
Beispiel könnte
die Vorrichtung in einem geeignet programmierten Mikroprozessor
sehr hoher Geschwindigkeit mit damit verknüpftem Speicher ausgebildet
werden. Obwohl besondere Schwellwerte offenbart worden sind, um
zu bestimmen, ob Zustände
geändert
werden sollen, wird man erkennen, dass andere Schwellwerte benutzt
werden können,
wobei ähnliche
Ergebnisse erhalten werden würden.
Obwohl das Verfahren der Erfindung beschrieben wurde, dass der Einstellzähler einem
Vergleich unterzogen wird, um zu sehen, ob er gleich einem Schwellwert
X ist oder den überschreitet,
und der Löschzähler verglichen
wird, um zu sehen, ob er geringer ist als der Schwellwert Y, wird
man verstehen, dass die umgekehrte Funktion oder andere Funktionen
verwendet werden könnten.
Zum Beispiel könnte
der „Einstellzähler" nur in seiner Zählung erhöht werden,
wenn die BIP-Fehlerzählung
CV geringer war als CVSET, und der Alarm könnte eingestellt werden, wenn
der „Einstellzähler" geringer ist als
ein vorbestimmter Wert X'.
Alternativ könnte
der Schwellwert so erhöht
werden, dass die Bitfehlerzählung
größer sein
muss als CVSET und nicht größer oder
gleich CVSET, um den Einstellzähler
zu erhöhen.
Was also tatsächlich
erforderlich ist, ist daher nur, dass ein Vergleich zwischen der
BIP-Fehlerzählung
CV und an dem CVSET-Schwellwert
unternommen wird, um eine Anzeige eines übermä ßigen Fehlers in einem Block
zu liefern, und das (innerhalb eines Fensters) ein anderer Vergleich
zwischen einem anderen Schwellwert und einer Anzeige der Anzahl
von Malen durchgeführt
wird, bei denen ein übermäßiger Fehler
angezeigt war.
-
Man
wird auch verstehen, dass einige Besonderheiten des Verfahrens innerhalb
des Bereichs der Erfindung verändert
werden können.
Zum Beispiel könnte,
statt sofort den Alarm einzustellen oder zu löschen, wenn der Einstellzähler oder
Löschzähler den
Schwellwert zum Einstellen oder Löschen des Alarms erreicht, der
Alarm eingestellt oder gelöscht
werden und der Zustand nur geändert
werden, wenn das Ende des Fensters erreicht wird. Übersetzung
der Figuren
Figur 1
prior
Art | Stand
der Technik |
9 rows | 9
Reihen |
transport
overhead | Transportoverhead |
STS-1
envelop capacity | STS-1
Einhüllungskapazität |
125
microseconds | 125
Mikrosekunden |
B denotes
an 8-Bit Byte | B
bezeichnet einen 8-Bit Byte |
Figur
2
prior
Art | Stand
der Technik |
90
Bytes | 90
Bytes |
section
overhead | Abschnittsoverhead |
line
overhead | Linien-
oder Leitungsoverhead |
path
layer overhead | Pfadschichtoverhead |
framing | rahmen |
orderwire | Stelldraht |
user | Benutzer |
data
com | Datenkommunikation |
pointer | Zeiger |
pointer
action | Zeigerwirkung |
growth | wachsen |
trace | Spur |
signal
label | Signaletikett |
path
status | Pfadzustand |
user
channel | Benutzerkanal |
multiframe | Vielfachrahmen |
9 rows | 9
Reihen |
Figur
3
initialize
RWA to check for BER threshold crossing: | initialisiere
RWA, um auch BER-Schwellwertkreuzen zu prüfen: |
SET
SC = BC = 1 | setze
SC = BC = 1 |
idle
state | Leerlaufzustand |
increment
SC and BC | erhöhe SC und
BC |
crossing
calc. state | kreuzender
Berechnungszustand |
increment
BC | erhöhe BC |
alarm
state | Alarmzustand |
clearing
calc. state | Löschberechnungszustand |
increment
CC and BC | erhöhe CC und
BC |
initialize
RWA to check for clearing thershold: | initialisiere
RWA, um auf Löschschwellwert
zu prüfen: |
SET
CC = BC = 1 | setze
CC = BC = 1 |
Figur
4
unscrabled
data & OH Bytes | entschlüsselte Daten
und OH Bytes |
frame | Rahmen |
calculate
BIP code | berechne
BIP Code |
calculate
BIP-8 store | berechne
BIP-8 Speicher |
compare
BNn–1 with
calculated | berechne
BNn–1 mit
berechnetem |
BIP-8n–1 | BIP-8n–1 |
BIP
error count | BIP-Fehlerzählung |
reset | rückstellen |
block
counter | Blockzähler |
set
counter | Einstellzähler |
clear
counter | Löschzähler |
frame
counter | Rahmenzähler |
EBER
state machine | EBER
Zustandsmaschine |
frame | Rahmen |
clock | Takt |
reset
108 | setze
108 zurück |
window | Fenster |
alarm
set | Alarm
einstellen |
alarm
CLR | Alarm
löschen |
N*
could be 1, 2 or 3 | N*
könnte
1, 2 oder 3 sein. |