CodingBox Documentation

INF-8077i XFP register map

An XFP module answers at one two-wire address (A0h) with a lower memory of 128 bytes — thresholds, flags, monitors and control — and upper tables selected by byte 127, of which table 01h is the serial ID. The layout predates SFF-8636 and was its model: the QSFP identity block copies XFP's byte positions almost exactly. This page lists the lower memory and table 01h byte by byte and bit by bit, compiled against INF-8077i Rev 4.5. Narrative: INF-8077i — XFP management.

Legend: rsvd = reserved · vendor = vendor specific · 16-bit values are MSB first · flags are latched, cleared on read.

Lower memory — thresholds, bytes 0–57

ByteFieldNotes
0Identifier06h = XFP
1Signal conditioner control7 Tx CDR bypass? — bits control internal Tx/Rx CDR and loopbacks per Table 39: 7 Tx CDR off · 6 Tx amplitude/EQ control · 5–4 rsvd · 3 Rx CDR off · 2 line-side loopback · 1 XFI loopback · 0 rsvd (implementation advertised in table 01h byte 164)
2–3 / 4–5 / 6–7 / 8–9Temperature high alarm / low alarm / high warning / low warningsigned 16-bit, 1/256 °C
10–17rsvd(thresholds for a second temperature in some drafts)
18–19 / 20–21 / 22–23 / 24–25Tx bias HA / LA / HW / LWunsigned 16-bit, 2 µA
26–27 / 28–29 / 30–31 / 32–33Tx power HA / LA / HW / LWunsigned 16-bit, 0.1 µW
34–35 / 36–37 / 38–39 / 40–41Rx power HA / LA / HW / LWunsigned 16-bit, 0.1 µW
42–43 / 44–45 / 46–47 / 48–49AUX1 HA / LA / HW / LWformat per AUX1 type (table 01h byte 222)
50–57AUX2 HA / LA / HW / LWas AUX2 type

Lower memory — vendor, BER and wavelength control, bytes 58–79

ByteFieldContents
58–69vendor
70BER reportingfor modules with FEC: BER exponent/mantissa reporting control
71Wavelength control — target MSBtunable XFP: 71–72 wavelength set in 0.05 nm units
72Wavelength control — target LSB
73–74Wavelength error / statusreported wavelength offset in 0.005 nm units
75Wavelength control flagstuning in progress, unlocked, out of range
76–79FEC controlenable/disable FEC, FEC status (10G FEC XFPs, ITU G.709 wrapped)

Lower memory — flags, bytes 80–95

ByteFieldBits
80Alarm flags 1 (latched)7 temp high alarm · 6 temp low alarm · 5 rsvd · 4 rsvd · 3 Tx bias high alarm · 2 Tx bias low alarm · 1 Tx power high alarm · 0 Tx power low alarm
81Alarm flags 2 (latched)7 Rx power high alarm · 6 Rx power low alarm · 5 AUX1 high alarm · 4 AUX1 low alarm · 3 AUX2 high alarm · 2 AUX2 low alarm · 1–0 rsvd
82Warning flags 1 (latched)same layout as byte 80 for warnings
83Warning flags 2 (latched)same layout as byte 81 for warnings
84Status flags 1 (latched)7 Tx_NR (not ready) · 6 Tx_Fault · 5 Tx CDR not locked · 4 Rx_NR · 3 Rx CDR not locked · 2 RX_LOS · 1 module not ready (Mod_NR) · 0 reset complete
85Status flags 2 (latched)7 APD supply fault · 6 TEC fault · 5 wavelength unlocked · 4–3 rsvd · 2 VCC5 fault? · 1 VCC3 fault · 0 VCC2 fault (supply-fault bits per implementation)
86–87rsvd
88Alarm masks 1mask bits for byte 80
89Alarm masks 2for byte 81
90Warning masks 1for byte 82
91Warning masks 2for byte 83
92Status masks 1for byte 84
93Status masks 2for byte 85
94–95rsvd

A set flag asserts the Interrupt pin unless masked; the host reads the flag bytes to clear them.

Lower memory — A/D readouts, bytes 96–109

BytesMonitorFormat
96–97Temperaturesigned 16-bit, 1/256 °C
98–99rsvd
100–101Tx bias2 µA
102–103Tx power0.1 µW
104–105Rx power0.1 µW
106–107AUX1per type in table 01h byte 222
108–109AUX2per type

Lower memory — control and status, bytes 110–127

ByteFieldBits
110General control/status7 TX_DIS pin state · 6 soft TX_DIS (R/W) · 5 MOD_NR state · 4 P_Down state (pin) · 3 soft P_Down (R/W) · 2 Interrupt state · 1 RX_LOS state · 0 data not ready
111General status 27 Tx_NR state · 6 Tx_Fault state · 5 Tx CDR not locked · 4 Rx_NR state · 3 Rx CDR not locked · 2 rsvd · 1 VPS (variable power supply) state · 0 rsvd (unlatched mirrors of byte 84)
112–117vendor / rsvd
118vendor
119–122vendoroften password change area
123–126vendoroften password entry area (same offsets as QSFP) — Write-protection types
127Table select01h serial ID (default) · 02h–7Fh rsvd · 80h–FFh vendor

Table 01h — serial ID, bytes 128–191 (covered by CC_BASE)

ByteFieldContents
128Identifier06h XFP
129Extended identifier7–6 rsvd · 5–4 power level: 00 ≤ 1.5 W · 01 ≤ 2.5 W · 10 ≤ 3.5 W · 11 > 3.5 W · 3 CDR (0 = XFI with CDR, 1 = no CDR) · 2 CLEI code present in table 01h? (bit 2 = CLEI in table 02h) · 1 Tx reference clock input required · 0 rsvd
130ConnectorSFF-8024 Table 4-3 (07h LC · 01h SC · 21h copper pigtail · 22h RJ45)
13110G Ethernet compliance7 10GBASE-SR · 6 10GBASE-LR · 5 10GBASE-ER · 4 10GBASE-LRM · 3 10GBASE-SW · 2 10GBASE-LW · 1 10GBASE-EW · 0 rsvd
13210G Fibre Channel compliance7 1200-MX-SN-I · 6 1200-SM-LL-L · 5 extended reach 1550 nm · 4 intermediate reach 1300 nm FP · 3–0 rsvd
13310G copper links7–0 rsvd (defined for future copper XFP)
134Lower-speed links7 1000BASE-SX / 1×FC MMF · 6 1000BASE-LX / 1×FC SMF · 5 2×FC MMF · 4 2×FC SMF · 3 OC-48 SR · 2 OC-48 IR · 1 OC-48 LR · 0 rsvd
135SONET/SDH interconnect7 I-64.1r · 6 I-64.1 · 5 I-64.2r · 4 I-64.2 · 3 I-64.3 · 2 I-64.5 · 1–0 rsvd
136SONET/SDH short haul7 S-64.1 · 6 S-64.2a · 5 S-64.2b · 4 S-64.3a · 3 S-64.3b · 2 S-64.5a · 1 S-64.5b · 0 rsvd
137SONET/SDH long haul7 L-64.1 · 6 L-64.2a · 5 L-64.2b · 4 L-64.2c · 3 L-64.3 · 2 G.959.1 P1L1-2D2 · 1–0 rsvd
138SONET/SDH very long haul7 V-64.2a · 6 V-64.2b · 5 V-64.3 · 4–0 rsvd
139Encoding7 64B/66B · 6 8B/10B · 5 SONET scrambled · 4 NRZ · 3 RZ · 2–0 rsvd (bit field, not an SFF-8024 value)
140Bit rate minimumunits of 100 Mb/s (e.g. 5Fh = 9.5 Gb/s)
141Bit rate maximumunits of 100 Mb/s (e.g. 6Fh = 11.1 Gb/s) — the pair defines the supported rate window
142Length SMFkm
143Length E-50 µm (OM3)units of 2 m
144Length 50 µmunits of 1 m
145Length 62.5 µmunits of 1 m
146Length copperunits of 1 m
147Device technology7–4 transmitter: 0h 850 nm VCSEL · 1h 1310 nm VCSEL · 2h 1550 nm VCSEL · 3h 1310 nm FP · 4h 1310 nm DFB · 5h 1550 nm DFB · 6h 1310 nm EML · 7h 1550 nm EML · 8h copper · 9h–Fh rsvd · 3 wavelength control (active) · 2 cooled transmitter · 1 detector (1 = APD, 0 = PIN) · 0 tunable
148–163Vendor name16 ASCII
164CDR support7 9.95 Gb/s · 6 10.3 Gb/s · 5 10.5 Gb/s · 4 10.7 Gb/s · 3 11.1 Gb/s · 2 rsvd · 1 line-side loopback supported · 0 XFI loopback supported
165–167Vendor OUI
168–183Vendor PN16 ASCII
184–185Vendor rev2 ASCII
186–187Wavelengthunits of 0.05 nm (1310.00 nm = 26 200 = 6658h)
188–189Wavelength toleranceunits of 0.005 nm
190Max case temperature°C
191CC_BASE(Σ bytes 128–190) mod 256

Table 01h — extended ID, bytes 192–255

ByteFieldContents
192Max power dissipationunits of 20 mW (e.g. 7Dh = 2.5 W)
193Total power in power-downunits of 20 mW
194Max current7–4 on +5 V in 50 mA units · 3–0 on +3.3 V in 100 mA units
195Max current7–4 on +1.8 V in 100 mA units · 3–0 on −5.2 V in 50 mA units
196–211Vendor SN16 ASCII
212–219Date codeYYMMDD + 2 lot
220Diagnostic monitoring type7–5 rsvd · 4 Rx power measurement: 1 = average, 0 = OMA · 3 BER reporting supported · 2–0 rsvd
221Enhanced options7 VPS supported (variable power supply) · 6 soft TX_DISABLE implemented · 5 soft P_Down implemented · 4 VPS LV regulator mode · 3 VPS bypassed regulator mode · 2 active FEC control functions · 1 wavelength tunability implemented · 0 CMU (clock multiplier unit) supported
222AUX monitoring7–4 AUX1 type · 3–0 AUX2 type: 0 not implemented · 1 APD bias voltage (10 mV) · 2 rsvd · 3 TEC current (0.1 mA, signed) · 4 laser temperature (1/256 °C) · 5 laser wavelength (0.05 nm? — per spec: wavelength offset) · 6 +5 V supply (100 µV) · 7 +3.3 V supply · 8 +1.8 V supply · 9 −5.2 V supply · Ah +5 V current (100 µA) · Bh rsvd · Ch +3.3 V current · Dh +1.8 V current · Eh −5.2 V current · Fh rsvd
223CC_EXT(Σ bytes 192–222) mod 256
224–255Vendor specificnot checksummed

Tables 02h–FFh

TableContents
02huser EEPROM / CLEI code (when advertised)
03h–7Fhrsvd
80h–FFhvendor specific (often passwords, calibration backups)

What the QSFP inherited

Compare with the SFF-8636 upper page 00h map: bytes 128–130, 140–147 (lengths and technology nibble), 148–191 (vendor block, wavelength, CC_BASE), 196–223 (SN, date, CC_EXT) sit at the same offsets. The differences are the compliance bytes (131–138 redefined for 40/100G Ethernet), byte 139 (encoding as a value rather than a bit field) and 192–195 (power/current replaced by extended compliance and options). A tool that knows one map reads the other with a small translation table.