Différence entre FPGA et CPLD

FPGA vs CPLD

Avec toutes les grandes améliorations technologiques, il se passe beaucoup de choses que la plupart des gens ne se soucient pas vraiment. Mais pour les ingénieurs et les développeurs de logiciels, les puces logiques numériques nécessitent beaucoup de réflexion.

Les FPGA et les CPLD sont deux des types de puces logiques numériques les plus connus. Quand il s'agit de l'architecture interne, les deux puces sont évidemment différentes.

FPGA, abréviation de Field-Programmable Gate Array, est un type de puce logique programmable. C'est une puce géniale car elle peut être programmée pour faire presque n'importe quel type de fonction numérique. L'architecture du FPGA permet à la puce d'avoir une capacité logique très élevée. Il est utilisé dans les conceptions qui nécessitent un nombre de portes élevé et leurs retards sont assez imprévisibles en raison de son architecture. Le FPGA est considéré comme «à grain fin» car il contient beaucoup de minuscules blocs logiques pouvant atteindre 100 000. Il s'agit de flip-flops, de logique de combinaison et de mémoire. Il est conçu pour des applications plus complexes.

D'autre part, les CPLD (Complex Programmable Logic Device) sont conçus en utilisant l'EEPROM. Il est plus approprié dans les petites conceptions de porte et puisqu'il a une architecture moins complexe, les retards sont très prévisibles et non volatils. CPLD est souvent utilisé pour des applications logiques simples. Il ne contient que quelques blocs de logique '' mais plus grands - cela peut atteindre 100. Cela dit, les CPLD sont considérés comme des dispositifs de type «gros grain». Les CPLD offrent une entrée beaucoup plus rapide de la durée de production en raison de son architecture plus simple, à «grain grossier».

Peut-être, en raison de son architecture beaucoup plus simple, les CPLD sont bon marché. Bien que moins chers s'ils sont achetés par porte, les FPGA sont plus chers, en particulier s'ils sont disponibles par paquet.

Travailler avec des FPGA nécessite des procédures spéciales car c'est basé sur la RAM. Pour programmer l'appareil, vous devez d'abord décrire la «fonction logique» à l'aide d'un ordinateur, soit en dessinant un schéma, soit en décrivant simplement la fonction sur un fichier texte. La compilation de la «fonction logique» est généralement requise à l'aide d'un logiciel. Il crée un fichier binaire à télécharger dans le FPGA. En effet, la puce va se comporter exactement comme vous l'avez demandé dans la 'fonction logique'.

Décider de ce qu'il faut utiliser, FPGA ou CPLD, dépend vraiment des objectifs de conception.

Résumé:

1. Le FPGA contient jusqu'à 100 000 blocs logiques minuscules tandis que le CPLD ne contient que quelques blocs de logique pouvant atteindre quelques milliers.

2. En termes d'architecture, les FPGA sont considérés comme des dispositifs à «grain fin» tandis que les CPLD sont des «céréales à grains grossiers».

3. Les FPGA sont parfaits pour les applications plus complexes tandis que les CPLD sont préférables pour les applications plus simples.

4. Les FPGA sont constitués de minuscules blocs logiques tandis que les CPLD sont constitués de blocs plus grands.

5. Le FPGA est une puce logique numérique basée sur RAM tandis que le CPLD est basé sur EEPROM.

6. Normalement, les FPGA sont plus chers tandis que les CPLD sont beaucoup moins chers.

7. Les retards sont beaucoup plus prévisibles dans les CPLD que dans les FPGA.