Mikrokod i386 został rozmontowany i stworzono procesor z386 o otwartym kodzie źródłowym.

Entuzjastom udało się wyodrębnić i zdemontować mikrokod procesora Intel 80386, który z powodu braku dokumentacji uznano za „czarną skrzynkę”. Obraz binarny mikrokodu został odtworzony za pomocą sztucznej inteligencji (AI) na podstawie zdjęć układu scalonego o wysokiej rozdzielczości, a logikę rozszyfrowano za pomocą okablowania wbudowanego w układ. Stopniowo określano strukturę mikrooperacji, pola, kolejność wykonywania instrukcji oraz znaczniki końca instrukcji. Wyniki projektu są publikowane w domenie publicznej na GitHubie.

Mikrokod i386 został rozmontowany i stworzono procesor z386 o otwartym kodzie źródłowym.

Odkryto, że w procesorze 80386 każda instrukcja jest wykonywana w całości za pomocą mikrokodu, podczas gdy w procesorach 8086 i nowszych, niektóre instrukcje są przetwarzane bezpośrednio. Co więcej, w przeciwieństwie do procesorów 8086, mikrokod w procesorze 80386 nie implementuje bezpośrednio algorytmów, lecz przede wszystkim konfiguruje akceleratory sprzętowe (mnożnik, dzielnik, szybki shifter, PTU (Protection Test Unit)).

Badanie ujawniło również potencjalny problem bezpieczeństwa w obsłudze mapy bitowej uprawnień IO: podczas dostępu do portów 4-bajtowych sprawdzane były tylko bity uprawnień dla pierwszych 3 bajtów, a dostęp do 4. bajtu nie był sprawdzany, co teoretycznie umożliwiało dostęp do rejestrów sprzętowych, które nie powinny być dostępne.

Na podstawie opublikowanego mikrokodu opracowano procesor z386 o otwartym kodzie źródłowym, zaimplementowany w SystemVerilog i działający na układzie FPGA. Zamiast implementować każdą instrukcję jako osobną warstwę RTL (Register-Transfer Layer), z386 implementuje struktury sprzętowe kontrolowane przez oryginalny mikrokod. Wydajność uzyskanej implementacji dorównuje wydajności szybkiego komputera PC z procesorem 386 (~70 MHz). Z386 bez problemu obsługiwał systemy DOS 6/7, DOS/4GW, DOS/32A oraz gry takie jak Doom i Cannon Fodder.

Źródło: opennet.ru

Kup niezawodny hosting dla stron z ochroną DDoS, serwery VPS VDS 🔥 Kup niezawodny hosting stron internetowych z ochroną DDoS, serwery VPS VDS | ProHoster