Différence entre CPLD et FPGA Différence entre

Anonim

vs FPGA

Les CPLD (Complex Programmable Logic Device) et les FPGA (Field Programmable Gate Array) sont deux dispositifs logiques qui commencent à se brouiller en raison des améliorations technologiques et de l'introduction de leurs fonctionnalités à l'autre. La principale différence entre les FPGA et les CPLD est la complexité ou le nombre de portes logiques contenues dans chacun. Bien que les nombres réels puissent varier considérablement d'un modèle à l'autre, les CPLD peuvent contenir de quelques milliers de portes à des dizaines de milliers. En comparaison, les FPGA ont des dizaines de milliers à quelques millions. En raison de l'énorme différence dans le nombre de portes, il est facile de dire que vous pouvez construire une logique plus complexe avec les FPGA qu'avec les CPLD.

L'un des principaux avantages d'avoir un nombre extrêmement élevé de portes est la possibilité d'intégrer des fonctions de haut niveau dans la puce. Plutôt que de les créer vous-même, certains FPGA ont déjà des additionneurs, des multiplicateurs et de nombreux autres opérateurs pour les tâches les plus courantes. Le programmeur peut alors se concentrer sur l'objectif réel de la conception et ne pas avoir à se soucier de la mise en œuvre de telles fonctions.

Il y a aussi une énorme différence entre les deux en ce qui concerne leur architecture. Les FPGA utilisent des LUT (Look-up Tables) alors qu'un CPLD utilise une somme de produits plus simple (aussi appelée une mer de portes). L'utilisation des LUT est avantageuse car elle permet de réaliser des économies significatives sur le temps de traitement car la puce n'aurait pas besoin de recalculer la somme des produits comme le font les CPLD. Les LUT fournissent également une interconnexion plus flexible entre les modules FPGA internes que ce dont un CPLD est capable.

La dernière différence majeure entre les deux est la mémoire non-volatile. Les tables LUT sont une forme de mémoire, mais elles ne persistent pas une fois le pouvoir supprimé. Les CPLD ont une mémoire non volatile intégrée dans les puces leur permettant de fonctionner immédiatement sans avoir besoin de ROM externe. Les CPLD sont même utilisés comme "chargeur de démarrage" pour les FPGA. Comme déjà mentionné au début de cet article, la ligne entre les caractéristiques commence à s'estomper. Pour éliminer le besoin de «chargeurs de démarrage», les fabricants de FPGA ont commencé à intégrer de la mémoire non volatile dans leurs puces FPGA; rendant ainsi cette caractéristique présente à la fois dans les CPLD et dans certains FPGA.

Résumé:

1. Les FPGA sont plus complexes que les CPLD.

2. Les FPGA ont plus de fonctions intégrées de haut niveau que les CPLD.

3. Les FPGA utilisent des tables de consultation tandis que les CPLD utilisent une somme de produits.

4. Les CPLD ont une mémoire non volatile, contrairement aux FPGA.