Turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Intel Community
- FPGAs and Programmable Solutions
- FPGA Intellectual Property
- fft in Altera fixed point vs block floating point

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

Altera_Forum

Honored Contributor I

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-31-2016
08:01 PM

1,033 Views

fft in Altera fixed point vs block floating point

Hello!

I'm modeling two variants of Altera's fft (FFT IP Core) in Matlab, one - for block floating point and second - for fixed point. As a result I see block floating point heavily depends on level of input signal. Good results are given only for signals with amplitude near or equal to full scale, unlike fixed point fft. Why is it so? is that right that for block floating point fft best result are if data scaled for all dynamic range? or what is my mistake? What is the advantage to use block floating point instead of fixed point? Pictures with modeling results are attached (created with matlab scripts generated by Altera). Any help is greatly appreceated.Link Copied

1 Reply

Altera_Forum

Honored Contributor I

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-31-2016
09:49 PM

60 Views

fft depends heavily on bit resolution and is best if done using standard floating point. This is due to cascaded computations and internal bit growth/truncation issues.

Fixed point is less efficient unless bitwidth is high enough and input uses good dynamic range. Altera's block floating point is an attempt to bridge this gap between fixed point and true floating point by changing the decimal point per block rather than per computation leaving the varying (decimal point) output exponent for the user to apply it. The user can apply exponent for unity as x2^(-exp) or modify exponent for own scaling e.g. x2^(-exp+3) if it helps as unity is not always needed. That could help improve resolution if you are cascading multiple ffts. Both fixed point and altera's block floating point depend heavily on good dynamic range from input stage but actual result depends on bitwidth, frame size, nature of signal and the secret ip design...etc.Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

For more complete information about compiler optimizations, see our Optimization Notice.