Block RAM and Distributed RAM in Xilinx FPGA
Xilinx FPGA Consist of 2 columns of memory called Block RAM or BRAM.
It is a Dual port memory with separate Read/Write port.
It can be configured as different data width 16Kx1, 8Kx8, 4Kx4 and so on.
BRAM can be excellent for FIFO implementation.