Spezifikationsrevisionen und Versionsbytes · Spezifikationen und Standards · Optische Transceiver und Kabel · Dokumentation · CodingBox
CodingBox Dokumentation

Spezifikationsrevisionen und Versionsbytes

Spezifikationen sind lebendige Dokumente. Ein Modul deklariert, welcher Revision seine Speicherkarte folgt, und ein Host liest die Karte nach der Revision, die er kennt. Meist stimmen beide gut genug überein; wenn nicht, wird ein Byte als etwas gelesen, was es nicht ist. Diese Seite listet die Versionsbytes, wie man sie dekodiert, und — grob — was jede Generation ergänzt hat, damit Sie erkennen können, ob ein Feld, das Sie sich ansehen, für das vorliegende Modul überhaupt existiert.

Wo die Version deklariert ist

FamilieByteKodierung
SFF-8472 (SFP)A0h Byte 94aufgezählter Code (Tabelle unten)
SFF-8636 (QSFP)Byte 1aufgezählter Code (Tabelle unten)
CMISByte 1Major-Nibble.Minor-Nibble (50h = 5.0)
MIS (SFP-DD)Byte 1wie CMIS
INF-8077i (XFP)keinsder Identifier 06h impliziert INF-8077i rev 4.x

SFF-8472 — Byte 94

WertRevisionNennenswerte Ergänzungen, grob
00hnicht spezifiziertModule vor der Diagnosefunktion; nur Identität
01h9.3erste digitale Diagnose: A2h-Schwellwerte, Monitore, Flags
02h9.5Klarstellungen, optionale Laser-Temperatur-/TEC-Monitore
03h10.2SFP+-Ära: Rate Select, Option lineares Empfängerdesign, erweiterte Optionen in Byte 93
04h10.4Soft Rate Select nach SFF-8431, Leistungsstufe 2, Application Select nach SFF-8079
05h11.010G-Kupfer(DAC)-Kodierung — Kabeltechnologie-Bits, Dämpfung in 60–61
06h11.3erweiterte Optionen, Option durchstimmbarer Sender, 16GFC-Geschwindigkeitscodes
07h11.4seitenweiser A2h-Speicher (Byte 64 Bit 4), SFF-8690 Tunable-Seite 02h
08h12.0Byte 36 erweiterte Spezifikationskonformität über SFF-8024; Codes der 25G/100G-Ära
09h12.4Leistungsstufe 3 (2,0 W), FC-Geschwindigkeit 2 in Byte 62, PAM4-Kodierungscode, Abgleich mit SFF-8024

Faustregel: Ein Modul, das 08h oder 09h deklariert, muss Byte 36 sinnvoll gefüllt (oder null) haben sowie die Rate ×250 Mb/s in Byte 66, wenn Byte 12 = FFh; ein Modul, das 03h oder niedriger deklariert, hat gar keine Byte-36-Semantik — Hosts ignorieren es.

SFF-8636 — Byte 1

WertKarte folgtNennenswerte Ergänzungen
00hnicht spezifiziert (SFF-8436 rev 4.8 oder früher)ursprüngliche QSFP+-Karte
01hSFF-8436 rev 4.8 oder früher—
02hSFF-8436 rev 4.8 mit Byte 186–189 nach SFF-8636Wellenlängen- und Toleranzfelder
03hSFF-8636 rev 1.3 oder frühererstes SFF-8636
04hrev 1.4—
05hrev 1.5—
06hrev 2.0QSFP28/100G: Byte 192 erweiterte Konformität, Leistungsklassen 5–7, CDR-Steuerung und LOL-Flags
07hrev 2.5, 2.6, 2.7Seiten 20h–21h, Tx-Disable-Fast-Mode, weitere Codes der Tabelle 4-4
08hrev 2.8, 2.9, 2.10Leistungsklasse 8 und Byte 107 maximale Leistung, 200G(QSFP56)-Codes, PAM4-Kodierung

Hosts, die älter als rev 2.0 sind, lesen Byte 192 nicht — ein 100G-Modul in einem Switch der 40G-Ära ist allein deshalb „unbekannt“, unabhängig davon, was der Herstellerblock sagt.

CMIS — Byte 1

WertVersionNennenswerte Änderungen
30h3.0 (2018, QSFP-DD MSA)erstes gemeinsames Modell: untere/obere Seiten, Applikationen, Modul- und Datenpfad-Zustandsautomaten, CDB
40h4.0 (2019)gestaffelte Control Sets, VDM-Seiten 20h–2Fh, erweiterte Application Descriptors, klarere Zeitdauern
41h4.1Korrekturen und Klarstellungen
50h5.0 (2021, OIF)Banks mit bis zu 32 Lanes, verfeinertes Datenpfad- und Lane-Flag-Modell, erweiterte VDM-Observables, Diagnoseseiten 13h–14h
51h–53h5.1, 5.2, 5.3inkrementell: zusätzliche VDM-Typen, Überwachungs-Hooks für kohärent (ZR), Verfeinerungen der Firmware-Verwaltung

Ein CMIS-5.x-Modul in einem Host, der 4.0 implementiert, funktioniert meist für den Grundablauf (Zustandsautomat, Application Select), aber der Host liest die neueren VDM-Seiten nicht; ein reiner 3.0-Host bringt ein 5.x-Modul unter Umständen gar nicht erst hoch — CMIS-Probleme. MIS-Versionen folgen CMIS: MIS.

Kompatibilitätsregeln

  • Neueres Modul, älterer Host — unbekannte Codes werden als unbekannt dekodiert; ein höherer Wert in Byte 94/Byte 1 wird normalerweise toleriert. Probleme entstehen, wenn der Host ein Feld braucht, das erst in der neuen Revision existiert (Byte 192, Applikationen).
  • Älteres Modul, neuerer Host — unproblematisch; Hosts behalten das rückwärtskompatible Parsing bei.
  • Deklarierte Revision widerspricht dem Inhalt — die eigentliche Falle. Eine Deklaration von 12.x mit leerem Byte 66 bei Byte 12 = FFh liefert dem Host „0 Gb/s“; eine Deklaration von rev 2.0+ mit unsinnigem Inhalt in Byte 192 liefert unbekannter Typ. Beim Codieren das Revisionsbyte passend zu den tatsächlich genutzten Feldern setzen.
  • SFF-8024 hat kein Versionsbyte im Modul; die Tabellenrevision des Hosts entscheidet, welche Codes er benennen kann.

Weitere Dokumente und ihr Rhythmus

DokumentAktuelle GenerationAnmerkungen
SFF-8024rev 4.x, mehrmals jährlich überarbeitetneue Identifier, Steckverbinder und Interface-IDs erscheinen hier zuerst
INF-8077irev 4.5 (2005)XFP; stabil, keine weiteren Revisionen erwartet — XFP
SFF-8690/SFF-TA-10041.xTunable-Karten — Tunable-Karten
SFF-8079/SFF-80891.xRate-/Application-Select — Rate Select
Hardware-Spezifikationen (SFF-8431, SFF-8679, QSFP-DD HW, OSFP)siehe KatalogHardware-Familien SFP, QSFP

Dokumentnummern und Titel: MSA-Spezifikationskatalog.

In CodingBox

CodingBox liest zuerst das Revisionsbyte und wendet die passenden Feldbeschreibungen an, sodass Felder, die für die deklarierte Revision nicht existieren, als reserviert angezeigt werden statt falsch beschriftet zu sein. Der EEPROM editor lässt Sie das Revisionsbyte zusammen mit den davon abhängigen Feldern setzen.


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