Jump to content
  • 0

FFT problems doesn't finish never


mohamed shffat

Question

Hello 

After fixing some problems in the FFT IP core v 9.0, i got another trouble here . 

My problems are in the natural order output signal , and the reversed order with harmonics ! When i set my output core to reversed bit order i get a results but not only two peaks , i get another peaks or harmonics as it called ! In the same time when i change it to the natural order i get nothing from the core ! just an empty window with no peaks such as shown in the pics below . 

Details of my FFT core : 

512 points scaled with SCALE_SCH = [01 10 10 10 11] 

forward FFT and real time mode . 

Target CLK 100 MHZ and 50 MSPS out .

Fixed point 

Pipelined streaming I/O . 

Input 16 bit width comes from XADC 1MSPS . 

1st pic show the results comes in reversed order , 2nd pic shows the natural order results . 

And the input of the core is a sinusoidal wave sampled with XADC core . 

If someone have any idea of what is going on here I would really appreciate the help!

wrong !.jpg

wrong 2.jpg

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

Yes, your problem makes perfect sense: you aren't gating the values coming into the core.  I mentioned this in the discussion associated with your other post here:

The problem is that you are running the FFT at a clock near 100MHz, but only placing values in at about 1MHz.  This in itself isn't a problem, but if you don't adjust the CE line appropriately or gate your analysis of the output with (it's either the CE or DV line), you will have this problem.  What you need to do is to raise the CE line for one clock, and one clock only, for each valid sample going into the FFT.  Then, on the output, you will get one sample out at the same rate: roughly one valid FFT output sample every 100 input samples.  That's just ... how a pipelined FFT works.

Dan

Link to comment
Share on other sites

@mohamed shffat

Quote

HI 

I am new in vivado ,I am not getting idea how to use ip in vivado(i did few ip project but follow the manual only ),I also want to do fft via ip in vivado please guide me as you did what  i am  struggling .As for  board design i am not getting idea how connect all component like fft,fifo,dram, adc, clock etc

one more question  how to use ip catalog   ip 's??

 

 

Link to comment
Share on other sites

@neha,

This sounds fairly off topic for the current question, so I might suggest you start a new topic.

To use the IP catalog IP's, click on the window menu, go to "IP Catalog", double click on the IP you are interested in and then configure it for your use.  You can then use this IP in your system.  As I recall, Vivado will create a stub for you, showing you all the details you need to know in order to reference it within your design.

As for other FFT types of questions, check @mohamed shffat's other forum requests.  He has some examples within them of how he's hooked up the FFT, as well as a discussion of how doing so was write (or wrong) and what should be done differently.

I'd still recommend starting a new topic, though.

Dan

Link to comment
Share on other sites

@@D@n   i didn't get any appropriate forum request of md.shffat that why,

ya in  vivado we can use use  ip, what my problem is how to connect input and  output of different ip make them together, i want to know connect all devices ip like fft,adc,ram etc.

In catalog ip i am able customize it but,  how to use different catalog ip together or In one ip catalog (like in fft ip catalog  how to add/connect other  device/ip in it like adc ram etc).
I am not getting idea to how to use that ip catalog in my program

Link to comment
Share on other sites

@D@n

hi

I am using fft ip  in vivado  2015.2  .In FFt ip two input  are there s_axis_config_tdata  and s_axis_data_tdata. I am giving input from saxis_data_tdata in parallel  means out put is not coming as expected . and can you tell me  me signification of saxis_config_tdata and for proper sinwave output from fft  input should given in serial or parallel (m using parallel) and also output should taken serial and  or parallel

Link to comment
Share on other sites

@neha,

I'm really struggling to follow the description of your problem.  Do you have a copy of the FFT logicore specification?  Is there a question you have about that specification, or the meanings of some of the signals?

You do realize that the config data is different from your sample data, right?  You can't send sample data to the configuration stream.  The configuration stream is used for such things as adjusting the FFT size, switching from a forward to an inverse transform, adjusting the scale schedule, etc.  You can find this information starting with page 14 of the specification I just linked.

Dan

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...