Dispositivos Lógico de Programación Compleja CPLD

 Diaz Sandoval Adrián

CPLD.

Los dispositivos lógicos programables son elementos circuitales que permiten a los ingenieros simular, diseñar y procesar la información proveniente del mundo actual de forma digital, la tecnológica avanza a una era de desarrollo y aplicación que permite el intercambio casi instantáneo de información entre usuarios.  Un CPLD, cuyas siglas significan "Complex Programmable Logic Device", al igual que un FPGA es un tipo de lógica-programable, pero cuyo funcionamiento deriva de las ROMS, los PLA y los PAL. por lo que su arquitectura y funcionamiento es totalmente distinto al de los FPGA.

Diferencias de un FPGA y CPLD.

  1. Los FPGA están mejor preparados para simular hardware que depende del tiempo, ciclos de reloj, mientras que un CPLD está más pensado para lo que con circuitos combinacionales y que por tanto no dependen de una secuencia de pasos por ciclo.
  2. En un CPLD el tiempo que tarda una función sintetizada en el mismo será siempre el mismo, en un FPGA no. De ahí a que se utilicen los CPLD para diseñar circuitería combinacional.
  3. Los FPGA están pensados como productos de muy alta gama y por tanto con un alto coste. Los CPLD al contrario.
  4. Los FPGA pueden funcionar a velocidades de reloj mucho más altas que un CPLD.
  5. Un FPGA necesita ser reprogramado cada vez que es encendido, ya que se desprograma al apagarse, un CPLD funciona como una ROM y no va a perder su configuración al apagarse el dispositivo. Esto significa que los FPGA se basan en memoria RAM en su arquitectura y los CPLD en memoria ROM.

Funcionamiento de un CPLD

Un CPLD no es más que una serie de PLA como función de entrada, pero sus puertas OR no generan una salida, sino que su salida es distribuida a través de una matriz que conecta con otra serie de funciones PLA, las cuales pueden dar un resultado de salida o retroalimentar en dirección contraría.

En un CPLD por tanto, todas las funciones lógicas posibles se encuentran codificadas en los diferentes PLA que se van combinando para conseguir así la función final que se quiere obtener. En general en diseño de nuevos procesadores los CPLD se utilizan tanto para simular la lógica combinacional como la función fija, mientras que los FPGA se utilizan para la lógica secuencial y elementos más complejos como son por ejemplo las ALUs. Las unidades de descodificación instrucciones de CPUs y GPU se suelen implementar primero en CPLD, dado que en el fondo no son más que circuitos combinacionales.



Bibliografía:

  • Floyd Thomas L. (2006). Fundamentos de sistemas digitales. Madrid: Prentice-Hall, 2006. 9a ed.
  • Josep Roca. (2021, 27 de mayo). CPLD                                                                                          URL: https://hardzone.es/reportajes/que-es/cpld/



    • Comentarios

      Entradas populares de este blog

      ARREGLO LOGICO GENERICO (GAL)

      Función "rising_edge" para VHDL

      Señal del reloj en VHDL