In short: A CPLD is a small, non-volatile, instant-on logic device with highly predictable timing for glue logic and control, while an FPGA offers vastly more capacity and flexibility for datapaths, DSP and SoC-class designs — pick a CPLD when you need determinism and simplicity, an FPGA when you need scale.
Programmable logic spans a wide range, but two families dominate the entry and mid tiers: the Complex Programmable Logic Device (CPLD) and the Field-Programmable Gate Array (FPGA). They are often lumped together because both let you describe hardware in Verilog or VHDL and reprogram the silicon, yet their internal architecture — and therefore the kinds of problems they solve well — could hardly be more different. Choosing wrongly costs you board space, power, boot time, or unit cost. This article breaks down the real engineering trade-offs.
Two architectures, two philosophies
A CPLD is built from a handful of function blocks (macrocells), each containing a programmable sum-of-products (AND-OR) array feeding a flip-flop, all wired together through a single central interconnect matrix. Because every signal crosses the same switch matrix exactly once, logic depth is shallow and uniform. A typical CPLD — say a Xilinx CoolRunner-II or an Intel MAX V — offers roughly 32 to 512 macrocells, enough for a state machine or address decoder, not a processor.
An FPGA abandons the product-term array entirely. It is a sea of small Lookup Tables (LUTs), typically 4-to-6 input SRAM-based tables, each paired with a flip-flop to form a logic cell. Thousands to millions of these cells sit in a routing fabric of programmable switches, interspersed with hard blocks: Block RAM, DSP48/multiplier slices, clock managers (PLL/MMCM), high-speed SerDes transceivers, and sometimes hard ARM cores (Xilinx Zynq, Intel Agilex SoC). This is why an FPGA can host a RISC-V soft core, a video pipeline, or a 100 GbE MAC, while a CPLD cannot.
Capacity: orders of magnitude apart
This is the starkest difference. A large CPLD tops out near 1,500 logic elements. A mainstream FPGA like the AMD/Xilinx Artix-7 ranges from about 33,000 to 215,000 logic cells; high-end devices such as Versal or Intel Stratix 10 exceed several million. If you count usable gates, a CPLD lives in the thousands-to-tens-of-thousands range; an FPGA in the millions-to-billions range.
Rule of thumb: If your design needs embedded RAM, hardware multipliers, or more than a few thousand logic cells, you have already outgrown every CPLD on the market — reach for an FPGA.
Non-volatility and boot time
CPLDs store their configuration in on-chip non-volatile Flash or EEPROM. They are "instant-on": logic is valid within microseconds to a few milliseconds of power-up. That makes them ideal as the first thing alive on a board — the power-sequencer, reset controller, or the device that loads everyone else.
Most FPGAs use SRAM configuration cells, which are volatile. On power-up the FPGA must load its bitstream from an external SPI Flash or via JTAG, taking tens of milliseconds to seconds depending on bitstream size and clocking. This is why a CPLD often sits beside an FPGA on the same board, holding reset until the FPGA finishes configuring. (A few Flash-based FPGA families like Microchip/Microsemi IGLOO and Lattice MachXO blur this line, offering FPGA-style fabric with non-volatile, instant-on behavior.)
Timing predictability
Because a CPLD's logic always traverses one product-term array and one switch matrix, its pin-to-pin propagation delay (tPD) is fixed and specified in the datasheet — often a flat 4–7 ns regardless of how the logic is placed. Designers love this determinism for timing-critical glue logic.
An FPGA's delay depends entirely on placement and routing: the same function can take 2 ns or 12 ns depending on how far signals travel through the mesh. You rely on the vendor's static timing analysis (in AMD Vivado or Intel Quartus) and timing constraints (SDC/XDC) to close timing, and results can shift run-to-run. More power, more flexibility — but you must actively manage it.
Power, cost and board footprint
CPLDs draw little static power and some families (CoolRunner-II) are famous for microamp-class standby, making them attractive for always-on or battery circuits. They come in small, single-chip packages with no external configuration memory. FPGAs need a config Flash, careful power sequencing of multiple rails (core, I/O, transceiver), and generally dissipate far more — but they deliver throughput a CPLD cannot approach. Per-unit, small CPLDs can cost under a dollar; capable FPGAs run from several dollars into the thousands.
When to choose which
| Attribute | CPLD | FPGA |
|---|---|---|
| Logic capacity | ~32–1,500 LEs | ~10k to millions of cells |
| Configuration | Non-volatile (instant-on) | Mostly SRAM (needs external Flash) |
| Timing | Fixed, datasheet tPD | Place-and-route dependent |
| Hard blocks | None | BRAM, DSP, PLL, SerDes, CPUs |
| Best for | Glue logic, power seq, control | DSP, SoC, video, networking |
| Standby power | Very low | Higher |
Design pattern you will see often: a CPLD as the board's instant-on supervisor that sequences power and releases reset, paired with a large FPGA that handles the heavy lifting once configured.
If you are weighing programmable logic against a software-programmable controller instead, read our companion piece on FPGA vs microcontroller, and if you are picking a vendor toolchain, see the FPGA design flow in Vivado and Quartus. For a structured path from RTL to tape-in, our CourseTron VLSI courses walk through both device families hands-on. Teams needing a production design partner often engage Avecas for FPGA and ASIC design services.
Ready to build real hardware? The CourseTron FPGA & Digital Design track takes you from Verilog basics through timing closure on actual Artix-7 and MAX 10 boards. Enroll and ship your first synthesized design this month.
Frequently Asked Questions
Can an FPGA do everything a CPLD can?
Functionally yes — any CPLD design fits easily in a small FPGA. But you lose instant-on behavior and fixed timing unless you choose a Flash-based FPGA, and you add a configuration Flash and extra power rails. For a 100-gate address decoder a CPLD is simpler and cheaper.
Why are CPLDs still used in 2026?
Instant-on non-volatility, deterministic timing, very low standby power, and single-chip simplicity keep CPLDs (and Flash-FPGA hybrids like MachXO and MAX 10) alive as board supervisors, I/O expanders and power sequencers.
Are CPLDs and FPGAs programmed the same way?
Both accept Verilog/VHDL through vendor tools (Vivado, Quartus, Lattice Diamond, Libero). The front end is similar; the back-end mapping differs — product terms for CPLDs, LUT packing and routing for FPGAs.
Which is better for learning digital design?
Start on an FPGA board. Its capacity lets you build counters, UARTs, and soft CPUs, and the toolchain skills transfer directly to industry work.