liam_on_linux: (Default)
Liam_on_Linux ([personal profile] liam_on_linux) wrote2023-11-15 10:50 am
Entry tags:

TIL that some people can't remember the difference between the 386 & 486

I suppose it was a long time ago.

So...

The 80386DX was the first x86 CPU to be 32-bit and have an on-chip MMU. And nothing else: no cache, no FPU.

The FPU was a discrete part, the 80387DX.

Because OS/2 1.x didn't support the 80386, and so couldn't run DOS apps well, and so flopped, the 16-bit 80286 kept selling well. It ran DOS fast and it could run Windows 2/286 and Windows 3 in Standard Mode which was good enough. It could only address 16MB of RAM but that was fantastically expensive and it was more than enough for DOS and Windows 3.

So, because DOS still ruled, Intel made a cost-reduced version of the 80386DX, the 80386SX. This had a 16-bit data bus, so it could use cheaper 16-bit motherboards and 16-bit wide RAM, still limited to a max of 16MB. Still enough.

That needed a maths copro for hardware floating point, too: a different part, the 80387SX.

Then Windows 3 came along, which was also good enough, and started a move in PC apps to GUIs. Windows 3.1 (1992) was better still.

So Intel had a 2nd go at the 32-bit chip market with the 80486, marketed as the "486". This integrated a better 386DX-compatible CPU core with a few extra instructions, complete with MMU, plus a 387-style FPU, plus a small amount of L1 cache, all onto one die.

But it was expensive, and didn't sell well.

Also, all the 3rd party x86 makers leapt on the bandwagon and integrated the extra instructions into 16-bit bus 386SX compatible chips and branded them as 486s: the Cyrix and IBM "486slc" for instance. This ate into sales of the real 486.

So Intel came up with an ethically very dodgy borderline scam: it shipped 486s with the FPU disabled, calling them the "486DX" to reuse the branding that distinguished the 32-bit-bus models of 386 from the 16-bit-bus.

People don't understand stuff like bus widths or part numbers, as your post demonstrates, and I mean no offense. They don't.

So now there was a new model of 486, the 486SX with a disabled FPU, and the 486DX with it still turned on.

The "SX" model needed a new motherboard with a 2nd CPU socket that accepted a "floating point co-processor", called the "487", which was nothing of the kind. The "SX" was a lie and so was the "487 copro". The 487 was a 2nd complete 486 chip that disabled the original and took over.

But it reused the older branding, which is what you've remembered.

Later, briefly, Intel made a cheaper cost-reduced 486SX with a smaller die with no FPU present, but not many of them. The clock-doubled 486DX2 took over quite quickly and killed the 486DX and 486SX market.

Some commentators speculated that the 486DX vs 486SX marketing thing allowed Intel to sell defective 486s in which the FPU didn't work but if it did that was a tiny tiny number: a rounding error.

 
lovingboth: (Default)

[personal profile] lovingboth 2023-11-22 08:58 pm (UTC)(link)
Hmm, should 'calling them the 486DX' be 'calling them the 486SX'?

My memories of the 386 include..

.. the way that many of the first ones had a bug that made the Pentium division one look trivial: they couldn't do integer 32-bit multiply correctly!?! Intel sold them anyway as '16-bit' versions - I had a s/h PC from someone on cix with one - and Windows looked out for the bug, at least until Windows 3.x.

.. someone (Phil Katz of zip archive fame?) discovering that the reason their 32-bit code didn't work was that Novell's NetWare386 didn't bother to save the upper 16 bits of the registers it used. Any other program using 32-bit registers could/would get the upper half of the registers trashed at random.

.. the popularity with corner-cutting manufacturers of 'write through'-labelled 'cache RAM' chips that did absolutely nothing. Early Amstrad 386 systems had them, but they were far from the only ones.

The 486 motherboard I got from a Computer Shopper show stayed as the heart of my main PC for ages, having an Intel 486DX/33, at least one Cyrix clone, and at least one Am5x86 as its CPU over the years, ending up with 48 MB of RAM - 4x4MB 30 pin SIMMs and 4x8MB 72 pin SIMMS. I still have one of the later CPUs as a beard comb, but because of how the heatsink is attached, I'm not sure which one!