Block RAM (BRAM)

Dedicated on-chip memory blocks.

Block RAM is dedicated SRAM embedded in the FPGA fabric — 36 Kb blocks on AMD/Xilinx, 20 Kb M20K on Intel, 18 Kb EBR on Lattice ECP5. Unlike external DRAM it's single-cycle, dual-portable, and available in aggregate at terabytes per second, which is why FIFOs, caches, lookup tables and neural-network weights live there.

Each block supports fixed aspect ratios (e.g. 4Kx9 or 1Kx36), and your memory is tiled from whole blocks — a 4Kx10 memory costs two blocks, not 1.1. The BRAM estimator finds the cheapest tiling. Small memories synthesize into LUTs instead ("distributed RAM"); huge ones go to UltraRAM or external DDR.

More terms

Bitstream · Clock Domain Crossing (CDC) · Constraint · DSP Slice · Flip-Flop · Fmax · HLS (High-Level Synthesis) · LUT (Lookup Table) · Metastability · Place & Route · PLL / MMCM · Setup & Hold Time · Soft-Core CPU · Synthesis · Testbench · Timing Closure · Transceiver (SerDes)