Programmable Logic Devices: FPGA, CPLD, SPLD Explained

Classified in Design and Engineering

Written on in English with a size of 2.73 KB

Fixed-function Circuits

Fixed-function circuits. They are manufactured to implement a specified logic function that cannot be altered.

Programmable Logic

Programmable logic uses devices which are manufactured to be programmed and implement different logic functions (they are alterable).

SPLD, CPLD, FPGA

SPLD — Simple Programmable Logic Device. CPLD — Complex Programmable Logic Device. FPGA — Field Programmable Gate Array.

Common Programmable Array Combinations

  • PROM / RAM (Programmable Read Only Memory / Random Access Memory) — also known as a LUT (look-up table).
  • Fixed AND array and programmable OR arrayFPLA / PLA (Fully Programmable Logic Array / Programmable Logic Array). Both arrays, AND and OR, are programmable.

Programming Links and Technologies

Links: fuses, anti-fuses, EEPROM cells (similar to flash memory cells, but larger) or combinations of SRAM memory cells and transistors. The latter is volatile in opposition to the rest, which are nonvolatile.

CPLD Architecture and Features

  • Input/Output Blocks (IOB): Configure the interface to external circuits.
  • Function Blocks: They are configured (programmed) to obtain combinational and sequential functions. They contain a PLA or FPLA and 16 macrocells.
  • AIM Matrix: Internal interconnection system.
  • ISP (In-System Programming) and BSC (Boundary Scan Chain) controller: Allows programming (ISP) and testing (BSC) of the device directly on the board. This controller, embedded in the device, uses the JTAG (Joint Test Action Group or IEEE Std. 1149.1) serial communication protocol.

FPGA Architecture and Features

  • IOB (Input/Output Blocks): Configure the interface to external circuits.
  • CLB (Configurable Logic Blocks): They are configured (programmed) to obtain combinational and sequential functions.
  • Block RAM and Multipliers: Memories and hardware multipliers used to implement DSP (Digital Signal Processing) algorithms at high speed with a high degree of parallelism.
  • DCM (Digital Clock Manager): It manages and keeps correct synchronization of the clock signal, adjusting its phase, and multiplying or dividing its frequency.
  • Interconnection System: It connects all FPGA blocks (not shown).

Related entries: