Nadšenci analyzovali mikrokód i386 a vytvořili otevřený CPU z386

Nadšenci dokázali úspěšně extrahovat a disasemblovat mikrokód procesoru Intel 80386, který byl považován za „černou skříňku“ kvůli nedostatku dokumentace. Binární obraz mikrokódu byl znovu vytvořen pomocí AI na základě fotografií čipu s vysokým rozlišením a logika jeho fungování byla rozebrána pomocí sledování spojení na čipu. Postupně byla určena struktura mikrokonfigurací (μ-ops), pole, pořadí vykonávání a značky konce instrukcí. Výstupy projektu byly zveřejněny na GitHubu jako veřejné dědictví.


Bylo zjištěno, že v CPU 80386 je každá instrukce plně zpracována pomocí mikrokódu, zatímco u 8086 a moderních procesorů je část instrukcí zpracovávána přímo. Dále, na rozdíl od procesorů 8086, v 80386 mikrokód neimplementuje algoritmy přímo, ale především konfiguruje hardwarové akcelerátory (násobič, dělič, rychlé posunutí, PTU (Protection Test Unit)).

Během výzkumu byla také odhalena možná bezpečnostní problém při zpracování bitmapy práv přístupu k vstupu/výstupu (IO permission bitmap): při 4-bajtovém přístupu k portům byly kontrolovány bity přístupu pouze pro první 3 bajty, přičemž přístup k 4. bajtu nebyl kontrolován, což teoreticky umožňovalo přístup k hardwarovým registrům, ke kterým měl být přístup zakázán.

Na základě publikovaného mikrokódu byl vyvinut otevřený CPU z386, realizovaný v jazyce SystemVerilog a běžící na FPGA. Namísto realizace každé instrukce jako samostatného RTL (wikipedia.org) (Register-transfer level) byly v z386 implementovány hardwarové struktury, kterými je řízen původní mikrokód. Výkon připravené realizace odpovídá rychlému 386 PC (~70MHz). Pod řízením z386 se podařilo úspěšně spustit DOS 6/7, DOS/4GW, DOS/32A a hry jako Doom a Cannon Fodder.

Zdroj: linux.org.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster