Visión General de la Lógica Programable

La evolución de la lógica programable: PAL, PLA, GAL, CPLD y FPGA.

Antes de los FPGA, los ingenieros tenían opciones limitadas para lógica digital personalizada: diseñar un costoso ASIC o conectar circuitos integrados estándar en una protoboard. Los dispositivos lógicos programables (PLD) cerraron esta brecha, permitiendo a los usuarios configurar la lógica en campo. Desde los simples PAL hasta los complejos FPGA, cada generación ofreció más flexibilidad y capacidad.

Objectives

  • Trazar la evolución desde PAL → PLA → GAL → CPLD → FPGA
  • Explicar la estructura de matriz AND-OR de los PLD
  • Comparar CPLD y FPGA en términos de arquitectura y casos de uso
  • Comprender cuándo usar lógica programable frente a circuitos integrados discretos frente a ASIC
  • Identificar los principales fabricantes y familias de productos

Key Takeaways

  • PAL → PLA → GAL: matrices AND-OR programables tempranas para lógica simple
  • CPLD: múltiples bloques PLD + enrutamiento, no volátil, temporización predecible
  • FPGA: millones de bloques lógicos configurables, la opción más flexible
  • ASIC: mayor rendimiento por vatio, solo económico en alto volumen
  • Elegir según: complejidad, volumen, tiempo de salida al mercado, potencia, costo

Applications

  • Lógica de enlace: Los CPLD reemplazan puñados de circuitos integrados 74HC para lógica a nivel de placa.
  • Prototipado de ASIC: Los FPGA prototipan diseños de chips antes de la costosa fabricación.
  • Producción de bajo volumen: Los FPGA son rentables cuando el volumen de producción está por debajo de 10K-100K unidades.
  • Reemplazo de sistemas heredados: Los CPLD y FPGA reemplazan circuitos integrados personalizados descontinuados.

Practice Problems

Problem 1: Un diseño necesita 500 compuertas equivalentes con capacidad de encendido instantáneo. ¿CPLD o FPGA?

Problem 2: ¿Por qué el PLA es más flexible que el PAL?

Problem 3: Un diseño FPGA debe estar en producción a 1 millón de unidades. ¿Debería mantener el FPGA o pasar a ASIC?

Problem 4: ¿Qué significa "no volátil" para un CPLD frente a un FPGA?