How to Update CPU Microcode in Award or Phoenix BIOS – For LGA 771 & 775

MODs

142 Comments

In this guide, we're going to show you how to update the CPU microcode in an Award or Phoenix BIOS. If you have an AMI BIOS, check out this guide instead.

Note: This information has only been tested with LGA 771 and LGA 775 BIOS files, so if you have a newer motherboard (especially UEFI ones), it probably won't work.

Why would you want to do this?

Updating the microcode is helpful if:

  • You did the LGA 771 to 775 MOD, and your Xeon is not working as expected (or is missing functionality, such as CompareExchange128, Speedstep, SSE 4.1, or VT-X).
  • Your BIOS doesn't support a newer processor that you want to run.
  • The microcode for your processor is old and may be buggy.

Disclaimer

There's an element of risk just flashing a normal BIOS, and especially when you start modifying it, so please attempt this mod at your own risk (and only if you're experiencing some problem). We highly recommend that you don't flash the modified BIOS unless you've verified the microcode was added correctly. If you accidentally remove the microcode that your processor needs, your system may fail to boot. We are not responsible if your system is damaged while attempting this.

Things you'll need

  • The latest BIOS for your motherboard
  • cbrom195.exe - Updates microcode for Award and Phoenix BIOSes

Method 1 (recommended) - Replace all of your existing microcode with the latest microcode from Intel

This method will delete all of your old microcode and replace it with the latest microcode from Intel.

Other programs you'll need

Step 1 - Download the file that contains the microcode for all the processors you want your motherboard to support

The following microcode is only compatible with method 1 of this guide (it's in a combined NCPUCODE.BIN format instead of individual microcode files). This makes it easier to update all of your microcodes at once.

Alternate microcode (in case the others are too big)

Step 2 - Move all of the files you just downloaded to the same directory (or folder), and open that directory in a DOS command prompt window

How to open a folder in a DOS command prompt window

Step 3 - Rename the microcode file to ncpucode.bin, and make it readonly

You can make it readonly with the following command:

attrib +R ncpucode.bin

This is necessary to stop cbrom from overwriting this file with your old microcode.

Step 4 - Delete the old microcode and replace it with the new code

The following command will delete all of the original microcode and replace it with the new microcode (which is in ncpucode.bin). It will just update YOUR_BIOS.BIN (it won't create a new file).

cbrom195.exe YOUR_BIOS.BIN /nc_cpucode NCPUCODE.BIN
  • YOUR_BIOS.BIN is the name of your BIOS file (it doesn't have to end in .BIN)
  • NCPUCODE.BIN is the name of the microcode file downloaded earlier

Having trouble finding the BIOS file that you need to MOD?

Read this

What to do if you get an error about not enough space

First, try one of the smaller, alternate microcode files mentioned earlier. If that doesn't help, you probably have a BIOS that doesn't support the ncpucode.bin method of updating the microcodes, and you'll need to use the 2nd method instead.

Step 5 - Verify that the microcode was added correctly

The following command will show you a list of all of the microcodes in your BIOS file:

intelmicrocodelist.exe YOUR_BIOS.BIN

You should verify that the microcode for your processor's CPUID is present. If you don't know what your CPUID is, check out the following guide: How to get the CPUID, Stepping, or sSpec for an Intel CPU.

If the dates of the microcodes are from 2010 (which is when Intel last updated them), you should have the newest microcode.

Step 6 - Update your BIOS using the modified BIOS that you just created

You should be able to update it the same way you'd update a normal BIOS.

Step 7 - Do a FULL BIOS reset (use the 3-pin motherboard reset jumper, and then load the default BIOS settings on the first startup)

How to fully reset your BIOS

Method 2 - Only add support for a new processor that isn't currently supported (old microcode will not be updated or removed)

This method is useful if your BIOS doesn't currently support a processor, and you want to add the microcode to support it. It should also work for adding LGA 771 Xeon support to an LGA 775 BIOS. All of your existing microcode will remain untouched and won't be updated or removed.

Note: This method may not work if you're trying to update the microcode for a processor that's already supported by your BIOS (you should use method 1 instead). This is the case because this method doesn't remove the old microcode, so the old microcode may get used instead of the new microcode you're adding (we're not sure which microcode the BIOS will use).

Step 1 - Download the microcode for the type of processor you want to install

The microcode files shown below are NOT the same as the ones referenced in method 1 above (they're in a different format), so you'll need to download these instead.

  • LGA 771 microcode
    • If you're only trying to add LGA 771 Xeon support to an LGA 775 motherboard, this is the only file you need to download
    • Contains microcode for all LGA 771 Xeon processors (except older Pentium 4 based 50xx models).
  • Desktop LGA 775 microcode
    • Contains microcode for all Core 2 Duo and later desktop processors (no Pentium 4 or mobile support)
  • Mobile LGA 775 microcode
    • Contains microcode for all Core 2 Duo and later mobile/laptop processors (no Pentium 4 or desktop support)

Step 2 - Look up the CPUID for your processor

You'll need the CPUID to update the right microcode (how to get the CPUID for an Intel CPU).

Step 3 - Set aside the microcode files for your processor's CPUID

Note: If your CPUID ends in an "h" and you don't see microcode with an "h" on the end, just ignore the "h" because it isn't actually part part of the CPUID. That just means it's a hexadecimal number.

When you unzip the microcodes, you'll see a bunch of individual microcode files that have filenames like this:

cpu0001067a_plat00000044_ver00000a0b_date20100928.bin

Here's what the different parts of the filename mean:

  • cpu0001067a - 1067A is the CPUID that is supported by this microcode
  • plat00000044 - plat is short for platform. This tells which sockets are supported by the microcode.
    • LGA 771 microcodes have a 4, 40, or 44 in this section
    • Desktop LGA 775 has a 1, 10, or 11
    • And for mobile LGA 775 it's a 20, 80, or A0
  • ver00000a0b - a0b is the version number
  • date20100928 - 2010-09-28 is the date the microcode was last updated

Set aside the microcode files for your processor's CPUID (there may be more than one).

Step 4 - Move cbrom195, your BIOS file, and the microcode files you set aside earlier to the same directory, and open that directory in a DOS command prompt window

How to open a folder in a DOS command prompt window

Step 5 - Rename your CPU's microcode file to cpucode.bin (plus what to do if you have multiple microcode files)

If there are multiple microcode files for your CPU, you'll need to combine them into 1 file with the following command:

copy /b file1.bin + file2.bin + file3.bin cpucode.bin

The example shown above will combine file1.bin, file2.bin, and file3.bin into 1 new file called cpucode.bin.

Step 6 - Add the new microcode to your BIOS

The following command will add the new microcode to your YOUR_BIOS.BIN (it won't touch any of the existing microcode).

cbrom195.exe YOUR_BIOS.BIN /cpucode CPUCODE.BIN
  • YOUR_BIOS.BIN is the name of your BIOS file (it doesn't have to end in .BIN)
  • CPUCODE.BIN is the name of the microcode file

Having trouble finding the BIOS file that you need to MOD?

Read this

Step 7 - Verify that the microcode was added correctly

Run the following command to display information about what's stored in your BIOS:

cbrom195.exe YOUR_BIOS.BIN /D

You should see a new module called "CPU micro code" at the end of the numbered list, and its filename should be the same as the microcode file you added in step 6 (cpucode.bin).

Why don't I see the new microcode in the "Micro Code Information" table at the bottom of the screen?

This table is supposed to list all of the microcodes in your BIOS. However, since we added the new microcodes as a compressed module, they won't show up in this list. Additionally, since the microcodes are stored in a compressed form, you also won't see them if you run intelmicrocodelist.exe on your BIOS (this program was mentioned in method 1).

The "Micro Code Information" table may also be empty for some BIOSes

This is normal, and you'll usually see this happen when method 1 failed due to not enough free space. It just means the microcodes are stored in a non-standard way in your BIOS. However, the method we just used for updating the microcodes should still work fine.

Step 8 - Update your BIOS using the modified BIOS that you just created

You should be able to update it the same way you'd update a normal BIOS.

Step 9 - Do a FULL BIOS reset (use the 3-pin motherboard reset jumper, and then load the default BIOS settings on the first startup)

How to fully reset your BIOS

Troubleshooting Problems

I can't find the BIOS file that I need to MOD

If your BIOS is in an .EXE format

You'll need to first extract it with an unzipping program like 7-Zip. Then look for a file that ends in .BIN, .ROM, or possibly something else like a number. LGA 775 BIOSes are usually around 1024 KB in size, so look for a file about that size.

You can also try running the following command on each of the files that could be your BIOS:

cbrom195.exe YOUR_BIOS.BIN /D

If cbrom displays information about your BIOS after running that command, it should be the correct BIOS file. If it hangs or gives you an error, try another file.

How to extract the actual BIOS from a Dell .EXE file

Execute the following command from a DOS command prompt window:

DellBiosFilename.exe /writeromfile

This should extract the actual BIOS file to the same directory.

I'm not sure how to update my BIOS with the modified file I just created

The method for updating your BIOS is different for each motherboard manufacturer.

  • With some, you can simply put the BIOS file on a USB key, reboot and enter the BIOS, and update it from there.
  • Others may have a BIOS updating program that you can run from within Windows.
  • And in some cases, you may need to put the BIOS on a bootable DOS USB key, CD, or DVD and update it from a command prompt.

If there's a Windows or DOS BIOS updating program, it will usually be included with the BIOS or mentioned when you download the BIOS. If you don't see it, check the downloads section, FAQ section, or support section.

If all else fails, try searching Google for your motherboard’s model and update BIOS or something like that.

142 Responses

  • vitor September 21, 20168:51 pm

    personal hello I Have A mother P5N- D board WITH Xeon Processor X5450 , I AM NOT GETTING IN THE microcodes Place Latest bios My P5N- D board could someone please help me

    Reply
    • vitor September 21, 20168:52 pm

      latest bios version and 1401.bin

      Reply
  • Phoenix bird October 19, 20164:38 pm

    Cant find bios as .ROM or .BIN or anything that’d work with cbrom195….

    mobo: D2344-A3 /fujitsu siemens

    Vendor site only gives me disk.bim or exe-files which haven’t the right while after extraction..

    Any ideas?

    Reply
    • Vincent-Schulz November 22, 20162:31 pm

      @Phoenix bird

      Do you have newest BIOS installed installed for D2344-A3x already? (6.00.1.12 (11.10.2007)
      I know how to update BIOS, because I’ve done the procedure with three other Fujitsu Mainboards D2750-A2x (Micro-BTX) – G31 chipset – running with Xeon.
      Also Microcode Update done.

      Price on ebay 15€.
      Two baords from one seller have a Vcore problem. But the third D2750-A2x from another seller has a slitely differenty layout/components which seems to run very fine with the Vcore :-)

      Fujitsu Microcodeupdate Tool (universal for all older Fujitsu Boards)
      http://support.ts.fujitsu.com/IndexDownload.asp?lng=&SoftwareGUID=9B9B360E-DD12-4A4D-87D3-E5BCC25BBAA7

      I know how to get a bootable USB flash drive for flashing new BIOS and microcode update.
      Writing a whole description here at once it would be too much.

      But I could help and go further into detail if needed.

      Reply
      • Vincent-Schulz November 22, 20163:38 pm

        To get a bootable USB Flash drive with BIOS Update for Fujitsu D2344-A3x:
        NO extra DOS/Freedos installing for flash drive needed.

        Boot Linux/Debian/Ubuntu or Knoppix Live Linux System
        If you don’t have it Linux, you can download Knoppix iso and burn it do DVD and then boot from the DVD.

        ftp://ftp.rz.uni-wuerzburg.de/pub/linux/knoppix/DVD/
        ftp://ftp.rz.uni-wuerzburg.de/pub/linux/knoppix/DVD/KNOPPIX_V7.7.1DVD-2016-10-22-EN.iso

        Open a command window (console/bash/shell/terminal)

        Typing in a console as superuser (root):

        su

        To find out the correct device node used for your USB flash drive:
        type in the console:
        ls -la /dev/disk/by-id

        Result (example):
        lrwxrwxrwx 1 root root 10 Nov 21 18:42 KINGSTON_DATA-TRAVELER -> ../../sdh

        Result (example) If there are more partitions on the USB flash drive
        lrwxrwxrwx 1 root root 10 Nov 21 18:42 KINGSTON_DATA-TRAVELER -> ../../sdh

        lrwxrwxrwx 1 root root 10 Nov 21 18:42 KINGSTON_DATA-TRAVELER-part1 -> ../../sdh1

        lrwxrwxrwx 1 root root 10 Nov 21 18:42 KINGSTON_DATA-TRAVELER-part2 -> ../../sdh2
        “”{…}

        dd if=/*/DISK.BIM of=/dev/sdX

        WARNING IF YOU CONFUSE WITH THE WRONG DEVICE NODE YOU COU LOSE ALL DATA ON THE PARTITION(S) OR ANOTHER DISK. I WILL NOT BE HELD RESPONSIBLE FOR ANY MISTAKE YOU MAKE.

        Replace “sdX” with the corresponding device node your USB flash drive uses:
        to find out:
        ls -la /dev/disk/by-id
        THE DEVICE NODE CAN CHANGE AFTER REPLUGGING THE USB-DRIVE AND AFTER REBOOTING!!!

        Microcode Update bootable USB flash drive:
        dd if=/*/FTS_MICROCODEUPDATE.IMZ of=/dev/sdX
        Replace “sdX” with the corresponding device node which is in use for your USB flash drive. THE DEVICE NODE CAN CHANGE AFTER REPLUGGING USB-DRIVE AND AFTER REBOOTING!!!

        to find out:
        ls -la /dev/disk/by-id

        Reply
  • dratewka November 8, 20163:18 pm

    Hello,

    Recently purchased Xeon 5450 E0 (Costa Rica SLBBM). I have ABIT IP35 Pro, flashed with the Bios 18 + neccesery latest microcodes (verified). Board is booting, but cant start Win10 nor Win7. During Win10 startup, I have BSOD with “UNSUPPORTED PROCESSOR” message; same issue during clean Win10 installation. Cant also install clean Win7 (no error message thought, just stoppping ). Any clues ?

    Reply
    • Vincent-Schulz November 22, 20165:10 pm

      That’s odd. Installing a fresh Win7, Win 8.1 and Win10 worked all fine on my socket 775 boards with Xeons L5430 (E0), E5450 (E0)
      (P45, P43, G45, G31 chipsets)
      Also Windows 7 and Windows 10 still boots when I replug the SATA HDD on every computer’s mainboard (P45, P43, G45).
      Just when plugging the HDD to the Fujitsu D2750-A2x Board with G31 chipset I needed to reinstall Windows 7, because it somehow doesn’t load the necessary drivers.

      The G31 chipset does not support the SATA Advanced Host Controller Driver (AHCI). Even changing the start type in the registry from IDE Mode to SATA before using here didn’t help. Just reinstalling Windows 7 helped.
      Booting Windows 10 works at once when Plugging the Hard drive disk to G31 board without reinstalling.

      Reply
  • ben December 4, 20164:25 pm

    Hi i’m trying to make a X5460 SLBBA work on a XFX nForce 680i SLI.
    bios recognized the cpu and identify it correctly
    So I went and tried to install Win7, but I get a 0X0000007E error before I get to the installation screen. So I did the bios microcode update with a complete bios reset but the result is still the same… any ideas?

    Reply

Leave a Comment