A lelkes amatőrök visszafejtették az i386 mikrokódot, és létrehozták az open CPU z386-ot

Önkéntesek sikeresen kivonták és diszassemblálták az Intel 80386 processzor mikrokódját, amelyet a dokumentáció hiánya miatt „fekete doboznak” tekintettek. A mikrokód bináris képét mesterséges intelligencia segítségével hozták létre a kristály magas felbontású fényképei alapján, míg a működés logikáját a kristályon lévő kapcsolatok nyomozásával elemezték. Fokozatosan meghatározták a mikrokonzolok (μ-ops) struktúráját, mezőit, végrehajtási sorrendjét és az utasítások végét jelző jelzőket. A projekt előkészületei megjelentek a GitHub-on közkincs.


Megállapították, hogy az 80386 CPU-ban minden utasítás teljes mértékben mikrokódon keresztül valósul meg, míg a 8086 és a modern processzorok esetében az utasítások egy része közvetlenül kerül feldolgozásra. Ezenkívül a 8086-os processzorokkal ellentétben az 80386 mikrokódja nem valósítja meg közvetlenül az algoritmusokat, hanem elsősorban a hardveres gyorsítókat (szorzó, osztó, gyors shift, PTU (Protection Test Unit)).

A kutatás során egy lehetséges biztonsági problémát is felfedeztek a bemeneti/kimeneti hozzáférési jogok bitképének feldolgozása során (IO permission bitmap): négy bájtos portozás esetén a hozzáférési jogok bitjeit csak az első három bájt esetében ellenőrizték, míg a negyedik bájt hozzáférése nem került ellenőrzésre, ami elméletileg lehetővé tette a tiltott hardverregiszterekhez való hozzáférést.

A közzétett mikrokód alapján kifejlesztették a nyílt CPU-t z386, amelyet SystemVerilog nyelven valósítottak meg és FPGA-n működik. A z386 nem valósította meg minden utasítást külön- külön RTL (wikipedia.org) (regiszter-átviteli szint) a z386-ban azok a hardveres struktúrák valósulnak meg, amelyeket az eredeti mikrokód irányít. A kidolgozott megvalósítás teljesítménye megegyezik egy gyors 386-os PC-vel (~70MHz). A z386 alatt sikerült elindítani a DOS 6/7-et, a DOS/4GW-t, a DOS/32A-t és olyan játékokat, mint a Doom és a Cannon Fodder.

Forrás: linux.org.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster