Skip to article

Структура памяти трансивера

Память EEPROM трансивера хранит постоянные данные, по которым оборудование распознаёт модуль. Через интерфейс управления также читают диагностику, состояние и настройки. В разговорной речи весь считанный образ часто называют «прошивкой SFP», но постоянная идентификация, текущие регистры и внутреннее ПО контроллера — разные сущности. Запись паспортных полей не меняет физическую конструкцию модуля.

Ниже разобраны Serial ID, A0h/A2h и различия SFP, XFP, QSFP и CMIS-модулей. Адреса и обязательность функций определяются конкретной картой и её редакцией. Для работы в SFPTotal Wizard выбирайте соответствующие Module Type и Address table, а не только похожее название поля.

EEPROM, Serial ID и текущие регистры

ДанныеНазначениеЧто учитывать при изменении
Идентификация / Serial IDПроизводитель, артикул, серийный номер, заявленные интерфейсы и другие сведения.Оборудование использует их при распознавании. Они не являются доказательством аппаратных возможностей сами по себе.
Диагностика и состояниеИзмерения DDM, флаги и состояние функций.Значения могут изменяться при работе; не все регистры доступны для записи.
Постоянные и служебные настройкиКалибровки, данные изготовителя и пользовательские области, где они предусмотрены.Необходимы подходящая спецификация, права доступа и алгоритм конкретного изделия.

EEPROM может быть отдельной микросхемой или представляться через контроллер модуля. Прочитанный по I²C буфер не раскрывает автоматически внутреннее устройство памяти. Алгоритм доступа и сохранения нужно проверять отдельно от успешного чтения.

Трансиверы SFP

В картах семейства SFP на основе SFF-8472 используются адресные пространства A0h и A2h. Это принятые 8-битные обозначения адресов с учётом бита направления; при 7-битной записи соответствующие адреса показываются как 0x50 и 0x51. Их нельзя путать со смещением байта или номером дополнительной страницы.

Схема памяти SFP из исходной документации: A0h, A2h и переключаемые верхние страницы

Схема помогает ориентироваться в организации памяти; точное назначение полей проверяйте в применимой редакции SFF-8472.

Область A0h и паспортные поля

В SFF-8472 12.5a основные и расширенные поля идентификации занимают байты 0–95. Область 96–127 отведена под Vendor Specific EEPROM. Для 128–255 в этой редакции указано Reserved: её нельзя объявлять универсальным стандартным хранилищем «кода совместимости». Реализация изготовителя может отличаться и требует отдельной документации.

Примеры полей A0h для SFP по SFF-8472
ПолеБайты, десятичныеКак читать
Vendor name20–35Название производителя, 16 байт ASCII.
Vendor OUI37–39Трёхбайтовый идентификатор; это не текстовое название бренда.
Vendor PN40–55Part Number, 16 байт ASCII.
Vendor Rev56–59Ревизия артикула, четыре байта ASCII.
Vendor SN68–83Серийный номер, 16 байт ASCII.
CC_BASE / CC_EXT63 / 95Контрольные поля для соответствующих диапазонов идентификации.

Для примера, Vendor PN начинается со смещения 40, то есть 0x28; длина поля 16 байт, последний байт — 55 (0x37). Эти адреса относятся к SFP-карте и не переносятся на одноимённое поле QSFP или CMIS.

Область A2h и дополнительные страницы

A2h включает области диагностики, калибровки и управления. Дополнительные верхние страницы предусмотрены при поддержке paging; выбирается верхнее окно байтов 128–255. Само наличие A2h, всех диагностических показателей и всех дополнительных страниц нельзя предполагать для любого SFP, медного модуля или DAC.

Нет единого обязательного адреса пароля для всех SFP: SFF-8472 оставляет vendor-specific функции изготовителю. В документации Wizard есть настраиваемые параметры ввода пароля, но их значения нужно сопоставлять с реализацией модуля. Подробнее — о защите SFP от записи.

Трансиверы XFP

XFP использует собственную карту управления из INF-8077i. Нижнее окно и переключаемые верхние таблицы не следует трактовать как две области SFP A0h/A2h. В интерфейсе Wizard дополнительные таблицы могут обозначаться T00h, T01h и далее; это не основание переносить туда смещения из SFF-8472.

Схема памяти XFP: нижнее окно, выбор страницы и верхние таблицы Serial ID и EEPROM

Трансиверы QSFP

Для QSFP-семейства сначала установите используемый интерфейс управления. В SFF-8636 предусмотрены нижнее окно байтов 0–127 и верхнее окно 128–255 с выбором страницы. Upper Page 00h содержит идентификацию; состав других страниц и доступность функций зависят от изделия.

Схема памяти QSFP с нижним окном и верхними страницами 00h, 01h, 02h и 03h

Page 02h в этой карте — пользовательская память, а не обязательный для всех изделий образ под определённый бренд. Для части современных модулей используется CMIS. Применяемая карта важнее внешнего сходства модулей и номинальной скорости.

Трансиверы QSFP-DD

CMIS задаёт общую модель управления для ряда форм-факторов. В ней различаются нижняя память и верхнее окно; для paged-модулей учитываются страница и, где предусмотрено, банк. Поддержка страниц и функций объявляется модулем и проверяется по редакции CMIS и документации производителя. Flat memory и paged memory не требуют одинакового набора операций.

Схема CMIS из исходного материала: нижняя память, выбор Bank и Page, общие и банковые страницы

Иллюстрация показывает принцип адресации. Перечень страниц и обязательность функций уточняются по реализованной редакции CMIS; схема не является перечнем возможностей любого модуля.

Трансиверы OSFP

OSFP также использует CMIS, но это не означает полного совпадения всех реализованных страниц и функций с каждым QSFP-DD. Проверяйте объявленные возможности конкретного модуля, редакцию интерфейса и поддержку программатора. Аппаратная совместимость корпусов и электрических интерфейсов рассматривается отдельно от общей модели управления.

Как читать, сохранять и изменять данные в Wizard

  1. Уточните форм-фактор, артикул и ревизию. Выберите Module Type и Address table, затем выполните Read code from module.
  2. Создайте резервную копию доступных областей. Зафиксируйте, какие страницы не удалось считать: неполный набор не следует считать полным образом изделия.
  3. Для подбора кода используйте рекомендации базы прошивок. Сверьте карту, аппаратную реализацию и целевое оборудование.
  4. Уточните защиту от записи, подготовьте только необходимые изменения и проверьте контрольные суммы.
  5. После записи повторно прочитайте те же области. Сравнивайте постоянные данные, учитывая, что диагностические регистры меняются при работе.
  6. Проверьте распознавание и реальное соединение в целевом оборудовании. Успешная запись памяти не заменяет проверку линка.

Изменение Vendor name, Part Number или кода совместимости не превращает оптику MM в SM и не добавляет модулю неподдерживаемую физическую скорость. Перезапись калибровок и служебных регистров требует отдельного обоснованного алгоритма.

Спецификации и связанные материалы

Updated: