Son circuitos integrados programables por el usuario, con una arquitectura general pre-definida. En términos simples, podemos decir que contiene en su interior arreglos de compuertas OR, AND, flip-flops, registros, entre otros componentes.
En la siguiente imagen se muestra físicamente un dispositivo lógico programable (PLD), y en la segunda y tercera imagen se observan compuertas AND y OR, son miles las que tienen pero solo se muestran unas pocas.



Tipos de dispositivos lógicos programables
Existen en el mercado dos tipos diferentes de dispostivos lógicos programables, los llamados CPLD’s y los FPGA’s, físicamente se muestran como en la figura siguiente

Observe los dispositivos, compare con los componentes electrónicos que conoce. Observe las terminales o coloquialmente llamadas “patitas” de ambos dispositivos, ¿lo noto? las “patitas” no son como las comúnmente conocidas , estos componentes se fabrican con tecnología de montaje superficial (SMD por sus siglas en ingles, Sourface Mount Technology).
Aquí hacemos un parantesis para hablar de los empaquetados de los circuitos integrados, antes de ver a detalle los dos tipos de PLDs que hay en el mercado.
Empaquetado de un componente electrónico
El empaquetado de los componentes electrónicos se realiza usando dos tecnologías diferentes, la llamada tecnología atraves de orificio, o en ingles “Trough hole, que es la que conocemos normalmente, y la SMD (Sourface Mount Devices, dispositivos de montaje superficial.
Observe en las imágenes algunos tipos de empaquetados through hole y SMD
Empaquetados Through hole de algunos chips









Empaquetado SMD
Existen muchos más tipos de empaquetados pero no hablaremos más de ellos, solo basta con decir que todos los dispositvos lógivos programables son empaquetados en montaje superficial, una clara desventaja para quien no esta acostumbrado a esta tecnología.
Arquitectura de un Dispositivo Lógico Programable (PLD)
Se mencionó en párrafos anteriores, que los PLDs se forman por arreglos de compuertas lógicas, en la imagen, a la izquierda se muestran dos arreglos de compuertas AND y OR, es realmente una simplificación de cómo están por dentro los PLDs puesto que no se notan todas las conexiones, pero nos da una idea de su arquitectura.

Así están por dentro estos dispositivos, tienen fusibles de interconexión que en la imagen se muestra como un “nodo programable” donde el usuario puede dejarlo sin conectar o conectado para así formar las funciones lógicas deseadas,
Para terminar con esta parte, se muestra enseguida como se genera una ecuación lógica a partir de la conexión o desconexión de los nodos programables, observe la imagen en la parte de abajo incluso se muestra en círculos como referencia como se generó parte de la ecuación.

CPLDs y FPGA
Se mencionó parrafos arriba que existian en el mercado electrónico dos tipos de dispositivos lógicos programables, aqúi en esta sección ahondamos más acerca de ellos.
CPLD (Complex Programmable Logic Device, Dispositivos Lógicos Programables Complejos)
Los circuitos CPLD son dispositivos que integran los arreglos de compuertas como los platicados en el párrafo anterior y las llamadas macroceldas, que se pueden usar para configurar el chip con funciones lógicas más complejas. La imagen siguiente muestra una macrocelda de un CPLD

Observe la macrocelda contiene el arreglo de compuertas, flip-flops, multiplexores entre otros muchos elementos.
FPGA (Fiel Programmable Gate Array, Arreglo de compuertas programables en campo)
Es la última generación de dispositivos de lógica programable, los FPGA se caracterizan por altas densidades de compuertas, un FPGA de media gama tiene alrededor de 1 millón de compuertas, estos dispositivos son de alto rendimiento pues ofrecen velocidades de procesamiento muy altas, tienen un número grande de entradas y salidas y también Los fabricantes para simplificar tal densidad de compuertas muestran así el interior de un FPGA.

El FPGA entonces se agrupa en bloques lógicos (LB), bloques de entrada/salida (IOB) conectados entre ellos usando una matriz de interconexión, en la imagen se muestran unos pocos bloques lógicos pero cada FPGA tiene cientos de bloques como los mostrados.
Cada bloque, si se amplifica tiene los arreglos de compuertas y muchos más componentes parecidos a las macroceldas del CPLD, como se ve en la imagen que por cierto también está de forma simplificada.

Con lo anterior terminamos de ver la arquitectura de un FPGA y un CPLD, no se detalla más, pues no tiene caso, lo interesante ahora es conocer como interconectar las compuertas de los PLDs.
Miles de compuertas tienen los CPLDS, millones de compuertas tienen los FPGA, imagínese conectar un millón de compuertas, es ridículamente imposible. Justo el enlace para hacer lo anterior es el VHDL, lenguaje de Descripción de Hardware, con el nos permite conectar los millones de compuertas que tienen estos dispositivos.
Aquí terminamos esta lección, la siguiente hablará de los fabricantes de PLDs, y las aplicaciones de estos dispositivos, para terminar con esta unidad e iniciar con el VHDL.