Programmable Logic Overview
The evolution of programmable logic: PAL, PLA, GAL, CPLD, and FPGA.
Before FPGAs, engineers had limited options for custom digital logic: design an expensive ASIC or wire together standard ICs on a breadboard. Programmable logic devices (PLDs) bridged this gap, allowing users to configure logic in the field. From simple PALs to complex FPGAs, each generation offered more flexibility and capacity.
Objectives
- Trace the evolution from PAL → PLA → GAL → CPLD → FPGA
- Explain the AND-OR array structure of PLDs
- Compare CPLDs and FPGAs in terms of architecture and use cases
- Understand when to use programmable logic vs discrete ICs vs ASICs
- Identify key manufacturers and product families
Key Takeaways
- PAL → PLA → GAL: early programmable AND-OR arrays for simple logic
- CPLD: multiple PLD blocks + routing, non-volatile, predictable timing
- FPGA: millions of configurable logic blocks, most flexible
- ASIC: highest performance per watt, only economical at high volume
- Choose based on: complexity, volume, time-to-market, power, cost
Applications
- Glue Logic: CPLDs replace handfuls of 74HC ICs for board-level logic.
- ASIC Prototyping: FPGAs prototype chip designs before expensive fabrication.
- Low-Volume Production: FPGAs cost-effective when production volume is under 10K-100K units.
- Legacy System Replacement: CPLDs and FPGAs replace discontinued custom ICs.
Practice Problems
Problem 1: A design needs 500 equivalent gates with instant-on capability. CPLD or FPGA?
Problem 2: Why is PLA more flexible than PAL?
Problem 3: An FPGA design must be in production at 1 million units. Should you keep the FPGA or move to ASIC?
Problem 4: What does "non-volatile" mean for a CPLD vs FPGA?