Chapter 3
The Floating Point Unit(FPU)
A floating point unit is a part of the processor that is specialized to carry out operations
on floating point numbers. Some of the operations are addition, subtraction, multipli-
cation, division and square root. Some modern modules can also perform trigonometric
calculations, however most systems use libraries dedicated for these operations. Most
systems have an integrated FPU however some systems implement the floating point
calculations via a co-processor. Many computers use emulators for such operations,
where the floating point is emulated and in the final stage the calculation is converted
to integer calculations. The drawback of this procedure is the low time efficiency and
poor resource management since not only the floating calculation takes more time but
valuable processing time is being taken from the main processor.
Most modern processors use embedded FPUs and even dedicated floating-point registers
such as the Intel x86 instruction set. In some cases, FPUs may be specialized, and
divided between simpler floating-point operations (mainly addition and multiplication)
and more complicated operations, like division. In some cases, only the simple operations
may be implemented in hardware or microcode, while the more complex operations are
implemented as software.
In this processor case a support for floating point calculations is mandatory, since
multimedia processing often perform repeated parallel data processing, mostly float-
ing point calculations, floating point arithmetic support is mandatory for multime-
dia applications[
]. For our purposes a FPU specification was selected, which could
fit within our design and would be suitable for FPGA implementation. The design
37