02 修改处理器微码MMTool篇 - damnnfo/DeskMini-110-COM GitHub Wiki
A)下载同品牌Z370主板的BIOS,用MMTool打开并提取Cfl处理器的微码
先在CPU Patch选项卡选中CPU ID 06EB项,按CPU Patch→Patch file(输入06EB.bin)→Extract a Patch Data→Apply操作,提取的微码另存为06EB.bin
获得最新微码的另外一种方法:
Intel官方
下载解压缩,找到microcode.dat并放到MC Extractor目录下,CMD运行MCE microcode.dat -cont即可。
B)下载deskmini的BIOS 7.20版,用MMTool打开bios rom,
先在CPU Patch选项卡选中CPU ID 06E3项,按CPU Patch→Delete a Patch Data→Apply操作,删除06E3项即对SKL处理器的支持;
因为该BIOS默认只允许存放2个处理器微码。
C)再选择刚才导出的06EB.bin,按CPU Patch→Patch file→Insert a Patch Data→Apply,添加06EB项即对Cfl处理器的支持;
D)另存为H11STXC7.20mod.rom;最新的MMTool_5.02.0024会自动修正FIT里的微码地址,不需要手动更正了。
用旧版mmtool_5.00.0007才需要修正FIT里的微码地址:
E)如果替换的第一个微码与原来的微码大小不同,那么在原FIT表里第二个微码的地址就是错的。
在本例中,用UEFITool_A45打开BIOS ROM查看微码,在右上角Information→Data memory address查到微码地址是E60280h,底部FIT→Address也可以看到第一个微码的地址是E60280h、第二个微码的地址是E78280h。
因为替换的第一个微码cpu906E9_plat2A_ver00000070_2017-08-09_PRD_93EB3C4D.bin大小是96256 Bytes(94 kB)转换为16进制后值为17800h;接着用Win程序员计算器计算E60280h+17800h=E77A80h,那么第二个微码的正确地址应该是E77A80h。
F)用Winhex打开H11STXC7.20mod.rom,查找文本“_FIT_”,我们看到两个微码的地址分别是8002E6和8082E7。
因为WinHex读取16进制是镜像的,第一个微码地址在WinHex里是8002E6(从右到左读取E60280h),
那么第二个微码的正确地址E77A80h用WinHex写入方式是8082E7→807AE7,保存
G)用UEFITool_A45打开修改好的bios查看FIT、现在已经是正常的,再用MMTool检查微码是否正常显示。
注意,修改后的BIOS只支持KBL和CFL处理器,如果要支持SKL、请自行修改。
最新的微码会提升安全性,但性能就降低了;所以要性能还是安全请自行取舍。