Arquitectura de dispositivos lógicos programables complejos (CPLD) y sus aplicaciones

El proceso de diseño del hardware digital se ha transformado intensamente en los últimos años. Así, se pueden implementar pequeños circuitos digitales utilizando PALs y PLAs. Cada dispositivo se utiliza para implementar diversos circuitos que no necesitan más que el número de términos i/ps, o/ps y productos que ofrece el chip específico. Estos chips son adecuados para tamaños bastante modestos, y normalmente admiten un número mutuo de entradas y salidas no superior a 32. Para el diseño de estos circuitos que necesitan más entradas y salidas, se pueden emplear numerosos PLA/ PAL o bien utilizar un tipo de chip más elegante llamado CPLD (dispositivo lógico programable complejo). Un chip CPLD incluye varios bloques de circuitos en un solo chip con recursos de cableado interior para unir los bloques de circuitos. Cada bloque de circuitos es comparable a un PLA o un PAL.


¿Qué es un dispositivo lógico programable complejo?

El acrónimo de CPLD es «Dispositivos lógicos programables complejos», es un tipo de circuito integrado que los diseñadores de aplicaciones diseñan para implementar hardware digital como los teléfonos móviles. Pueden manejar diseños más complejos que los SPLD (dispositivos lógicos programables simples), pero ofrecen menos lógica que los FPGA (matrices de puertas programables en campo).Los CPLD incluyen numerosos bloques lógicos; cada uno de los bloques incluye entre 8 y 16 macroceldas. Como cada bloque lógico ejecuta una función específica, todas las macrocélulas de un bloque lógico están totalmente conectadas. Dependiendo del uso, estos bloques pueden o no estar conectados entre sí.

Dispositivo lógico programable complejo

La mayoría de los CPLD (dispositivos lógicos programables complejos) tienen macroceldas con una función de suma lógica y un FF (flip-flop) electivo. Dependiendo del chip, la función lógica combinatoria admite de 4 a 16 términos de producto con abanico inclusivo. Los CPLD también difieren en cuanto a los registros de desplazamiento y las puertas lógicas. Por este motivo, se pueden utilizar CPLDs con un gran número de puertas lógicas en lugar de FPGAs. Otra especificación de los CPLD es el número de términos de producto que puede realizar una macrocélula. Los términos de producto son el producto de señales digitales que ejecutan una función lógica específica.

Lee:  funcionamiento del aislador de 4 polos y sus especificaciones

Los CPLD están disponibles en varias formas de encapsulado de CI y familias lógicas. Los CPLD también difieren en cuanto a la tensión de alimentación, la corriente de funcionamiento, la corriente de espera y la disipación de energía. Además, se pueden obtener con diversas cantidades de memoria y varios tipos de soporte de memoria. Normalmente, la memoria se expresa en bits/megabits. El soporte de memoria consta de ROM, RAM y RAM de doble puerto. También consta de CAM (memoria direccionable por contenido), así como de memoria FIFO (first-in, first-out) y LIFO (last-in, last-out).

Arquitectura del dispositivo lógico programable complejo

Un dispositivo lógico programable complejo consta de un grupo de FBs (bloques funcionales) programables. Las entradas y salidas de estos bloques funcionales están conectadas entre sí mediante una GIM (matriz de interconexión global). Esta matriz de interconexión es reconfigurable, por lo que podemos modificar los contactos entre los bloques funcionales. Habrá algunos bloques de entrada y salida que nos permitirán unir el CPLD con el mundo exterior. La arquitectura del CPLD se muestra a continuación.

En general, el FB programable se parece a la matriz de puertas lógicas, donde una matriz de puertas AND puede programarse y las puertas OR son estables. Pero, cada fabricante tiene su forma de pensar para diseñar el bloque funcional. Se puede encontrar un o/p programado operando las señales de retroalimentación obtenidas de las salidas de las compuertas OR.

Arquitectura del CPLD
Arquitectura del CPLD

En la programación de CPLD, el diseño se codifica primero en lenguaje Verilog o VHDL, una vez que el código está (simulado y sintetizado). Durante la síntesis, el modelo de CPLD (dispositivo de destino) se selecciona a mano y se produce una lista de redes de mapeo basada en la tecnología. Esta lista puede ajustarse a la arquitectura genuina del CPLD mediante un proceso de colocación y enrutamiento, que suele conseguirse con el software de colocación y enrutamiento propio de la empresa CPLD. A continuación, el operador realizará algunos procesos de confirmación. Si todo está bien, utilizará el CPLD, si no, lo reordenará.

Lee:  Funcionamiento del circuito de diodos de protección y su aplicación

Aspectos de la arquitectura del CPLD

Al considerar un dispositivo lógico programable complejo para su uso en el diseño, se pueden tener en cuenta algunas cuestiones de arquitectura siguientes

  • La tecnología de programación
  • La capacidad del bloque de funciones
  • La capacidad de E/S

Algunas de las familias de CPLD de diferentes distribuidores son

  • Familias Altera MAX 7000 y MAX 9000
  • Familias ATF y ATV de Atmel
  • Familia LSI de Lattice isp
  • Familia MACH de Lattice (Vantis)
  • Familia Xilinx XC9500
Familias de CPLD
Familias de CPLD

Aplicaciones del CPLD

Las aplicaciones de los CPLD son las siguientes

  • Los dispositivos lógicos programables complejos son ideales para aplicaciones de control crítico de alto rendimiento.
  • Los CPLD pueden utilizarse en diseños digitales para realizar las funciones de cargador de arranque
  • El CPLD se utiliza para cargar los datos de configuración de una matriz de puertas programables de campo desde una memoria no volátil.
  • Generalmente, se utilizan en pequeñas aplicaciones de diseño como la decodificación de direcciones
  • Los CPLD se utilizan con frecuencia en muchas aplicaciones, como en dispositivos portátiles sensibles a los costes y que funcionan con baterías, debido a su bajo tamaño y al uso de poca energía.

Así pues, todo esto es sobre la arquitectura de los dispositivos lógicos programables complejos y sus aplicaciones. Esperamos que hayas comprendido mejor este concepto. Además, si tienes alguna duda sobre este concepto o para llevar a cabo cualquier proyecto eléctrico y electrónico, por favor, danos tus valiosas sugerencias comentando en la sección de comentarios de abajo. Aquí tienes una pregunta, ¿cuál es la diferencia entre CPLD y FPGA?

Créditos de las fotos:

Lee:  Optimización del reloj del convertidor analógico-digital: una perspectiva de ingeniería de pruebas
Javired
Javired

Deja una respuesta

Tu dirección de correo electrónico no será publicada.