Обновление микрокода процессора intel. Совершенно альтернативный способ обновления микрокодов. Центральные процессоры производства компании AMD

Если чипсет и материнская плата LGA 775 теоретически могут поддерживать XEON 771, но родной BIOS не поддерживает его, а модифицированного нет — то можно модифицировать BIOS самостоятельно.

ВАЖНО

1. Все изменения в прошивке BIOS (.ROM файл обычно) Вы делаете на свой страх и риск. При ошибке из материнской платы получается гарантированный «кирпич»
2. Размер файла оригинальной прошивки и измененного варианта должны совпадать до байта.

3. Прошивка измененного файла BIOS обратно в микросхему выполняется только с помощью фирменной утилиты от разработчика материнской платы (необходимо скачать с сайта производителя).
4. В топовых материнских платах в самом BIOS есть встроенный модуль обновления прошивки (например, EZ Flash 2 utility для ASUS P5Q в разделе Tools) — самый лучший вариант.

Как лучше сделать:
1. Все-таки поискать в интернете готовый вариант с поддержкой XEON?
2. Скачать с официального сайта последнюю версию прошивки и добавить микрокоды?

Как видится — второй вариант безопаснее, Вы в любом случае скачиваете оригинальную прошивку с сайта производителя материнской платы, т.е. гарантируется последняя версия и отсутствие ошибок (точнее исправление всех найденных ранее ошибок). При скачивании готового варианта со сторонних ресурсов (по вполне очевидным причинам на оригинальном сайте его не будет) — Вы можете получить кривую версию и убить BIOS.

Предварительно можно оценить наличие микрокодов XEON в прошивке BIOS.

— получаем текущий образ AMI BIOS через Universal BIOS Backup ToolKit 2.0
— смотрим содержимое полученного ROM-файла через AMIBCP V 3.37

Вариант для BIOS AMI (American Megatrends Inc).

1. Скачиваем самую последнюю версию BIOS с сайта производителя вашей материнской платы

3. Скачиваем микрокоды для процессоров XEON 771: lga771_microcodes

4. Узнаем CPUID вашего процессора с помощью AIDA64 или аналогичной программы (он выглядит как cpu0001067Ah). Если BIOS будет зашиваться до установки процессора, то пропускаем этот пункт.

5. Распаковываем архивы MMTool и lga771_microcodes и оставляем из файлов с расширением .bin только те файлы, начало которых совпадает с CPUID вашего компьютера (например, cpu0001067a_plat00000044_ver00000a0b_date20100928.bin )

Если не знаем какой код, то зашиваем все.

A. Запускаем MMTool . Жмем кнопку (1) Load ROM и загружаем в программу последний BIOS для вашей матплаты. Если у вас самый новый BIOS, то можно так же слить утилитой бекап BIOS с ПК и править его.

B. Переходим на вкладку (2) CPU Patch , затем кнопкой (3) Browse , откройте файл .bin соответствующий вашему CPUID.

C. В опциях оставьте значение по умолчанию «Insert a Patch data» и нажмите кнопку (4) Apply .

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

Basic Input Output System - базовая система ввода-вывода, сокращенно BIOS. Маленькая микросхема на материнской плате, которая первой получает управление при включении ПК. Обеспечиваются: базовые настройки ПК проверка компонентов ПК при старте...

С начала января сложно было пропустить новости, касающиеся аппаратных уязвимостей Spectre и Meltdown — настолько серьёзной и всеобъемлющей оказалась тема. Хотя производители знали об этих проблемах ещё с лета прошлого года, большинство, похоже, начало реагировать лишь после обнародования подробностей специалистами команды Google Project Zero.

Например, Intel ещё в январе помимо прочих заплаток выпустила обновления микрокода против Spectre для своих процессоров Broadwell, Haswell, Skylake, Kaby Lake и Coffee Lake. Но почти сразу выяснилось, что они приводят к сбоям и . Вначале Intel заявила, что проблема касается только чипов Broadwell и Haswell, но позже признала существование сбоев на компьютерах с процессорами Skylake, Kaby Lake и Coffee Lake и партнёрам и пользователям пока воздержаться от установки заплаток. Наконец, в начале февраля исправленный вариант микрокода, но только для мобильных и настольных потребительских чипов семейства Skylake.

Теперь, после месяца интенсивных тестов и обкатки заплаток Intel и её партнёрами, пришло время и других более или менее актуальных процессоров: были выпущены обновления микрокода для чипов на базе архитектур Kaby Lake и Coffee Lake, а также незатронутых предыдущим обновлением Skylake-базированных платформ. Речь идёт о процессорах 6, 7 и 8-го поколений Intel Core i, а также последних семейств Core X, Xeon Scalable и Xeon D.

Новый вариант микрокода будет доступен в большинстве случаев через выпуск OEM-производителями новых прошивок материнских плат и ноутбуков. Intel по-прежнему призвала людей постоянно обновлять свои системы до актуальных версий, а также опубликовала документ , в котором расписала состояние аналогичных исправлений микрокода для других своих продуктов, в том числе более ранних чипов, начиная с 45-нм Core 2. Для каких-то из этих чипов заплатки только планируются, для других — находятся в состоянии раннего тестирования, для третьих — существуют уже в виде бета-версии. Как правило, чем старее архитектура, тем позже она получит прошивки с защитой против Spectre. Тем не менее, обновления микрокода для более-менее актуальных архитектур Sandy Bridge, Ivy Bridge, Haswell и Broadwell уже находятся в состоянии бета-тестирования. Также ряд чипов Atom и даже ускорители Xeon Phi уже получили заплатки.

Intel напомнила, что существуют и другие методы борьбы против вскрытых уязвимостей блока предсказания ветвлений в современных процессорах. Например, Retpoline, разработанный Google против Spectre CVE-2017-5715 (branch target injection или целевое внедрение в ветвь). Для тех, кто интересуется дополнительной информацией о Retpoline и принципах его работы, компания опубликовала особый технический доклад .

Выпущенные Intel обновления микрокода против Spectre в ближайшие дни и недели начнут выходить в виде свежих прошивок BIOS для различных материнских плат. Любопытно, окажут ли они дополнительный эффект на деградацию производительности конечных систем?

Modern processors are complex devices that can have bugs. Furthermore, instead of executing x86 instructions directly, modern x86 processors contain internal code that implements support for the x86 instruction set. The internal code is called microcode. Microcode can be updated to fix or mitigate CPU bugs.

Some CPU bugs can make Firefox crash. For example, Firefox 57 and later is known to occasionally crash on Broadwell-U CPUs with old microcode in a manner not seen with newer Broadwell-U microcode versions.

Microcode updates can be loaded onto the CPU by firmware (usually called BIOS even on computers that technically have UEFI firmware instead of old-style BIOS) or by the operating system. Microcode updates do not persist across reboot, so in the case of a dual-boot system, if the microcode update isn"t delivered via BIOS, both operating systems have to provide the update.

On Mac, to have an up-to-date system, apply all OS X system updates and Apple firmware updates offered in the Updates pane of the App Store app.

To allow Windows to load updated microcode onto the CPU, make sure Windows Update is enabled and set to install updates.

To see the processor microarchitecture and which microcode revision is in use, run the command reg query HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0 in the Windows command prompt. (You can open the command prompt by pressing Windows + R , typing cmd and pressing Return .) The line labeled "VendorIdentifier" shows the CPU vendor (GenuineIntel for Intel or AuthenticAMD for AMD). The line labeled "Identifier" gives the microarchitecture as three numbers: "Family", "Model" and "Stepping". These are relevant in identifying if a particular CPU bug may be relevant to the CPU in your computer. The line labeled "Update Revision" shows the current microcode revision (for the particular microarchitecture) with zeros on both sides. For example, Update Revision REG_BINARY 000000001E000000 means that the revision is 1E (hexadecimal). The line labeled "Previous Update Revision" shows the microcode revision loaded from BIOS.

If the vendor is GenuineIntel, family is 6, model is 61 and stepping is 4, to avoid crashes with Firefox 57 or later, the microcode revision needs to be 1A or higher.

Whether microcode updates are in use by default depends on the Linux distribution and can differ for Intel and AMD CPUs.

  • On Debian-based distributions, including Ubuntu, microcode updates for Intel processors are provided by the intel-microcode package and microcode updates for AMD processors are provided by the amd64-microcode package.
  • On Arch, AMD microcode updates are installed by default, but Intel microcode updates require special steps .
  • On Fedora, microcode updates are installed by default.

To see the processor microarchitecture and which microcode revision is in use, run the command less /proc/cpuinfo in terminal. The line labeled "vendor_id" shows the CPU vendor (GenuineIntel for Intel or AuthenticAMD for AMD). The microarchitecture is given as three numbers on lines labeled "cpu family", "model" and "stepping". These are relevant in identifying if a particular CPU bug may be relevant to the CPU in your computer. The line labeled "microcode" shows the microcode revision number (for the particular microarchitecture) in hexadecimal.

Приобретённый на Алиэкспрессе в материнскую плату Intel DG965SS (с разъёмом LGA775). Можно конечно и самому переделать LGA771 в LGA775, но при цене в $6,5 долларов за процессор гораздо проще взять его и китайцев.

При использовании Intel Xeon 5320 операционная система Windows 10 заработала только при выключении в БИОСе режима "Core multiplexing" (в отличии от прекрасно работающей Ubuntu 17.10). При этом процессор работал только в однопоточном режиме, так что, согласно тесту CPU-Z, производительность в многопоточном режиме оказалась в 2 раза ниже, чем у Intel Core 2 duo E6300, на замену которому и покупался Xeon.

Оказалось, что микрокоды процессора должны быть обновлены. Можно сделать это и в программном режиме, причём в Ubuntu операция на голову проще, чем в Windows 10. Да и в последней нужно позаботиться о том, чтобы микрокоды обновлялись при каждой загрузке. Также есть возможность обновить микрокоды и в БИОСе, по крайней мере в некоторых BIOS от AWARD, AMI, Phoenix, особенно в версиях до UEFI.

Инструкций для материнских плат Intel намного меньше. И не удивительно. С Intel DG965SS пришлось очень прилично повозиться.

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

Некоторые инструкции предлагают создать загрузочную дискету, т.к. не все компьютеры позволяют загружаться в флешки. Я сделал загрузочную флешку с FreeDOS при помощи бесплатного приложения с открытым исходным кодом Rufus (для этого нужно отметить галочкой "Create a bootable disk using" и выбрать из списка пункт "FreeDOS").

В первых строках данного поста хочу без сарказма и искренне поблагодарить участника форума на клокерах, под ником WebBlast за популяризацию данного метода.

Сегодня первое апреля, но это просто совпадение. Способ работает и почти ничего не кирпичит.

В BIOS поколения «до UEFI» есть механизм обновления микрокодов без обновления самого BIOS. Работает этот механизм в силу тех или иных причин не всегда, но если он работает, то в общем процедура обновления сводится к загрузке системы со специального внешнего носителя и последующей перезагрузке.

Что важно понимать:

  • Происходит подмена одного микрокда на другой, а не добавление. Т.е. в ситуации с 771 модом мы зачастую получаем потерю поддержки аналогичного Core 2 Quad, т.е. его микрокод подменяется на микрокод Xeon.
  • Если система не стабильна, пользоваться данным способом не рекомендуется, а система с Xeon зачастую не стабильна без микрокодов.
  • Обновить микрокод на старом процессоре нельзя.
  • Программа не оперирует понятием платформы вообще. Т.е. к примеру микрокод для процессора 1067А, версии FA и платформы 0 будет заменен на микрокод для процессора 1067А, версии FС (более новой) и платформы 2. Но при этом микрокод версии FC и платформы 0 не будет заменен на микрокод FC и платформы 2. Программа сообщит что всё уже обновлено.

Так же надо добавить что этот способ практически идеален для обновления модов Feng’а (aka genius239239) до микрокодов версии 2010 года.

И так, для тех кому читать не интересно и у кого есть дисковод (флоппи), предлагается простое решение — пишем (IMA/ZIP, 305kb) на дискету, перезагружаемся и… всё. На экране наверняка будет написано о том что микрокод обновлён и всё хорошо.

Для тех, у кого дисковода нет, но есть флешка, тоже есть путь, но чуть более сложный:

После загрузки ПК с такой флешки, микрокод на любой 45/65нм процессор поколения Core/Core2 обновится. Конечно, если BIOS не UEFI и если плата не злой OEM и так далее… но шанс есть.

Примеры работы программы на одной и той же плате, но с разными версиями BIOS:

  • Успешный пример. ASUS P5QVM DO, BIOS 0206:







    =========================================================================






    The microcode update was successfully loaded permanently into the BIOS.
    You do not need to run this utility again, unless a new
    processor is installed or a new version of the utility is used.

  • НЕ успешный пример. ASUS P5QVM DO, BIOS 0403:

    Database file being used is PEP.DAT
    =========================================================================
    | Processor Update Utility for Intel(R) P6 and Intel NetBurst(R) |
    | Microarchitecture Family of Microprocessors |
    | Version 7.14 , 09/ 23 / 2005 , Production |
    | Copyright 1995 -2004 , Intel Corporation. |
    =========================================================================
    The system BIOS supports the microcode update API.
    Searching database file for Processor Signature =0001067A Platform ID =1
    Attempting to permanently install the microcode update(s) in your system BIOS.

    Checking microcode update for processor signature 1067A and platform ID 01:
    BIOS microcode update revision = A07
    Database microcode update revision = A0B
    This utility can load a newer microcode update into the BIOS.
    ERROR: Update not permanently loaded into the BIOS. BIOS rejected



    Database microcode update revision = A0B

    Microcode updates can only be temporarily loaded into processors.
    You will need run this utility again after each system power-up or reset.
    Processor #2:
    Pentium(R) III processor detected.
    Processor Signature =0000067A
    Processor microcode update revision = A07
    Database microcode update revision = A0B
    This utility can load a newer microcode update.

    Update #1 Processor Signature=1067A Platform ID=11 Revision=a0b
    2 successful load(s) .
    All Updates Loaded and Verified!

    1. Старые версии HPUSBFW не работают под Win10, но версия 2.2.3 и более новые без проблем создают загрузочную USB флешку.
    2. Данный способ отлично отрабатывает из-под USB флешки с FreeDOS, созданной средствами RUFUS.
    3. Да, RUFUS’ный FreeDOS не на всех системах загружается, но решение есть, см. п. 1.