Intel 80386 Microcode Successfully Disassembled and Decoded
Original: 80386 Microcode Disassembled
Why This Matters
Provides unprecedented insight into 80386 architecture and early x86 optimization techniques
Researchers successfully extracted and disassembled the 94,720-bit microcode ROM from Intel's 80386 processor using image processing and neural networks, revealing 215 entry points compared to the 8086's 60.
Following previous work on 8086 microcode disassembly, researchers tackled the significantly larger 80386 microcode ROM containing 94,720 bits versus the 8086's 10,752 bits. The project began with high-resolution die images from Ken Shirriff and advanced through collaboration on Discord using image processing, neural networks, and human-aided automation to extract binary data. The team gradually decoded microcode patterns, identified micro-operations structure, and mapped instruction decoding PLAs. The 80386's performance improvements stem from hardware acceleration of algorithms that required microcode in the 8086, with interfaces to dedicated units like multiply/divide hardware and barrel shifters. The microcode reveals 215 entry points from the decoding ROM, a significant increase reflecting new instructions and operand-specific handling routines.