Depends on how many points you need for the FFT. The more points you buffer, the better your frequency resolution will be but you will require much more memory. Suppose you use a 4096 point buffer then you will have 50000/4096 = 12.2Hz resolution. But you also need to consider the bit size of your values. So if you have 8bit values, 8 channels, and 4096 point /channel then you will need 32kB of RAM to hold these data points. Unfortunately, this is still way before all the calculations that occur in a DFT. Please review this paper: https://www.researchgate.net/publication/235995761_the_fast_fourier_transform_in_hardware_a_tutorial_based_on_an_fpga_implementation