Altera_Forum
Honored Contributor
8 years agoFFT megacore (variable-stream) sink_ready deasserts after dynamic size change 16->32
Hi, it is me again.
In my previous thread on the FFT IP (https://www.alteraforum.com/forum/showthread.php?t=57800&p=235198) core I posted this: --- Quote Start --- I attempted to fix this behaviour by simultaneously changing fft size at the same time as SOP is pulsed - this is written in the documentation and I missed this the first time. However, I found a section missing in the documentation - page 33 of the May 2016 version of the FFT altera megacore pdf, the steps are not listed for changing fft size dynamically - It appears the section was started but is incomplete as it only states: '1. Change the size of the incoming FFT,' and nothing else before moving onto the next section. Anyway, I found that I could change the size up from 8 to 16, and after the pipeline flushes the data of fft size 8, sink_ready is reasserted and fft sizes of 16 are fine to be passed through. HOWEVER, when changing from size 16 to 32 in the same manner, sink_ready seems to never be reasserted, even after waiting for 1000s of cycles. I will move this to a fresh thread as the problem is now only semi-related to the original thread title. --- Quote End --- The idea is that I test my pipeline and FSM all the way from length 8 to length 256 which is the max size of my FFT IP. When changing from 16 to 32, my FSM cannot proceed further as sink_ready is de-asserted and never reasserted. I am going to attempt to fix this in the meantime, although if anyone on these forums has used the core before with variable size streaming implementation, I would be grateful for any advice/help. Thanks for your time. ap29