SFF-8472 — diagnostyka SFP
SFF-8472, Diagnostic Monitoring Interface for Optical Transceivers, to specyfikacja zarządzania dla każdego modułu klasy SFP: SFP, SFP+, SFP28 oraz, z rozszerzonymi kodami, SFP56. Wyrosła z bloku Serial ID SFP MSA (INF-8074), zachowała ten blok bajt po bajcie i dodała drugi układ pamięci z diagnostyką w czasie rzeczywistym. Miedziane SFP, moduły PON stick, przestrajalne DWDM SFP+ i końcówki kabli DAC/AOC identyfikują się za pomocą tej specyfikacji. Historia wersji i bajt wersji: Wersje specyfikacji.
Dwa adresy pamięci
Moduł jest odczytywany przez interfejs dwuprzewodowy pod dwoma adresami urządzeń:
| Adres | Układ | Zawartość |
|---|---|---|
| A0h | Serial ID EEPROM (256 bajtów, płaska) | dane identyfikacyjne: typ, złącze, kody zgodności, szybkość, długości, blok producenta, opcje, sumy kontrolne |
| A2h | diagnostyka (128 bajtów + stronicowana górna połowa) | progi, stałe kalibracji, bieżące wielkości mierzone, stan/sterowanie, flagi, EEPROM użytkownika, strony producenta |
To, czy A2h w ogóle istnieje, deklaruje bit 6 bajtu 92 A0h. Domyślna prędkość magistrali to 100 kHz. Tabele bajt po bajcie: Szybki przegląd mapy pamięci.
A0h — dane identyfikacyjne w pięciu blokach
| Bajty | Blok | Co się tam znajduje |
|---|---|---|
| 0–2 | Typ | identyfikator (03h = rodzina SFP, SFF-8024), rozszerzony identyfikator (04h = MOD_DEF 4, obecne Serial ID), kod złącza |
| 3–10 | Kody zgodności | pola bitowe dla 10G Ethernet, InfiniBand, ESCON, SONET, 1G Ethernet, długości / technologii / medium / szybkości Fibre Channel — zdekodowane w Kody zgodności |
| 11–19 | Sygnał i zasięg | kodowanie (11), nominalna szybkość bitowa ×100 Mb/s (12), identyfikator szybkości dla RS0/RS1 (13, patrz wybór przepływności), długości łącza: SMF km (14), SMF ×100 m (15), OM2 ×10 m (16), OM1 ×10 m (17), OM4 ×10 m lub metry dla miedzi (18), OM3 ×10 m (19) |
| 20–63 | Producent i suma kontrolna | nazwa producenta (20–35), rozszerzony kod zgodności z SFF-8024 (36), IEEE OUI (37–39), numer katalogowy (40–55), rewizja (56–59), długość fali w nm albo zgodność kabla/tłumienie dla miedzi (60–61), szybkość Fibre Channel 2 (62), CC_BASE (63) — patrz Pola producenta |
| 64–95 | Rozszerzony identyfikator | opcje (64–65), margines maks./min. szybkości bitowej % (66–67) albo, gdy bajt 12 = FFh, bajt 66 to szybkość w ×250 Mb/s, numer seryjny (68–83), kod daty (84–91), typ diagnostyki (92), rozszerzone opcje (93), wersja zgodności z SFF-8472 (94), CC_EXT (95) |
| 96–127 | Zależne od producenta | dowolne dla producenta; często zawiera konfigurację lub sygnaturę |
| 128–255 | Zarezerwowane | zarezerwowane dla tabel wyboru aplikacji SFF-8079 |
Bajty opcji 64–65
| Bajt.bit | Znaczenie, gdy ustawiony |
|---|---|
| 64.5 | deklaracja wysokiego poziomu mocy — poziom 3 (do 2,0 W) |
| 64.4 | zaimplementowane stronicowanie — bajt 127 A2h wybiera górne strony |
| 64.3 | obecny retimer lub CDR |
| 64.2 | chłodzony nadajnik |
| 64.1 | poziom mocy 2 (do 1,5 W); wyzerowany = poziom 1 (1,0 W) |
| 64.0 | liniowe wyjście odbiornika (na przykład 10GBASE-LRM) |
| 65.7 | zaimplementowany próg decyzyjny odbiornika |
| 65.6 | nadajnik przestrajalny — patrz mapy przestrajania |
| 65.5 | zaimplementowane RATE_SELECT |
| 65.4 | zaimplementowane TX_DISABLE |
| 65.3 | zaimplementowane TX_FAULT |
| 65.2 | sygnał LOS jest odwrócony |
| 65.1 | zaimplementowane LOS |
Bajt 92 — typ diagnostyki monitorującej
| Bit | Znaczenie |
|---|---|
| 6 | zaimplementowana diagnostyka cyfrowa (A2h) |
| 5 | kalibracja wewnętrzna — wielkości mierzone A2h są już w jednostkach fizycznych |
| 4 | kalibracja zewnętrzna — host musi zastosować stałe z A2h 56–91 |
| 3 | pomiar mocy odbieranej: 1 = moc średnia, 0 = OMA |
| 2 | wymagana sekwencja zmiany adresu przed dostępem do A2h (starszy mechanizm) |
Gdy bit 6 jest ustawiony, dokładnie jeden z bitów 5 i 4 powinien być ustawiony. Co każdy tryb oznacza dla widocznych wartości: Kalibracja.
Bajt 93 — rozszerzone opcje
Bit 7 zaimplementowane flagi alarmu/ostrzeżenia · 6 programowe sterowanie TX_DISABLE · 5 programowe monitorowanie TX_FAULT · 4 programowe monitorowanie RX_LOS · 3 programowy RATE_SELECT · 2 wybór aplikacji według SFF-8079 · 1 programowy wybór szybkości według SFF-8431.
A2h — diagnostyka w dziewięciu blokach
| Bajty | Blok | Uwagi |
|---|---|---|
| 0–39 | Progi alarmowe i ostrzegawcze | pięć wielkości mierzonych × (alarm górny, alarm dolny, ostrzeżenie górne, ostrzeżenie dolne), po 2 bajty każdy, ten sam format co wartość bieżąca — progi i alarmy |
| 40–55 | Progi opcjonalne | temperatura lasera i prąd TEC (moduły chłodzone/przestrajalne) |
| 56–91 | Stałe kalibracji | Rx_PWR(4..0) jako liczby zmiennoprzecinkowe 32-bit, nachylenie i offset dla Tx_I / Tx_PWR / T / V; istotne tylko gdy ustawiony jest bit 4 bajtu 92 |
| 92–94 | Zarezerwowane | — |
| 95 | CC_DMI | suma kontrolna bajtów 0–94 A2h — Sumy kontrolne |
| 96–105 | Wielkości mierzone w czasie rzeczywistym | temperatura (96–97), Vcc (98–99), bias Tx (100–101), moc Tx (102–103), moc Rx (104–105) |
| 106–109 | Wielkości mierzone opcjonalne | temperatura lasera, prąd TEC |
| 110–118 | Stan i sterowanie | bajt 110 (poniżej), flagi alarmowe 112–113, flagi ostrzegawcze 116–117, rozszerzony stan/sterowanie 118 (programowy RS1, stan i wybór poziomu mocy) |
| 119–126 | Zależne od producenta | w praktyce obszar wprowadzania hasła w wielu modułach opartych na kontrolerze (123–126) — patrz rodzaje zabezpieczenia przed zapisem |
| 127 | Wybór strony | obecny, gdy ustawiony jest bit 4 bajtu 64 A0h |
| 128–255 | Górne strony | strona 00h/01h: EEPROM użytkownika (128–247) i sterowanie producenta (248–255); strona 02h: funkcje sterujące, gdzie znajdują się rejestry przestrajania SFF-8690; pozostałe strony zależne od producenta |
Formaty wielkości mierzonych
| Wielkość mierzona | Format | Jednostka |
|---|---|---|
| Temperatura | 16-bit ze znakiem | 1/256 °C |
| Vcc | 16-bit bez znaku | 100 µV |
| Bias Tx | 16-bit bez znaku | 2 µA |
| Moc Tx, moc Rx | 16-bit bez znaku | 0,1 µW (przelicz na dBm: 10·log10(µW/1000)) |
Przeliczenia i przykłady obliczeń: Jednostki i przeliczniki.
Bajt 110 — stan/sterowanie
| Bit | Znaczenie | Dostęp |
|---|---|---|
| 7 | stan pinu TX_DISABLE | odczyt |
| 6 | programowy TX_DISABLE | odczyt/zapis (jeśli bit 6 bajtu 93) |
| 5 | stan pinu RS1 | odczyt |
| 4 | stan pinu RS0 (wybór szybkości) | odczyt |
| 3 | programowy wybór RS0 | odczyt/zapis |
| 2 | stan TX_FAULT | odczyt |
| 1 | stan RX_LOS | odczyt |
| 0 | dane niegotowe (1, dopóki wielkości mierzone się inicjalizują) | odczyt |
Specyfika miedzi i kabli
Dla miedzi pasywnej i aktywnej (DAC) bajty 60–61 nie zawierają długości fali: dla kabla pasywnego bajt 60 oznacza zgodność z SFF-8431 Appendix E; dla kabla aktywnego bity oznaczają zgodność limiting lub linear z FC-PI-4 / SFF-8431. Bity 2–3 bajtu 8 oznaczają technologię kabla pasywnego/aktywnego, a bajt 18 niesie długość w metrach. Szczegóły: Miedziany Ethernet i DAC.
Co host naprawdę odczytuje
Typowy przełącznik odczytuje bajty 0–95 A0h przy włożeniu modułu, weryfikuje CC_BASE i CC_EXT, dekoduje identyfikator, złącze, kody zgodności i szybkość, porównuje blok producenta ze swoją polityką i dopiero potem odpytuje A2h o DDM — zwykle co kilka sekund. Pełna sekwencja i jej czasy: Co robi host. Niezgodności między tymi polami a rzeczywistą optyką to źródło większości zgłoszeń typu szybkość i przepływność oraz blokada producenta.
W CodingBox
CodingBox odczytuje zarówno A0h, jak i A2h (w tym stronicowane A2h, gdy jest zadeklarowane), opisuje każde pole tabel powyżej w EEPROM editor, przelicza CC_BASE, CC_EXT i CC_DMI przy zapisie, stosuje kalibrację wewnętrzną lub zewnętrzną na ekranie DDM i pokazuje zdekodowane dane identyfikacyjne na ekranie Check transceiver.
Tabele bajt po bajcie i bit po bicie obu układów: mapa rejestrów A0h, mapa rejestrów A2h.