BYTE.com > Features > 2007
Fixed vs. Floating Point: A Surprisingly Hard Choice
By Boris Lerner
February 12, 2007
(Fixed vs. Floating Point: A Surprisingly Hard Choice
: Page 1 of 1 )
The advantages of floating-point processors are well known. Without a doubt, floating-point implementations of many algorithms take fewer cycles to execute than fixed point code (assuming, of course, that the fixed-point code offers similar precision). Floating-point processors are also often much easier to program in assembly code. However, neither of these advantages matter all that much to the end designer. With the quality of compilers getting better and better each day, hardly anyone codes in assembly anymoreýand writing code in C is nearly equally simple, be it fixed or floating point. Moreover, in C one can certainly write floating point code for a fixed point processor, although it will take a significant performance hit. What does matter to the end designer is the final system's performance, cost and time to market. These are the metrics that I will try to estimate in the analysis below.
There is a myriad of processors out there, both fixed- and floating-point. Doing an analysis on each one would turn this paper into something comparable in size to an encyclopedia. So I will restrict my comparative analysis to two ADI processors -- Blackfin from the fixed point camp and SHARC as its floating point nemesis. We'll choose two members that are similarly priced -- ADSP-21531 Blackfin and ADSP-21375 SHARC, both selling at around $5 per part in reasonable quantities at the time of this writing.
One may think that, given a similar silicon price, one should choose the floating-point processor, simply because it can do the floating point, in case it is ever needed. But similar price of the silicon does not always translate into a similar price of the end system. For example, SHARC's power consumption for a similar fixed-point task is higher than that of the Blackfin, which results in more expense in the power supply design, among other things. In any case, a single application would, most likely, favor one processor or the other. Thus, to be fair, we'll consider four separate applications:
- Military radar
- Mobile TV
- Professional audio effects processor
- Automatic echo canceller in hands-free portable device
The choice of these applications is not entirely random.
Page 1 of 1
BYTE.com > Features > 2007
|