Intel 8087

Intel 8087
General information
Launched1980; 44 years ago (1980)
DiscontinuedSeptember 28, 2007; 16 years ago (2007-09-28) [1]
Marketed byIntel, IBM[2]
Designed byIntel
Common manufacturers
Performance
Max. CPU clock rate4 MHz to 10 MHz
Architecture and classification
Technology node4.5->3 μm
Instruction setx87 (coprocessor extension of x86-16)
Physical specifications
Transistors
  • 65000
Package
History
Predecessor8231/8232
Successor80287

The Intel 8087, announced in 1980, was the first floating-point coprocessor for the 8086 line of microprocessors.[5][6][7] The purpose of the chip was to speed up floating-point arithmetic operations, such as addition, subtraction, multiplication, division, and square root. It also computes transcendental functions such as exponential, logarithmic or trigonometric calculations. The performance enhancements were from approximately 20% to over 500%, depending on the specific application. The 8087 could perform about 50,000 FLOPS[6] using around 2.4 watts.[7]

Intel 8087 die

The 8087 was an advanced integrated circuit, pushing the limits of manufacturing technology of the period.[citation needed] Basic operations on the 8087 such as addition and subtraction can take over 100 machine cycles to execute and some instructions exceed 1000 cycles.[8] The chip lacks a hardware multiplier and implements calculations using the CORDIC algorithm.[9]

Sales of the 8087 received a significant boost when a coprocessor socket was included on the 1981 IBM PC motherboard. Development of the 8087 led to the IEEE 754-1985 standard for floating-point arithmetic. The available speed version were 4.77 (5), 8, and 10 MHz.[10] There were later x87 coprocessors for the 80186, 80286, 80386, and 80386SX processors. Starting with the 80486, the later Intel x86 processors did not use a separate floating-point coprocessor; floating-point functions were integrated with the processor.

Intel 80186 and its associated products were discontinued on March 30, 2007 for orders and September 28, 2007 for shipments.[11]

  1. ^ "Product Change Notification" (PDF). 2 May 2006. Archived from the original (PDF) on 9 October 2006.
  2. ^ Shvets, Gennadiy (8 October 2011). "IBM 8087 floating-point unit". CPU World. Retrieved 1 December 2011.
  3. ^ Shvets, Gennadiy (8 October 2011). "AMD 8087 floating-point unit". CPU World. Retrieved 1 December 2011.
  4. ^ Shvets, Gennadiy (8 October 2011). "Cyrix 8087 floating-point unit". CPU World. Retrieved 1 December 2011.
  5. ^ Palmer, John F. (1980). "The INTEL® 8087 Numeric Data Processor" (PDF). AFIPS '80, Proceedings of the, May 19–22, 1980, National Computer Conference. Anaheim, California: ACM. pp. 887–893. doi:10.1145/1500518.1500674.
  6. ^ a b "8087". Coprocessor Dot Info. 2007. Archived from the original on 30 September 2011. Retrieved 1 December 2011.
  7. ^ a b "Intel FPU". cpu-collection.de. 2011. Retrieved 1 December 2011.
  8. ^ Cite error: The named reference datasheet was invoked but never defined (see the help page).
  9. ^ Shirriff, Ken (May 2020). "Extracting ROM constants from the 8087 math coprocessor's die". righto.com. Self-published by Ken Shirriff. Retrieved 3 September 2020. The ROM contains 16 arctangent values, the arctans of 2−n. It also contains 14 log values, the base-2 logs of (1+2−n). These may seem like unusual values, but they are used in an efficient algorithm called CORDIC, which was invented in 1958.
  10. ^ Yoshida, Stacy, "Math Coprocessors: Keeping Your Computer Up for the Count", Intel Corporation, Microcomputer Solutions, September/October 1990, page 16
  11. ^ "Product Change Notification" (PDF). 2 May 2006. Archived from the original (PDF) on 9 October 2006.