Whist BRAM is a natively dual port RAM, there are other RAMs found in FPGA that are worth mentioning. Using Xilinx as an example: The distributed RAM reuses LUTs. Each LUT is already a 6 address, 1 bit wide ROM that gets programmed by the bitstream. More @Wikipedia
Hover over any link to get a description of the article. Please note that search keywords are sometimes hidden within the full article and don't appear in the description or title.