SFF-8472 — диагностика SFP · Спецификации и стандарты · Оптические трансиверы и кабели · Документация · CodingBox
CodingBox Документация

SFF-8472 — диагностика SFP

SFF-8472, Diagnostic Monitoring Interface for Optical Transceivers, — спецификация управления для всех модулей класса SFP: SFP, SFP+, SFP28 и, с расширенными кодами, SFP56. Она выросла из блока serial ID SFP MSA (INF-8074), сохранила его побайтно и добавила второе устройство памяти с диагностикой в реальном времени. Медные SFP, PON-стики, перестраиваемые DWDM SFP+ и концы кабелей DAC/AOC представляются именно через неё. История ревизий и байт версии: Ревизии спецификаций.

Два адреса памяти

Модуль читается по двухпроводному интерфейсу по двум адресам устройств:

АдресУстройствоСодержимое
A0hEEPROM serial ID (256 байт, плоская)идентификация: тип, разъём, коды соответствия, скорость, длины, блок вендора, опции, контрольные суммы
A2hдиагностика (128 байт + страничная верхняя половина)пороги, константы калибровки, живые мониторы, статус/управление, флаги, пользовательская EEPROM, вендорские страницы

Есть ли A2h вообще — объявлено в A0h байт 92 бит 6. Скорость шины по умолчанию 100 кГц. Побайтовые таблицы: Шпаргалка по карте памяти.

A0h — идентификация в пяти блоках

БайтыБлокЧто там лежит
0–2Типидентификатор (03h = семейство SFP, SFF-8024), расширенный идентификатор (04h = MOD_DEF 4, есть serial ID), код разъёма
3–10Коды соответствиябитовые поля 10G Ethernet, InfiniBand, ESCON, SONET, 1G Ethernet, Fibre Channel длина / технология / среда / скорость — разбор в Кодах соответствия
11–19Сигнал и дальностькодирование (11), номинальная скорость ×100 Мбит/с (12), идентификатор скорости для RS0/RS1 (13, см. выбор скорости), длины: SMF км (14), SMF ×100 м (15), OM2 ×10 м (16), OM1 ×10 м (17), OM4 ×10 м или метры меди (18), OM3 ×10 м (19)
20–63Вендор и контрольная суммаимя вендора (20–35), расширенный код соответствия из SFF-8024 (36), IEEE OUI (37–39), партномер (40–55), ревизия (56–59), длина волны в нм или соответствие/затухание кабеля для меди (60–61), Fibre Channel speed 2 (62), CC_BASE (63) — см. Поля вендора
64–95Расширенный IDопции (64–65), запас по скорости макс./мин. % (66–67) или, при байте 12 = FFh, байт 66 — скорость ×250 Мбит/с, серийный номер (68–83), дата (84–91), тип диагностики (92), расширенные опции (93), ревизия SFF-8472 (94), CC_EXT (95)
96–127Вендорская областьсвободна для производителя; часто хранит конфигурацию или сигнатуру
128–255Зарезервированопод таблицы выбора применения SFF-8079

Байты опций 64–65

Байт.битСмысл при установке
64.5объявление высокого уровня мощности — уровень 3 (до 2,0 Вт)
64.4реализованы страницы — байт 127 A2h выбирает верхние страницы
64.3есть ретаймер или CDR
64.2охлаждаемый передатчик
64.1уровень мощности 2 (до 1,5 Вт); сброшен = уровень 1 (1,0 Вт)
64.0линейный выход приёмника (например, 10GBASE-LRM)
65.7реализован порог решения приёмника
65.6перестраиваемый передатчик — см. карты tunable
65.5реализован RATE_SELECT
65.4реализован TX_DISABLE
65.3реализован TX_FAULT
65.2сигнал LOS инвертирован
65.1реализован LOS

Байт 92 — тип диагностики

БитСмысл
6цифровая диагностика (A2h) реализована
5внутренняя калибровка — мониторы A2h уже в физических единицах
4внешняя калибровка — хост должен применить константы A2h 56–91
3измерение мощности приёма: 1 = средняя мощность, 0 = OMA
2перед доступом к A2h нужна последовательность смены адреса (наследие)

При установленном бите 6 должен быть установлен ровно один из битов 5 и 4. Что каждый режим значит для цифр на экране: Калибровка.

Байт 93 — расширенные опции

Бит 7 реализованы флаги аварий/предупреждений · 6 программное управление TX_DISABLE · 5 программный монитор TX_FAULT · 4 программный монитор RX_LOS · 3 программный RATE_SELECT · 2 выбор применения по SFF-8079 · 1 программный выбор скорости по SFF-8431.

A2h — диагностика в девяти блоках

БайтыБлокПримечания
0–39Пороги аварий и предупрежденийпять мониторов × (верхняя авария, нижняя авария, верхнее предупреждение, нижнее предупреждение), по 2 байта, формат как у живого значения — пороги и аварии
40–55Необязательные порогитемпература лазера и ток TEC (охлаждаемые/перестраиваемые модули)
56–91Константы калибровкиRx_PWR(4..0) как 32-битные float, наклон и смещение Tx_I / Tx_PWR / T / V; имеют смысл только при бите 4 байта 92
92–94Зарезервировано—
95CC_DMIконтрольная сумма байтов A2h 0–94 — Контрольные суммы
96–105Мониторы реального временитемпература (96–97), Vcc (98–99), ток Tx (100–101), мощность Tx (102–103), мощность Rx (104–105)
106–109Необязательные мониторытемпература лазера, ток TEC
110–118Статус и управлениебайт 110 (ниже), флаги аварий 112–113, флаги предупреждений 116–117, расширенный статус/управление 118 (программный RS1, состояние и выбор уровня мощности)
119–126Вендорская областьна практике — область ввода пароля у многих модулей с контроллером (123–126), см. типы защиты от записи
127Выбор страницыприсутствует при бите 4 байта 64 A0h
128–255Верхние страницыстраница 00h/01h: пользовательская EEPROM (128–247) и управление вендора (248–255); страница 02h: функции управления, дом регистров tunable SFF-8690; остальные страницы вендорские

Форматы мониторов

МониторФорматЕдиница
Температуразнаковое 16-бит1/256 °C
Vccбеззнаковое 16-бит100 мкВ
Ток Txбеззнаковое 16-бит2 мкА
Мощность Tx, Rxбеззнаковое 16-бит0,1 мкВт (в дБм: 10·log10(мкВт/1000))

Пересчёты и примеры: Единицы и пересчёты.

Байт 110 — статус/управление

БитСмыслДоступ
7состояние пина TX_DISABLEчтение
6программный TX_DISABLEчтение/запись (при бите 6 байта 93)
5состояние пина RS1чтение
4состояние пина RS0 (выбор скорости)чтение
3программный выбор RS0чтение/запись
2состояние TX_FAULTчтение
1состояние RX_LOSчтение
0данные не готовы (1, пока мониторы инициализируются)чтение

Особенности меди и кабелей

У пассивной и активной меди (DAC) байты 60–61 хранят не длину волны: для пассивного кабеля байт 60 отмечает соответствие SFF-8431 Appendix E, для активного биты отмечают соответствие FC-PI-4 / SFF-8431 limiting или linear. Биты 2–3 байта 8 задают пассивную/активную кабельную технологию, байт 18 несёт длину в метрах. Подробнее: Медный Ethernet и DAC.

Что реально читает хост

Типичный коммутатор при вставке читает A0h байты 0–95, проверяет CC_BASE и CC_EXT, декодирует идентификатор, разъём, коды соответствия и скорость, сверяет блок вендора со своей политикой и только потом опрашивает A2h ради DDM — обычно раз в несколько секунд. Полная последовательность и её тайминги: Что делает хост. Несовпадения этих полей с реальной оптикой — корень большинства тикетов про скорость и режимы и вендор-лок.

В CodingBox

CodingBox читает и A0h, и A2h (включая страничную A2h, если объявлена), подписывает каждое поле из таблиц выше в редакторе EEPROM, пересчитывает CC_BASE, CC_EXT и CC_DMI при записи, применяет внутреннюю или внешнюю калибровку на экране DDM и показывает декодированную идентификацию на Check transceiver.

Побайтные и побитные таблицы обоих устройств: Карта регистров A0h, Карта регистров A2h.


Если вы обнаружили неточность или ошибку в материале, выделите соответствующий фрагмент и нажмите сочетание клавиш Ctrl+Enter, чтобы .