background image

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