The absurdly complicated circuitry for the 386 processor's registers
2 days ago
- The Intel 386 processor featured 32-bit architecture and a complex register set using six different circuit types for implementation.
- Registers in the 386 are built with static RAM cells (6T, 8T, 10T) optimized for speed and features like dual-porting and triple-porting.
- The register file includes interleaved bits for lower 16 bits to support 8-bit register access, requiring a shuffle network for bit alignment.
- The processor's datapath uses a regular structure with horizontal functional blocks and vertical bus lines, maximizing performance while minimizing die area.
- Backward compatibility with earlier x86 processors added complexity, such as partial register writes and interleaving, contrasting with RISC design simplicity.
- The article maps physical register types to architectural registers, speculating on assignments like type (d) for EAX/EBX/ECX/EDX and type (f) for segment registers.