The article goes into some detail on the extra effort required to implement FPU hardware emulation on a platform that did not especially support it.
Modern implementation of FPU emulation might be more straightforward.
I haven't worked with FPU emulation on microcontrollers, which is probably the most common use case these days.
Most 32-bit designs throw an exception on an invalid instruction so it can be caught and handled at runtime. Even basic ARM Cortex-M0 chips throw a catchable exception on illegal instructions.
So one option is to just issue the FPU instructions as if the FPU exists, and then catch and emulate.
This is how operating systems emulated FPUs on processors like the 68020, the 386 and early RISC machines, if they didn't have an FPU.
Was this price point a deliberate market differentiator, or was there some special sauce within FPU that was otherwise difficult to attain?
While I'm struggling to find early price information on the 8087, I did find a PS/2 price list from 1987[2], which lists a $310 IBM MSRP for the 8087.
For reference, pricing for the entry-level 8086-based IBM PS/2 Model 25, including monochrome monitor, keyboard, floppy drive, and 512 kB RAM, started at $1,350[3] (which is about twice what you'd have paid for a similarly configured no-name XT clone at the time).
[1] https://www.righto.com/2025/12/8087-stack-circuitry.html
[2] https://www.ardent-tool.com/docs/pdf/brochures/ibm-ps2-facts...
[3] https://www.dosdays.co.uk/computers/IBM%20PS2%20Model%2025/m...
For my postdoc in 1995, my industry sponsor bought me a then top-of-the range Dell Latitude XP with 100MHz 80486, integrated 80487 coprocessor and 32MB RAM for radar signal processing research.
In Australia at the time, it cost A$10,000, as much as my car.
Even the 24MB RAM upgrade from 8 to 32MB cost USD1,200 ($2,500) in today's money. Which puts current complaints about the soaring cost of RAM into perspective!
That doesn't mean all laptops used these, I'm sure some laptops used desktop chips.
You might be too young to have known that time, but 386/486 just had a tiny heat sink on them and that was all; the real power consumption boom and the serious heat dissipation systems came down the Pentium line.
But from an Accounting PoV, it was separate chip. With far more transistors than the 8086 CPU. And its cutting-edge (for the time) design and other fixed costs had to be spread over a far number smaller number of units.
⇒ I think it mostly was a matter of “that’s what it will have to cost at our typical margins”. Because you get lower yields for larger chips, that meant a larger than 65/30 multiplier.
Can't find "good" figures but they were apparently about $100 in 1980 money for an 8088 and about five times that for the 8087, something like that.
That'd be something like $400-odd and $2000-odd in today's money.
Later revisions of 8087 used a standard technology and a shrunk die, with improved yields.
An unexpected issue with the 8087 was, it caused issues when multi-processing. That is, any kernel with a process scheduler had to swap the 8087 state along with the rest of the registers.
export LIBGL_ALWAYS_SOFTWARE=1 under Lutris, your shell or whatever. Enjoy the slideshow.
Now, run it under a modern GTX video card.
Yes...um...it did floating point much faster than it could be done on the 8086. For some users, this was very important (and not particularly important to most others).
At that time, the idea of deliberately disabling features for market segmentation was seen as unseemly and an indicator of an illegal monopoly.
But I would imagine that, for DTP, rasterizing PostScript on the printer would make things a lot easier.
Chips did fit crypto engines, matrix multipliers, FFT offload, and color converters there.
Edit: double precision floating point and fixed latency GPIO at least!
https://pcisig.com/membership/member-companies
The decimal ID 8086 is not assigned, so it may be a reserved number. Nor is 6800 assigned in either notation.
0x8088 is, however, assigned to "Beijing Wangxun Technology Co., Ltd."
Decimal 8088 is assigned to "Akeana, Inc."
Decimal 8080 is assigned to "QUSIDE TECHNOLOGIES S.L."