SFF-8636: Registerkarte, untere Seite 00h
Die unteren 128 Bytes eines QSFP+/QSFP28-Moduls sind immer sichtbar und enthalten das, was ein Host zur Laufzeit anfasst: Identifier und Revision, Interrupt-Flags, Modul- und Per-Lane-Monitore, Tx Disable, Raten- und Applikationsauswahl, Leistungssteuerung, CDR-Steuerung, Masken, Passwörter und das Seitenauswahl-Byte. Diese Seite listet sie Byte für Byte und Bit für Bit, zusammengestellt nach SFF-8636 Rev. 2.11 (Felder, die in Rev. 2.10 eingeführt wurden, sind mit rev 2.10 markiert). Erzählend: SFF-8636; der Identitätsblock steht in Upper-Page-00h-Speicherbelegung.
Legende: rsvd = reserviert · vendor = herstellerspezifisch · Lanes sind 1–4 nummeriert; in Per-Lane-Bytes gilt Bits 7–4 = Lanes 4,3,2,1 der ersten Gruppe und Bits 3–0 = Lanes 4,3,2,1 der zweiten Gruppe, sofern nicht anders angegeben · Flags sind gelatcht und werden beim Lesen gelöscht.
Identifikation und Status — Bytes 0–2
| Byte | Feld | Bits |
|---|
| 0 | Identifier | SFF-8024 Tabelle 4-1: 0Ch QSFP · 0Dh QSFP+ · 11h QSFP28 · 1Eh QSFP mit CMIS (dann gilt die CMIS-Speicherbelegung) |
| 1 | Revisions-Compliance | 00h nicht spezifiziert · 01h SFF-8436 ≤ 4.8 · 02h SFF-8436 ≤ 4.8 mit 186–189 nach SFF-8636 · 03h SFF-8636 ≤ 1.3 · 04h 1.4 · 05h 1.5 · 06h 2.0 · 07h 2.5/2.6/2.7 · 08h 2.8/2.9/2.10 — Spezifikationsrevisionen |
| 2 | Statusanzeigen | 7–3 rsvd · 2 Flat_mem (1 = nur Seite 00h) · 1 IntL (1 = Interrupt ausgelöst, schreibgeschütztes Abbild des Pins) · 0 Data_Not_Ready |
Interrupt-Flags — Bytes 3–21
| Byte | Flag-Gruppe | Bits |
|---|
| 3 | LOS | 7 L-Tx4 LOS · 6 L-Tx3 LOS · 5 L-Tx2 LOS · 4 L-Tx1 LOS · 3 L-Rx4 LOS · 2 L-Rx3 LOS · 1 L-Rx2 LOS · 0 L-Rx1 LOS |
| 4 | Tx-Fault / Adaptive-EQ-Fault | 7 L-Tx4 Adaptive-EQ-Fault · 6 L-Tx3 · 5 L-Tx2 · 4 L-Tx1 Adaptive-EQ-Fault · 3 L-Tx4 Fault · 2 L-Tx3 Fault · 1 L-Tx2 Fault · 0 L-Tx1 Fault |
| 5 | LOL (CDR-Lock) | 7 L-Tx4 LOL · 6 L-Tx3 · 5 L-Tx2 · 4 L-Tx1 LOL · 3 L-Rx4 LOL · 2 L-Rx3 · 1 L-Rx2 · 0 L-Rx1 LOL |
| 6 | Temperatur | 7 Temp-Alarm hoch · 6 Temp-Alarm niedrig · 5 Temp-Warnung hoch · 4 Temp-Warnung niedrig · 3–1 rsvd · 0 Initialisierung abgeschlossen-Flag rev 2.x |
| 7 | Vcc | 7 Vcc-Alarm hoch · 6 Vcc-Alarm niedrig · 5 Vcc-Warnung hoch · 4 Vcc-Warnung niedrig · 3–0 rsvd |
| 8 | vendor | — |
| 9 | Rx-Leistung Lanes 1–2 | 7 Rx1-Leistung Alarm hoch · 6 Rx1 Alarm niedrig · 5 Rx1 Warnung hoch · 4 Rx1 Warnung niedrig · 3 Rx2 Alarm hoch · 2 Rx2 Alarm niedrig · 1 Rx2 Warnung hoch · 0 Rx2 Warnung niedrig |
| 10 | Rx-Leistung Lanes 3–4 | gleiches Layout für Rx3 (7–4) und Rx4 (3–0) |
| 11 | Tx-Bias Lanes 1–2 | gleiches Layout: Tx1-Bias (7–4), Tx2-Bias (3–0) |
| 12 | Tx-Bias Lanes 3–4 | Tx3 (7–4), Tx4 (3–0) |
| 13 | Tx-Leistung Lanes 1–2 | Tx1-Leistung (7–4), Tx2-Leistung (3–0) |
| 14 | Tx-Leistung Lanes 3–4 | Tx3 (7–4), Tx4 (3–0) |
| 15–16 | rsvd | — |
| 17–21 | vendor | herstellerspezifische Flags |
Modulmonitore — Bytes 22–33
| Bytes | Messwert | Format |
|---|
| 22–23 | Temperatur | vorzeichenbehaftet 16-Bit, 1/256 °C |
| 24–25 | rsvd | — |
| 26–27 | Vcc | vorzeichenlos 16-Bit, 100 µV |
| 28–29 | rsvd | — |
| 30–33 | vendor | — |
Kanalmonitore — Bytes 34–81
| Bytes | Messwert | Format |
|---|
| 34–35 / 36–37 / 38–39 / 40–41 | Rx1-/Rx2-/Rx3-/Rx4-Leistung | vorzeichenlos 16-Bit, 0,1 µW |
| 42–43 / 44–45 / 46–47 / 48–49 | Tx1-/Tx2-/Tx3-/Tx4-Bias | vorzeichenlos 16-Bit, 2 µA |
| 50–51 / 52–53 / 54–55 / 56–57 | Tx1-/Tx2-/Tx3-/Tx4-Leistung | vorzeichenlos 16-Bit, 0,1 µW |
| 58–65 | rsvd | — |
| 66–81 | vendor | — |
| 82–85 | rsvd | — |
Interpretation pro Lane: Per-Lane-Diagnose.
Steuerungen — Bytes 86–99
| Byte | Feld | Bits |
|---|
| 86 | Tx Disable | 7–4 rsvd · 3 Tx4 Disable · 2 Tx3 · 1 Tx2 · 0 Tx1 Disable (1 = Laser aus) |
| 87 | Rx Rate Select | 7–6 Rx4 Rate Select · 5–4 Rx3 · 3–2 Rx2 · 1–0 Rx1 (2-Bit-Code pro Lane; 00 = niedrigste Ratengruppe) — Rate Select |
| 88 | Tx Rate Select | 7–6 Tx4 · 5–4 Tx3 · 3–2 Tx2 · 1–0 Tx1 |
| 89 | Rx4-Applikationsauswahl | Applikationscode aus Seite 01h (SFF-8079-Modell); 00h = keine |
| 90 | Rx3-Applikationsauswahl | — |
| 91 | Rx2-Applikationsauswahl | — |
| 92 | Rx1-Applikationsauswahl | — |
| 93 | Leistungssteuerung | 7–4 rsvd · 3 Power Class 8 Enable rev 2.10 · 2 High Power Class Enable (Klassen 5–7) · 1 Power_set (1 = Low-Power-Modus; wirksam, wenn Bit 0 = 1) · 0 Power_override (1 = Software steuert den Leistungsmodus statt des LPMode-Pins) |
| 94 | Tx4-Applikationsauswahl | — |
| 95 | Tx3-Applikationsauswahl | — |
| 96 | Tx2-Applikationsauswahl | — |
| 97 | Tx1-Applikationsauswahl | — |
| 98 | CDR-Steuerung | 7 Tx4 CDR ein · 6 Tx3 · 5 Tx2 · 4 Tx1 CDR ein · 3 Rx4 CDR ein · 2 Rx3 · 1 Rx2 · 0 Rx1 CDR ein (1 = CDR aktiviert, 0 = Bypass) — CDR |
| 99 | Signalsteuerung rev 2.10 | 7–2 rsvd · 1 LPMode/TxDis-Eingangspin-Funktion (0 = LPMode, 1 = TxDis) · 0 IntL/LOSL-Ausgangspin-Funktion (0 = IntL, 1 = LOSL); Verfügbarkeit angekündigt in Upper Byte 193 |
Masken — Bytes 100–106
Ein auf 1 gesetztes Maskenbit verhindert, dass das zugehörige Flag IntL auslöst.
| Byte | Maske für | Bit-Layout |
|---|
| 100 | LOS-Flags | wie Byte 3 |
| 101 | Tx-Fault / Adaptive-EQ-Fault | wie Byte 4 |
| 102 | LOL-Flags | wie Byte 5 |
| 103 | Temperatur-Flags | 7–4 wie Byte 6 Bits 7–4 · 0 Maske „Initialisierung abgeschlossen“ |
| 104 | Vcc-Flags | wie Byte 7 |
| 105 | vendor | — |
| 106 | vendor | — |
Die Masken für Rx-Leistung, Tx-Bias und Tx-Leistung liegen auf Seite 03h Bytes 242–247.
Erweiterte Steuerungen und Passwörter — Bytes 107–127
| Byte | Feld | Inhalt |
|---|
| 107 | Maximale Leistung rev 2.10 | maximale Leistungsaufnahme in Einheiten von 0,1 W, gültig für Power Class 8 (Upper Byte 129 Bit 5) |
| 108–109 | Ausbreitungsverzögerung rev 2.10 | Kabelbaugruppen: Verzögerung in Einheiten von 10 ns |
| 110 | Erweiterter Low-Power-Modus rev 2.10 | Bits 3–0 kündigen eine mittlere Low-Power-Klasse an bzw. steuern sie (je nach Revision) |
| 111–112 | rsvd | — |
| 113–118 | rsvd / vendor | — |
| 119–122 | Eintrag Passwortänderung | herstellerdefiniert (neues Passwort schreiben) |
| 123–126 | Passworteingabe | herstellerdefiniert; typischer Entsperrbereich — Schreibschutzarten |
| 127 | Seitenauswahl | 00h Identität · 01h Applikationsauswahltabelle · 02h Anwender-EEPROM · 03h Schwellwerte & Kanalsteuerungen · 20h–21h optional; vor dem Lesen von 128–255 schreiben |
Eine QSFP28-Lower-Page in der Praxis lesen
- Byte 0 = 11h, Byte 1 = 06h oder 08h → SFF-8636 Rev. 2.x QSFP28; Byte 2 Bit 0 = 0 → Daten bereit.
- Bytes 3–14 alle 00h → keine LOS-, Fault-, LOL- oder Schwellwert-Flags (zweimal lesen: der erste Lesevorgang löscht die gelatchte Historie).
- Bytes 34–57 → vier Rx-Leistungen, vier Biasströme, vier Tx-Leistungen; Lanes miteinander vergleichen (Typische Werte).
- Byte 86 = 00h → alle Laser aktiviert; Byte 93 Bit 1 = 0 → High Power; Byte 98 = FFh → alle CDRs ein.
- Byte 127 = 00h → obere Seite zeigt Identität (Upper-Page-00h-Speicherbelegung).
Verwandte Speicherbelegungen