CMIS: Registerkarte, untere Seite · Spezifikationen und Standards · Optische Transceiver und Kabel · Dokumentation · CodingBox
CodingBox Dokumentation

CMIS: Registerkarte, untere Seite

Die unteren 128 Bytes eines CMIS-Moduls (QSFP-DD, OSFP, QSFP112, SFP-DD mit CMIS…) sind immer sichtbar und tragen die Laufzeit-Schnittstelle auf Modulebene: Identifier und CMIS-Version, Modulzustand, Flags und Masken, Modulmonitore, globale Steuerungen, CDB-Status, Medientyp, die ersten acht Applikationsdeskriptoren, Passworteingabe und die Bank-/Page-Selektoren. Diese Seite listet sie Byte für Byte und Bit für Bit, zusammengestellt anhand von CMIS 5.x mit vermerkten 4.x-Unterschieden. Erläuterung: CMIS; obere Pages in CMIS-Upper-Pages-Map; Pages pro Lane in CMIS-Lane-Pages-Map.

Legende: rsvd = reserviert · custom = herstellerspezifisch · Flags sind gelatcht, werden beim Lesen gelöscht; ein Maskenbit = 1 unterdrückt den Beitrag des Flags zu IntL.

Identifikation und Zustand — Byte 0–7

ByteFeldBits / Werte
0IdentifierSFF-8024 Table 4-1: 18h QSFP-DD · 19h OSFP · 1Eh QSFP+/28/56 mit CMIS · 1Fh SFP-DD mit CMIS · 20h SFP+ mit CMIS (SFP112) · 21h OSFP-XD
1CMIS-Revision7–4 Major · 3–0 Minor: 30h = 3.0 · 40h = 4.0 · 41h = 4.1 · 50h = 5.0 · 51h–53h = 5.1–5.3
2Speichereigenschaften7 MemoryModel (1 = flach, kein Paging) · 6 SteppedConfigOnly (1 = Data-Path-Konfiguration muss Lane für Lane angewendet werden) · 5–4 rsvd · 3–2 MciMaxSpeed: 00 = 400 kHz · 01 = 1 MHz · 1–0 rsvd
3Modulzustand7–4 rsvd · 3–1 ModuleState: 001 ModuleLowPwr · 010 ModulePwrUp · 011 ModuleReady · 100 ModulePwrDn · 101 ModuleFault · 0 InterruptDeasserted (1 = kein Interrupt ausstehend)
4Bank-0-Flag-Zusammenfassungein Bit pro Flag-Gruppe, die in den Lane-Pages von Bank 0 vorhanden ist (Data-Path-Zustand geändert, Tx-/Rx-Flags, Alarme) — lesen, um zu wissen, welche Bank zu prüfen ist
5Bank-1-Flag-Zusammenfassungwie Byte 4 für Lanes 9–16
6Bank-2-Flag-ZusammenfassungLanes 17–24
7Bank-3-Flag-ZusammenfassungLanes 25–32

Modul-Flags — Byte 8–11

ByteFeldBits
8Flags auf Modulebene7–5 rsvd · 4 CdbCmdComplete2 · 3 CdbCmdComplete1 · 2 DataPathFirmwareFault · 1 ModuleFirmwareFault · 0 ModuleStateChanged
9Temperatur-/Vcc-Flags7 Vcc Low-Warnung · 6 Vcc High-Warnung · 5 Vcc Low-Alarm · 4 Vcc High-Alarm · 3 Temp Low-Warnung · 2 Temp High-Warnung · 1 Temp Low-Alarm · 0 Temp High-Alarm
10Aux1-/Aux2-Flags7 Aux2 Low-Warnung · 6 Aux2 High-Warnung · 5 Aux2 Low-Alarm · 4 Aux2 High-Alarm · 3 Aux1 Low-Warnung · 2 Aux1 High-Warnung · 1 Aux1 Low-Alarm · 0 Aux1 High-Alarm
11Aux3-/Custom-Flags7–4 Custom-Monitor Low-Warnung / High-Warnung / Low-Alarm / High-Alarm · 3 Aux3 Low-Warnung · 2 Aux3 High-Warnung · 1 Aux3 Low-Alarm · 0 Aux3 High-Alarm
12–13rsvd—

Modulmonitore — Byte 14–25

BytesMesswertFormat
14–15Temperaturvorzeichenbehaftet, 16-Bit, 1/256 °C
16–17Vccvorzeichenlos, 16-Bit, 100 µV
18–19Aux1TEC-Strom (vorzeichenbehaftet, % des Max ×100/32767) oder Lasertemperatur (1/256 °C) — Typ wird auf Page 01h beworben
20–21Aux2Lasertemperatur oder TEC-Strom
22–23Aux3Lasertemperatur oder zusätzliche Versorgungsspannung (100 µV)
24–25Custom-Monitorherstellerdefiniert

Globale Steuerungen und Masken — Byte 26–36

ByteFeldBits
26Globale ModulsteuerungenCMIS 5.x: 7 rsvd · 6 LowPwrAllowRequestHW (1 = der LPMode-Pin darf Low Power anfordern) · 5 SquelchMethodSelect (0 = OMA-Squelch, 1 = Pave) · 4 LowPwrRequestSW (1 = Low Power anfordern) · 3 SoftwareReset · 2–0 rsvd · 4.x: 6 = LowPwr (Software-Low-Power-Anforderung) · 4 = ForceLowPwr · 5 und 3 wie oben
27Modul-Flag-MaskenMasken für Byte 8 (gleiche Bitpositionen)
28Temperatur-/Vcc-MaskenMasken für Byte 9
29Aux1-/Aux2-MaskenMasken für Byte 10
30Aux3-/Custom-MaskenMasken für Byte 11
31–36rsvd—

CDB-Status und Firmware — Byte 37–41

ByteFeldBits / Werte
37CdbStatus1 (Command Block 1)7 CdbIsBusy · 6 CdbHasFailed · 5–0 CdbCommandResult: während busy — 01h Kommando wird erfasst, 02h wird geprüft, 03h wird ausgeführt; bei Erfolg — 01h Erfolg, 02h keine Antwort? ; bei Fehler — 01h unbekanntes Kommando, 02h Parameter außerhalb des Bereichs, 03h Längenfehler, 04h Prüfsummenfehler, 05h Passwortfehler, 06h nicht aktiviert, 07h Abbruch? … (siehe CMIS Table 8-20)
38CdbStatus2 (Command Block 2)gleiches Layout
39Aktive Modul-Firmware — Majorlaufende Image-Version
40Aktive Modul-Firmware — Minor—
41ModuleFaultCause00h kein Fehler · 01h TEC-Runaway · 02h Datenspeicher beschädigt · 03h Programmspeicher beschädigt · 04h–1Fh rsvd · 20h–FFh custom
42–63rsvd—
64–84rsvd / customje Revision

Medientyp und Applikationen — Byte 85–117

ByteFeldInhalt
85MediaType00h undefiniert · 01h MMF (SFF-8024 Table 4-6) · 02h SMF (4-7) · 03h passives Kupfer (4-8) · 04h aktives Kabel (4-9) · 05h BASE-T (4-10) · 06h–3Fh rsvd · 40h–8Fh custom
86–89Applikationsdeskriptor 1Byte 86 HostInterfaceID (SFF-8024 Table 4-5) · 87 MediaInterfaceID (Tabelle je nach Byte 85) · 88 Bit 7–4 HostLaneCount, 3–0 MediaLaneCount · 89 HostLaneAssignmentOptions — Bit n = 1: Lane n+1 darf die erste Lane des Data Path dieser Applikation sein
90–93Applikationsdeskriptor 2gleiches Layout
94–97Applikationsdeskriptor 3—
98–101Applikationsdeskriptor 4—
102–105Applikationsdeskriptor 5—
106–109Applikationsdeskriptor 6—
110–113Applikationsdeskriptor 7—
114–117Applikationsdeskriptor 8—

Ein FFh im ersten Byte eines Deskriptors beendet die Liste. Deskriptoren 9–15 setzen sich auf Page 01h Byte 223–250 fort; ihre Media-Lane-Zuordnungsoptionen stehen auf Page 01h 176–190. Beispiel: 12 1C 84 01 = 400GAUI-8 C2M ↔ 400GBASE-DR4, 8 Host-Lanes / 4 Medien-Lanes, beginnend auf Host-Lane 1; 0E 14 21 55 = 100GAUI-2 ↔ 100GBASE-DR, 2/1 Lanes, darf auf Lane 1, 3, 5, 7 beginnen (4 × 100G-Breakout).

Passwörter und Selektoren — Byte 118–127

ByteFeldInhalt
118–121Passwortänderungs-Eingabeherstellerdefiniert
122–125Passworteingabeherstellerdefiniert — Schreibschutzarten
126BankSelect00h Bank 0 (Lanes 1–8) · 01h Bank 1 (9–16) · 02h Bank 2 · 03h Bank 3; gilt für gebankte Pages 10h–3Fh
127PageSelect00h Identität · 01h Advertising · 02h Schwellwerte · 04h Laserfähigkeiten · 10h Lane-Steuerung · 11h Lane-Status · 12h Tunable-Steuerung · 13h–14h Diagnose · 20h–2Fh VDM · 9Fh CDB · A0h–AFh CDB EPL · 80h–8Fh… custom

Eine QSFP-DD-Lower-Page in der Praxis lesen

  1. Byte 0 = 18h, Byte 1 = 50h → QSFP-DD, CMIS 5.0; Byte 2 Bit 7 = 0 → gepagter Speicher.
  2. Byte 3 = 03h → ModuleLowPwr (001 in Bit 3–1, Interrupt deasserted) — normal direkt nach dem Einstecken; 07h → ModuleReady.
  3. Byte 85 = 02h → SMF-Medientabelle; Byte 86–89 → die erste Applikation (z. B. DR4).
  4. Byte 8–11 → ist ein Modul-Flag gesetzt? Zweimal lesen, um die Historie zu löschen.
  5. Byte 14–17 → Temperatur und Vcc.
  6. Um Low Power in 5.x zu verlassen: Byte 26 Bit 4 (LowPwrRequestSW) löschen und sicherstellen, dass der LPMode-Pin low ist oder Bit 6 0 ist; dann warten, bis Byte 3 07h erreicht.

Verwandte Karten


Wenn Sie in diesem Artikel eine Ungenauigkeit oder einen Fehler finden, markieren Sie die betreffende Stelle und drücken Sie Ctrl+Enter, um .