If I want to process data in the order it arrives, it seems that a FIFO would be most appropriate; however, I want to look over the data multiple times (at least 20 times), so I am considering either rewriting to the FIFO when I read from it or using RAM, which I can read from many times.
The data are points and I want to compare them with another set of points to identify ones that are within a certain distance.
My question is what are the benefits of each in terms of complexity, time, usage of FPGA resources, etc? I plan on using a Xilinx FPGA (likely kintex 7) if that is relevant.
Thanks