How Math Coprocessors work (Floating Point Units)

by Craig Hungaro.

Share
|
Homepage | Submit your article | Contact | TOS
More articles on memory processor motherboards and buses  

You are here: Categories » Computers and technology » Memory Processor Motherboards and buses

This article covers the floating-point unit (FPU) contained in the processor, which was formerly a separate external math coprocessor in the 386 and older chips. Older central processing units designed by Intel (and cloned by other companies) used an external math coprocessor chip. However, when Intel introduced the 486DX, it included a built-in math coprocessor, and every processor built by Intel (and AMD and Cyrix, for that matter) since then includes a math coprocessor. Coprocessors provide hardware for floating-point math, which otherwise would create an excessive drain on the main CPU. Math chips speed your computer's operation only when you are running software designed to take advantage of the coprocessor. All the subsequent fifth- and sixth-generation Intel and compatible processors (such as those from AMD and Cyrix) have featured an integrated floating-point unit.

Math chips (as coprocessors sometimes are called) can perform high-level mathematical operationslong division, trigonometric functions, roots, and logarithms, for exampleat 10100 times the speed of the corresponding main processor. The operations performed by the math chip are all operations that make use of noninteger numbers (numbers that contain digits after the decimal point). The need to process numbers in which the decimal is not always the last character leads to the term floating point because the decimal (point) can move (float), depending on the operation. The integer units in the primary CPU work with integer numbers, so they perform addition, subtraction, and multiplication operations. The primary CPU is designed to handle such computations; these operations are not offloaded to the math chip.

The instruction set of the math chip is different from that of the primary CPU. A program must detect the existence of the coprocessor and then execute instructions written explicitly for that coprocessor; otherwise, the math coprocessor draws power and does nothing else. Fortunately, most modern programs that can benefit from the use of the coprocessor correctly detect and use the coprocessor. These programs usually are math intensive: spreadsheet programs, database applications, statistical programs, and graphics programs, such as computer-aided design (CAD) software. Word processing programs do not benefit from a math chip and therefore are not designed to use one.

Math Coprocessor Summary
Processor Coprocessor
8086 8087
8088 8087
286 287
386SX 387SX
386DX 387DX
486SX 487SX, DX2/OverDrive
487SX Built-in FPU
486SX2 DX2/OverDrive
486DX Built-in FPU
486DX2 Built-in FPU
486DX4/5x86 Built-in FPU
Intel Pentium/Pentium MMX Built-in FPU
Cyrix 6x86/MI/MII Built-in FPU
AMD K5/K6/Athlon/Duron Built-in FPU
Pentium II/III/Celeron/Xeon Built-in FPU
Pentium 4/Celeron Built-in FPU
Pentium D/EE/Celeron D Built-in FPU
Athlon 64/FX/X2/Opteron Built-in FPU
Itanium/Itanium II Built-in FPU
FPU = Floating-point unit

The 487SX chip is a modified pinout 486DX chip with the math coprocessor enabled. When you plug in a 487SX chip, it disables the 486SX main processor and takes over all processing.

The DX2/OverDrive is equivalent to the SX2 with the addition of a functional FPU.

Although virtually all processors since the 486 series have built-in floating-point units, they vary in performance. Historically, the Intel processor FPUs have dramatically outperformed those from AMD and Cyrix, although AMD and Cyrix are achieving performance parity in their newer offerings.

Within each of the original 8087 group, the maximum speed of the math chips varies. A suffix digit after the main number indicates the maximum speed at which a system can run a math chip.

Maximum Math Chip Speeds
Part Speed
8087 5MHz
8087-3 5MHz
8087-2 8MHz
8087-1 10MHz
287 6MHz
287-6 6MHz
287-8 8MHz
287-10 10MHz


The 387 math coprocessors and the 486 or 487 and Pentium processors always indicate their maximum speed ratings in MHz in the part number suffix. A 486DX2-66, for example, is rated to run at 66MHz. Some processors incorporate clock multiplication, which means they can run at different speeds compared with the rest of the system.

Most systems that use the 386 or earlier processors are socketed for a math coprocessor as an option, but they do not include a coprocessor as standard equipment. A few systems on the market at that time didn't even have a socket for the coprocessor because of cost and size considerations. These systems were usually low-cost or portable systems, such as older laptops, the IBM PS/1, and the PCjr. For more specific information about math coprocessors, see the discussions of the specific chips8087, 287, 387, and 487SXin the later sections.

Older Intel Math Coprocessor Specifications
Name Power Consumption Case Minimum Temperature Case Maximum Temperature No. of Transistors Date Introduced
8087 3 watts 0°C, 32°F 85°C, 185°F 45,000 1980
287 3 watts 0°C, 32°F 85°C, 185°F 45,000 1982
287XL 1.5 watts 0°C, 32°F 85°C, 185°F 40,000 1990
387SX 1.5 watts 0°C, 32°F 85°C, 185°F 120,000 1988
387DX 1.5 watts 0°C, 32°F 85°C, 185°F 120,000 1987


Most often, you can learn which CPU and math coprocessor are installed in a particular system by checking the markings on the chip.

Note

Most applications that formerly used floating-point math now use SSE, SSE2, or SSE3 instructions instead. These instructions are faster and more accurate than x87 floating-point math.

Leave a comment or ask a question
Total comments: 0

Memory Processor Motherboards and buses Disclaimer

  • The e-articles directory is not responsible for any and all copyright infringements by writers and authors. If you suspect the information contained by this page for any copyright infringements, please contact us to investigate the issue
What is UMA ~ Upper Memory Area - The term Upper Memory Area (UMA) describes the reserved 384KB at the top of the first megabyte of system memory on a PC/XT and the first megabyte on an AT-type system. This memory has the addresses (more...)
RDRAM - Rambus DRAM (RDRAM) is a fairly radical memory design found in high-end PC systems from late 1999 through 2002. Intel signed a contract with Rambus in 1996 ensuring it would support RDRAM into 2001 (more...)
The evolution of Microprocessors from 1971 to the Present - It is interesting to note that the microprocessor had existed for only 10 years prior to the creation of the PC! Intel invented the microprocessor in 1971; the PC was created by IBM in 1981. Now mo (more...)
How SIMM DIMM and RIMM memory work - Originally, systems had memory installed via individual chips. They are often referred to as dual inline package (DIP) chips because of their designs. The original IBM XT and AT had 36 sockets on t (more...)
EDORAM ~ Extended Data Out RAM - In 1995, a newer type of memory called extended data out (EDO) RAM became available for Pentium systems. EDO, a modified form of FPM memory, is sometimes referred to as Hyper Page mode. EDO was inv (more...)
Troubleshooting Memory - Memory problems can be difficult to troubleshoot. For one thing, computer memory is still mysterious to people because it is a kind of "virtual" thing that can be hard to grasp. The other difficult (more...)
Guidelines when upgrading memory on older systems - When upgrading an older motherboard, it is sometimes impossible to match the installed memory. Some motherboards have 30-pin and 72-pin SIMM sockets, and many have both SIMM and DIMM sockets. I (more...)
Guidelines when upgrading memory in Pentium II/III/IV Celeron and Athlon systems - These systems are excellent candidates for memory upgrades. Early Pentium II systems often have only 16 MB of RAM. In the price-sensitive consumer Celeron market, many early systems shipped wit (more...)
Power6 Processor: World`s Fastest Processor - Increases the processing speed to 4.7 GHz A revolutionary device in the form of tiny chip has been designed by IBM which has put the world in wonders. Power6 is really a mind-blow (more...)
About Clocking - In computers, a serial signal is one in which the bits of data of the digital code are arranged in a series. They travel through their medium or connection one after another as a train of pulses (more...)

 
free content
    Copyright © 2006 - 2012 e-articles.info.
The texts, articles and tutorials in the directory are property of their respective owners and authors.