How FPGA vendors count logic: LUT4, LUT6, ALMs, logic cells and logic elements
Every FPGA vendor measures logic capacity in a different unit, and most of them are marketing equivalents with their own conversion factor. This guide explains what each figure means and how The Gate Array turns them into one comparable number.
The physical building block: the look-up table
Programmable logic is made of look-up tables (LUTs): small memories that implement any Boolean function of their inputs. A 4-input LUT (LUT4) can implement any function of 4 signals; a 6-input LUT (LUT6) any function of 6. Lattice, Microchip, Efinix and Gowin build their fabric from LUT4s. AMD has used LUT6s since Virtex-5, and each LUT6 can also be split into two LUT5s that share inputs. Altera uses the adaptive logic module (ALM), a fracturable 8-input block that implements one 6-input function, or two independent functions of up to 4 inputs each, plus dedicated adders and registers.
Marketing units: logic cells, system logic cells and logic elements
To make families with different LUT sizes look comparable, vendors publish an "equivalent" figure. AMD's logic cells are LUT6 × 1.6 in the 7 Series; for UltraScale+ and Versal AMD uses system logic cells, which also count other resources and are about 2.2 × LUT6. Altera's logic elements are about 2.65 × ALMs. Lattice's Nexus logic cells are LUT4 × 1.2 according to its data sheets, and Avant uses 1.6. Efinix publishes logic elements; on Topaz they match AMD's logic-cell scale exactly. Each factor is reasonable for the vendor's own families, but they are not consistent with each other.
What The Gate Array uses: LUT4 equivalents
The finder converts the physical LUT count into LUT4 equivalents with one rule per architecture, and never uses the marketing units for comparison:
| Vendor | Logic block | Marketing unit | LUT4-eq. factor |
|---|---|---|---|
| AMD | LUT6 | Logic cells, System logic cells | × 1.6 |
| Altera | ALMs, LUT4 | Logic elements (LEs) | × 2, × 1 |
| Efinix | LUT4 | Logic elements (LEs) | × 1 |
| Gowin | LUT4 | — | × 1 |
| Lattice | LUT4 | Logic cells | × 1 |
| Microchip | LUT4 | Logic elements (LEs) | × 1 |
A LUT4 counts as one. A LUT6 counts as 1.6, the same factor AMD itself uses for logic cells. An ALM counts as 2, because it implements two independent 4-input functions. Where a vendor does not publish the LUT count (some Efinix devices), its logic elements are used and marked with ≈.
An example
The AMD XC7A35T has 20,800 LUT6s, which AMD sells as 33,280 logic cells; that is 33,280 LUT4 equivalents. The Lattice LFE5U-25 has 24,000 LUT4s, so 24,000 LUT4 equivalents. The Altera 5CEA4 has 18,480 ALMs (49,000 logic elements), which is 36,960 LUT4 equivalents. Read from the marketing figures alone, the Altera part would look twice as large as the Lattice one; in LUT4 equivalents the gap is much smaller.
Limits of any equivalence
No single number captures how much of a real design fits in a device. Utilization depends on the design (arithmetic, wide multiplexers and shift registers map very differently), on synthesis settings and on the other resources: DSP blocks, block RAM, routing and clocking. Use LUT4 equivalents to shortlist devices of a similar size, then confirm with a synthesis run in the vendor's tool, leaving 30–40 % headroom for timing closure and future changes.
Explore the numbers in the FPGA finder or download the full database.