07-01-2020 04:14 AM - edited 07-01-2020 04:15 AM
I am using FIR compiler 7.2 version with Vivado 2019.1 Vivado Simulator. The filter i am using is interpolation x2 filter (super sample rate with input sampling frequency == Clock frequency).
I have the following problem:
If s_axis_tvalid becomes '1' when i have valid data to send the filter seems to "lose" some data even if the valid signal asserts for correct period ,the data are corrupted. I asserted tvalid before valid data to have correct output. Am i missing any parameter for the configuration? s_axi_tready is always enabled from filter and tvalid becomes '1' for certain period.
Is there any "latency" concerning the tvalid?
Thanks in advance,
07-02-2020 04:10 AM
Are you seeing the problem in simulation or in the hardware? There is no latency with tvalid. It should be asserted on the same clock cycle as the data you want to feed into the filter. Can you show a simulation or ILA trace illustrating what you are seeing?
07-02-2020 06:24 AM - edited 07-02-2020 06:51 AM
Hello @bruce_karaffa ,
i am running simulation with Vivado Simulator (But also runned in Ultrascale+ FPGA). I cannot understand. When i run example tb in simulation eveything seems ok for one impulse reponse. In this case i have an interpolation filter x2 and after a decimation x2. Filters seems to "delay" its input when tvalid asserts (some samples seems to be zero in the beginning of tvalid). Do i need some FIFO's? the sampling rate and clock rate are the same.. In my receiver's system i have some errors in the last data of the incoming stream... Below i uploaded an image with the simulation, the blue annotation is the valid signal with the data in the input of the filter (output of the transmitter) and the red is the output of the interpolation x2 filter. Do you think these zeros are normal response of interpolation or maybe not? What else should be wrong from my side?
I feel the filter needs more time to output the last data (they are not shown here this is the beginning). My clock period is 32ns..