Quels sont les outils logiciels gratuits pour la programmation FPGA ?


Si vous voulez juste apprendre Verilog sans matériel, consultez HDLBits pour des tutoriels interactifs (ils synthétisent votre code et comparent la logique résultante à leurs solutions), et EDAPlayground a un IDE basé sur le Web qui vous permet de coder, synthétiser et simuler - tout cela gratuitement.

Si vous voulez travailler avec du matériel réel, Project Icestorm est une chaîne d'outils FPGA totalement gratuite et open source. Malheureusement, elle ne fonctionne qu'avec les FPGA iCE40 de Lattice (ils ont réussi à faire de l'ingénierie inverse sur le format bitstream pour cette famille de périphériques), mais si vous utilisez ces périphériques, vous pouvez passer de Verilog à bitstream avec des outils open source - très cool ! Les dispositifs iCE40 pris en charge sont petits (jusqu'à 8K cellules logiques), mais c'est amplement suffisant pour apprendre et expérimenter... et des kits de dév bon marché et faciles à utiliser sont disponibles à partir de 20 $ US.


Si vous voulez aller au-delà du " déconnage ", vous aurez besoin d'outils qui prennent en charge des FPGA plus grands, mais comme le soulignent d'autres affiches, tous les grands fournisseurs de FPGA fournissent des versions gratuites (mais limitées) de leurs chaînes d'outils. Je vous recommande de passer à un niveau supérieur à celui des iCE40 : Le Terasic DE0-Nano est une carte de développement de 80 $US qui comprend un FPGA Intel/Altera Cyclone IV avec 22K cellules logiques plus de la RAM, des LEDs, des interrupteurs, des headers, USB, etc., le tout dans un bel emballage... et ensuite vous pouvez télécharger et utiliser une version gratuite des outils Quartus d'Intel/Altera pour travailler avec. Il existe des kits similaires pour les produits et les outils d'autres vendeurs de FPGA, aussi.


Il y a des limites à ce que vous pouvez faire avec les versions gratuites des outils, cependant ; si vous voulez faire un travail " sérieux ", vous finirez par payer - peut-être beaucoup - des outils qui peuvent traiter les détails et les complexités de l'ingénierie des FPGA pour les produits commerciaux.