
Ken Shirriff has published a look at how the Intel 8087 math coprocessor performs floating-point addition and subtraction. The 1980 chip sped up floating point in the IBM PC and other systems, with addition running roughly 100 times faster than emulation on the 8086.
Shirriff opened a chip with a chisel and photographed the die under a microscope. The microcode ROM sits in the center and holds 1648 micro-instructions. The bottom half of the die is the datapath, built around a 69-bit integer adder, a shifter that can move a 68-bit value any number of positions, leading zero detection circuitry, and an exponent converter.
The post walks through the microcode step by step: aligning the binary points, choosing between unsigned addition and unsigned subtraction based on the argument signs, normalizing the result, and adjusting the exponent. It also covers the special cases for infinity, Not-a-Number, denormals, pseudo-zeros, and positive and negative zero. Shirriff worked with members of the Opcode Collective, who extracted the microcode from the ROM images.
See more at righto.com and content on GitHub.
from Adafruit Industries – Makers, hackers, artists, designers and engineers! https://ift.tt/oYhrPnv
via IFTTT





