CPLD
Initiales de "complex programmable logic device" (dispositif logique programmable complexe).
CPLD: logique programmable sur site avec routage intégré
Un CPLD est un dispositif semi-conducteur qui se situe entre les puces logiques à fonction fixe et les FPGA (Field-Programmable Gate Arrays) complets en termes de complexité et de densité. Il contient des dizaines à quelques centaines de blocs logiques configurables, chacun capable d'effectuer des opérations booléennes, ainsi qu'une matrice d'interconnexion programmable qui achemine les signaux entre eux. L'ensemble du dispositif est reconfigurable sur site sans dessoudage, ce qui le rend utile pour le prototypage et pour gérer les révisions de conception dans les équipements de production où les temps d'arrêt sont coûteux.
Contrairement à un microcontrôleur, un CPLD exécute les opérations logiques en parallèle sur l'ensemble de son réseau, et non séquentiellement via des instructions. Un CPLD typique peut contenir de 32 à 256 macrocellules, chacune contenant une table de correspondance (LUT) et une bascule pour la sortie enregistrée. Les familles courantes incluent les séries Xilinx CoolRunner et Altera MAX V. La configuration est stockée dans une mémoire non volatile, de sorte que le dispositif implémente la même logique immédiatement après la mise sous tension sans nécessiter de séquence de démarrage externe.
Les CPLD diffèrent des FPGA par la prévisibilité du timing et l'efficacité des ressources. Étant donné que le tissu de routage d'un CPLD est prédéterminé et plus simple, les retards de propagation entre les blocs logiques sont fixes et courts, généralement de l'ordre de 5 à 15 nanosecondes. Ce déterminisme est important dans le contrôle en temps réel: un trieur de convoyeur ou un pilote de moteur a besoin de temps de réponse garantis, et non de moyennes statistiques. Un FPGA offre une densité plus élevée mais un timing moins prévisible et une consommation de courant de repos plus élevée.
La programmation est effectuée à l'aide de langages de description matérielle comme VHDL ou Verilog, compilés en flux de bits de configuration. Ceux-ci sont chargés dans le dispositif via des connecteurs JTAG (Joint Test Action Group), une interface standard à quatre fils présente sur presque tous les appareils électroniques industriels. Une fois programmé, le CPLD ne nécessite aucune mémoire externe ni processeur pour maintenir son état logique.
Les modes de défaillance courants incluent la corruption de la configuration due au bruit électrique (atténuée par l'ajout de résistances série et de condensateurs de découplage sur les broches d'alimentation) et la perte de données de configuration si les cellules non volatiles se dégradent, ce qui est rare mais plus probable dans des environnements chimiques ou radiatifs difficiles. Les CPLD sont préférés dans les équipements de fabrication où les changements de logique doivent être rapides et fréquents mais les exigences de densité sont modestes: les circuits d'interface de capteurs, les contrôleurs de moteurs pas à pas, les traducteurs de protocole et les interverrouillages de sécurité les utilisent tous largement.
Sources
- Source de la définitionWiktionary