UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor forlsy
Visitor
2,290 Views
Registered: ‎07-17-2013

block floating point

Hi, all. I have a question as to the block floating point in the FFT core.

 

The input data format is Q2.10, namely totally 12 bits wide, 2 bits integer, 10 bits fractional.

The IFFT length is 2048, output data width is still 12 bits, and configured using block floating point mode. After calculation, the block exponent is 7, which indicates the output has been shifted right by 7 bits.

 

How do I determine the location of the decimal point of the output data?

Thanks.

 

0 Kudos
1 Reply
Highlighted
Visitor forlsy
Visitor
2,279 Views
Registered: ‎07-17-2013

Re: block floating point

To add some numerical example, say we have 2048 double precision data A, applying ifft to them, we get output of vector a.

Set A0 to be (-0.7071, -0.7071*j), the corresponding a0 = (0.0166, -0.0048*j).

 

By using Q2.10 format and 2's compliment, we get:

B0 = int(A0 * 2^10) = (3372, 3372*j).

The first output of IFFT core is b0 = (271, -80*j).

 

I found that:

b0 = a0 * 2^14;

 

 

0 Kudos