Hi Andrew:

Thanks for your information.

I am still not sure on next two options in fft_wideband_real:

Number bits above which to store stage's coeffcients in BRAM
Number bits above which to store stage's delay in BRAM

Thanks

Wan

________________________________
From: Andrew Martens [mailto:martens.and...@gmail.com]
Sent: Monday, 22 June 2009 8:48 PM
To: Cheng, Wan (ATNF, Marsfield)
Cc: casper@lists.berkeley.edu
Subject: Re: [casper] about the shift input of FFT

Hi Wan et al

The 'convert with overflow indication', convert_of is now fixed and the change 
propagated to the FFT subsection in the library so the FFT blocks should now 
accurately indicate if an overflow occured. Please do an update to get these 
changes. Note that the overflow bit does not go high with the data that caused 
the overflow but a lot earlier and is to used as an indicator that an overflow 
occured 'somewhere' . I will implement the delays properly when I have more 
time again so that it lines up correctly.

Regards
Andrew

2009/6/22 Andrew Martens 
<martens.and...@gmail.com<mailto:martens.and...@gmail.com>>
Hi Wan

The overflow block that generates the overflow output does not currently work 
properly, fixing it keeps slipping my mind. I will fix it as soon as I can.

The FFT needs the same number of bits as there are stages i.e 5 stage = 5 bits. 
If you give it more it will just slice off the ones it needs and ignore the 
rest so 32 bits should be more than enough.


Regards
Andrew

2009/6/22 <wan.ch...@csiro.au>
Hi Andrew:

Now I can find the OF output from FFT module is high. Does this mean the FFT is 
overflow? But I already set all shift bit to '1'.

I an not very sure how many shift bits the FFT module has. I just give it 32 
bits width '1'.

Thanks

Wan

________________________________
From: Andrew Martens 
[mailto:martens.and...@gmail.com<mailto:martens.and...@gmail.com>]
Sent: Monday, 22 June 2009 4:23 PM
To: Cheng, Wan (ATNF, Marsfield)
Cc: casper@lists.berkeley.edu<mailto:casper@lists.berkeley.edu>
Subject: Re: [casper] about the shift input of FFT

Hi Wan

The FFT applies gain to any repeating input signal. You can view this happening 
with the following MATLAB commands;

x = 0:1:32;
y = sin(4*x*2*pi/32);
plot(abs(fft(y,32)));

You will see that the output has spikes of height 16 instead of 1 which you 
would expect from a sinusoid of amplitude 1. The FFT scales the signal by 
2^(n-1), where n is the number of stages in the FFT (a 32 bin fft has log2(32) 
= 5 stages etc).

This scaling has the potential to introduce overflow errors.

The CASPER FFT allows you to remove the risk of overflows by shifting the data 
down by one bit at each stage in the FFT. The shift input allows you to set how 
much shifting is done. The default is normally to leave this all '1's but it 
depends on what your input data looks like.

I hope this answers your question. If you have MLIB_ROOT properly defined in 
your environment, you should have access to some documentation on the FFT (and 
most blocks). Press the 'Help' button in the mask dialog.

Regards
Andrew

2009/6/22 <wan.ch...@csiro.au>
Hi:

Could anyone give me some idea on the function of shift input pin of FFT?
I find some example design set it to all 1s. This means every stage are set to 
shift 1. What does this mean?

Thanks

Wan



Reply via email to