DSP Stuff: floating point or fixed point

Ben Stuyts ben at stuyts.nl
Fri Jan 8 00:37:30 CET 1999


On Wed, 06 Jan 1999, Michael Maloney wrote:

> Obviously the floating point stuff allows you to skip a few steps (e.g.
> re-scaling), but the 21061 ezkit lite also comes with a "light" version of
> the G21K C compiler...as I recall it was about $300.00.  I'm ashamed to say
> that mine is still in the box, so I can't comment on its noise levels.

I happened to read a couple of messages on comp.dsp about how a fixed point  
DSP might be actually preferable over a floating point DSP. Here are some  
quotes:

> From: chris at bores.com (Chris Bore)
> Newsgroups: comp.dsp
> Subject: Re: The best DSP for digital audio
> Date: Mon, 04 Jan 1999 15:18:41 GMT
> Message-ID: <3691d3e5.21289755 at news.globalnet.co.uk>
...
> 1) Floating point operation modulates the noise floor in a signal
> dependent way. Floating point parts automatically scale and normalise
> each number as it is processed. This means that the noise floor is
> modulated in a signal-dependent way. It can be shown that the noise
> floor is always less than that of a fixed point device with same
> mantissa length - but some people claim the modulation of the noise
> floor is audible. With fixed point devices the programmer has control
> of normalisation and scaling - so these devices may be preferred for
> digital audio.

And:

> From: Randy Yates <yates at shadow.net>
> Newsgroups: comp.dsp
> Subject: Re: The best DSP for digital audio
> Date: Tue, 05 Jan 1999 20:15:24 -0600
> Message-ID: <3692C73C.89C2623F at shadow.net>
> Reply-To: yates at ieee.org
...
> For operations such as FIR filtering, a fixed-point part has
> GREATER precision (i.e., LESS noise) than a floating-point
> device. This is because all fixed-point processors (that I've
> ever seen, at least) that operate on N-bit data provide at
> least a 2N-bit accumulator. For example, even a lowly 16-bit
> fixed-point device such as the TI TMS320C50 has a 32-bit
> accumulator. Thus one can carry forward 32 bits of precision
> in the sum involved in the filter convolution, and if
> noise-shaping is used, one can preserve much of that precision
> when converting back to 16-bit values.
>
> As you have already alluded to, the (32-bit) floating-point part
> is "stuck" at 24 bits of precision, i.e., that afforded by
> its mantissa, and I would venture a guess that a 16-bit
> value that has been properly noise-shaped from a 32-bit
> result is going to sound better than a 24-bit result with
> no noise shaping.
>
> If we up the fixed-point ante to the 56/24 architecture afforded
> by the Motorola 56k, then there's no more comparison to be had,
> because we have as a result 24-bit samples that have been
> noise-shaped from 56-bit accuracy.
>
> People, get the idea out of your head that floating point == more accuracy!

I thought that was interesting.

Best regards,
Ben



More information about the Synth-diy mailing list