What is the minimum depth of an asynchronous FIFO and why that should be the minimum depth? I mean if there is any depth below which we cannot get an asynchronous FIFO.
2
That will only work if the clocks are asynchronous but the same frequency (and there is enough dead time to account for frequency drift between the clocks, unless they are locked), otherwise it needs to be 4 or greater depending on the fill/drain rate difference.
You need to study the fill/drain rate problem. That is the basis of any FIFO design depth calculation.