La diferencia entre CPLD y FPGA
Los dispositivos lógicos programables incluyen principalmente FPGA y CPLD es la abreviatura de Field Programmable Gate Array. CPLD es la abreviatura de Complex Promrammable Logic Device.
Desde la perspectiva de la historia del desarrollo. De los dispositivos lógicos programables, CPLD generalmente se refiere a un dispositivo basado en EEPROM que adopta una estructura de fase de producto, por lo que no es volátil y no requiere una ROM de configuración externa. Tiene confidencialidad y tiempos de programación limitados (que van de veces a. diez mil veces según diferentes estructuras) y otras características, y es adecuado para su uso en lógica de pegamento (como lógica de decodificación periférica a chips DSP) expansión IO conversión de nivel IO configuración de chip FPGA y otras aplicaciones como MAX y MAX de Altera chips de la serie XC y CoolRunner/II de Xilinx. Los chips de la serie ispMACH/Z de Lattice son todos CPLD. La capacidad del dispositivo varía de una macrocélula a otra.
FPGA se refiere principalmente a dispositivos basados en SRAM que utilizan tablas de búsqueda de cuatro entradas (LUT ). Debido a que la SRAM es volátil y pierde datos cuando se apaga, la FPGA requiere una ROM de configuración externa. Cuando se enciende, los datos de configuración de la FPGA se importan desde la ROM externa al chip FPGA y luego funciona. proceso de fabricación CMOS estándar y se puede actualizar con la última tecnología. También brinda beneficios a los usuarios como medida de la capacidad de FPGA. El indicador básico es una celda lógica (celda lógica o elemento lógico). La LUT está compuesta por una LUT programable y. un DFF programable para completar la función lógica combinacional
Y el DFF se utiliza para realizar la función de temporización. La capacidad de FPGA varía desde varios miles de unidades lógicas, desde 1 hasta cientos de miles de unidades lógicas, como. Los chips de las series Cyclone/II/III y Stratix/II/III de Altera, los chips de las series Xilinx Spartan/E/A/AN y Virtex/ son todos dispositivos FPGA
Con el desarrollo de la tecnología de chips, los conceptos de CPLD y FPGA se han fusionado. Por ejemplo, las empresas Altera y Lattice han clasificado dispositivos programables no volátiles de pequeña capacidad (menos de aproximadamente K unidades lógicas) en CPLD, como los chips de la serie MAXII de Altera y la serie MACH XO de Lattice que integran chips basados en SRAM. Unidades de almacenamiento FPGA y FLASH en un chip y son diferentes de los CPLD tradicionales
En resumen, podemos distinguir fácilmente FPGA y CPLD CPLD es un dispositivo programable no volátil con pequeña capacidad ( lt; sobre K LE). Otros dispositivos programables se pueden clasificar como FPGA
Comparación de sistemas
Aunque FPGA y CPLD son dispositivos ASIC programables, tienen muchas características similares, pero debido a la estructura. diferencia entre CPLD y FPGA, tienen sus propias características:
①CPLD es más adecuado para completar varios algoritmos y lógica combinacional, y FPGA es más adecuado para completar lógica secuencial. En otras palabras, FPGA es más adecuado para. estructuras con biestables ricos, mientras que CPLD es más adecuado para estructuras con biestables limitados y términos de productos ricos
②La estructura de cableado continuo de CPLD determina que su retardo de tiempo es uniforme y confiable, predictivo y el cableado segmentado La estructura de FPGA determina la imprevisibilidad de su retraso.
③FPGA tiene mayor flexibilidad que CPLD en la programación. CPLD modifica las funciones lógicas con circuitos internos fijos. La programación de FPGA se realiza principalmente cambiando el cableado de las conexiones internas. programarse bajo la puerta lógica, mientras que CPLD se programa bajo el bloque lógico
④FPGA
El nivel de integración es más alto que el de CPLD y tiene una estructura de cableado e implementación lógica más complejas
⑤CPLD es más conveniente de usar que la programación CPLD adopta la tecnología E PROM o FASTFLASH sin necesidad de memoria externa. chips Es fácil de usar y requiere información de programación FPGA El método de almacenamiento y uso de memoria externa es complicado
⑥CPLD es más rápido que FPGA y tiene mayor previsibilidad de tiempo. y los CLB utilizan interconexión distribuida, mientras que CPLD es programación lógica a nivel de bloque y la interconexión entre sus bloques lógicos está agrupada
⑦ En términos de método de programación, CPLD se basa principalmente en la programación de memoria E PROM o FLASH. Los tiempos pueden alcanzar decenas de miles de veces. La ventaja es que cuando el sistema está apagado, la información de programación no se pierde. CPLD se puede dividir en dos categorías: programación en el programador y programación en el sistema. La información de programación se pierde cuando el sistema se apaga. Los datos de programación deben reescribirse desde fuera del dispositivo cada vez que se enciende. La ventaja de ingresar a SRAM es que se puede programar cualquier número de veces y se puede programar rápidamente. programado en el trabajo para lograr una configuración dinámica a nivel de placa y nivel de sistema
⑧CPLD tiene buena confidencialidad y FPGA tiene mala confidencialidad
⑨Situación general El consumo de energía de CPLD es mayor que el de FPGA Y cuanto mayor sea el nivel de integración, más obvio
Con el aumento en la densidad de dispositivos lógicos programables complejos (CPLD), los diseñadores de dispositivos digitales pueden realizar diseños a gran escala flexibles y fáciles. Ingrese al mercado rápidamente. Muchos diseñadores han experimentado las ventajas de los CPLD, como la facilidad de uso, la sincronización predecible y la alta velocidad. Sin embargo, en el pasado, los diseñadores tuvieron que recurrir a FPGA y ASIC debido a las limitaciones de la densidad de CPLD. las ventajas de densidades de hasta cientos de miles de puertas. Beneficios que aporta CPLD
La estructura CPLD utiliza hasta los términos del producto en una ruta lógica, por lo que se puede predecir la velocidad de ejecución de diseños grandes y complejos. Por lo tanto, el funcionamiento del diseño original es predecible y confiable, y es fácil modificar el diseño. Los CPLD fáciles son inherentemente flexibles, la sincronización es simple, el rendimiento de enrutamiento es excelente, los usuarios pueden cambiar sus diseños manteniendo las mismas salidas de pines. tienen más E/S y son de menor tamaño en comparación con los FPGA.
Los sistemas de comunicación actuales utilizan muchos estándares, el dispositivo debe configurarse de acuerdo con las necesidades del cliente para admitir diferentes estándares. CPLD permite que el dispositivo realice los ajustes correspondientes. Admite múltiples protocolos y cambia funciones a medida que los estándares y protocolos evolucionan. Esto plantea grandes desafíos para los diseñadores de sistemas. Es conveniente porque pueden comenzar el diseño del hardware antes de que el estándar esté completamente maduro y luego modificar el código para cumplir con los requisitos del estándar final. Las características de latencia son mejores que las soluciones de software puro. Su costo NRE es menor que el de ASIC. Los productos más flexibles también pueden ser más flexibles. Las ventajas de la solución programable CPLD de rápida comercialización son las siguientes
●Rica. recursos lógicos y de memoria (la RAM de Cypress Delta K supera los Kb)
●Modelo de sincronización flexible con recursos de enrutamiento redundantes
●Es muy flexible para cambiar la salida del pin
●Se puede reprogramar después de instalarlo en el sistema
●Hay muchas E/S
● Lógica de control de memoria integrada con rendimiento garantizado
● Proporciona CPLD de un solo chip y soluciones PHY programables.
Debido a estas ventajas, el costo del modelado de diseño es bajo y se puede utilizar en cualquier etapa del proceso de diseño. Se pueden comercializar agregando diseños o cambiando las salidas de pines. rápidamente
Estructura de CPLD
CPLD es un dispositivo lógico programable con una estructura de grano grueso. Tiene ricos recursos lógicos (es decir, puertas lógicas y (alta proporción de registros) y enrutamiento altamente flexible. Los recursos CPLD están conectados entre sí, mientras que el FPGA está separado. Puede ser más flexible, pero incluye muchos puentes y, por lo tanto, es más lento que CPLD.
Dispuestos en forma de una serie de grupos, están conectados por canales de enrutamiento horizontales y verticales. Estos canales de enrutamiento transportan señales hacia y desde los pines del dispositivo y conectan grupos lógicos dentro del CPLD.
La razón por la que CPLD es. Se llama de grano grueso porque el grupo lógico es mayor que el número de rutas. El grupo lógico de CPLD es mucho más grande que la unidad básica de FPGA, por lo que FPGA es de grano fino
Bloques funcionales de CPLD <. /p> p>
La unidad más básica de CPLD es una macrocélula. Una macrocélula contiene un registro (que utiliza hasta varios términos de producto como entrada) y otras funciones útiles
Porque cada macrocélula utiliza un. producto Por lo tanto, los diseñadores pueden implementar una gran cantidad de lógica combinacional sin agregar rutas adicionales. Es por eso que CPLD se considera rico en lógica. Las macrocélulas están organizadas en forma de módulos lógicos (LB). es ejecutado por las macrocélulas una operación AND y luego una operación OR para implementar la lógica combinacional
Cada grupo lógico tiene un módulo lógico. Todos los grupos lógicos están conectados a la misma matriz de interconexión programable
¿Cuáles son los beneficios de CPLD?
¿Alto número de E/S?
Uno de los beneficios de CPLD es que puede proporcionar más números de E/S para una densidad de dispositivo determinada, a veces incluso tan alta como
Modelo de sincronización simple
Lo que hace que CPLD sea superior a otras estructuras programables es que tiene un modelo de sincronización simple y predecible. Este modelo de sincronización simple se debe principalmente a las características de grano grueso de CPLD. p>
La capacidad de CPLD para proporcionar una amplia gama de estados iguales dentro de un período de tiempo determinado, independientemente del enrutamiento, es clave para un diseño exitoso, ya que acelera no solo el trabajo de diseño inicial sino también el proceso de depuración del diseño.
Ventajas de la estructura CPLD de grano grueso
CPLD es una estructura de grano grueso, lo que significa que el camino hacia y desde el dispositivo pasa por menos interruptores y tiene un retraso correspondientemente menor. Por lo tanto, CPLD puede operar a mayor velocidad. frecuencias que un FPGA equivalente. Mejor rendimiento
Otro beneficio de CPLD es que su software se compila rápidamente porque su estructura de fácil enrutamiento hace que las tareas de diseño de ubicación sean más fáciles de realizar
Ventajas de FPGA de grano fino. estructuras
p>Los FPGA son estructuras de grano fino, lo que significa que hay retrasos de grano fino entre cada celda. Sin embargo, los FPGA son bastante rápidos si se empaqueta una pequeña cantidad de lógica a medida que aumenta la densidad del diseño. las señales deben enrutarse a través de muchos interruptores con retrasos. También aumenta rápidamente, lo que debilita el rendimiento general. La estructura de grano grueso de CPLD puede adaptarse bien a este cambio en el diseño
Pasadores de salida flexibles
p>La estructura gruesa de CPLD y las características de sincronización son predecibles, por lo que los diseñadores aún pueden cambiar los pines de salida más adelante en el flujo de diseño y la sincronización sigue siendo la misma
¿Por qué los CPLD y FPGA requieren un diseño lógico diferente? técnicas?
FPGA es un dispositivo de grano fino. Su unidad básica y estructura de enrutamiento son más pequeñas que las de CPLD y tiene muchos registros (es decir, su proporción de registros a puertas lógicas es alta), mientras que CPLD. es todo lo contrario. Es rico en lógica.
Muchos diseñadores prefieren CPLD debido a su simplicidad, facilidad de uso y alta velocidad. CPLD es más adecuado para aplicaciones con uso intensivo de lógica, como máquinas de estado y decodificadores de direcciones. lógica, mientras que FPGA es más adecuado para aplicaciones con uso intensivo de registros, como CPU y DSP. Diseño tipográfico
Nuevo empaque CPLD
CPLD viene en una variedad de densidades y tipos de empaque, incluido uno simple. -Soluciones de arranque automático de chips.
Memoria FLASH y CPLD integrados en un solo paquete No se requiere unidad de arranque externa, lo que reduce la complejidad del diseño y ahorra espacio en la placa Mayor densidad de dispositivos dentro de un tamaño de paquete determinado Disfrute de la distribución de pines Esto brinda a los diseñadores La conveniencia de amplificar el diseño sin cambiar la salida de pines en la placa
El consumo de energía de CPLD
El consumo de energía en espera de CPLD es menor que el de FPGA de la misma densidad
CPLD FPGA (corriente en espera (cuando Vcc es V))
K μA mA
K μA mA
K mA mA
Los CPLD son particularmente adecuados para aplicaciones alimentadas por baterías como dispositivos portátiles que requieren bajo consumo de energía y baja temperatura.
Muchos diseñadores están familiarizados con los PLD tradicionales y les gusta la flexibilidad y facilidad de uso inherentes a esta estructura, ofreciendo a los diseñadores de ASIC y FPGA una gran alternativa que les permite. implementar sus diseños en una estructura más simple y fácil de usar. Los CPLD ahora alcanzan densidades de cientos de miles de puertas y ofrecen el alto rendimiento requerido por los diseños de comunicaciones actuales. Los diseños de más de 10,000 puertas todavía requieren ASIC y FPGA, pero para los pequeños. En estos diseños, CPLD es una alternativa rentable
FPGA utiliza un nuevo concepto llamado Logic Cell Array (LCA), que incluye módulo de lógica configurable CLB (bloque lógico configurable) y módulo de entrada/salida IOB (entrada y salida). Bloque) y conexión interna (Interconexión). Las características básicas de FPGA son:
) Los usuarios que usan FPGA para diseñar circuitos ASIC no necesitan fundir chips. Puede obtener un chip adecuado después de la producción) FPGA puede ser utilizado como muestra piloto para otros circuitos ASIC totalmente personalizados o semipersonalizados
) FPGA tiene una gran cantidad de flip-flops y pines de E/S en su interior
) FPGA es uno de los dispositivos con el ciclo de diseño más corto, el menor costo de desarrollo y el menor riesgo en circuitos ASIC
) FPGA adopta un proceso CHMOS de alta velocidad con bajo consumo de energía y es compatible con el nivel CMOS TTL
Se puede decir que los chips FPGA son una de las mejores opciones para sistemas de lotes pequeños para mejorar la confiabilidad de la integración del sistema
Actualmente existen muchas variedades de FPGA, incluida la serie XC de XILINX, la serie TPC de TI, La serie FIEX de ALTERA y otras FPGA su estado de funcionamiento lo establece el programa almacenado en la RAM del chip, por lo que la RAM del chip debe programarse cuando se trabaja. El usuario puede utilizar diferentes métodos de programación según los diferentes modos de configuración. p>
Al encender el chip FPGA Lea los datos de la EPROM en la RAM de programación del chip. Una vez completada la configuración, la FPGA entra en estado de funcionamiento. Después de apagar la alimentación, la FPGA vuelve a un estado de funcionamiento. Chip blanco. La relación lógica interna desaparece, por lo que la FPGA se puede usar repetidamente. No es necesario un programador FPGA dedicado. Simplemente use una EPROM general. El programador PROM se puede usar para cambiar una EPROM. Función Diferentes datos de programación en el mismo FPGA pueden producir diferentes funciones de circuito, por lo que el uso de FPGA es muy flexible lishixinzhi/Article/program/qrs/201311/11075