Mikrokod i386 je rastavljen i kreiran je procesor otvorenog koda z386.

Entuzijasti su uspješno izdvojili i rastavili mikrokod Intel 80386 procesora, koji je zbog nedostatka dokumentacije smatran "crnom kutijom". Binarna slika mikrokoda je rekreirana korištenjem vještačke inteligencije iz fotografija čipa visoke rezolucije, a logika je dešifrirana korištenjem ožičenja na čipu. Postepeno su određeni struktura mikro-operacija, polja, redoslijed izvršavanja i markeri kraja instrukcije. Nalazi projekta su objavljeni na GitHub-u kao javno vlasništvo.

Mikrokod i386 je rastavljen i kreiran je procesor otvorenog koda z386.

Otkriveno je da se u CPU-u 80386 svaka instrukcija izvršava u potpunosti putem mikrokoda, dok se u 8086 i modernim procesorima neke instrukcije obrađuju direktno. Nadalje, za razliku od procesora 8086, mikrokod u 80386 ne implementira direktno algoritme, već prvenstveno konfiguriše hardverske akceleratore (množitelj, djelitelj, brzi mijenjač, ​​PTU (Protection Test Unit)).

Studija je također otkrila potencijalni sigurnosni problem u rukovanju bitmapom IO dozvola: prilikom pristupanja 4-bajtnim portovima, provjeravani su samo bitovi dozvola za prva 3 bajta, a pristup 4. bajtu nije provjeravan, što je teoretski omogućavalo pristup hardverskim registrima koji ne bi trebali biti dostupni.

Na osnovu objavljenog mikrokoda, razvijen je CPU otvorenog koda z386, implementiran u SystemVerilog-u i pokrenut na FPGA-u. Umjesto implementacije svake instrukcije kao zasebnog RTL-a (Register-Transfer Layer - sloj za prijenos registara), z386 implementira hardverske strukture kontrolirane originalnim mikrokodom. Performanse rezultirajuće implementacije podudaraju se s performansama brzog 386 PC-a (~70 MHz). z386 je uspješno pokretao DOS 6/7, DOS/4GW, DOS/32A i igre kao što su Doom i Cannon Fodder.

izvor: opennet.ru

Kupite pouzdan hosting za sajtove sa DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan web hosting sa DDoS zaštitom, VPS VDS servere | ProHoster