FPGA

What Is FPGA

By CourseTron Team ·  7 min read ·  Updated Oct 2026 💬 𝕏 in f
Table of Contents
    ? Print / Save as PDF

    In short: An FPGA (Field-Programmable Gate Array) is a chip full of configurable logic blocks and programmable wiring that you reconfigure after manufacturing to become almost any digital circuit you can describe in Verilog or VHDL.

    Ask ten engineers "what is an FPGA?" and you get ten metaphors. The one that actually survives a technical interview is this: an FPGA is a sea of tiny programmable truth tables (LUTs), flip-flops, and a routing fabric that lets you wire them together into arbitrary hardware. Unlike software on a CPU, the thing you build is the circuit, and it runs in true parallel. This article unpacks what that means, how LUTs and CLBs actually work, and how an FPGA differs from a microcontroller and an ASIC.

    FPGA full form and the core idea

    FPGA stands for Field-Programmable Gate Array. "Field-programmable" means the logic is configured after the chip leaves the fab, in the field, by loading a bitstream, not by taping out silicon. "Gate array" is a historical nod to its ancestors: arrays of uncommitted gates that a designer committed to a function. A modern FPGA from AMD (Xilinx) or Intel (Altera) holds hundreds of thousands to several million logic cells, thousands of DSP multiplier blocks, embedded RAM, and high-speed transceivers, all sitting idle until you configure them.

    A mid-range FPGA such as an AMD Artix-7 XC7A100T contains roughly 101,000 logic cells, 240 DSP slices, and about 4.8 Mb of block RAM. A large data-center part like a Versal or Stratix 10 scales into the millions of cells.

    Inside the chip: LUTs, CLBs and the routing fabric

    The atomic unit of computation is the Look-Up Table (LUT). A 6-input LUT is literally a 64-entry, 1-bit memory: you store the truth table of any Boolean function of 6 inputs, and the 6 inputs form the address. Want a 6-input XOR? Fill the 64 bits with the XOR truth table. Want a full adder's sum bit? Store that pattern instead. The same silicon becomes any function by changing 64 stored bits.

    LUTs are grouped with flip-flops, carry-chain logic, and multiplexers into a Configurable Logic Block (CLB) (AMD terminology; Intel calls the equivalent a Logic Array Block built from Adaptive Logic Modules). The flip-flops give you state and let you build pipelined, clocked designs. Surrounding every CLB is the programmable interconnect: a grid of wires and switch boxes whose connections are set by configuration SRAM bits. Routing is often the scarce resource. A design can fit for logic yet fail timing because signals take long detours through congested switch boxes.

    FPGA fabric: logic blocks tied by programmable routingCLBLUTs + FFsCLBLUTs + FFsDSP18x27 multCLBBlock RAMCLBswitch boxswitch boxCourseTron · coursetron.com
    Logic blocks are generic; the orange switch boxes decide who talks to whom. Configuration SRAM holds both the LUT contents and every routing choice.

    How a LUT computes: watch the bits move

    The animation below shows the essence: inputs select one stored bit out of the LUT memory, and that bit is the output. Change the 64 stored bits and the same hardware computes a different function entirely, with no re-fabrication.

    A LUT is addressable memory: inputs pick the output bit000011101110stored truth table (XOR)address = (in0, in1)cycles 00, 01, 10, 11outCourseTron · coursetron.com
    The orange highlight is the selected address walking through the table. Whatever bit it lands on is the LUT output, computed in one combinational delay.

    The design flow: from HDL to bitstream

    You describe behaviour in Verilog, VHDL, or SystemVerilog, then the vendor toolchain (AMD Vivado, Intel Quartus, or an open flow like Yosys plus nextpnr) turns it into silicon configuration through these stages:

    • Synthesis maps your RTL onto LUTs, flip-flops, DSPs and RAM.
    • Place and route assigns each element to a physical CLB and chooses the switch-box paths between them.
    • Static timing analysis checks every path meets your clock constraint; a 200 MHz clock allows just 5 ns for logic plus routing.
    • Bitstream generation emits the configuration file you load over JTAG or from flash at power-up.

    Functional verification before hardware is usually done with simulators such as Siemens Questa/ModelSim, Synopsys VCS, or Cadence Xcelium, the same industry tools used for ASIC sign-off. That overlap is why FPGA skills transfer directly into chip-design careers.

    Design flow: from HDL to bitstreamHDL / RTLVerilog/VHDLSynthesisLUTs, FFsPlace & routeCLBs, routesTiming (STA)5 ns budgetBitstreamJTAG / flashtiming fails: adjust and re-runCourseTron · coursetron.com
    The vendor flow in order: synthesis, place and route, static timing analysis, then bitstream generation.

    An FPGA runs its logic in genuine parallel. A 1,024-tap FIR filter can execute all taps every clock cycle; a CPU would loop through them sequentially. This is why FPGAs dominate low-latency trading, 5G baseband, and real-time video.

    FPGA vs microcontroller vs ASIC

    These three are constantly confused. The crisp distinction: a microcontroller runs software on fixed hardware, an ASIC is fixed hardware, and an FPGA is reconfigurable hardware sitting in between.

    DimensionMicrocontrollerFPGAASIC
    What you changeSoftware (C/firmware)The hardware itself (HDL)Nothing after tapeout
    ExecutionSequential instructionsMassively parallelMassively parallel
    NRE / upfront costNear zeroLow (dev board)Very high ($1M+ masks)
    Unit cost at volumeLowHighLowest
    Power efficiencyGoodModerateBest
    Time to first siliconMinutesHoursMonths

    The economics drive the choice. For a weekend robot, a microcontroller wins. For a product shipping ten million units, an ASIC's per-unit savings justify its multimillion-dollar mask cost. The FPGA owns the middle: low-to-mid volume, designs that need hardware parallelism, or products still evolving where you want to patch logic in the field. Many ASIC programs even prototype on FPGAs first, a practice detailed in our FPGA vs ASIC deep dive. If you are weighing a soft CPU inside the fabric against a dedicated controller, see FPGA vs microcontroller.

    For teams moving from prototype toward production silicon, professional design and verification support such as that offered by Avecas VLSI design services bridges the FPGA-to-ASIC gap with the same tool flows described above.

    Ready to write your first Verilog module and light up a real FPGA board? CourseTron's hands-on FPGA track takes you from LUTs to a working design on silicon. Explore the FPGA course →

    Frequently asked questions

    Is learning an FPGA harder than learning a microcontroller?

    It is a different mindset rather than strictly harder. With a microcontroller you think in sequential code; with an FPGA you think in concurrent hardware, where every line of RTL you write becomes a circuit that exists all the time. Engineers from a programming background find the parallelism the biggest adjustment.

    Do I need to know Verilog or VHDL to use an FPGA?

    For real designs, yes, one of them is essential. High-level synthesis tools can compile C/C++ to hardware, but understanding the underlying HDL and timing is what separates a working design from one that fails timing closure. Start with either language; the concepts transfer.

    Can an FPGA replace a GPU for AI?

    Sometimes. FPGAs excel at low-latency, custom-precision inference and are used in data centers for exactly that. GPUs usually win on raw throughput and ease of programming, so the answer depends on batch size, latency targets, and power budget.

    Why is an FPGA more expensive per unit than an ASIC?

    An FPGA carries all that programmable routing and spare LUTs you may never use, which costs silicon area and power. An ASIC bakes only the exact gates needed, so at high volume its per-chip cost is far lower despite enormous upfront mask costs.

    Advertisement