CodingBox Документация

Ревизии спецификаций и байты версии

Спецификации — живые документы. Модуль объявляет, какой ревизии следует его карта памяти, а хост разбирает карту по той ревизии, которую знает сам. Чаще всего они сходятся достаточно; когда нет — байт читается как то, чем он не является. Здесь перечислены байты версии, как их декодировать и — примерно — что добавило каждое поколение, чтобы вы могли понять, существует ли вообще поле, на которое смотрите, у модуля перед вами.

Где объявлена версия

СемействоБайтКодировка
SFF-8472 (SFP)A0h байт 94перечислимый код (таблица ниже)
SFF-8636 (QSFP)байт 1перечислимый код (таблица ниже)
CMISбайт 1ниббл major . ниббл minor (50h = 5.0)
MIS (SFP-DD)байт 1как CMIS
INF-8077i (XFP)нетидентификатор 06h подразумевает INF-8077i ред. 4.x

SFF-8472 — байт 94

ЗначениеРевизияЗаметные добавления, примерно
00hне заданомодули до диагностики; только идентификация
01h9.3первая цифровая диагностика: пороги, мониторы, флаги A2h
02h9.5уточнения, необязательные мониторы температуры лазера / TEC
03h10.2эра SFP+: выбор скорости, опция линейного приёмника, расширенные опции байта 93
04h10.4программный выбор скорости по SFF-8431, уровень мощности 2, выбор применения по SFF-8079
05h11.0кодирование меди 10G (DAC) — биты кабельной технологии, затухание в 60–61
06h11.3расширенные опции, опция перестраиваемого передатчика, коды скоростей 16GFC
07h11.4страничная память A2h (бит 4 байта 64), страница 02h tunable по SFF-8690
08h12.0байт 36 расширенного соответствия через SFF-8024; коды эры 25G/100G
09h12.4уровень мощности 3 (2,0 Вт), FC speed 2 в байте 62, код кодирования PAM4, выравнивание с SFF-8024

Правило: модуль, заявляющий 08h или 09h, должен иметь осмысленный (или нулевой) байт 36 и скорость ×250 Мбит/с в байте 66 при байте 12 = FFh; у модуля с 03h и ниже семантики байта 36 нет вовсе — хосты его игнорируют.

SFF-8636 — байт 1

ЗначениеКарта следуетЗаметные добавления
00hне задано (SFF-8436 ред. 4.8 или раньше)исходная карта QSFP+
01hSFF-8436 ред. 4.8 или раньше
02hSFF-8436 ред. 4.8 с байтами 186–189 по SFF-8636поля длины волны и допуска
03hSFF-8636 ред. 1.3 или раньшепервая SFF-8636
04hред. 1.4
05hред. 1.5
06hред. 2.0QSFP28 / 100G: байт 192 расширенного соответствия, классы мощности 5–7, управление CDR и флаги LOL
07hред. 2.5, 2.6, 2.7страницы 20h–21h, быстрый режим Tx disable, новые коды Table 4-4
08hред. 2.8, 2.9, 2.10класс мощности 8 и байт 107 макс. мощности, коды 200G (QSFP56), кодирование PAM4

Хосты старше ред. 2.0 не смотрят на байт 192 — модуль 100G в коммутаторе эры 40G «unknown» уже поэтому, что бы ни было в блоке вендора.

CMIS — байт 1

ЗначениеВерсияЗаметные изменения
30h3.0 (2018, QSFP-DD MSA)первая общая модель: нижние/верхние страницы, применения, автоматы модуля и тракта, CDB
40h4.0 (2019)staged control sets, страницы VDM 20h–2Fh, расширенные дескрипторы применений, более чёткие длительности
41h4.1исправления и уточнения
50h5.0 (2021, OIF)банки до 32 каналов, уточнённая модель тракта и канальных флагов, расширенные наблюдаемые VDM, страницы диагностики 13h–14h
51h–53h5.1, 5.2, 5.3инкрементально: новые типы VDM, крючки мониторинга когерента (ZR), уточнения управления прошивкой

Модуль CMIS 5.x в хосте с реализацией 4.0 обычно работает по базовому циклу (автомат, выбор применения), но хост не прочитает новые страницы VDM; хост только с 3.0 может вовсе не поднять модуль 5.x — Проблемы CMIS. Версии MIS следуют за CMIS: MIS.

Правила совместимости

  • Новый модуль, старый хост — незнакомые коды декодируются как unknown; большее значение байта 94 / байта 1 обычно терпится. Проблемы начинаются, когда хосту нужно поле, существующее только в новой ревизии (байт 192, применения).
  • Старый модуль, новый хост — нормально; хосты сохраняют обратный разбор.
  • Заявленная ревизия противоречит содержимому — настоящая ловушка. Заявить 12.x с пустым байтом 66 при байте 12 = FFh — получить на хосте «0 Гбит/с»; заявить ред. 2.0+ с мусором в байте 192 — получить unknown type. Кодируя, ставьте байт ревизии под поля, которые реально используете.
  • У SFF-8024 нет байта версии в модуле; ревизия таблицы у хоста решает, какие коды он сможет назвать.

Остальные документы и их темп

ДокументТекущее поколениеПримечания
SFF-8024ред. 4.x, пересматривается несколько раз в годновые идентификаторы, разъёмы и ID интерфейсов появляются здесь первыми
INF-8077iред. 4.5 (2005)XFP; стабилен, новых ревизий не ожидается — XFP
SFF-8690 / SFF-TA-10041.xкарты tunable — Карты tunable
SFF-8079 / SFF-80891.xвыбор скорости/применения — Выбор скорости
Аппаратные спецификации (SFF-8431, SFF-8679, QSFP-DD HW, OSFP)см. каталогсемейства SFP, QSFP

Номера и названия документов: Каталог спецификаций MSA.

В CodingBox

CodingBox сначала читает байт ревизии и применяет соответствующие определения полей, поэтому поля, которых у заявленной ревизии нет, показываются как зарезервированные, а не подписываются неверно. Редактор EEPROM позволяет выставить байт ревизии вместе с полями, которыми он управляет.