Hasty Briefsbeta

Bilingual

z386: An Open-Source 80386 Built Around Original Microcode

3 hours ago
  • #Microcode
  • #FPGA
  • #80386
  • z386 is an open-source FPGA implementation of the Intel 80386 CPU built around recovered original microcode, similar to the earlier z8086 project.
  • It successfully boots DOS 6/7, runs protected-mode software like DOS/4GW and DOS/32A, and plays games such as Doom and Cannon Fodder, performing comparably to a fast cached 386 or low-end 486.
  • The core uses a 16 KB, 4-way set-associative unified L1 cache to improve performance and reduce memory contention, operating at an FPGA clock of 85 MHz.
  • Key components include an instruction prefetch unit, decoder with PLA tables, microcode sequencer, ALU/shifter, segmentation, protection, paging units, and a BIU/cache/memory path.
  • Testing involved extensive use of single-step test suites for both real and protected modes, along with real software like SeaBIOS, FreeDOS, and DOS extenders for integration.
  • Compared to ao486, z386 follows a coarse-grained, microcode-driven architecture with large cooperating units, whereas ao486 uses a finer-grained pipeline approach.
  • The project highlights the 80386's significance in establishing the modern x86 architecture with 32-bit support, protected mode, paging, and backward compatibility.
  • Recovered microcode provided deep insights into the original hardware design, making the implementation both an educational reconstruction and a functional FPGA CPU.