Chapter 4
The Processor Customization
This chapter presents the whole methodology and all steps that were taken in order to
augment the FPU described in the previous chapter to the processor. Customizing the
processor is not a easy task since there are many variables that need to be taken into
account. Many things can go wrong since the initial design was not intended to support
such additions. However the flexibility provided by soft cores provides the necessary
tools to fulfill such task. The main goal is to embed a new module, the FPU, in the
existing processor design in order to support floating point arithmetic calculations which
are considered mandatory for multimedia processors. The strategy is to affect as little
as possible the overall processor performance while providing a sufficient interface for
the proper utilization of the new component.
4.1
Compatibility
The first thing that must be taken care off is the compatibility. The main concern in
such situations is the word size. A module cannot be easily used by another processing
unit if the don’t both use the same word size. While it is possible to augment such piece,
by usually using multi-cycle instructions and stalling, it severely affects the performance
and requires more area, especially temporary storing registers. For this reason the FPU
implementation chosen is a double precision design in order to conform with the 64bit
word size processor. Specifically for FPU module, it is very hard to use designs that do
not have the same word size as the top module, since the storing representation cannot
48