Introduction
Lors de la conception de circuits imprimés, il est important de faire une distinction entre FPGA et CPLD, car les deux peuvent être très différents en termes de fonctionnalités et d'efficacité. PCBTok discutera ici en détail afin d'aider le client à déterminer lequel est le plus adapté à ses besoins en matière de circuits imprimés.
FPGA et CPLD
Il s'agit de circuits intégrés configurables, c'est-à-dire programmables pour exécuter certaines fonctions. Ces circuits intégrés comportent des blocs analogiques et numériques sous forme de matrice, programmables grâce à une mémoire non volatile programmable une seule fois (OTP). Cette fonctionnalité est offerte par les FPGA et les CPLD, ce qui constitue l'un de leurs principaux avantages. Ils proposent également des composants uniques, conçus pour des applications spécifiques, permettant ainsi de développer des solutions flexibles pour vos projets. La conception flexible de ces dispositifs leur permet d'intégrer des fonctions transformables au sein d'un même circuit. Cette polyvalence est essentielle pour les futurs systèmes électroniques, car elle leur confère une grande adaptabilité à diverses utilisations et conditions.

Qu'est-ce que le CPLD ?
CPLD est l'abréviation de « Complex Programmable Logic Devices » (dispositifs logiques programmables complexes). Il s'agit d'une puce semi-conductrice utilisée dans la mise en œuvre de systèmes numériques. Un CPLD est composé de blocs fonctionnels programmables, chacun contenant des macrocellules. Les macrocellules constituent les éléments de base d'un CPLD. Les entrées/sorties des blocs fonctionnels sont interconnectées par une matrice d'interconnexion globale (GIM). Cette matrice est reconfigurable car aucun contact direct entre les blocs fonctionnels ne peut être modifié. De fait, ces blocs fonctionnels sont analogues à un ensemble de portes logiques utilisées dans le développement de circuits.

Comment ça marche ?
Cette technologie utilise différents types de mémoire, comme les mémoires CMOS EPROM, EEPROM, Flash et SRAM, pour concevoir des circuits logiques compacts, rapides et économes en énergie. Ces dispositifs sont classés comme circuits intégrés à grande échelle (LSI) en raison de leur taille importante et de leur structure complexe. L'utilisateur de CPLD peut créer ses propres circuits logiques. La conception des systèmes numériques se déroule comme suit : un langage de description logiciel et matériel spécifique est utilisé pour définir le schéma. Ensuite, le code est programmé dans la puce à l'aide d'un câble de téléchargement ; cette opération est appelée programmation en système (ISP).
Composantes du CPLD
Examinons de plus près les éléments qui composent le CPLD et la manière dont chacun joue son rôle dans les performances globales de l'appareil.

Bloc fonctionnel
Dans un CPLD, le bloc fonctionnel est l'élément central de sa conception. Il possède un plan ET qui reçoit les entrées d'autres blocs fonctionnels ou de blocs d'E/S. Ces entrées sont ensuite combinées et acheminées vers un réseau OU, puis vers un multiplexeur (MUX). La sortie du MUX peut être directement transmise au bloc ou via une bascule temporisée. Ce bloc fonctionnel peut également comporter une entrée de réinitialisation générale, une fonction OU exclusif sélectionnable et une programmation de polarité ajustable.
Interconnect
Dans un CPLD, l'interconnexion est un ensemble de points de connexion programmables par lesquels les signaux peuvent être acheminés au sein du CPLD. Cette grande matrice vous permet d'acheminer les signaux précisément là où vous le souhaitez et où vous voulez qu'ils aillent, ce qui garantit que tous les composants du système s'interconnectent rapidement et efficacement.
Blocs d'entrée/sortie
Ainsi, à l'aide de blocs d'entrée/sortie, les signaux avec la tension et le courant requis sont transférés vers les broches CPLD. Cela permet d'éliminer les temps d'attente, de réduire le temps d'inactivité de l'appareil et d'ajouter des ressources supplémentaires.
Avantages du CPLD

Adaptabilité
En effet, vous pouvez reprogrammer les CPLD plusieurs fois, ce qui les rend très flexibles. Vous pouvez les modifier pour répondre à diverses exigences logiques en fonction des changements qui surviennent dans votre projet. Grâce à cette flexibilité, vous pouvez effectuer certaines modifications sans avoir à investir dans du nouveau matériel, ce qui prend du temps et coûte cher.
Consolidation
Les CPLD facilitent la conception de vos cartes car ils vous permettent d'intégrer plusieurs blocs logiques dans une seule puce. Cela vous évite d'avoir à acheter des composants supplémentaires, qui ne feraient qu'encombrer votre configuration. Moins de composants externes signifie moins de connexions à réaliser et moins de complications, ce qui vous fera gagner du temps et minimisera les erreurs.
Développement rapide
Les CPLD facilitent le développement de votre projet grâce à leur simplicité de conception et de prototypage . Programmables, ils vous permettent de modifier la conception et d'expérimenter de nouveaux concepts sans attendre le développement de nouveaux matériels. Ce cycle de développement rapide vous permettra de gagner du temps et de commercialiser votre produit plus rapidement.
Inconvénients du CPLD

Capacité restreinte
Les CPLD sont moins complexes que les FPGA. Cependant, les CPLD ont une densité limitée par rapport aux FPGA en termes de nombre de portes qu'ils peuvent contenir. Ceux-ci ont un nombre limité d'éléments logiques, vous pouvez donc vous retrouver limité dans le développement de conceptions complexes. Si votre projet implique beaucoup de logique sophistiquée, vous ne trouverez peut-être pas les CPLD utiles à votre projet d'une manière ou d'une autre.
Performance réduite
Les CPLD sont cependant généralement plus lents que les FPGA en termes de performances. Ces dispositifs ont généralement des fréquences d'horloge et des délais de propagation plus lents que les autres dispositifs. Cela peut être désavantageux dans les projets qui nécessitent un traitement fréquent des données dans un court laps de temps. Mais si vous avez besoin que votre conception soit exécutée rapidement, vous n'obtiendrez peut-être pas les meilleurs résultats avec les CPLD.
Moins de ressources
Les CPLD peuvent avoir moins de ressources et de fonctionnalités que les FPGA. Cette limitation peut limiter ce que vous pouvez faire avec votre conception d'une certaine manière. Cependant, si vous souhaitez des fonctions plus élaborées ou plus d'options, les CPLD peuvent ne pas convenir. Pour des projets plus complexes, vous pouvez obtenir une meilleure option avec les FPGA.
Application
Voici quelques applications populaires dans lesquelles vous pouvez voir des CPLD dans leurs PCB :
Contrôleur SDRAM
La conception présentée dans cet article comprend un contrôleur SDRAM simple qui fonctionne avec une SDRAM de 64 Mo et un bus de données de 16 bits et peut être implémenté à l'aide d'un CPLD. Ces fonctions comprennent la commande de la SDRAM, la génération du cycle de rafraîchissement et la sélection de la banque, des lignes et des colonnes, entre autres, et elles sont contrôlées par le CPLD. Il gère également la mise en mémoire tampon du bus de données. En raison de sa capacité d'E/S parallèles et d'un système de synchronisation fiable, le CPLD est parfait pour ces opérations principales. Cependant, pour les contrôleurs de mémoire plus développés, l'utilisation de FPGA est plus appropriée.

Contrôleur de LED
Un simple CPLD permet de gérer et de réguler un système de huit LED RGB pour l'éclairage. Il gère les entrées par bouton avec anti-rebond, permettant à l'utilisateur de choisir parmi différents modes. Il inclut également des signaux PWM pour contrôler la luminosité des LED et les allumer ou les éteindre selon les besoins. Le CPLD utilisé dans ce contrôleur possède huit à seize macrocellules, suffisantes pour toute la logique de fonctionnement. Grâce à ses E/S parallèles, il est possible de contrôler plusieurs LED simultanément. Le contrôle des formes d'onde PWM est assuré par des temporisateurs intégrés, ce qui garantit efficacité et performance.

Commande de moteur
Pour contrôler un contrôleur de moteur qui régule six moteurs, vous aurez besoin d'un CPLD de taille moyenne. Le CPLD gère le contrôle de la vitesse et de la direction de chaque moteur ainsi que les signaux d'activation des moteurs. Il reçoit également des informations sur la position et la vitesse et vérifie la tension analogique. Grâce aux macrocellules, le CPLD génère des signaux d'activation pour contrôler chaque moteur ainsi que des signaux pour les piloter. Dans le CPLD, il existe une logique supplémentaire pour vérifier les entrées et traiter les retours. Cette disposition permet d'avoir un bon contrôle des moteurs afin de ne pas produire de changements drastiques dans leur vitesse ou leur mouvement.

Qu'est-ce que le FPGA ?
Un système composé d'un réseau bidimensionnel de blocs logiques programmables interconnectés par des interconnexions programmables. Une fois qu'un FPGA a été créé, il peut être reprogrammé pour s'adapter à d'autres fonctions. Dans les FPGA actuels, il existe environ 330,000 1,100 blocs logiques et XNUMX XNUMX broches d'E/S. Dans ce cas, vous devez créer votre circuit et le configurer à l'aide du langage de description du matériel (HDL). Cela permet à un FPGA de fonctionner comme une porte simple telle que la porte AND ou comme un processeur multicœur. L'inconvénient est que ses configurations se trouvent dans la mémoire principale, ce qui signifie qu'en cas de coupure de courant, les configurations seront perdues.

Comment fonctionne le FPGA ?
Une structure qui se compose d'un réseau bidimensionnel de blocs logiques programmables et d'interconnexions programmables. Un FPGA est alors une puce programmable qui, une fois développée, peut être modifiée à d'autres fins. Les FPGA actuels sont dotés d'environ 330,000 1,100 blocs logiques et de XNUMX XNUMX broches d'E/S. Dans ce cas, vous devez concevoir votre circuit et l'implémenter à l'aide du langage HDL (Hardware Description Language). Cela permet à un FPGA d'agir comme une porte simple, par exemple la porte AND ou comme un processeur multicœur.
Composants du FPGA

Blocs logiques
Un FPGA possède des blocs logiques programmables qui jouent un rôle important dans le FPGA. Vous pouvez également définir et modifier les fonctions logiques pour votre utilisation. Il offre également la flexibilité de concevoir des circuits pour exécuter des fonctions spécifiques et des fonctions difficiles à exécuter.
Routage
La fonctionnalité d'un FPGA est réalisée grâce à un routage programmable. Il permet d'acheminer les signaux entre les différentes parties du FPGA de la manière la plus appropriée. Cela permet de créer et de modifier des liens en fonction des besoins de conception souhaités.
Blocs d'E/S
Ils contrôlent le flux de données entrant et sortant du FPGA, permettant ainsi la connexion avec d'autres appareils. Cela vous aide à garantir que votre FPGA dispose d'un moyen fiable d'interagir avec d'autres appareils et systèmes.
Avantages du FPGA

Adaptabilité
Le principal avantage des FPGA est la possibilité de définir et de redéfinir les fonctions logiques selon les besoins. Cela signifie que vous pouvez effectuer des ajustements en fonction des besoins particuliers ou même des changements de besoins. Que vous ayez besoin d'ajuster certaines fonctions ou de modifier votre conception, les FPGA vous aident à le faire sans trop d'efforts.
La rapidité de commercialisation
Les FPGA sont utilisés pour garantir que vous puissiez commercialiser vos idées le plus rapidement possible. Ils permettent un développement et des tests rapides d'applications « mashup » et une modification rapide pendant la phase de développement. Ils peuvent vous aider à expérimenter et à itérer vos idées plus fréquemment, ce qui, à son tour, vous aidera à raccourcir le calendrier de votre projet et le délai de mise sur le marché.
Optimisation
Les FPGA sont très efficaces dans la manière dont ils exécutent les tâches, car ils sont capables de le faire en peu de temps. Ils peuvent gérer les entrées de données et peuvent effectuer de nombreuses opérations en même temps. Ils sont particulièrement adaptés aux applications qui nécessitent plus de vitesse et de puissance de calcul afin d'obtenir de meilleurs résultats dans un court laps de temps.
Inconvénients du FPGA

Prix
Le principal inconvénient des FPGA est qu'ils sont souvent plus chers que les CPLD, en particulier lorsqu'ils sont utilisés dans des projets à grande échelle. En travaillant sur une conception à grande échelle, vous vous rendrez peut-être compte que les FPGA sont coûteux. C'est un élément à prendre en compte si le coût est un problème, car il s'agit d'une dépense supplémentaire.
Utilisation de la puissance
La plupart du temps, les FPGA consomment plus d'énergie que les CPLD. Il existe cependant un inconvénient : si la consommation d'énergie est un problème dans votre projet, cela peut poser problème. Lorsque plus d'énergie est consommée, plus de chaleur est produite et les factures d'énergie deviennent également plus élevées.
Complexité
La conception de FPGA est un peu plus complexe, car ces dispositifs fournissent de nombreuses ressources et canaux d'interconnexion. Cela signifie que vous êtes exposé à davantage d'options, ce qui est une bonne chose, mais le processus de conception devient plus complexe et compliqué.
Application
Voici quelques applications populaires dans lesquelles vous pouvez voir des FPGA dans leurs PCB :
Accélérateur de chiffrement
Ils ont également la capacité d'exécuter des algorithmes de chiffrement tels que AES, SHA et RSA. Pour mettre en œuvre un système capable de transférer des informations à grande vitesse, des moteurs de chiffrement/déchiffrement parallèles pour effectuer plusieurs opérations en même temps et une gestion des demandes à faible latence. Ces applications sont mieux traitées par les FPGA car ils sont plus rapides et plus efficaces que leurs homologues logiciels. La nature des FPGA en tant que structure reconfigurable signifie que plusieurs voies de chiffrement peuvent être établies, ce qui permet un débit élevé. De plus, les FPGA offrent un accès facile aux moteurs de chiffrement, ce qui conduit à la réduction de la latence. Ceux-ci sont parfaits pour accélérer les processus de chiffrement pour les raisons suivantes.

Traitement vidéo en temps réel
Les FPGA sont particulièrement adaptés au traitement vidéo en temps réel. Ils peuvent être utilisés pour le filtrage d'images, l'estimation de mouvement dans les codecs vidéo et la construction de pyramides d'images. Les FPGA sont capables de gérer ces tâches car ce sont des systèmes parallèles. Certains calculs tels que l'estimation de mouvement et le traitement des pixels sont effectués à l'aide de blocs DSP spéciaux dans les FPGA. Ils produisent également des pyramides d'images de la manière la plus efficace grâce à leur structure logique. Si vous implémentez un réseau neuronal pour la détection d'objets, ceux-ci peuvent être configurés selon la logique programmable du FPGA. Cette configuration garantit un traitement vidéo rapide et de haute qualité, ce qui fait des FPGA les plus adaptés à la gestion des tâches vidéo en temps réel.

Routeur réseau à haut débit
Lorsqu'il s'agit d'un routeur qui doit gérer jusqu'à 400 Gb/s, il est important de transférer efficacement les paquets et de rechercher rapidement dans la table de routage. Les FPGA y parviennent également grâce à l'utilisation de tranches DSP et de blocs logiques flexibles. Ils prennent également en charge la mise en forme du trafic et une bande passante mémoire élevée pour la mise en mémoire tampon des données. Parmi ces technologies, citons par exemple Ethernet 100 Gb/s, grâce à l'utilisation de plusieurs interfaces réseau, le transfert de données étant facilité par l'utilisation de blocs d'E/S. Cela les rend idéales pour une utilisation dans des systèmes réseau haut de gamme où des questions telles que les performances et la flexibilité sont essentielles. Vous obtenez la vitesse et la fiabilité nécessaires pour entreprendre des tâches réseau complexes.

Comparaison des fonctionnalités FPGA et CPLD
Le tableau suivant présente les caractéristiques les plus importantes des dispositifs logiques programmables FPGA et CPLD, y compris leurs possibilités, leur structure et leur utilisation.
| CPLD | FPGA | |
| Abréviation | Dispositifs logiques programmables complexes. | Réseaux de portes programmables par l'utilisateur. |
| Architecture | Classé comme à gros grains. Il possède des blocs logiques plus gros et plus généraux par rapport à ceux à grains plus fins. | Classé comme grain fin. Contient de nombreux petits blocs logiques très polyvalents qui permettent la construction de circuits complexes et élaborés. |
| Applications | Il s'agit de la solution idéale pour une utilisation de base uniquement. Ces appareils sont capables d'exécuter des fonctions fondamentales telles que des fonctions logiques ainsi que des systèmes de contrôle simples. | Idéal pour les applications complexes. Il est également utilisé dans les applications qui nécessitent une puissance de calcul plus importante ou qui comportent des opérations complexes, notamment le traitement de signaux de haut niveau ou la gestion de données à grande vitesse et l'étalonnage matériel personnalisé. |
| Basé sur | Les CPLD sont basés sur la technologie EEPROM, chaque cellule du CPLD est programmable. Il utilise un type de mémoire sur laquelle on peut écrire et effacer électriquement. | Ces FPGA sont basés sur la technologie RAM. La RAM est une mémoire volatile de votre ordinateur qui est utilisée pour stocker les données et les instructions actuellement utilisées par votre système. |
| Gestion de l'horloge | Ce que vous remarquerez en utilisant un CPLD, c'est que, en ce qui concerne la gestion de l'horloge, le CPLD n'est pas très puissant du tout. Il présente des moyens limités de gérer et de distribuer les signaux d'horloge par rapport aux autres systèmes complexes utilisés dans la conception de circuits numériques.
| Cela signifie que lorsque vous utilisez un FPGA, vous pouvez gérer l'horloge d'une bien meilleure façon. Il contient également des tuiles complexes pour la gestion de l'horloge et peut fonctionner avec plusieurs zones d'horloge et gérer le décalage ainsi que prendre en charge la synthèse de fréquence. |
| Prix | Moins cher. | Cher. |
| Définition | Puce qui permet de contrôler des appareils numériques. Les systèmes numériques utilisent deux symboles d'état, par exemple les chiffres binaires (0 et 1) dans leur représentation des informations, contrairement au système analogique qui utilise un continuum de valeurs. | Il peut être programmé après sa fabrication. Vous pouvez le configurer pour une tâche particulière et il effectuera cette tâche de la meilleure façon possible. |
| Méthodes de saisie de conception | Implémenté par des équations logiques pour la description de la fonction macrocellule avec un contrôle plus simple. | Utilise Vhdl ou Verilog pour un contrôle complet du comportement et de la disposition physique de la conception. |
| Densité | Faible densité à densité moyenne. | Densité moyenne à haute densité. |
| Outils de développement
| Lorsque vous travaillez avec des CPLD, vous utilisez des compilateurs logiques moins complexes qui offrent moins de possibilités de vérification. Cela est plus facile à mettre en œuvre dans le processus de développement, mais les outils utilisés à cette fin ne sont pas aussi puissants que ceux utilisés pour d'autres périphériques. | En utilisant FPGA, on peut disposer d'un certain nombre d'outils de développement qui peuvent aider à la simulation de la conception, à l'analyse du timing et à la dispositionCes outils vous aident à peaufiner votre conception pour la rendre plus efficace et adaptée aux besoins de votre projet. |
| Structure d'interconnexion | La structure d'interconnexion des CPLD est rigide. Les liaisons entre les éléments sont réalisées lors de la fabrication du produit et ne peuvent pas être ajustées. | La structure d'interconnexion des FPGA est par nature flexible. De cette façon, vous pouvez contrôler comment et où les composants sont connectés et comment ils peuvent échanger des informations. |
| Blocs logiques | Il comporte entre 100 et 1000 XNUMX portes logiques et est donc utile dans des fonctions moins importantes telles que la logique de collage. De tels blocs logiques peuvent être utilisés pour joindre différents composants d'un circuit et effectuer très bien des tâches moins compliquées. | Il dispose d'environ 100,000 XNUMX portes logiques. Vous pouvez l'utiliser pour concevoir des circuits complexes. Cette grande capacité permet d'effectuer des opérations plus complexes et de concevoir des conceptions complexes avec beaucoup de facilité et dans les plus brefs délais. |
| Performances | Les CPLD ont des performances faibles en raison de leur structure de base par rapport aux deux autres types de PLD. Bien qu'ils soient assez efficaces dans les opérations simples, ils peuvent ne pas être les meilleurs à utiliser dans une opération compliquée par rapport à d'autres choix. Il est basé sur le routage et en tant que tel, ses performances sont directement proportionnelles au routage. | Ces caractéristiques, associées à la disponibilité d'un grand nombre d'interfaces d'E/S, de blocs de mémoire dédiés et de blocs DSP pour le traitement du signal, font des FPGA des dispositifs à hautes performances. Ils offrent un débit stable qui n'a rien à voir avec le routage interne. |
| Consommation d'énergie | Souvent, ils consomment plus d'énergie que les autres options disponibles. Ils sont généralement plus puissants et peuvent consommer plus d'énergie, il peut donc être nécessaire d'en tenir compte lors de la conception. | Consommation d'énergie inférieure à celle des CPLD. Voici quelques-uns des avantages d'une meilleure efficacité énergétique, qui peuvent être importants pour vos conceptions. |
| Rapport des bascules | En comparant les CPLD aux FPGA, on constate que les CPLD ont un ratio de bascules plus faible. | Les bascules sont plus nombreuses dans les FPGA que dans les CPLD. Ce rapport de bascule plus élevé dans les FPGA se traduit par la capacité de stocker et de manipuler plus de données par rapport aux autres appareils. |
| Reconfigurabilité | Les CPLD offrent moins de possibilités de reconfiguration que les autres périphériques. Une fois qu'ils sont installés, vous disposez de choix limités quant à la manière de modifier leur comportement. | Les FPGA sont plus reconfigurables que les autres appareils du marché. Ils peuvent facilement modifier leur mode de fonctionnement, même après avoir été installés pour fonctionner d'une certaine manière. |
| Sécurité | Ils ont des caractéristiques qui les rendent difficilement affectés par certaines formes d’attaque. | Ils peuvent être plus exposés à certaines formes d’attaques. |
| La structure ressemble à | La structure d'un CPLD est presque identique à celle du PAL (Programmable Array Logic). Tout comme les PAL, les CPLD sont utilisés pour configurer et implémenter des signaux numériques et n'ont pas la capacité de stocker des informations. | La structure d'un FPGA ressemble à un réseau de portes, également appelé réseau logique non validé (ULA). Comme les réseaux de portes, les FPGA offrent des fonctions logiques personnalisables et peuvent être utilisés à différentes fins. |
| Volatilité | Non volatile. Les données ne sont pas effacées lorsque l'alimentation est coupée, vos données sont donc sauvegardées. Lorsque l'appareil est éteint, vous ne perdez aucune information ni aucun paramètre de configuration qu'il contient. | Instable et risque de perdre des données en cas de coupure de courant. Si vous devez charger la configuration ou les données à chaque mise sous tension du FPGA, vous devrez le faire. |

Choisir entre CPLD et FPGA
Il y a certains facteurs à prendre en compte lors du choix entre CPLD et FPGA. Voyons maintenant comment chaque technologie fonctionne par rapport aux différentes exigences et vous aider à sélectionner la meilleure pour le travail.
Taille et complexité de la conception
Il existe quelques facteurs qui peuvent aider à choisir entre CPLD et FPGA : il s'agit de la taille et de la complexité de la conception du PCB. Si vous avez une petite conception avec peu d'éléments logiques et des fonctionnalités simples, alors un CPLD répondra bien à vos besoins. Il est bon pour de telles applications. Mais si votre projet est plutôt gros et implique des opérations plus compliquées, il peut être plus efficace d'utiliser un FPGA.
Besoins en performances
Lorsqu'on compare les CPLD et les FPGA, il est essentiel de considérer les performances. Les CPLD présentent généralement une fréquence d'horloge maximale inférieure et un temps de propagation plus long que les PLD de base. De ce fait, ils sont moins adaptés aux applications à haute vitesse. En revanche, les FPGA sont généralement conçus pour fonctionner à haute vitesse et gèrent aisément les contraintes de synchronisation. Si votre projet requiert un traitement en temps réel, les FPGA sont plus appropriés que les microcontrôleurs.
Limites de puissance
Les CPLD sont connus pour consommer moins d'énergie, à la fois statique et dynamique, que les FPGA. En ce qui concerne l'utilisation de l'énergie, si votre projet exige une efficacité, il serait plus judicieux d'utiliser des CPLD. Ceux-ci conviennent aux applications où la consommation d'énergie est un facteur majeur à prendre en compte. Les FPGA, en revanche, sont plus puissants et utilisent donc plus d'énergie.
Facteurs budgétaires
Ces composants sont généralement moins chers que les ASIC programmables et sont donc idéaux pour les petits projets à budget limité. Ils conviennent parfaitement aux conceptions simples et économiques. En revanche, les FPGA sont plus onéreux, mais offrent bien plus de ressources et d'options. Ils sont incontestablement plus adaptés aux conceptions complexes et de grande envergure, où les fonctionnalités avancées justifient le surcoût. Si votre budget est limité et que votre conception est simple, les CPLD peuvent mieux répondre à vos besoins. Pour des exigences plus pointues, et si le coût n'est pas un obstacle, les FPGA présentent de nombreux avantages.

Quand utiliser le CPLD ?
Les CPLD sont utilisés dans certaines applications où les caractéristiques des CPLD s'avèrent les plus avantageuses. Vous devriez utiliser les CPLD pour :
- Pour les tâches qui nécessitent beaucoup de puissance de calcul, comme par exemple le traitement vidéo ou le cryptage.
- Lorsque vous travaillez avec plusieurs ensembles de données et que vous avez besoin d'analyser des données et de travailler sur plusieurs tâches en même temps.
- Elle s'applique notamment à l'utilisation de protocoles de connexion avancés tels que PCIe, Ethernet ou SATA.
- Afin de tester et de développer de nouvelles puces ou de nouveaux systèmes avant qu'ils ne soient gravés dans la pierre.

Quand utiliser le FPGA ?
Les FPGA sont un bon choix pour les applications qui nécessitent à la fois flexibilité et accessibilité. Ils conviennent pour :
- Les fonctions fondamentales de contrôle logique de la colle et les composants de connexion.
- Projets à faible coût qui ne nécessitent pas l'utilisation de nombreuses fonctionnalités.
- Conceptions de petite taille où les CPLD ont des options plus compactes par rapport aux autres technologies.

Conclusion
Voici la comparaison entre les CPLD et les FPGA en termes de forces et de faiblesses. Les CPLD sont des circuits intégrés flexibles avec des cycles de développement rapides bien qu'ils aient une capacité limitée, ne soient pas aussi rapides que les autres et disposent de ressources rares. Les FPGA sont plus flexibles et offrent des performances supérieures par rapport à leurs homologues, mais ils sont chers et consomment plus d'énergie et ne sont pas non plus faciles à concevoir.


Changer de langue