Actualizarea codului procesorului Intel. Actualizarea microcodului CPU în AMI BIOS sau un exemplu de lucru cu MMTool. Despre această actualizare

Bună dragi prieteni, Artyom este cu voi.

În ianuarie a acestui an, au apărut rapoarte despre noi vulnerabilități hardware ale procesoarelor Intel și AMD.

Nu cu mult timp în urmă au fost lansate actualizări de microcod pentru procesoarele Intel (reviziunea 84) și am decis să verific cum stau lucrurile în practică.

Deși informațiile sunt de mult cunoscute de toată lumea, vă voi spune totuși o scurtă poveste de fond.

Vulnerabilitățile hardware ale procesorului se numesc Meltdown și Spectre și au fost identificate de cercetătorii din grupul Google Project Zero.

Spectre are două variante de atac cu numele de cod CVE-2017-5753 și CVE-2017-5715.

Meltdown are o variantă de atac cu numele de cod CVE-2017-5754.

P. S. CVE este o abreviere pentru engleză " Uzual Vulnerabilități și Expuneri» – o bază de date cu vulnerabilități binecunoscute de securitate a informațiilor.

Văzând aceste notații pentru descrierile patch-urilor, veți înțelege imediat ce este ce și de ce.

Mai mult, cel mai simplu mod de a opera în practică este Meltdown, la care sunt susceptibile toate procesoarele Intel moderne.

Pentru a scăpa de Meltdown, trebuie să actualizați microcodul procesorului sau să corectați nucleul sistemului de operare.

Spectre, pe de altă parte, este mai dificil de implementat, dar remedierea vulnerabilității necesită corecția individuală a fiecărui program pe care îl utilizați.

Cipurile de la AMD sunt mai puțin susceptibile la vulnerabilități de tip Meltdown (deși inițial s-a declarat că nu sunt deloc susceptibile).

Acest tip de cod rău intenționat rulează extrem de lent pe ele, dar funcționează în continuare.

Atât procesoarele AMD, cât și Intel sunt susceptibile la vulnerabilități de tip Spectre; nu există opțiuni aici.

Procesoarele cu arhitectură ARM sunt, de asemenea, susceptibile la aceleași vulnerabilități, dar acum vom vorbi doar despre computere cu procesoare din familia x86-64.

P. S. Cercetarea de securitate nu se oprește niciodată și poate apărea întotdeauna altceva, inclusiv în procesoarele AMD și Intel.

Notă importantă! În timp ce videoclipul era editat și se scria material pentru ceas pentru site, au apărut noi cercetări în domeniul securității procesoarelor.

Au fost identificate noi variante ale vulnerabilității Spectre, cu numele de cod CVE-2018-3640 (așa-numita variantă de atac 3a) și CVE-2018-3639 (varianta de atac 4).

Permiteți-mi să vă reamintesc că Spectre poate fi remediat prin actualizarea software-ului utilizat, cum ar fi browserele și așa mai departe.

Cu toate acestea, cea mai recentă variantă a atacului CVE-2018-3639 va necesita și actualizarea microcodului procesorului pe cipurile Intel, ceea ce poate reduce ușor performanța.

AMD susține că cipurile companiei nu vor necesita un nou microcod de la aceste atacuri și totul se va descurca cu patch-uri Windows obișnuite și alte software-uri.

Aceste vulnerabilități au o amenințare cu prioritate scăzută pentru computerele obișnuite de acasă.

Deoarece nu există încă actualizări noi, mă voi concentra pe subiectul original al videoclipului meu.

Vom vorbi despre microcodul procesoarelor Intel, dar microcodul este tot diferit și nu corectează varianta de atac Spectre 4.

Dacă utilizați sisteme de operare Windows, aceste link-uri vă vor fi utile:

Aici puteți găsi toate patch-urile actuale (și numele lor) care remediază vulnerabilitățile acestui grup.

De exemplu, primul patch pentru Windows 10 a fost lansat pe 3 ianuarie 2018 sub numele KB4056892.

Cu toate acestea, a existat o problemă în sensul că patch-urile software Meltdown au redus performanța sistemelor bazate pe Intel.

Cumva, nu am avut timp liber să-mi fac propriile teste mici.

Cu toate acestea, acum, odată cu lansarea noilor versiuni de firmware pentru plăci de bază, am început să mă întreb cum stau lucrurile în acest domeniu.

Folosesc placa de bază ASRock Z370 Gaming K6 și, în consecință, apelez la site-ul oficial al producătorului pentru a descărca cel mai recent BIOS.

Microcodul actualizat pentru procesoarele Intel a apărut în versiunea BIOS 1.60, care a fost lansată pe 2 martie 2018.

Voi instala o versiune și mai recentă a BIOS-ului versiunea 1.80, care a fost lansată pe 26 martie 2018.

Pentru început, sunt interesat să testez remedieri ale microcodului procesorului fără corecții software suplimentare.

Sistemul de operare este Windows 10 versiunea 16299.371, fără corecții suplimentare instalate pentru vulnerabilitățile hardware Meltdown și Spectre.

P. S. Toate concluziile trase se vor aplica doar noilor procesoare Intel, deoarece este puțin probabil să apară versiuni noi de BIOS pentru plăcile de bază vechi.

Dacă sunteți interesat, puteți face teste cu patch-uri software pe procesoare Intel mai vechi.

Configurația completă a computerului meu:

CPU: Intel Core i5 8600K.

Mai rece procesor: Arctic Cooling Liquid Freezer 240.

maternă a plati: ASRock Fatal1ty Z370 Gaming K6.

Operațional memorie: GoodRam Iridium DDR4 2400 MHz (2×8 GB IR-2400D464L15S/8G).

Placa video: Asus Dual GTX 1060 6 GB (DUAL-GTX1060-O6G).

Unități: SSD Sata-3 Plextor M5S și HDD Sata-3 Seagate 1 TB (ST1000DM003).

Cadru: Fractal Design Define R5.

bloc nutriție: Fractal Design Edison M 750 Watt.

Primul test este performanța cache-urilor CPU și a memoriei RAMAida 64 Cache & Memorie Benchmark.

După cum puteți vedea, nu există diferențe semnificative în funcționarea subsistemului RAM și a cache-urilor procesorului.

Următorul test se referă la funcționarea subsistemului de disc.

Din păcate, nu am o unitate SSD M.2 de mare viteză, așa că îmi voi testa Plextor M5S pe un SATA-3 obișnuit.

Drept urmare, testul ATTO Disk Benchmark produce rezultate aproape identice.

Același lucru este valabil și pentru performanța testului CrystalDiskMark 5.2.1.

Test de performanță în CrystalDiskMark și noul microcod al procesorului Intel. Spectrul și Meltdown

Cel puțin pentru SATA-3, nu există nicio scădere a performanței în timpul operațiunilor de citire și scriere.

Următorul test este 7zip, care va arăta performanța la împachetarea și despachetarea arhivelor.

Aceeași imagine este observată aici; nu există nicio diferență de performanță la instalarea unui BIOS nou, corectat.

Din moment ce creez conținut, nu am putut lăsa deoparte editarea video.

Folosesc Vegas Pro 13 ca program de editare și indiferent de versiunea BIOS folosită, timpul de randare nu s-a schimbat.

Sursele video au o rezoluție de 1080p, un bitrate de 50 Megabit/s și un frame rate de 50 de cadre pe secundă.

Ca profil de randare a fost selectat Sony AVC/MVC cu o rată de biți de 16 Megabit/s; puteți vedea toate celelalte setări ale profilului pe ecranele dvs.

Acum să vorbim puțin despre jocuri.

Testele au implicat acele proiecte care au fost instalate pe computerul meu la un moment dat (Assassin’s Creed Origins, FarCry 4 și Crysis 3).

Toți indicatorii de cadru au fost preluați folosind MSI Afterburner 4.4.2.

În general, rezultatele nu necesită comentarii.

Teste de performanță în jocurile Assassin's Creed Origins. Spectrul și Meltdown

Dacă utilizați noua versiune a microcodului procesorului după revizuirea 84, atunci diferența de performanță nu poate fi observată - totul funcționează la fel de rapid și inteligent.

Singurul lucru interesant ar fi să vedem cum funcționează unitățile SSD M.2 cu interfața NVMe.

Poate că în viitor voi efectua o serie de mai multe teste cu patch-uri software pentru Windows 10 și cu microcodul corectat al CPU instalat în același timp.

Sper că l-ai găsit interesant. Dacă da, atunci distribuie postarea mea pe rețelele sociale prietenilor tăi.

Astfel vor fi mult mai multe astfel de note :)

De asemenea, nu uitați să vă alăturați grupului VKontakte și să vă abonați la canalul YouTube.

Achizitionat de pe Aliexpress pentru o placa de baza Intel DG965SS (cu conector LGA775). Puteți, desigur, să convertiți singur LGA771 în LGA775, dar la un preț de 6,5 dolari pe procesor este mult mai ușor să îl cumpărați de la chinezi.

Când utilizați un Intel Xeon 5320, sistemul de operare Windows 10 a început să funcționeze numai atunci când modul „Core multiplexing” a fost dezactivat în BIOS (spre deosebire de Ubuntu 17.10 care funcționează perfect). În același timp, procesorul a funcționat doar în modul single-threaded, așa că, conform testului CPU-Z, performanța în modul multi-threaded a fost de 2 ori mai mică decât cea a Intel Core 2 duo E6300, pe care Xeon a fost achiziționat. a inlocui.

S-a dovedit că microcodurile procesorului trebuiau actualizate. Puteți face acest lucru în modul software, iar în Ubuntu funcționarea este mult mai simplă decât în ​​Windows 10. Și în cel din urmă trebuie să vă asigurați că microcodurile sunt actualizate de fiecare dată când porniți. De asemenea, este posibilă actualizarea microcodurilor din BIOS, cel puțin în unele BIOS de la AWARD, AMI, Phoenix, mai ales în versiunile anterioare UEFI.

Există mult mai puține instrucțiuni pentru plăcile de bază Intel. Și nu e de mirare. A trebuit să mă chinuiesc mult cu Intel DG965SS.

Înainte de a actualiza microcodul, trebuie să instalați procesorul pe care vrem să îl sprijinim. Dacă trebuie să instalați un alt procesor, procedura va trebui repetată.

Unele instrucțiuni sugerează crearea unei dischete bootabile, deoarece... Nu toate computerele vă permit să porniți în unități flash. Am realizat o unitate flash USB bootabilă cu FreeDOS folosind aplicația gratuită cu sursă deschisă Rufus (pentru a face acest lucru, bifați caseta de selectare „Creați un disc de pornire folosind” și selectați „FreeDOS” din listă).

De la începutul lunii ianuarie, a fost greu să ratezi știri referitoare la vulnerabilitățile hardware Spectre și Meltdown - subiectul s-a dovedit a fi atât de serios și cuprinzător. Deși producătorii sunt conștienți de aceste probleme încă din vara trecută, majoritatea par să fi început să răspundă abia după ce detaliile au fost făcute publice de echipa Google Project Zero.

De exemplu, în ianuarie, printre alte patch-uri, Intel a lansat actualizări de microcod împotriva Spectre pentru procesoarele sale Broadwell, Haswell, Skylake, Kaby Lake și Coffee Lake. Dar aproape imediat a devenit clar că duc la eșecuri și. Inițial, Intel a spus că problema a afectat doar cipurile Broadwell și Haswell, dar ulterior a recunoscut existența unor erori pe computerele cu procesoare Skylake, Kaby Lake și Coffee Lake și că partenerii și utilizatorii se vor abține de la instalarea de corecții deocamdată. În cele din urmă, la începutul lunii februarie, o versiune corectată a microcodului, dar numai pentru cipurile de consumatori mobile și desktop din familia Skylake.

Acum, după o lună de testare și testare intensivă a patch-urilor de către Intel și partenerii săi, a venit momentul pentru alte procesoare mai mult sau mai puțin actuale: au fost lansate actualizări de microcod pentru cipuri bazate pe arhitecturile Kaby Lake și Coffee Lake, precum și Skylake. -platforme bazate pe care nu au fost afectate de actualizarea anterioară. Vorbim despre procesoare din generațiile a 6-a, a 7-a și a 8-a de Intel Core i, precum și de cele mai recente familii Core X, Xeon Scalable și Xeon D.

Noul microcod va fi disponibil în majoritatea cazurilor prin lansarea noului firmware de către OEM pentru plăci de bază și laptopuri. Intel a încurajat în continuare oamenii să-și actualizeze în mod continuu sistemele la cele mai recente versiuni și, de asemenea, a publicat un document în care a descris starea unor remedieri similare de microcoduri pentru celelalte produse ale sale, inclusiv cipurile anterioare, începând cu Core 2 de 45 nm. Pentru unele dintre aceste cipuri , patch-uri tocmai sunt în curs de planificare, pentru alții sunt într-o stare de testare timpurie, pentru alții există deja sub forma unei versiuni beta. De obicei, cu cât arhitectura este mai veche, cu atât mai târziu va primi firmware anti-Spectre. Cu toate acestea, actualizările de microcod pentru arhitecturile Sandy Bridge, Ivy Bridge, Haswell și Broadwell mai mult sau mai puțin actuale sunt deja în testare beta. De asemenea, o serie de cipuri Atom și chiar acceleratoare Xeon Phi au primit deja patch-uri.

Intel a reamintit că există și alte metode de combatere a vulnerabilităților descoperite în unitatea de predicție a ramurilor din procesoarele moderne. De exemplu, Retpoline, dezvoltat de Google împotriva Spectre CVE-2017-5715 (injecție țintă de ramură sau injecție țintită într-o sucursală). Pentru cei interesați de mai multe informații despre Retpoline și despre modul în care funcționează, compania a publicat un raport tehnic special.

Actualizările de microcod Intel anti-Specter vor începe să fie lansate sub formă de firmware proaspăt BIOS pentru diferite plăci de bază în zilele și săptămânile următoare. Mă întreb dacă vor avea un efect suplimentar asupra degradării performanței sistemelor finale?

De fapt, metoda originală, echipamentele și microcodurile pot fi găsite (direct instrucțiunile AMI) și, în majoritatea cazurilor, utilizarea acestei metode nu pune probleme și nu are capcane, dar în practica mea am întâlnit în mod regulat următoarea problemă:

Acestea. era o lipsă banală de spațiu liber în interiorul imaginii. Când modificați BIOS-ul pentru un anumit procesor, puteți ignora acest lucru, deoarece Puteți încărca oricând un singur microcod special pentru procesorul dvs. sau puteți șterge un microcod vechi pentru a elibera spațiu, dar când modificați cu un flux, trebuie să căutați o altă soluție, un compromis.

Ca un compromis, am ales următoarea soluție - luăm cele mai recente versiuni de microcoduri pentru toate procesoarele din generația CORE în toate modelele (Celeron E, Pentium E, Core 2 Duo, Core 2 Quad, Xeon *3xxx/*5xxx) și inlocuieste cu ele tot ce era inainte . Setul de microcoduri s-a dovedit a fi după cum urmează:

Volumul acestui set este de doar 76 de kiloocteți. Acest fișier a fost obținut prin combinarea acestor fișiere:

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

Procedura de modificare în sine s-a schimbat puțin și a devenit, dacă nu mai ușoară, atunci mai rapidă:

Pasul 1— deschideți imaginea BIOS în programul MMTool:



Pasul 2— pentru a verifica, mergeți la ultima filă (CPU PATCH) și uitați-vă la numărul de microcoduri. Iată, de exemplu, 31 dintre ele:

Pasul 3- accesați fila Înlocuire și căutați elementul „P6 Micro Code” de pe el:

Pasul 4— după ce ați selectat elementul „P6 Micro Code”, apăsați butonul Ikshtsyu, selectați fișierul ncpucode.bin descris mai sus și înlocuiți-l cu butonul Înlocuire:





Pasul 5— pentru a verifica, mergeți la ultima filă (CPU PATCH) și uitați-vă la numărul de microcoduri. După înlocuirea microcodurilor, au rămas 17, cea mai recentă versiune:

Nu există nicio diferență fundamentală cu procedura de modificare descrisă pe delidded.com. În cele mai multe cazuri, ieșirea nu este cu siguranță aceeași, dar procesorul primește microcodul necesar. Dintre aspectele subiective pozitive, aș dori doar să atrag atenția asupra faptului că microcodurile pentru toate procesoarele actuale sunt garantate a fi actualizate, fie ele „civile” sau „server”, și practic nu există riscul de a primi un mesaj despre lipsa de spatiu. Deși, în practica mea, chiar și pentru un astfel de set de microcoduri nu a fost suficient spațiu de câteva ori, acesta a fost cu BIOS-ul pentru plăcile ECS P4M900T-M și ECS P4M900T-M2, care sunt în general compatibile cu Xeon E5450.

Prin tradiție, public un link către arhivă cu instrumente - (zip, 234KB). Arhiva conține un fișier executabil MMTOL.exe(versiunea 3.22 BKMOD), fișier cu microcoduri pentru toate procesoarele 45/65nm din generația core/xeon ncpucode.bin, precum și două fișiere 45nm.binȘi 65nm.bin cu microcoduri doar pentru procesoare de 45 nm și doar pentru 65 nm. Utilizarea acestor fișiere poate fi utilă în cazurile în care este necesar să se elibereze spațiu suplimentar în BIOS, de exemplu, pentru un firmware nou al unui controler, rețea, disc etc.

!NB: Nici fișierul ncpucode.bin și nici fișierele 45nm.bin/65nm.bin nu acceptă procesoare Pentium 4, Celeron (fără sufixe de litere), Pentium D, Celeron D și Xeon W (de exemplu Xeon 5080). Acestea sunt procesoare de generație NetBrust.

Vă prezint donatorul BioStar A740G M2L+ (AMD 740G / SB710) și destinatarul BioStar A740G M2+ (AMD 740G / SB700). Placa de bază cu litera „L” este mai recentă și acceptă oficial procesoare AM3, spre deosebire de cealaltă, care se limitează la a suporta doar procesoare AM2+. BIOS-urile lor cer o analiză comparativă.
De la birou Descărcăm doar cea mai recentă actualizare de firmware BIOS pentru fiecare dintre aceste plăci de bază:
- pentru A740G M2+ cea mai recentă versiune beta A74GM916.BSS pentru septembrie 2009
- pentru A740G M2L+ - fișier 74GCU511.BSS- pentru mai 2010

Apoi, înarmați-vă cu utilitarul MMTOOL (Am folosit versiunile 3.22, 3.23 și 3.26 - nu am găsit diferențe în funcționare). Pentru a lucra cu MMTOOL, extensiile de fișiere firmware BIOS trebuie redenumite în *.rom.

Acum lansăm două MMTOOL-uri și încărcăm fișierele firmware de pe două covorașe în ele. plat. Acordăm atenție diferitelor dimensiuni din coloana „Mărimea sursei” (și și în „Dimensiunea în Rom”, desigur) a modulului 11 „P6 Micro Code” din fiecare dintre firmware-uri.

Să mergem la secțiunea CPU PATCH pentru o comparație detaliată:

Fișierul donator 74GCU511.rom - cpu_list conține 14 linii cu suport pentru CPURev.ID + 1 goală (Fig. 1).

Versiunea beta a destinatarului A74GM916.rom - cpu_list conține 13 linii cu suport pentru CPURev.ID + 1 gol (Fig. 2).

După analizarea listelor acestor două BIOS-uri, devine evident că pentru placa de bază mai nouă dezvoltatorii au folosit patch-uri mai recente pentru procesoarele AMD, unde microcodul a două linii cu CPURev.ID 1043 și 1062 (datat 31/07/2009) și unul linia cu CPURev au fost corectate .ID 10A0 adăugat (datat 2010/02/17).

Metoda nr. 1 - modificarea liniilor distinctive.
Aceste trei linii distinctive sunt extrase din donatorul 74GCU511.rom - acțiunile „Extract a Patch Data” + „Apply” + 1 ultima linie goală și salvate în fișiere separate.

Mai întâi, în secțiunea CPU PATCH a fișierului destinatar A74GM916.rom, sunt șterse două linii cu numerele CPURev.ID 1043 și 1062 (al căror microcod este mai vechi decât vom introduce în continuare) și ultima linie goală sunt șterse - acțiunile „Șterge un Patch”. Date” + „Aplicați” ( Fig.3).

După aceasta, microcodul mai nou din cele patru fișiere de corecție primite anterior pentru CPURev.ID 1043, 1062, 10A0 și o linie goală sunt inserate unul câte unul (Fig. 4).

Vă rugăm să acordați atenție dimensiunilor („Dimensiunea sursei” și „Dimensiunea în Rom”) ale modulului 11 „P6 Micro Code” înainte și după aplicarea acestor modificări la fișierul destinatar.
După aplicare, aceste dimensiuni pentru destinatar (Fig. 6) vor deveni identice cu dimensiunile aceluiași modul din fișierul donator 74GCU511.rom (Fig. 5).
Este demn de remarcat faptul că nu este dificil de înțeles cum se formează dimensiunea modulului (fiecare linie din secțiunea CPU PATCH are 2048 de octeți).

Este mai bine să salvați modificările sub un nume de fișier nou.
Apoi, acest fișier este verificat astfel încât MMTOOL să se deschidă din nou fără erori.

Metoda nr. 2 - modificare prin înlocuirea întregului modul.
De fapt, tocmai acest lucru este descris pe Internet (de exemplu, parțial).

În MMTOOL încărcăm fișierul donator 74GCU511.rom, mergem la fila „Extract” și căutăm linia „P6 Micro Code”. Apoi îl selectăm, în câmpul „module file” îi dăm numele ncpucode.bin și executăm Extract module „în formă necomprimată”.

Acum încărcați fișierul destinatar A74GM916.rom în MMTOOL, mergeți la fila „Înlocuire” și căutați din nou rândul „Cod micro P6”. Selectați-l, așteptați Răsfoire și selectați modulul nostru donator ncpucode.bin. Faceți clic pe Înlocuire și apoi sunteți de acord să înlocuiți acest modul.

Din nou, acordați atenție dimensiunilor („Dimensiunea sursei” și „Dimensiunea în Rom”) ale modulului 11 „P6 Micro Code” înainte și după înlocuirea acestui modul în fișierul destinatar.
După aplicare, aceste dimensiuni pentru destinatar (Fig. 7) vor deveni identice cu dimensiunile aceluiași modul din fișierul donator 74GCU511.rom (Fig. 5).

Dacă comparăm rezultatele ambelor metode (Fig. 6 și Fig. 7), atunci există o diferență notabilă de 10 octeți în adresa RomLoc a modulului „User Defined or Reserved”, lângă actualizarea „P6 Micro Code” modul - poate acestea sunt caracteristici ale funcționării MMTOOL...

Concluzie și postfață.
În acest fel, din diferite firmware-uri BIOS, diferite mat. plăci pe soclul AM2+ (și chiar AM3 pentru comparație), puteți găsi cele mai recente microcoduri pentru fiecare tip de CPURev.ID, atât în ​​Award, cât și în bios AMI, apoi le combinați într-un singur ncpucode.bin.
Ulterior, s-a dovedit a avea o dimensiune de 32768 de octeți din 16 linii (microcoduri) cu cele mai recente date dintre firmware-urile studiate ale diferitelor BIOS-uri: cu 15 tipuri diferite de revizuiri de procesor pentru soclul AM2+ (040A, 0413, 0414, 041B, 0433, 0680, 0C1B, 1000, 1020, 1022, 1040, 1041, 1043, 1062, 10A0) și a 16-a linie pentru RevID 0000 (se pare că un fel de microcod universal pentru procesor, de exemplu, alte versiuni, nedescris în IM, de exemplu, revisoare). cele viitoare).

Combinând propriul ncpucode.bin, importând patch-urile (microcodurile) necesare pentru fiecare revizuire necesară a procesorului, puteți utiliza absolut orice firmware AMI BIOS cu modulul „P6 Micro Code” ca unul de laborator.

Cu toate acestea, la salvarea fișierului firmware, a fost observată o caracteristică neplăcută a MMTOOL - din anumite motive, utilitarul a adăugat 8 zero octeți la sfârșitul modulului „P6 Micro Code” - sa dovedit a avea o dimensiune de 32776 de octeți. La extragerea fișierului ncpucode.bin din firmware-ul laboratorului folosind același MMTOOL, fișierul de ieșire a devenit, de asemenea, 32776 octeți.
Puteți edita acest lucru cu editori simpli, accesibili tuturor. Dar am descoperit și (întâmplător) o metodă alternativă: când utilitarul universal BIOS_EXT.EXE a extras toate modulele din firmware-ul laboratorului, fișierul ncpucode.bin avea deja dimensiunea corectă de 32768 de octeți - utilitarul BIOS_EXT.EXE însuși a identificat corect finalul a modulului „P6 Micro Code” atunci când îl salvați în fișier.