FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
6486 Discussions

Problem in controlling FFT megacore function???

Altera_Forum
Honored Contributor II
1,330 Views

Hi, I'm currently working in a project, in which I use FFT block to correlate signal. I got stuck in simulating the fft block. My block do fft for 1024 points. I use a clock 1Mhz to clock.  

I simulated in modelsim with : 

-I assert port reset, sink_valid, sink_ready to '1' and sink_error, inverse to "00", '0'...  

-For 1024 points FFT, there 1024 clock cycles between sink_sop and sink_eop 

 

but the outputs stuck a zero, 

Where did I do wrong?  

By the way, what 's the standard method to control fft megacore block when I have to control sink_eop and sink_sop, clock, reset... 

Can I use sink_sop and sink_eop from one source? Because they have same form ( In streaming data flow chart in user guide megacore fft 11.)
0 Kudos
4 Replies
Altera_Forum
Honored Contributor II
368 Views

This could be a couple of things. 

 

Have you asserted source_ready? 

Have you included a global clock enable, which will also need to be asserted? 

What are you using for your input?
0 Kudos
Altera_Forum
Honored Contributor II
368 Views

 

--- Quote Start ---  

This could be a couple of things. 

 

Have you asserted source_ready? 

Have you included a global clock enable, which will also need to be asserted? 

What are you using for your input? 

--- Quote End ---  

 

 

Thanks, I got it done by using a small state machine to control sop and eop, the source_ready is set to '1'. and then WAIT for 2x1024 clock cycles. I didin't wait for such a long time. 

But still question, why distance between sop and eop is 1024? what 's different if I use distance between sop and eop other than FFT points? 

By the way, I didn't use **** enable. Is that ok? 

The use 8 bit input for PRN code. That's wasted!!!! ]
0 Kudos
Altera_Forum
Honored Contributor II
368 Views

It's fine to not use clk enable so long as you didn't select it as an option when you created the function. 

 

I'm not sure I understand your SOP and EOP question, how are you trying to generate it from one source?  

 

The SOP and EOP need to indicate the packet size to the FFT engine. I haven't tested it myself, but if you set the distance between the two to longer than the packet length, I imagine it's going to continually overwrite the final value until the EOP signal is received.
0 Kudos
Altera_Forum
Honored Contributor II
368 Views

 

--- Quote Start ---  

It's fine to not use clk enable so long as you didn't select it as an option when you created the function. 

 

I'm not sure I understand your SOP and EOP question, how are you trying to generate it from one source?  

 

The SOP and EOP need to indicate the packet size to the FFT engine. I haven't tested it myself, but if you set the distance between the two to longer than the packet length, I imagine it's going to continually overwrite the final value until the EOP signal is received. 

--- Quote End ---  

 

Thank's @el07dm
0 Kudos
Reply