Core i9-7900X(Skylake-X)のCPUMicrocode更新(AsRock X299 Steel Legend)R5/8/11 追記3

最近のマザーボードBIOSにはプロテクトがかかっていて、ModBIOSはやりずらいのですが、AsRockにかかわらず、Intel W790が出てしまった今、X299 マザーはもう古いのもあってBIOS更新はされませんね。
うちのIntel Core i9-7900Xですが、Microcode 2006F05(2022-12-21)が出ていたようなのでとりあえず更新してみようとしていろいろはまった(久しぶりなので忘れていた)ので、忘備録みたいな感じで記載しておこうと思います。

AsRockはプロテクトをかけている為、この方法はもちろん推奨されていません。一歩間違うとBIOSすら起動しなくなるので自己責任で細心の注意を払って行ってください。

1.Core i9-7900X(だけかはわかりませんが)はちょっと特殊で2つのMicrocodeが必要

うちのCore i9-7900XはU0、Production Unitのものですが、Mod BIOSで有名なUBUでMicrocodeの更新をするとBIOS上でMicrocodeが認識されず0になり、AVX2/3のクロックなどの調整ができなくなります。
これはなぜなんだろうと、いろいろ調べてたんですが、ASUSのROGマザーの更新履歴などに、一部のSkylake-XのMicrocodeが更新できない問題を修正とありました。
これかと思い、調べてみると

  • intelCPU_00050654_plat97
  • intelCPU_00050654_platB7

の2つのMicrocodeがFITテーブルに記載されていました。これはAsRock X299 Steel Legendも同じでした。
まあ、この点は、Microcodeリポジトリで有名な方に質問したところ、97は古いコードですでにB7に統合されたということでした。
ちなみに、UBUで更新すると、microcode.txtにはplat97が存在しないので、plat97のMicrocodeが削除されてしまいます。
ですので、UsrMCodeで行うか、MCUpdate.txtにplat97のモジュールを追加し、ファイルも用意することで可能です。

#LGA2066
50655 2066\cpu50655_platB7_ver03000012_2019-04-12_PRD_50E6B5F2.bin
50654 2066\cpu50654_platB7_ver02006F05_2022-12-21_PRD_BBC68179.bin
50654 2066\cpu50654_plat97_ver0200002E_2017-09-01_PRD_7EFD5486.bin

これで両方のMicrocodeが登録されるので大丈夫かと思いきや・・・まだ落とし穴があるのでした。

2.FITテーブルのMicrocodeの順番が重要で、plat97,platB7の順番で並んでいないと認識されない(追記2も参照のこと)

UBUのMCUUpdate.txtで行うと、順番が降順になってしまい、FITテーブル上のMicrocodeが
50654_platB7
50654_plat97
の順番で登録されます。この状態でBIOSを更新すると、AsRock X299 Steel LegendではMicrocodeが認識されませんでした。

スクリーンショット 2023-04-21 152221

MMToolを使って、順番で入れてあげる必要があります。
または、UBUでUsrMCodeで順番に記載してあげればいいのかもしれません。

スクリーンショット 2023-04-21 151729

以上、2点を守ってあげると、画像のように、最新のMicrocodeを適用することができました。

さて、ModBIOSはAsRockのBIOS Updateでは更新できません。
それではどうやるかというと、Intel CSME Toolsを使います。X299は CSME 11.12ですので、WinRaidフォーラムなどから最新のツールを入手してきましょう。
解凍するとFlash Programing Toolというフォルダがあり、そこにWindows 64bit版コマンドプロンプト版やEFI版もありますのでお好きなものを使うといいと思います。

Windows 64bitコマンドプロンプト版ですと、

スクリーンショット 2023-04-21 153341

fptw64.exe –f <BIOS File Name> –BIOS
で、BIOSを更新できます。
更新中にエラーが発生することもあります(赤文字表示されたりした場合)ので、その場合はもう一度実行しましょう。

注意:エラーが発生したまま再起動するとBIOSがクラッシュして立ち上がらなくなったりしますのでご注意くださいね。

尚、更新後に同じコマンドを実行した場合、Verifyのみを行うので、2回行って正常に終了したことを確認するのも手です。

とりあえず手順はこのような感じです。

AsRock W790 WSと Xeon-W5-2465Xまたはw7-2475X、MicronのDDR5-4800 ECC RDIMM 16GBを4枚ほど欲しいですが、いつ買えることやら。
プレゼント歓迎します(こらまて

追記
UBUのMCUpdate.txtの順番通りにMicrocodeを埋め込んでいくことを確認しました。

スクリーンショット 2023-04-21 154247

MCUpdate.txtの順番を昇順になるように書き換えてあげると、この通り、UBUでも順番にならびます。

追記2(令和5/7/5)
上記UBUの追記(1)でBIOS更新を行ってみましたが、見事にMicrocodeを認識しませんでした。
やはり、MMToolで更新してあげる方がよさそうです。
(ちなみに、UBUの更新でMMToolを使用して更新オプションでも見事に撃沈しました)
今回、今後、X299で ReSize BARを使いたいためにBIOSを1.30G(Beta)に戻したのですがここら辺で苦労しました。
Microcodeが認識されない状態だったり、古いと、DPC_WATCHDOGでGSODが発生するので注意ですね。

BIOSのリビジョンを変更する場合は、正式なBIOSをInstant Flashで書き換えてから、Mod BIOSをFPTで書き換えてあげる方がよさそうです。
Mod BIOSを作る際は、UBUで各種OROMやEFIドライバを変更し、保存した後、MMToolでMicrocode���更新して保存しました。
この状態で、

  1. Instant Flashで対象バージョンの通常のBIOSを書きこむ
  2. FPTで対象バージョンのModBIOSを書き込む

と手順を踏んだ方が失敗しないと思います。

2023-07-05

ちなみに、BIOS 1.30Gに戻す際、確認したところ、00050654 Plat B7のMicrocodeが更新されて、2007006になっていたので最新を組み込みました。

追記3(令和5/8/11)

中古でZOTAC RTX3070 Twin Edge OCを入手、Resizable BAR対応になりました。

スクリーンショット 2023-08-11 080549Windows 11 正式対応をうたったP1.50BIOSで、C.A.M.サポートしたBIOSをリリースしてくださいと、AsRockサポートに送ったところ、P1.50LというバージョンのBIOSをいただき、無事P1.50ベースで、Resizable BAR対応になりました。
同様に最新BIOSでResizable BAR対応GPUを持っているX299 Steel Legendのユーザーさんは、AsRock技術サポートに問い合わせを行うとよいかと思います。(日本語で対応してくれますよ~)

スクリーンショット 2023-08-11 083533追記2の方法で、CPU MicrocodeとRSTe EFI Driver(一応RST EFI/OptionROMも)も更新して書き込みました。

コメントを書く

Month List