Progi, alarmy i flagi
Moduł nie tylko zgłasza wartości: niesie też granice, względem których te wartości są oceniane, i podnosi flagi, gdy granica zostaje przekroczona. Przełącznik czyta to wszystko z pamięci modułu; niczego nie wymyśla. Dlatego dwa identycznie wyglądające moduły mogą zachowywać się różnie na tym samym łączu.
Cztery progi na parametr
Każdy parametr DDM ma cztery fabrycznie zaprogramowane granice:
| Próg | Znaczenie |
|---|---|
| Wysoki alarm | wartość powyżej niego → moduł może zawodzić albo łącze jest nieużywalne |
| Wysokie ostrzeżenie | zbliżanie się do górnej granicy |
| Niskie ostrzeżenie | zbliżanie się do dolnej granicy |
| Niski alarm | wartość poniżej niego → np. Rx poniżej czułości odbiornika |
Definiują one trzy strefy: normalną (między ostrzeżeniami), ostrzegawczą (między ostrzeżeniem a odpowiadającym mu alarmem) i alarmową (poza alarmem). Zdrowy moduł 10 km może mieć progi Rx w przybliżeniu +0,5 / −2 / −18 / −22 dBm (HA / HW / LW / LA), ale każdy producent ustawia własne.
Gdzie są przechowywane: SFF-8472
Bajty A2h 0–39, dwa bajty na próg, w tych samych jednostkach co wielkości mierzone (Parametry i jednostki):
| Bajty | Parametr (HA, LA, HW, LW) |
|---|---|
| 0–7 | Temperatura |
| 8–15 | Vcc |
| 16–23 | Polaryzacja Tx |
| 24–31 | Moc Tx |
| 32–39 | Moc Rx |
| 40–55 | opcjonalne progi rozszerzone (temperatura lasera, TEC) |
Kolejność w każdej grupie to wysoki alarm, niski alarm, wysokie ostrzeżenie, niskie ostrzeżenie.
Flagi: na co faktycznie reaguje host
| Bajty A2h | Zawartość |
|---|---|
| 110 | stan/sterowanie: stan TX_DISABLE, stan RS0/RS1, TX_FAULT, RX_LOS, data-ready |
| 112–113 | flagi alarmowe: jeden bit na parametr, wysoki i niski |
| 116–117 | flagi ostrzegawcze: jeden bit na parametr, wysoki i niski |
Moduł ustawia flagę, gdy wartość przekracza swój próg, i czyści ją, gdy wartość wraca do normy. Host, który pokazuje „Rx power low alarm”, po prostu czyta bit 1 bajtu 113, nic więcej. To, czy flagi są w ogóle zaimplementowane, deklaruje bajt 93 bit 7 w A0h.
QSFP i CMIS
Obowiązuje ten sam model, z flagami dla poszczególnych linii:
- SFF-8636: progi modułu na górnej stronie 03h, bajty 128–175 (temperatura, Vcc), progi kanałów bajty 176–223 (moc Rx, polaryzacja Tx, moc Tx); flagi na dolnej stronie, bajty 3–14 (LOS/fault/LOL w 3–5, alarmy temperatury i Vcc w 6–7, alarmy mocy i polaryzacji dla poszczególnych linii w 9–14).
- CMIS: progi modułu na stronie 02h, progi linii dalej na tej samej stronie; flagi modułu w dolnych bajtach 8–13, flagi linii na stronie 11h, bajty 134–153.
Zobacz Diagnostyka poszczególnych linii.
Dlaczego „brak alarmu” to nie to samo co „zdrowy”
Progi to opinia producenta modułu o jego własnych granicach, a nie o granicach łącza. Typowe konsekwencje:
- Hojne progi: moduł, którego niski alarm Rx leży przy −24 dBm, będzie milczał na odbiorniku, który już błądzi przy −20 dBm.
- Fikcyjny Tx: stała wartość Tx nigdy nie przekroczy progu.
- Budżet mocy łącza dotyczy zapasu, nie granic: łącze przy −17 dBm z ostrzeżeniem na −18 dBm ma 1 dB zapasu i zawiedzie przy pierwszym zabrudzonym złączu.
Alerty operacyjne powinny więc opierać się na twoich własnych wartościach bazowych i deltach (Monitorowanie), traktując flagi modułu jako zabezpieczenie ostatniej linii.
Edycja progów
Ponieważ progi mieszczą się w pamięci modułu, można je odczytać i nadpisać. Uzasadnione zastosowania: przywrócenie sensownych granic w module zakodowanym zerami, ujednolicenie floty albo zaostrzenie ostrzeżenia, aby dostać wcześniejszy sygnał. Zabezpieczony obszar A2h zwykle wymaga hasła modułu.
W CodingBox
Ekran DDM nanosi progi alarmowe i ostrzegawcze modułu bezpośrednio na wykresy i koloruje wartości według strefy. Bajty progów 0–39 i flagi 112–117 są widoczne i edytowalne w EEPROM editor, a suma kontrolna CC_DMI (bajt 95) jest przeliczana przy zapisie.
Dokładne pozycje bajtów każdego progu, flagi i maski: Mapa A2h SFF-8472, dolna strona SFF-8636 i strona 03h, strona 02h CMIS i strona 11h.