Microprocessors, Part 2 Codexery

Intel 80386SX

32-bit x86 processor with virtual 8086 mode and on-chip MMU.

Intel 80386SX

The Intel 80386SX is a variant of the Intel 386 microprocessor, originally released as the 80386 and later renamed i386. It is a 32-bit processor that implements the full IA-32 microarchitecture, maintaining compatibility with legacy code while extending the architecture from 16 bits to 32 bits. The 80386SX was used in many workstations and high-end personal computers of its time, and remained in widespread use in embedded systems until Intel discontinued it in 2007.

Quick Facts

Produced-Start
October 1985
Produced-End
September 28, 2007
Slowest
12
Slow-Unit
MHz
Fastest
40
Arch
x86-16, IA-32
Predecessor
Intel 80286
Successor
i486

Facts from the source article.

Lore & Background

The 80386SX is a derivative of the Intel 80386, which was developed beginning in 1982 under the internal name P3. It was Intel's first CMOS product, consistent with the industry trend. The processor was designed to support both flat and segmented memory models, described by designer John Crawford as 'the best of both worlds'. A 512-byte CPU cache was originally planned but omitted due to die size limits, replaced with a small prefetch queue and support for an external cache controller.

The 80386 was introduced as pre-production samples in October 1985, with volume manufacturing beginning in June 1986. The first personal computer to use the 80386 was the Compaq Deskpro 386, marking the first time a fundamental component in the IBM PC compatible standard was updated by a company other than IBM. The processor was sole-sourced, making it expensive but very successful.

The 80386SX, like the 80386, features three operating modes: real mode, protected mode, and the new virtual 8086 mode, which allowed running one or more real mode programs simultaneously under a protected mode environment. It includes an on-chip memory management unit with paging translation, making virtual memory implementation easier. The processor has eight independent pipelined functional units operating in parallel, though complex x86 instruction decoding restricted maximum throughput to one instruction every two clock cycles.

Reader's Guide

The Intel 80386SX and its parent 80386 architecture are significant because they established the foundation for all subsequent 32-bit x86 processors. The instruction set, programming model, and binary encodings of the i386 remain the common denominator for 32-bit x86 processors, referred to as i386 architecture, x86, or IA-32. The ability to operate with a flat memory model in protected mode, despite the segmented memory model used in all modes, was arguably the most important feature change for the x86 family until AMD's x86-64 in 2003.

The 80386's virtual 8086 mode allowed running legacy real-mode programs under protected mode operating systems, easing the transition from 16-bit to 32-bit computing. The processor's on-chip MMU with paging support made it much easier to implement operating systems using virtual memory. Although the multiple segment models were rarely used, their complexity may have benefited Intel by slowing other companies' ability to second-source the CPU.

Over the years, successively newer implementations of the same architecture became several hundreds of times faster than the original 80386. The processor remained in use in embedded systems long after its obsolescence as a PC CPU, with applications in aerospace technology and electronic musical instruments. Linux continued to support i386 processors until December 2012, when the kernel removed 386-specific instructions.

More in Microprocessors, Part 2 1-24

Spotted an error? Know more?

Reader corrections go straight into our review queue. Suggest an edit · How this site is sourced

Comments

Loading…
Open in the interactive codex →