Альтернативный способ модификации AWARD BIOS для поддержки процессоров в конструктиве LGA771

Собственно, оригинальный способ, оснастку и микрокоды можно найти здесь (непосредственно инструкция по AWARD тут), и в большинстве случаев использование этого способа не несет никаких проблем и не имеет подводных камней, но я в своей практике регулярно сталкивался с такой проблемой:
001

Причины данной проблемы могу быть разными, но сообщение об ошибке обычно одно и то же — FILENAME have not enough space for adding ROM. Т.е. места нет.

По хорошему, начинать модификацию AWARD нужно не с извлечения существующих микрокодов, не с подбора новых, а с команды CBROM195.EXE BIOSNAME /D:

002
На картинке выше виден результат выполнения команды на BIOS материнской платы Gigabyte GA-965P-DS3 первой версии (не ревизии PCB, а версии BIOS!). Красным помечена команда, зеленым — шапка информации о микрокодах. Если под шапкой есть строки микрокодов — всё хорошо! Данная плата и данный BIOS модифицируются достаточно легко.

В качестве компромиссного в плане функционала и места решения я выбрал следующие — берем последние версии микрокодов для всех процессоров поколения CORE во всех конструктивах (Celeron E, Pentium E, Core 2 Duo, Core 2 Quad, Xeon *3xxx/*5xxx) и подменяем ими всё что было до того. Набор микрокодов получился следующий:

003

Объём этого набора — всего 76 килобайт. Данный файл получился путём объединения этих файлов:

cpu00010676_plat00000001_ver0000060f_date20100929.bin
cpu00010676_plat00000004_ver0000060f_date20100929.bin
cpu00010676_plat00000010_ver0000060f_date20100929.bin
cpu00010676_plat00000040_ver0000060f_date20100929.bin
cpu00010677_plat00000010_ver0000070a_date20100929.bin
cpu0001067a_plat00000011_ver00000a0b_date20100928.bin
cpu0001067a_plat00000044_ver00000a0b_date20100928.bin
cpu000006f2_plat00000001_ver0000005d_date20101002.bin
cpu000006f6_plat00000001_ver000000d0_date20100930.bin
cpu000006f6_plat00000004_ver000000d2_date20101001.bin
cpu000006f7_plat00000010_ver0000006a_date20101002.bin
cpu000006f7_plat00000040_ver0000006b_date20101002.bin
cpu000006fb_plat00000001_ver000000ba_date20101003.bin
cpu000006fb_plat00000004_ver000000bc_date20101003.bin
cpu000006fb_plat00000010_ver000000ba_date20101003.bin
cpu000006fb_plat00000040_ver000000bc_date20101003.bin
cpu000006fd_plat00000001_ver000000a4_date20101002.bin

Сама процедура модификации показана на картинке ниже:
004

Красным выделены команды, зеленым то — на что нужно обратить внимание. Разберем команды по порядку:

  1. attrib +R ncpucode.bin — команда ставит атрибут ReadOnly файлу с микрокодами, это нужно для того, чтобы cbrom его не затёр.
  2. CBROM195.exe 965pds3.f1 /D — команда выводит информацию о нынешнем содержимом BIOS. Обращаем внимание на то, что блок под «зеленым» заголовком не пустой.
  3. CBROM195.exe 965pds3.f1 /nc_cpucode ncpucode.bin — собственно модификация. Загоняем наш ncpucode.bin в 965pds3.f1. Обращаем внимание на то, что сообщений об ошибках нет. Только Combine NCPUCODE.BIN file to 965pds3.f1…
  4. CBROM195.exe 965pds3.f1 /D — Проверка. Обращаем внимание на то, что блок под «зеленым» заголовком не пустой и изменился по сравнению со вторым пунктом.

Это — идеальный случай. Микрокоды там где надо, подмена произошла нормально, на выходе получился образ BIOS с последними версиями микрокодов под все актуальные процессоры (Core/Xeon, 45/65nm, 1/2/4 сore), да еще и места свободного увеличилось, что будет полезным при обновлении irst rom и пр.
К сожалению, так бывает далеко не всегда.
 


 
001
На картинке выше виден результат выполнения команды на BIOS материнской платы Gigabyte GA-965P-DS3 четырнадцатой версии (не ревизии PCB, а версии BIOS!), т.е. той же самой платы, с первой версией прошивки которой выше у нас всё получилось. Последняя же версия «радует» сообщением FILENAME have not enough space for adding ROM. Т.е. места нет.
 
Пытаемся разобраться почему так получается:
005

  1. Даём команду CBROM195.exe 965PDS3.F14 /D и видим что «зеленая» область пуста.
  2. Команда intelmicrocodelist.exe 965PDS3.F14 указывает на то, что набор микрокодов в образе всё-таки есть, но находится где-то не там, где его ожидает обнаружить CBROM

 
Наверняка, микрокоды в такой ситуации всё равно можно «достать» и «подменить», но я не умею. В своей практике выработал для таких ситуаций очередное компромиссное решение — загружать в BIOS только LGA771 микрокоды. Для этого я сделал подборки микрокодов в одном файле, аналогичные описанному выше ncpucode.bin, но другого содержания:

  • 45nm.bin — микрокоды на все 45nm процессоры
  • 65nm.bin — микрокоды на все 65nm процессоры
  • 771_45nm.bin — микрокоды на все 45nm Xeon LGA771
  • 771_ALL.bin — микрокоды на все Xeon LGA771

 
Важно! давать команду attrib +R имя_файла нужно!
 
Таким образом, в «проблемный» BIOS четырнадцатой версии моржно попытаться загрузить только LGA771 микрокоды в стандартную бласть и посмотреть что получится:
006
А не получится собственно ничего. В BIOS нет даже 16KB свободного места. В таком случае есть два пути: удалить или упростить что-то в BIOS, например OEM LOGO, либо, загружать микрокоды по одному. Т.к. я обычно делаю моды «для всех», а не под конкретный процессор, я либо упрощаю LOGO, либо говорю что «материнская плата не модифицируется моим методом, читайте FAQ, вопрос №2«, а так же, даю ссылку на этот метод.

Владельцам «неудобных» плат Gigabyte, да и плат других вендоров (места порой не хватает в платах ECS, причем со стандартным местом хранения микрокодов) можно порекомендовать следующие способы:

  1. Поискать готовый мод. Модификаторов много, технологии у всех разные.
  2. Попытаться сделать «частичныое» обновление/добавление микрокодов, как описано выше.
  3. Сделать мод самостоятельно под конкретный процессор так, как это описано тут.
  4. Сделать мод самостоятельно под конкретный процессор так, как это описано здесь.
  5. Сделать мод более старой версии самостоятельно любым методом.
  6. Упростить OEM LOGO (или какой-то иной компонент) и попробовать сделать мод самостоятельно.
  7. Попробовать сделать мод под конкретный процессор так, как это описано там.

В заключении традиционно предлагаю архив (ZIP, 240KB) с инструментами, использованными в данной заметке.

Запись опубликована в рубрике 771mod с метками , , , . Добавьте в закладки постоянную ссылку.

35 комментариев: Альтернативный способ модификации AWARD BIOS для поддержки процессоров в конструктиве LGA771

  1. Mikl говорит:

    Здравствуйте. Можете помочь — создать биос для IP-35P с поддержкой Xeon. Могу прислать биос , который установлен, я его сохранил с помощью программы FlashMenu/

  2. Mikl говорит:

    Чукча не читатель, чукча писатель))) Я просто в биосах не разбираюсь, но мне помогли и по вашей инструкции сделали новый биос из существующего с новыми микрокодами, которые вы подготовили.
    Сегодня пробовал — заменил старый проц Е2180 на Xeon 5460, мат плата IP-35V.
    ОС — windows 10 корпоративная, версия 1511. Система запускается, но не получилось ничего — температура определяется не правильно, в биосе была температу 90 гр. С, хотя Биос видит проц вроде правильно, а в Система пишет, что это старый проц 2180, только кеш второго уровня видит 6 Мб. Пробовал запускал Windows 7 PE, в оборудовании правильно определяется проц и видно все 4 ядра и кеш вес есть (12 Мб),но пришлось отключить защиту по температуре, т.к. выключалось все — хотя рукой проверял — ничего не перегревалось. Я поставил новый кулер GAMMAXX S40. Что не так, семерку надо ставить с нуля? или на 10 тоже будет работать Xeon 5460?

    • IdeaFix говорит:

      1. Я дал Вам ссылку на страницу с FAQ и модифицированным BIOS http://ideafix.name/?p=1748, было?
      2. В FAQ есть ответы на часть Ваших вопросов, а так же есть вопрос 4. Там ответы на остальные по ссылке.

      Если Вы не хотите читать — я не могу более ни чем помочь.

  3. ironwolf115 говорит:

    Попробовал сделать мод на материнке P35C-DS3R со своей ревизией платы, удалил логотипы из файла и интегрировал микрокоды от xeon45nm, однако проверка списка микрокодов показывает что изменений нету.

  4. joy говорит:

    Привет, нужен совет.
    Есть на руках две материнки intel s5000vsa4dimm rev.H и s5000vsasata rev. G, первая поддерживает xeon E54XX, но памяти максимум 8Гб, вторая умеет 16Гб, что уже веселее, официально она не может Е54ХХ, но заявлена поддержка Е52ХХ. Материнки отличаются ревизией h и g. В нете вычитал, что ревизия g не может выставить питание для Е54ХХ. Немного погуглив и сравнив Е52ХХ и Е54ХХ по питанию нашел:
    Е5240 1,2125В аналоги Х5470 1,212В и Е5450 1,225В (разница 0,0125В)
    Е5220 1,35В аналог L5420 1,35В

    Возможно ли с помощью подмены микрокодов пустить Е54ХХ на этой материнке?

    • IdeaFix говорит:

      1. Модифицировать BIOS на этих платах может оказаться сложной задачей.
      2. Прошить мод без программатора на этих платах может оказаться сложной задачей.
      3. VRD 11.1 — это аппаратная особенность и не обновляется микрокодом.
      4. Какой PBA у Вашей платы? Ревизия — это всё фигня.
      5. Плата точно умеет E53xx — это в общем не плохо.

      • joy говорит:

        1. я бы даже сказал идентифицировать мать непростая задача, только s5000vsa на ней написано, а их 6 модификаций, и ни по каким другим цифрам она не пробивается.
        2. программатора нет 🙁
        3. глупый вопрос: VRD 11.1 — аппаратно реализовано в мосту или отдельной микросхемкой, ну типо перепаять?
        4. PBA D29137-713
        5. не нашел нигде про поддержку Е53ХХ, но может плохо искал. Если Е53ХХ сможет, это уже даже очень неплохо.

        • IdeaFix говорит:

          1. Что-то не сходится…
          2. Интел порой просто не даёт зашить программно неподписанный мод.
          3. VRD — это немного логики и немного физики блока питания процессора(ов). Версия VRD обычно указывает на то, какие токи и напряжения способен генерировать VRM.
          4. Грусть… там и x52xx не должно быть. А вот тут есть фраза D29137-712 или более поздняя
          5. См. п. 4

          • joy говорит:

            1. если честно, я ее опознал только по картинкам ….
            2. смотрю на оф. обновления биоса, как то все не по людски
            3. я так понял — замена микросхемки потредует программку, а програмку не так просто туда пихнуть (см. п.2)
            4. и 5. придеться проверять методом научного тыка (Е5450 не пошел)

            • IdeaFix говорит:

              1. так pn и pba — всё что нужно
              2. Интел 🙂
              3. Для того, чтобы «обновить» vrd, нужно перепаять клокер, возможно ключи и даже изменить разводку платы. Это не тривиально, это в общем случае не возможно.
              4. *53** должно работать штатно при 066-ом биосе и выше. там на страничке которую я давал даже ссылки на BIOS и пр. есть.

  5. joy говорит:

    Спасибо за совет.
    я всегда недолюбливал интел-мамки….

  6. joy говорит:

    тестовый E5310 завелся….пошел гуглить к закупке топовый Е53хх, еще раз спасибо за совет.

    • IdeaFix говорит:

      Кстати, X3230 заодно погуглите…

      • joy говорит:

        Нагуглил е5345, 2 шт с пересылом за 2 косаря, мне кажицо они будут ловчее х3230, греюцо поменьше и шина 1333.
        х3230 редкость редкостная, и просят по 2 раза больше.

        • IdeaFix говорит:

          X3230 = Q6700. Просто я такой купил рублей за 800 на ebay для этого http://ideafix.name/?p=2891 опыта. Если данный проц попадётся занедорого — его можно рассматривать как кандидата на покупку, к тому же, на 333 шину он встаёт отлично… с небольшим овервольтом.

  7. Павел говорит:

    Доброго времени суток,помогите найти модифициованный Bios на ASUS P5G41T-M LX PLUS rev 1.02(процессор Xeon X5450)Есть много материнских плат и много уже прошили с помощью Вашего сайта(спасибо огромное за это)Но с этой реально проблема.Просто ее нет в списках. Зарание спасибо.

  8. Сергей говорит:

    Как понять ваш комментарий к удачному примеру замены, что после замены кодов «да еще и места свободного увеличилось»? Я вижу, что NCPUCODE было 57kb, а стало 76kb, остальное не изменилось, так получается уменьшилось на 19kb?

    • IdeaFix говорит:

      Обычно, в BIOS имеется 2-3 десятка микрокодов (на Pentium 4, Pentium D и Celeron соответствующих поколений), после обновления остаётся 17 «строчек». Т.е. обычно место освобождается, но, как я уже говорил в тексте заметки «К сожалению, так бывает далеко не всегда».

  9. Андрей говорит:

    Здравствуйте. Возможно модифицировать биос для процессора Xeon5450? Системная плата Dell Inspiron 530

  10. Артём говорит:

    решил написать здесь, т.к. не нашёл в списках supermicro .
    Скажите пожалуйста xeon x5450 совместим ли с чипом Intel® 3010 (Mukilteo-2P) Chipset материнская плата supermicro pdsmu ?
    Спасибо.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *