SFF-8024 — tabele kodów
SFF-8024, SFF Module Management Reference Code Tables, to wspólny rejestr jednobajtowych kodów, do którego odwołuje się każda inna specyfikacja zarządzania. Nie opisuje układu pamięci; przypisuje wartościom znaczenie — czym jest typ modułu 18h, co oznacza złącze 0Ch, co oznacza rozszerzony kod zgodności 06h. Ponieważ rejestr znajduje się w jednym dokumencie, SFF-8472, SFF-8636, CMIS, MIS i INF-8077i interpretują ten sam bajt tak samo, a nowe formaty obudowy albo PMD rejestruje się jednokrotnie. Dokument jest aktualizowany kilka razy w roku; zawsze dekoduj względem najnowszej wersji.
Gdzie używana jest każda tabela
| Tabela | Nazwa | SFP (SFF-8472) | QSFP (SFF-8636) | CMIS |
|---|---|---|---|---|
| 4-1 | Identyfikator | A0h bajt 0 | bajt 0 / 128 | bajt 0 / 128 |
| 4-2 | Kodowanie | bajt 11 | bajt 139 | — (wynika z aplikacji) |
| 4-3 | Złącze | bajt 2 | bajt 130 | strona 00h bajt 203 |
| 4-4 | Rozszerzona zgodność ze specyfikacją | bajt 36 | bajt 192 | — |
| 4-5 | ID interfejsu elektrycznego hosta | — | — | deskryptory aplikacji (bajt 86 + 4n) |
| 4-6 … | ID interfejsów medium (MMF, SMF, miedź pasywna, kabel aktywny, BASE-T) | — | — | deskryptory aplikacji (bajt 87 + 4n), tabelę wybiera typ medium z bajtu 85 |
Tabela 4-1 — wartości identyfikatora
| Kod | Moduł | Kod | Moduł |
|---|---|---|---|
| 00h | nieznany / nieokreślony | 11h | QSFP28 (SFF-8636) |
| 01h | GBIC | 12h | CXP2 / CXP28 |
| 02h | moduł przylutowany do płyty głównej | 13h | CDFP style 1/2 |
| 03h | SFP / SFP+ / SFP28 (SFF-8472) | 14h | shielded mini multilane HD 4X fanout |
| 04h | 300-pin XBI | 15h | shielded mini multilane HD 8X fanout |
| 05h | XENPAK | 16h | CDFP style 3 |
| 06h | XFP (INF-8077i) | 17h | microQSFP |
| 07h | XFF | 18h | QSFP-DD (CMIS) |
| 08h | XFP-E | 19h | OSFP 8X (CMIS) |
| 09h | XPAK | 1Ah | SFP-DD (MIS) |
| 0Ah | X2 | 1Bh | DSFP |
| 0Bh | DWDM-SFP / SFP+ (niezgodny z SFF-8472) | 1Ch | x4 MiniLink / OcuLink |
| 0Ch | QSFP (INF-8438) | 1Dh | x8 MiniLink |
| 0Dh | QSFP+ (SFF-8636 / SFF-8436) | 1Eh | QSFP+ lub nowszy z CMIS |
| 0Eh | CXP | 1Fh | SFP-DD z CMIS |
| 0Fh | shielded mini multilane HD 4X | 20h | SFP+ lub nowszy z CMIS (SFP112 i podobne) |
| 10h | shielded mini multilane HD 8X | 21h | OSFP-XD z CMIS |
Nowsze wersje dodają kolejne formaty obudowy zarządzane przez CMIS po 21h. Kody 80h–FFh są zależne od producenta. Który format obudowy to który: Formaty obudowy.
Tabela 4-2 — kodowanie
| Kod | SFF-8472 (SFP, bajt 11) | SFF-8636 (QSFP, bajt 139) |
|---|---|---|
| 00h | nieokreślone | nieokreślone |
| 01h | 8B/10B | 8B/10B |
| 02h | 4B/5B | 4B/5B |
| 03h | NRZ | NRZ |
| 04h | Manchester | SONET skramblowany |
| 05h | SONET skramblowany | 64B/66B |
| 06h | 64B/66B | Manchester |
| 07h | 256B/257B (transkodowany FEC) | 256B/257B |
| 08h | PAM4 | PAM4 |
Te dwie kolumny różnią się w zakresie 04h–06h — klasyczna przyczyna „błędnego kodowania”, gdy szablon QSFP jest ponownie wykorzystywany dla SFP.
Tabela 4-3 — typy złączy
| Kod | Złącze | Kod | Złącze |
|---|---|---|---|
| 00h | nieznane | 0Ch | MPO 1×12 |
| 01h | SC | 0Dh | MPO 2×16 |
| 02h | Fibre Channel style 1 (miedziane) | 20h | HSSDC II |
| 03h | Fibre Channel style 2 (miedziane) | 21h | pigtail miedziany |
| 04h | BNC/TNC | 22h | RJ45 |
| 05h | złącza koncentryczne Fibre Channel | 23h | brak rozłącznego złącza (DAC, AOC, moduły z pigtailem) |
| 06h | Fiber Jack | 24h | MXC 2×16 |
| 07h | LC | 25h | CS |
| 08h | MT-RJ | 26h | SN (dawniej mini CS) |
| 09h | MU | 27h | MPO 2×12 |
| 0Ah | SG | 28h | MPO 1×16 |
| 0Bh | pigtail optyczny | — | — |
Zdjęcia i dopasowanie do światłowodu: Złącza i światłowód.
Tabela 4-4 — rozszerzona zgodność ze specyfikacją (wybór)
Używana w bajcie 36 SFP i bajcie 192 QSFP; pojedyncza wartość, nie pole bitowe.
| Kod | Znaczenie | Kod | Znaczenie |
|---|---|---|---|
| 01h | 100G AOC / 25GAUI C2M AOC (BER 5·10⁻⁵) | 1Fh | 40G SWDM4 |
| 02h | 100GBASE-SR4 / 25GBASE-SR | 20h | 100G SWDM4 |
| 03h | 100GBASE-LR4 / 25GBASE-LR | 21h | 100G PAM4 BiDi |
| 04h | 100GBASE-ER4 / 25GBASE-ER | 22h–24h | 4WDM-10 / -20 / -40 MSA |
| 05h | 100GBASE-SR10 | 25h | 100GBASE-DR |
| 06h | 100G CWDM4 | 26h | 100G-FR / 100GBASE-FR1 |
| 07h | 100G PSM4 | 27h | 100G-LR / 100GBASE-LR1 |
| 08h | 100G ACC / 25GAUI C2M ACC (BER 5·10⁻⁵) | 30h–33h | 50G/100G/200G, aktywna miedź i AOC przy określonych BER |
| 0Bh | 100GBASE-CR4 / 25GBASE-CR CA-25G-L / 50GBASE-CR2 (RS-FEC) | 40h | 50GBASE-CR / 100GBASE-CR2 / 200GBASE-CR4 |
| 0Ch | 25GBASE-CR CA-25G-S / 50GBASE-CR2 (BASE-R FEC) | 41h | 50GBASE-SR / 100GBASE-SR2 / 200GBASE-SR4 |
| 0Dh | 25GBASE-CR CA-25G-N / 50GBASE-CR2 (bez FEC) | 42h | 50GBASE-FR / 200GBASE-DR4 |
| 10h | 40GBASE-ER4 | 43h | 200GBASE-FR4 |
| 11h | 4×10GBASE-SR | 44h | 200G 1550 nm PSM4 |
| 12h | 40G PSM4 | 45h | 50GBASE-LR |
| 13h–15h | ITU-T G.959.1 P1I1-2D1 / P1S1-2D2 / P1L1-2D2 | 46h | 200GBASE-LR4 |
| 16h | 10GBASE-T z SFI | 47h | 400GBASE-DR4 |
| 17h | 100G CLR4 | 48h | 400GBASE-FR4 |
| 18h | 100G AOC / 25GAUI AOC (BER 10⁻¹²) | 49h | 400GBASE-LR4-10 |
| 19h | 100G ACC / 25GAUI ACC (BER 10⁻¹²) | 4Ah | 400GBASE-ZR |
| 1Ah | 100GE-DWDM2 | 7Fh | 256GFC-SW4 |
| 1Bh | 100G 1550 nm WDM (4 λ) | 80h | obsługuje 64GFC |
| 1Ch–1Eh | 10GBASE-T SR / 5GBASE-T / 2.5GBASE-T | 81h | obsługuje 128GFC |
To ta tabela w ogóle umożliwia identyfikację 25G i 100G: klasyczne pola bitowe w bajtach 3–10 SFF-8472 nie mają na nie miejsca. Jak te dwa mechanizmy się łączą: Kody zgodności.
Tabele 4-5 i kolejne — identyfikatory interfejsów CMIS (wybór)
CMIS opisuje możliwości modułu jako aplikacje: interfejs elektryczny hosta połączony z interfejsem medium. Obie połówki to kody SFF-8024.
| Interfejs elektryczny hosta (4-5) | Kod |
|---|---|
| 1000BASE-CX | 01h |
| XAUI | 02h |
| XFI | 03h |
| SFI | 04h |
| 25GAUI C2M | 05h |
| XLAUI C2M | 06h |
| XLPPI | 07h |
| LAUI-2 C2M | 08h |
| 50GAUI-2 C2M | 09h |
| 50GAUI-1 C2M | 0Ah |
| CAUI-4 C2M | 0Bh |
| 100GAUI-4 C2M | 0Dh |
| 100GAUI-2 C2M | 0Eh |
| 200GAUI-8 C2M | 0Fh |
| 200GAUI-4 C2M | 10h |
| 400GAUI-16 C2M | 11h |
| 400GAUI-8 C2M | 12h |
| 400GAUI-4 C2M | 13h–14h (krótki / długi) |
| 800G C2M (8 × 100G) | 15h–16h |
| Interfejs medium | Tabela MMF | Tabela SMF |
|---|---|---|
| 10GBASE-SR / 10GBASE-LR | 02h | 04h |
| 25GBASE-SR / 25GBASE-LR | 03h | 07h |
| 40GBASE-SR4 / 40GBASE-LR4 | 04h | 09h |
| 100GBASE-SR4 / 100GBASE-LR4 | 09h | 0Dh |
| 100G SWDM4 / 100G CWDM4 | 0Ah | 10h |
| 100GBASE-SR2 / 100GBASE-DR | 0Ch | 14h |
| 100G-SR / 100G-FR | 0Dh | 15h |
| 200GBASE-SR4 / 200GBASE-DR4 | 0Eh | 17h |
| 400GBASE-SR8 / 400GBASE-DR4 | 10h | 1Ch |
| 400G-SR4 / 400G-FR4 | 11h | 1Dh |
| 800G-SR8 / 800G-DR8 | 12h | (kody 800G następują) |
Miedź pasywna, kabel aktywny i medium BASE-T mają własne, krótkie tabele; która tabela obowiązuje, ustala bajt 85 typu medium CMIS (01h MMF, 02h SMF, 03h miedź pasywna, 04h kabel aktywny, 05h BASE-T). Pełne listy zmieniają się z każdą wersją SFF-8024 — traktuj powyższe jako orientację, nie jako rejestr. Jak aplikacje są zgłaszane i wybierane: CMIS.
Uwagi praktyczne
- Host ze starszym firmware'em pokazuje kody, których nie zna, jako nieznany — to nieszkodliwe przy odczycie, ale niektóre platformy odmawiają uruchomienia modułu, którego typu nie potrafią rozpoznać.
- Podczas kodowania modułu wybieraj kody opisujące rzeczywisty sprzęt; hosty wzajemnie porównują identyfikator, złącze, kodowanie i zgodność (Prędkość i przepływność).
- Zakresy zarezerwowane i zależne od producenta (80h–FFh) są dozwolone, ale nie dekodują się na nic użytecznego.
W CodingBox
CodingBox zawiera tabele SFF-8024 i wykorzystuje je do opisywania pól identyfikatora, złącza, kodowania, rozszerzonej zgodności i aplikacji CMIS w EEPROM editor oraz na ekranie Check transceiver, dzięki czemu surowe 12h w deskryptorze aplikacji QSFP-DD odczytuje się jako 400GAUI-8 C2M.
Identyfikator 21h w praktyce: OSFP-XD; OSFP przy 200G na linię zachowuje 19h — OSFP224.
Identyfikator 1Bh w praktyce: DSFP — dwie linie w obudowie wielkości SFP, zarządzanie wyprowadzone z CMIS.