Registerkaart CMIS: onderste pagina
De onderste 128 bytes van een CMIS-module (QSFP-DD, OSFP, QSFP112, SFP-DD met CMIS…) zijn altijd zichtbaar en bevatten de runtime-interface op moduleniveau: identifier en CMIS-versie, moduletoestand, flags en maskers, modulemonitors, globale besturing, CDB-status, mediatype, de eerste acht toepassingsbeschrijvingen, wachtwoordinvoer en de bank-/paginakiezers. Deze pagina vermeldt ze byte voor byte en bit voor bit, samengesteld op basis van CMIS 5.x met verschillen voor 4.x waar die van toepassing zijn. Toelichting: CMIS; bovenste pagina's in CMIS-kaart van bovenste pagina's; pagina's per lane in CMIS-kaart van lanepagina's.
Legenda: rsvd = gereserveerd · custom = fabrikant-specifiek · flags worden gelatcht en bij lezen gewist; een maskerbit = 1 onderdrukt de bijdrage van de flag aan IntL.
Identificatie en toestand — bytes 0–7
| Byte | Veld | Bits / waarden |
|---|
| 0 | Identifier | SFF-8024 Table 4-1: 18h QSFP-DD · 19h OSFP · 1Eh QSFP+/28/56 met CMIS · 1Fh SFP-DD met CMIS · 20h SFP+ met CMIS (SFP112) · 21h OSFP-XD |
| 1 | CMIS-revisie | 7–4 major · 3–0 minor: 30h = 3.0 · 40h = 4.0 · 41h = 4.1 · 50h = 5.0 · 51h–53h = 5.1–5.3 |
| 2 | Geheugeneigenschappen | 7 MemoryModel (1 = flat, zonder paginering) · 6 SteppedConfigOnly (1 = datapadconfiguratie moet lane voor lane worden toegepast) · 5–4 rsvd · 3–2 MciMaxSpeed: 00 = 400 kHz · 01 = 1 MHz · 1–0 rsvd |
| 3 | Moduletoestand | 7–4 rsvd · 3–1 ModuleState: 001 ModuleLowPwr · 010 ModulePwrUp · 011 ModuleReady · 100 ModulePwrDn · 101 ModuleFault · 0 InterruptDeasserted (1 = geen onderbreking in behandeling) |
| 4 | Overzicht van flags voor bank 0 | één bit per aanwezige flaggroep in lanepagina's van bank 0 (datapadtoestand gewijzigd, Tx/Rx-flags, alarmen) — lees om te weten welke bank u moet inspecteren |
| 5 | Overzicht van flags voor bank 1 | zoals byte 4 voor lanes 9–16 |
| 6 | Overzicht van flags voor bank 2 | lanes 17–24 |
| 7 | Overzicht van flags voor bank 3 | lanes 25–32 |
Moduleflags — bytes 8–11
| Byte | Veld | Bits |
|---|
| 8 | Flags op moduleniveau | 7–5 rsvd · 4 CdbCmdComplete2 · 3 CdbCmdComplete1 · 2 DataPathFirmwareFault · 1 ModuleFirmwareFault · 0 ModuleStateChanged |
| 9 | Temperatuur- / Vcc-flags | 7 Vcc-laagwaarschuwing · 6 Vcc-hoogwaarschuwing · 5 Vcc-laagalarm · 4 Vcc-hoogalarm · 3 temp-laagwaarschuwing · 2 temp-hoogwaarschuwing · 1 temp-laagalarm · 0 temp-hoogalarm |
| 10 | Aux1- / Aux2-vlaggen | 7 Aux2-laagwaarschuwing · 6 Aux2-hoogwaarschuwing · 5 Aux2-laagalarm · 4 Aux2-hoogalarm · 3 Aux1-laagwaarschuwing · 2 Aux1-hoogwaarschuwing · 1 Aux1-laagalarm · 0 Aux1-hoogalarm |
| 11 | Aux3- / custom-vlaggen | 7–4 waarschuwing laag / hoog / alarm laag / hoog voor custom monitor · 3 Aux3-laagwaarschuwing · 2 Aux3-hoogwaarschuwing · 1 Aux3-laagalarm · 0 Aux3-hoogalarm |
| 12–13 | rsvd | — |
Modulemonitoren — bytes 14–25
| Bytes | Monitor | Indeling |
|---|
| 14–15 | Temperatuur | 16-bit met teken, 1/256 °C |
| 16–17 | Vcc | 16-bit zonder teken, 100 µV |
| 18–19 | Aux1 | TEC-stroom (met teken, % van max ×100/32767) of lasertemperatuur (1/256 °C) — type dat de module op pagina 01h meldt |
| 20–21 | Aux2 | lasertemperatuur of TEC-stroom |
| 22–23 | Aux3 | lasertemperatuur of aanvullende voedingsspanning (100 µV) |
| 24–25 | Custom monitor | fabrikant-gedefinieerd |
Globale besturing en maskers — bytes 26–36
| Byte | Veld | Bits |
|---|
| 26 | Globale modulebesturing | CMIS 5.x: 7 rsvd · 6 LowPwrAllowRequestHW (1 = de LPMode-pin mag een laag vermogen aanvragen) · 5 SquelchMethodSelect (0 = OMA-squelch, 1 = Pave) · 4 LowPwrRequestSW (1 = laag vermogen aanvragen) · 3 SoftwareReset · 2–0 rsvd · 4.x: 6 = LowPwr (softwareaanvraag voor laag vermogen) · 4 = ForceLowPwr · 5 en 3 zoals hierboven |
| 27 | Maskers voor moduleflags | maskers voor byte 8 (dezelfde bitposities) |
| 28 | Maskers voor temperatuur / Vcc | maskers voor byte 9 |
| 29 | Maskers voor Aux1 / Aux2 | maskers voor byte 10 |
| 30 | Maskers voor Aux3 / custom | maskers voor byte 11 |
| 31–36 | rsvd | — |
CDB-status en firmware — bytes 37–41
| Byte | Veld | Bits / waarden |
|---|
| 37 | CdbStatus1 (opdrachtblok 1) | 7 CdbIsBusy · 6 CdbHasFailed · 5–0 CdbCommandResult: tijdens bezig — 01h opdracht vastleggen, 02h controleren, 03h uitvoeren; bij succes — 01h geslaagd, 02h geen antwoord? ; bij mislukking — 01h onbekende opdracht, 02h parameter buiten bereik, 03h lengtefout, 04h checksumfout, 05h wachtwoordfout, 06h niet ingeschakeld, 07h afbreken? … (zie CMIS Table 8-20) |
| 38 | CdbStatus2 (opdrachtblok 2) | zelfde indeling |
| 39 | Actieve modulefirmware — major | versie van actieve image |
| 40 | Actieve modulefirmware — minor | — |
| 41 | ModuleFaultCause | 00h geen storing · 01h TEC op hol · 02h datageheugen beschadigd · 03h programmageheugen beschadigd · 04h–1Fh rsvd · 20h–FFh custom |
| 42–63 | rsvd | — |
| 64–84 | rsvd / custom | per revisie |
| Byte | Veld | Inhoud |
|---|
| 85 | MediaType | 00h ongedefinieerd · 01h MMF (SFF-8024 Table 4-6) · 02h SMF (4-7) · 03h passief koper (4-8) · 04h actieve kabel (4-9) · 05h BASE-T (4-10) · 06h–3Fh rsvd · 40h–8Fh custom |
| 86–89 | Toepassingsbeschrijving 1 | byte 86 HostInterfaceID (SFF-8024 Table 4-5) · 87 MediaInterfaceID (tabel volgens byte 85) · 88 bits 7–4 HostLaneCount, 3–0 MediaLaneCount · 89 HostLaneAssignmentOptions — bit n = 1: lane n+1 mag de eerste lane van het datapad van deze toepassing zijn |
| 90–93 | Toepassingsbeschrijving 2 | zelfde indeling |
| 94–97 | Toepassingsbeschrijving 3 | — |
| 98–101 | Toepassingsbeschrijving 4 | — |
| 102–105 | Toepassingsbeschrijving 5 | — |
| 106–109 | Toepassingsbeschrijving 6 | — |
| 110–113 | Toepassingsbeschrijving 7 | — |
| 114–117 | Toepassingsbeschrijving 8 | — |
Een FFh in de eerste byte van een beschrijving beëindigt de lijst. Beschrijvingen 9–15 lopen door op pagina 01h bytes 223–250; de toewijzingsopties voor hun media-lanes staan op pagina 01h 176–190. Voorbeeld: 12 1C 84 01 = 400GAUI-8 C2M ↔ 400GBASE-DR4, 8 host-lanes / 4 media-lanes, beginnend bij host-lane 1; 0E 14 21 55 = 100GAUI-2 ↔ 100GBASE-DR, 2/1 lanes, mag beginnen op lanes 1, 3, 5, 7 (4 × 100G-breakout).
Wachtwoorden en kiezers — bytes 118–127
| Byte | Veld | Inhoud |
|---|
| 118–121 | Invoer voor wachtwoordwijziging | fabrikant-gedefinieerd |
| 122–125 | Wachtwoordinvoer | fabrikant-gedefinieerd — Typen schrijfbeveiliging |
| 126 | BankSelect | 00h bank 0 (lanes 1–8) · 01h bank 1 (9–16) · 02h bank 2 · 03h bank 3; geldt voor gebankte pagina's 10h–3Fh |
| 127 | PageSelect | 00h identiteit · 01h gemelde module-eigenschappen · 02h drempels · 04h lasermogelijkheden · 10h lanebesturing · 11h lanestatus · 12h afstembare besturing · 13h–14h diagnostiek · 20h–2Fh VDM · 9Fh CDB · A0h–AFh CDB EPL · 80h–8Fh… custom |
Een QSFP-DD-onderste pagina in de praktijk lezen
- Byte 0 = 18h, byte 1 = 50h → QSFP-DD, CMIS 5.0; byte 2 bit 7 = 0 → geheugen met pagina's.
- Byte 3 = 03h → ModuleLowPwr (001 in bits 3–1, onderbreking gedeactiveerd) — normaal direct na plaatsing; 07h → ModuleReady.
- Byte 85 = 02h → SMF-mediatabel; bytes 86–89 → de eerste applicatie (bijv. DR4).
- Bytes 8–11 → is een moduleflag ingesteld? Lees tweemaal om de geschiedenis te wissen.
- Bytes 14–17 → temperatuur en Vcc.
- Om de laagvermogenstand in 5.x te verlaten: wis byte 26 bit 4 (LowPwrRequestSW) en zorg dat de LPMode-pin laag staat of bit 6 de waarde 0 heeft; wacht vervolgens tot byte 3 de waarde 07h bereikt.
Gerelateerde overzichten