Меню

Программатор для sfp модулей своими руками

Что такое прошивка модуля? Руководство по прошивке модулей

В ходе работы с активным сетевым оборудованием (коммутаторы, маршрутизаторы, медиаконвертеры и т. д.) пользователи сталкиваются с проблемой, когда съемный трансивер работает в оборудовании одной марки и не работает в другом. Например, модуль SFP 10km 1310 из коммутатора HP, по умолчанию не будет работать в коммутаторе Cisco. А вместо «Port Status: UP» в командной строке пользователь увидит сообщение «unsupported transceiver».

Модули Cisco GLC-LH-SMD и HP J4859C являются аппаратными аналогами. Вероятно проблема заключается в несовместимости внутреннего программного обеспечения модуля с коммутатором.

Для решения этой проблемы нужно сменить программное обеспечение трансивера на совместимое с конкретной маркой и моделью активного сетевого оборудования. Для смены ПО (прошивки модуля), понадобится:

Важно уточнить, что часто каждый производитель использует программатор модулей собственной разработки, но встречаются «универсальные программаторы».

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

  1. трансивер устанавливается в порт программатора
  2. выбирается файл с прошивкой
  3. код записывается в память модуля

На первый взгляд процесс перепрошивки прост, но в нем есть нюансы, ниже мы постараемся подробно объяснить, как прошить модуль.

Где находится внутреннее программное обеспечение модуля?

Внутреннее программное обеспечение – прошивка модуля хранится в энергонезависимой памяти – EEPROM.

Общий объём памяти у модулей SFP и SFP+ составляет 512 байт, его можно условно разделить на 4 области:

  • А0 0-127 – общая информация (артикул, серийный номер, дальность, длина волны и т.д.)
  • А0 128-255 – данная область зарезервирована для производителей, используется крайне редко.
  • А2 0-127 – здесь содержаться пороговые значения DDM и калибровочные значения параметров
  • А2 128-255 – зарезервирована для производителей. Часто используется для хранения информации о совместимости.

С каждой областью памяти модуля нужно работать отдельно. Часто необходимая для совместимости информация, заложена в области А0 0-127, в которой содержится общая информация. Для каждого SFP или SFP+ модуля эта область будет отличаться, как минимум серийным номером. Оборудование некоторых производителей для определения совместимости обращается к области А2 128-255, но, как правило, информация в ней будет одинаковой для моделей одного типа.

Общий объём памяти у XFP модулей составляет 768 байт, его можно условно разделить на 5 областей, по 128 байт:

  • Table00h – зарезервирована под дальнейшее возможное развитие функций диагностики (DDM)
  • Table01h – общая информация (артикул, серийный номер, дальность, длина волны и т.д.)
  • Table02h – предназначена для служебной информации производителя. Здесь содержится специфическая информация, предназначенная для хост-системы.
  • Table03h-7Fh – выделена под информацию, описывающую специфические функции
  • Table80h-FFh – зарезервирована для дальнейшего развития возможностей форм-фактора.

Как и в модулях SFP и SFP+, А0 0-127 в XFP – основной областью памяти является Table01h, в которой содержится информация. Сетевое оборудование некоторых вендоров обращается к области Table02h.

В высокоскоростных моделях, таких как QSFP+, CFP, QSFP28 и других, устройство внутренней памяти еще более сложное, но сохраняет общую логику: область с общей информацией, область с информацией для производителей, область со значениями DDM.

Что такое прошивка?

Файл-прошивка для модулей представляет собой бинарный файл с расширением .bin и размером 128 байт – для прошивки одной области и 256 байт – для перепрошивки нескольких областей.

Международный стандарт описывающий адресное пространство модулей:

  • Спецификация MSA SFF-8472 описывает адресное пространство трансиверов SFP и SFP+;
  • Спецификация MSA INF-8077 описывает адресное пространство трансиверов XFP;
  • Спецификация MSA INF-8438 описывает адресное пространство трансиверов QSFP;
  • CFP MSA Management Interface Specification описывает адресное пространство трансиверов CFP.

Соглашения MSA четко определяют адресное пространство для каждого типа модулей, что позволяет производителям сетевого оборудования, добавлять в прошивку служебную информацию, проверив которую, коммутатор сделает заключение о совместимости конкретного устройства.

Что такое программатор модулей?

Для этой задачи потребуется специальное устройство – программатор (на англ. – programming board). Программатор модулей – это специализированное устройство для работы с внутренней памятью трансиверов различных форм-факторов, представляющее собой печатную плату:

  • с одним или несколькими слотами для модулей различных форм-факторов,
  • портом для подключения к компьютеру, зачастую, используется USB интерфейс,
  • портом питания.

Как правило, каждый производитель трансиверов использует программатор собственной разработки, но за счет стандартизации разметки внутренней памяти модулей обладая программатором одного производителя можно работать с трансиверами различных марок.

Важно понимать, что для каждого программатора в комплекте идёт собственное программное обеспечение, без которого с ним невозможно работать.

Функционал и возможности программного обеспечения отличаются. У некоторых производителей встречаются удобные программы, с большим набором настроек. Это делает их практичным выбором, но требует большей подготовленности персонала.

Другие программаторы дают меньше возможностей. Скрывая параметры записи, можно упростить пользовательский интерфейс. Это позволит избежать ошибки оператора, но сильно ограничит функционал программатора.

На рынке так же встречаются универсальные устройства сторонних разработчиков, которые позволяют работать с модулями разных производителей. В таких решениях больше настроек и шире возможности, но не стоит забывать, что это потребует от пользователя больших знаний и понимание процесса.

Некоторые поставщики OEM трансиверов предлагают «облачные» программаторы. Такие устройства оснащены портами для трансиверов распространённых форм-факторов – SFP, XFP, QSFP, CFP и требуют подключение к интернету. Их главная особенность заключается в том, что после установки модуля оператор выбирает производителя и модель (линейку) устройства, после чего программное обеспечение само генерирует прошивку и записывает её в память трансивера. Однако, у такого решения есть недостатки – они рассчитаны на работу с трансиверами только конкретного поставщика или с модулями без защиты от записи.

Процесс прошивки модулей

Процесс прошивки модулей всех форм-факторов выглядит одинаково:

  1. трансивер устанавливается в соответствующий порт программатора
  2. программатор инициализирует установленный трансивер и считывает с него внутреннее программное обеспечение
  3. выбирается файл-прошивки
  4. код записывается в память модуля
  5. производится проверка успешности перезаписи прошивки

Что бы убедиться, что перепрошивка прошла успешно и исключить ошибку считывания программатора, нужно извлечь модуль и установить его обратно. При чтении прошивки она должна совпадать с ранее записанной. Такой способ позволяет убедиться в корректности смены кода.

Как прошить SFP модули?

Проще всего перепрошить трансиверы форм-фактора SFP, так как они не защищены паролем и с ними можно работать любым программатором имеющим соответствующий разъем. Пароль на SFP устанавливается в редких случаях, например это может быть дорогостоящий модуль, предназначенный для работы на большое расстояние, более 100км. В остальном перепрошивка SFP модулей совпадает с описанным выше процессом.

Читайте также:  Ремонт барбекю своими руками

Как прошить SFP+ и XFP модули?

Смена внутреннего кода трансиверов форм-факторов SFP+ или XFP сопряжена с одной проблемой – защитой от записи. Стандартом MSA зарезервированы байты для ввода пароля. Пароль состоит из четырёх байт в шестнадцатеричной системе, и выглядит таким образом: 5A 68 80 A4 или 11 22 33 44.

Пароль используется для защиты от случайной перезаписи или порчи трансивера. Каждый производитель использует свой пароль. Таким образом, для перепрошивки SFP+ или XFP модулей необходимо знать пароль для записи. После ввода пароля в дальнейшем перепрошивка совпадает с описанным выше процессом.

Где скачать прошивки для модулей?

Прошивки могут предоставлять: поставщик программатора или производитель трансиверов, реже реселлер. Разумеется, прошивки можно найти в интернете, так как инженеры обмениваются ими на форумах и пытаются составлять базы прошивок. Иногда можно добиться совместимости самостоятельно, вписав в нужные поля прошивки необходимую информацию.

Источник

Sfp программатор своими руками

SiiiO › Блог › Простой программатор Nand flash Chipstar Janus

Собрал недавно программатор NAND Flash памяти.
Программатор разработала организация НТП «Тиком».

«USB программатор ChipStar‑Janus
USB программатор ChipStar‑Janus — простой внутрисхемный программатор для микроконтроллеров (PIC, AVR, MCS51 и других) и микросхем FLASH памяти с возможностью расширения.

Через адаптер расширения позволяет программировать микросхемы NAND FLASH.

Программатор ChipStar-Janus создан специально для специалистов, нуждающихся в простом и недорогом, но близком к профессиональному, программаторе с фирменной поддержкой.

Таким образом, этот программатор в некоторых случаях будет достаточен для разработки и ремонта современного радиоэлектронного оборудования.» — текст описания с сайта производителя.

Программатор можно купить готовый, либо собрать самому, на сайте производителя есть подробнейшая инструкция и вся документация для сборки.

Сайт производителя
Есть 2 варианта печатной платы, для smd(двухсторонняя) и для DIP.
Прошивка и ПО доступны после регистрации на сайте.

МК PIC25k50 я прошивал программатором JDM Extrapic, а ПО picpgm.
Единственная проблема при сборке программатора у меня была с выставлением конфиг. битов, picpgm сама не смогла их корректно распознать :(. В документации на программатор конфиг. битов я не нашел, и начал пробовать вытянуть их из HEX файла. Начал читать, узнавать где они там хранятся и т.д. Попутно задал вопрос в тех. поддержку производителя, а дело было в 22 часа примерно, пятница, ну думаю пока до понедельника далеко, буду пробовать сам из прошивки вытянуть, по итогу через минут 40 вытянул конфиг биты из файла прошивки и вижу письмо пришло новое, открываю, а это к слову было 23 часа, а там подробный ответ на несколько моих вопросов по программатору. Я был приятно шокирован скоростью ответа тех.поддержки, при том что вопрос был по БЕСПЛАТНОМУ программатору, а не купленой версии. Сравнил полученные биты с вытянутыми, все сошлось. Прошил МК и продолжил сборку.
Программатор сразу заработал.
Еще одно приятное впечатление оставила тестовая программа для отладки и проверки программатора. Эта программа вручную выставляет напряжение программирования на выходах питания, выставляет низкий или высокий уровень на линиях данных, прослушивает входы, и для каждого действия обозначены контрольные точки на схеме для проверки, схема с точками показана на вкладке в программе, очень удобно.

Сделал себе сразу 3 адаптера, для 24х, 25х, 93х, NAND(делал под впайку микросхемы в адаптер, пока не куплю панельку)

ПО много чего умеет, преобразует BIN файл в формат нанд.
Микросхемы которых нет можно добавлять самостоятельно, все описано в инструкции.

Схема, платы, инструкция по сборке, все доступно БЕЗ регистрации, а регистрация нужна для получения прошивки и ПО под прошивку, там еще дается период бесплатного обновления, и для каждой прошивки он свой, если шить мою прошивку, то вы потеряете то количество дней, которое прошло с момента моей регистрации. Так что крайне рекомендую регистрироваться и скачивать свою прошивку.

StanislavKrezz › Блог › Изготовление SPI FLASH программатора, ЛУТ.

Тема отнюдь не нова, но, как показывает практика, дополнительный материал никогда не будет лишним, ведь на одной из картинок можно прояснить для себя какой-то непонятный момент, увидеть как лучше делать или подсмотреть вообще что-либо другое.

В этой заметке пойдет речь об изготовлении программатора, предназначенного для прошивки микросхем в корпусе DIP-8. Устройство является клоном серийного программатора «BlackcatUSB», печатная плата, схема, прошивка контроллера и софт для работы с устройством взяты отсюда meandr.org/archives/12018.

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

Большая часть статьи посвящена изготовлению печатной платы методом ЛУТ (лазерно — утюжная технология). Метод является аккумуляцией коллективного опыта, что означает вариативность технологии, то есть разные этапы изготовления можно выполнять с использованием различного материала и оборудования. В этой статье используется все, что почти у всех есть под рукой, кое-что (станок для резки) лучше даже было бы заменить дремелем (гравером).
Это мой первый опыт изготовления печатной платы вообще и методом ЛУТ в частности. Также в первый раз осуществлял запайку микроконтроллера. Радиодетали поверхностного монтажа до этого паял, но опыта совсем немного. Раз даже у меня получилось, то это будет и под силу любому другому начинающему включая тебя, %drivername% 😉

Список используемого оборудования

1. Паяльная станция;
2. Паяльник ProSkit с модифицированным жалом «микроволна»;
3. Сверлильный станок;
4. Отрезной станок.

Список используемых материалов

1. Фольгированный текстолит (20р);
2. Хлорное железо 500 грамм (70р);
3. Сплав Розе 100 грамм (70р);
4. Флюс ЛТИ-120 с кисточкой(35р);
5. Радиодетали (

60-70р):
6. МК AT90USB162 (130р).

Хлорного железа и сплава хватит на большое количество плат — первого используются десятки грамм, второго — несколько грамм.

На приобретенный в магазине фольгированный текстолит мы будем переносить тонер, который формирует изображение печатной платы. Печать изображения ПП выполняется на лазерном принтере, жирность, насыщенность в настройках принтера и печати должны быть максимальным, для максимального же осаждения тонера на лист бумаги. Отмечу, что изображение ПП для печати должно быть в зеркальном отражении, подробнее об этом в следующем разделе. Для того, чтобы при переносе на текстолит на бумаге осталось наименьшее количество тонера (а в идеале вообще не осталось) бумага должна быть глянцевой и плотной.
Теперь о моем опыте. Естественно, идти/ехать за всеми рекомендуемой бумагой Lomond у меня не было никакого желания, то решил ограничиться тем что найду дома. Под руку попался каталог известный всем каталог AVON (рисунок 1).

Читайте также:  Ракета фотозона для детей своими руками

Теперь наша задача перенести полученный принт на фольгированный текстолит. Текстолит перед этим стоит обезжирить (спирт, ацетон), но я, впрочем, этого не делал 🙂 Отпечатанное изображение должно быть в зеркальном отражении (о чем упомянуто выше), так как оно будет переноситься и опять зеркально же отразится, таким образом, на текстолите мы получим правильное изображение.
Перенос выполняется следующим образом: вырезаем изображение ПП, прикладываем к текстолиту, прокладываем несколькими слоями газетной бумаги и греем/проглаживаем сверху утюгом в течении

15 секунд. Вместо газет использовал каталог METRO C&C, рисунок 4.

Не отрываем размокшую бумагу, а помещаем под теплую, слабую струю воды, даём воде еще размочить бумагу (большая часть бумаги смоется водой) и нежно (аккуратно) пальцем скатываем бумагу, рисунок 7.

На этом этапе мы удалим всю не защищенную тонером медь (покрытие текстолита — фольга) методом химического травления. Для этого нам понадобится хлорное железо, которое без проблем приобретается в радиотоварах по цене около 70 рублей за 500г. Этого хватит на много-много плат 🙂 Будьте осторожны при работе с хлорным железом и его раствором! Берем ванночку, наливаем горячую воду, разводим хлорное железо. Концентрацию нигде не нашел, ориентировался на описание цвета конечного раствора — цвет «крепкого чая». Очевидно, чем выше концентрация, тем быстрее пойдет процесс травления. Помещаем плату в ванночку с раствором и наблюдаем за травлением. Для ускорения можно немного трясти ванночку. Визуально контролируем, чтобы между дорожками не осталось меди, которая закоротила бы дорожки, также контролируем чтобы протравились всякие мелкие элементы, типы перемычек и площадок под МК (микроконтроллер). В идеале ванночку надо подогревать и держать на вибрирующей платформе, тогда процесс займет не более минуты. У меня ушло минут 15-20, так как трясти не всегда хотелось, раствор был не очень концентрированный, а вода была не сильно горячей и быстро остывала. Извлекаем плату, промываем под проточной водой. Даем высохнуть, протираем ацетоном (у меня был Уайт-спирит). Тонер без проблем счищается вместе с белесым остатком бумаги. На рисунке 8 показан текстолит с готовой разводкой ПП. Как видно качество так себе, но в разрывов не видно, должно работать.

Как известно, прежде чем что-то припаять это что-то надо залудить (нанести припой). Да и медь на воздухе окисляется, неплохо бы остановить этот процесс 😉 Существуют различные способы лужения: механический и химические — сплав Розе и «жидкое олово». Первый не очень подходит для последующего поверхностного монтажа (SMD), а также по причине «как-всегда-не-не-хочется-возиться», «жидкое олово» в магазинах города найти не удалось, а от Алика ждать долго. Таким вот методом исключения был выбрано химическое лужение сплавом Розе. Покупать лучше в надежном месте — говорят бывает подделка.
Суть процесса: в металлической таре доводим воду до кипения, помещаем сплав Розе, он начинает плавиться, лицевой стороной кладем ПП на расплав сплава Розе, начинаем аккуратно водить платой, по визуальному контролю останавливаем процесс, достаем плату.
Как это было у меня. Из большой банки кофе Nescafe была вырезана тара с высотой стенки 4-5 см (бонусом годная крышка), рисунок 9. На рисунке 10 текстолит, сплав Розе, шпатель (который не пригодился).

Набрал пару сантиметров воды, поставил на огонь. Довел до кипения и добавил лимонной кислоты, которая выступает в роли активатора поверхности и убирает окисел. Кинул горошины четыре сплава, подождал, лицевой стороной опустил ПП. Сначала хотел на ПП поместить сплав и размазывать шпателем, но пар, горячо, и ни в какую не плавился этот легкоплавкий сплав Розе. Потому тер лицевой стороной платы о горошины сплава. Даже получилось. Результат можно видеть на рисунках 11 и 12 — на свету и на просвет соответственно. По картинке на просвет можно видеть, что термоперенос и лужение прошли не идеально, но замыканий нет, площадки и дорожки целые. Должно работать.

Следующий шаг волнительного изготовления программатора — запайка микроконтроллера. МК Atmel AT90USB162 выполнена в корпусе TQFP32. Проще говоря: с каждой из четырех сторон восемь ножек с весбма небольшим расстоянием между ними. Можно было бы запаять каждую ногу в отдельности, но я предпочел опять-таки обратиться к коллективному разуму — решение конечно же есть. Для пайки МК используют паяльное жало типа «микроволна». Оно представляет собой обычное жало в виде усеченного конуса, но, в отличии от последнего, имеет углубление диаметром около 1 мм и глубиной около 0.5 мм. Т.к. на рабочую паяльную станцию искать и покупать дорогое подходящее жало нужного типа не хотелось было решено взять свой старый-старый паяльник ProSkit (рублей он стоил 100-120) и из обычного жала в форме усеченного конуса сделать «микроволну». О процессе изготовления будет в одной из следующих заметок. «Фишкой» этого жала является использование эффекта поверхностного натяжения (чуть ниже о нем на практике). Будем паять. Помещаем МК на площадки (обращаем внимание на ориентацию ключа МК), выравниваем и прижимаем. Смачиваем одну сторону флюсом (я использовал ЛТИ-120), запаиваем паяльником крайние ножки, смачиваем противоположную сторону и также запаиваем крайние ножки. Все, теперь МК никуда не денется. Смачиваем флюсом запаиваемую сторону, набираем олово на жало, а конкретно оно окажется в углублении, и достаточно быстро проводим по всем ногам одной стороны. Если делать это аккуратно и быстро, то слипания ножек не произойдет. У меня, естественно, произошло 🙂 «Соплю» между ногами нагреваем паяльником и собираем либо на жало, либо оловоотсосом. Повторяем четыре раза. Готово! Результат можно видеть на рисунке 13, съемка под оптическим микроскопом. На рисунке 14 обычная фотография.

Изначально планировал вырезать плату посредством дремеля, но, увы, в день когда дошли руки до программатора дремель остался дома 🙂 Потому привожу фотографию станка (рисунок 17) на котором пришлось вырезать плату, что получилось — рисунок 17. Одно могу сказать — страшно было 🙂 Толщина текстолита недостаточна, чтобы программатор плотно вошел в USB-разъем. Из обрезков текстолита вырезал подкладку и сточил на наждачной бумаги, пока программатор не стал плотно входить в разъем.

Читайте также:  Простая контактная сварка своими руками

Распайка элементов, прошивка, проверка

Завершающий этап — распайка элементов. Сложностей не возникло. Распайка SMD-элемента занимает одну минуту. Выставляем по площадкам пинцетом, выравниванием пальцем, прижимаем пинцетом, смачиваем флюсом, запаиваем. Вторая сторона проблем не вызывает тем более. Фотографии готового устройства: рисунок 18, рисунок 19.

Буду рад услышать советы, рекомендации, критику.

Что такое прошивка модуля? Руководство по прошивке модулей

В ходе работы с активным сетевым оборудованием (коммутаторы, маршрутизаторы, медиаконвертеры и т. д.) пользователи сталкиваются с проблемой, когда съемный трансивер работает в оборудовании одной марки и не работает в другом. Например, модуль SFP 10km 1310 из коммутатора HP, по умолчанию не будет работать в коммутаторе Cisco. А вместо «Port Status: UP» в командной строке пользователь увидит сообщение «unsupported transceiver».

Модули Cisco GLC-LH-SMD и HP J4859C являются аппаратными аналогами. Вероятно проблема заключается в несовместимости внутреннего программного обеспечения модуля с коммутатором.

Для решения этой проблемы нужно сменить программное обеспечение трансивера на совместимое с конкретной маркой и моделью активного сетевого оборудования. Для смены ПО (прошивки модуля), понадобится:

Важно уточнить, что часто каждый производитель использует программатор модулей собственной разработки, но встречаются «универсальные программаторы».

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

На первый взгляд процесс перепрошивки прост, но в нем есть нюансы, ниже мы постараемся подробно объяснить, как прошить модуль.

Где находится внутреннее программное обеспечение модуля?

Внутреннее программное обеспечение – прошивка модуля хранится в энергонезависимой памяти – EEPROM.

Общий объём памяти у модулей SFP и SFP+ составляет 512 байт, его можно условно разделить на 4 области:

С каждой областью памяти модуля нужно работать отдельно. Часто необходимая для совместимости информация, заложена в области А0 0-127, в которой содержится общая информация. Для каждого SFP или SFP+ модуля эта область будет отличаться, как минимум серийным номером. Оборудование некоторых производителей для определения совместимости обращается к области А2 128-255, но, как правило, информация в ней будет одинаковой для моделей одного типа.

Общий объём памяти у XFP модулей составляет 768 байт, его можно условно разделить на 5 областей, по 128 байт:

Как и в модулях SFP и SFP+, А0 0-127 в XFP – основной областью памяти является Table01h, в которой содержится информация. Сетевое оборудование некоторых вендоров обращается к области Table02h.

В высокоскоростных моделях, таких как QSFP+, CFP, QSFP28 и других, устройство внутренней памяти еще более сложное, но сохраняет общую логику: область с общей информацией, область с информацией для производителей, область со значениями DDM.

Что такое прошивка?

Международный стандарт описывающий адресное пространство модулей:

Соглашения MSA четко определяют адресное пространство для каждого типа модулей, что позволяет производителям сетевого оборудования, добавлять в прошивку служебную информацию, проверив которую, коммутатор сделает заключение о совместимости конкретного устройства.

Что такое программатор модулей?

Для этой задачи потребуется специальное устройство – программатор (на англ. – programming board). Программатор модулей – это специализированное устройство для работы с внутренней памятью трансиверов различных форм-факторов, представляющее собой печатную плату:

Как правило, каждый производитель трансиверов использует программатор собственной разработки, но за счет стандартизации разметки внутренней памяти модулей обладая программатором одного производителя можно работать с трансиверами различных марок.

Важно понимать, что для каждого программатора в комплекте идёт собственное программное обеспечение, без которого с ним невозможно работать.

Функционал и возможности программного обеспечения отличаются. У некоторых производителей встречаются удобные программы, с большим набором настроек. Это делает их практичным выбором, но требует большей подготовленности персонала.

Другие программаторы дают меньше возможностей. Скрывая параметры записи, можно упростить пользовательский интерфейс. Это позволит избежать ошибки оператора, но сильно ограничит функционал программатора.

На рынке так же встречаются универсальные устройства сторонних разработчиков, которые позволяют работать с модулями разных производителей. В таких решениях больше настроек и шире возможности, но не стоит забывать, что это потребует от пользователя больших знаний и понимание процесса.

Некоторые поставщики OEM трансиверов предлагают «облачные» программаторы. Такие устройства оснащены портами для трансиверов распространённых форм-факторов – SFP, XFP, QSFP, CFP и требуют подключение к интернету. Их главная особенность заключается в том, что после установки модуля оператор выбирает производителя и модель (линейку) устройства, после чего программное обеспечение само генерирует прошивку и записывает её в память трансивера. Однако, у такого решения есть недостатки – они рассчитаны на работу с трансиверами только конкретного поставщика или с модулями без защиты от записи.

Процесс прошивки модулей

Процесс прошивки модулей всех форм-факторов выглядит одинаково:

Что бы убедиться, что перепрошивка прошла успешно и исключить ошибку считывания программатора, нужно извлечь модуль и установить его обратно. При чтении прошивки она должна совпадать с ранее записанной. Такой способ позволяет убедиться в корректности смены кода.

Как прошить SFP модули?

Проще всего перепрошить трансиверы форм-фактора SFP, так как они не защищены паролем и с ними можно работать любым программатором имеющим соответствующий разъем. Пароль на SFP устанавливается в редких случаях, например это может быть дорогостоящий модуль, предназначенный для работы на большое расстояние, более 100км. В остальном перепрошивка SFP модулей совпадает с описанным выше процессом.

Как прошить SFP+ и XFP модули?

Смена внутреннего кода трансиверов форм-факторов SFP+ или XFP сопряжена с одной проблемой – защитой от записи. Стандартом MSA зарезервированы байты для ввода пароля. Пароль состоит из четырёх байт в шестнадцатеричной системе, и выглядит таким образом: 5A 68 80 A4 или 11 22 33 44.

Пароль используется для защиты от случайной перезаписи или порчи трансивера. Каждый производитель использует свой пароль. Таким образом, для перепрошивки SFP+ или XFP модулей необходимо знать пароль для записи. После ввода пароля в дальнейшем перепрошивка совпадает с описанным выше процессом.

Где скачать прошивки для модулей?

Прошивки могут предоставлять: поставщик программатора или производитель трансиверов, реже реселлер. Разумеется, прошивки можно найти в интернете, так как инженеры обмениваются ими на форумах и пытаются составлять базы прошивок. Иногда можно добиться совместимости самостоятельно, вписав в нужные поля прошивки необходимую информацию.

Источник