È stata completata la disassemblazione del microcodice i386 e creato un open CPU z386.

Gli appassionati sono riusciti a estrarre e disassemblare con successo il microcodice del processore Intel 80386, che, a causa della mancanza di documentazione, era considerato un "ciclo nero". L'immagine binaria del microcodice è stata ricreata con l'ausilio dell'AI a partire da fotografie del cristallo ad alta risoluzione, mentre la logica operativa è stata analizzata tramite la tracciatura delle connessioni sul cristallo. Gradualmente sono state definite la struttura delle microcomandi (μ-ops), i campi, l'ordine di esecuzione e i marker di fine istruzioni. I risultati del progetto sono stati pubblicati su GitHub come beni pubblici.

È stata completata la disassemblazione del microcodice i386 e creato un open CPU z386.

È stato rilevato che nel CPU 80386 ogni istruzione viene eseguita completamente tramite microcodice, mentre nel 8086 e nei processori moderni parte delle istruzioni è trattata direttamente. Inoltre, a differenza dei processori 8086, nel 80386 il microcodice non implementa gli algoritmi direttamente, ma configura principalmente gli acceleratori hardware (moltiplicatore, divisore, spostamento rapido, PTU (Protection Test Unit)).

Durante lo studio è emerso un potenziale problema di sicurezza nella gestione della bitmap dei diritti di accesso all'input/output (bitmap delle autorizzazioni IO): con un accesso di 4 byte alle porte, venivano controllati i bit dei diritti di accesso solo per i primi 3 byte, mentre l'accesso al 4° byte non veniva verificato, consentendo teoricamente l'accesso a registri hardware che avrebbero dovuto essere vietati.

Sulla base del microcodice pubblicato è stato sviluppato un CPU z386 open source, implementato in SystemVerilog e funzionante su FPGA. Anziché implementare ogni istruzione come un RTL (Register-transfer level) separato, nel z386 sono state realizzate strutture hardware controllate dal microcodice originale. Le prestazioni dell'implementazione risultante corrispondono a un veloce PC 386 (~70MHz). Sotto il controllo del z386 sono state avviate con successo DOS 6/7, DOS/4GW, DOS/32A e giochi come Doom e Cannon Fodder.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster