Forum Discussion
Altera_Forum
Honored Contributor
9 years agofft 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.