Hello, I have been trying to implement s canning window algorithm using the HDL FIFO block to no avail, I constantly get results that are delayed and can't keep track of why that is, the push and pop don't seem to behave as I expect them to.
A scanning window for a 3x3 window for instance would use 3 FIFOs (with a register size equal to the row size of the input) connected to each other (first OUT into second IN, and second OUT to third IN), the elements of the matrix or map are stramed through the FIFOs, once they're full the last elemnt of each is popped, that's done three ti;es to generate a 3x3 window, then the same is done untill the FIFOs are empty. that's when the whole thing is shifted one row down sinc ethe first row elemnts are not present in the enxt windows (no padding is needed since it's valid 2D Convolution)0
Are there any good examples on this? or any advice on how to implement it efficiently?