Passer au contenu

Du Java pour simplifier la programmation des FPGA

Une équipe de chercheurs lance un outil de programmation Java pour FPGA. JHDL sera distribué en Open Source.

Les chercheurs de l’université de Brigham Young (Etats-Unis) ont dévoilé un outil qui devrait simplifier la programmation des puces FPGA (Field Programmable Gate Array), capables de se reconfigurer à la volée en fonction des tâches à effectuer.Leur suite logicielle dénommée JHDL (Just Another Hardware Description Language) a la particularité de s’inspirer du modèle des langages objet, et d’exploiter plus précisément l’environnement Java. En effet, un FPGA n’est au départ qu’une grille de circuits logiques amorphes. Pour qu’il devienne apte à effectuer une tâche, il faut le programmer, c’est-à-dire le charger avec des circuits logiques : unités de calcul, unités de vérification, convertisseurs, interfaces ou autres.

Appliquer le modèle objet aux circuits logiques

JHDL représente chacun de ces circuits logiques sous la forme d’un objet (une classe Java). Le fonctionnement est ensuite similaire à ce qui se passe pour un logiciel Java. Dans ce type de programmes, lorsqu’un objet est sollicité, le système d’exploitation monte la classe correspondante en mémoire vive et lui attribue des ressources. Ici, lorsqu’un circuit est sollicité, JHDL le crée physiquement sur le FPGA en appelant la classe correspondante, et lui attribue des ressources sous forme d’entrées-sorties et ouvre des bus de communication avec d’autres circuits.Lorsque le circuit implémenté n’a plus d’utilité, il est dirigé vers une poubelle (garbage collector) qui le supprime ainsi que tous ses liens avec d’autres fonctions. L’emplacement qu’il occupait sur le FPGA redevient amorphe, laissant de l’espace pour la mise en place d’autres circuits.JHDL permet donc de gérer dans une seule interface à la fois le design, c’est-à-dire l’implémentation des circuits, et leur entretien en fonction des phases d’exécution du programme, alors qu’il fallait jusqu’ici recourir à deux outils différents.

JHDL est téléchargeable sur le Net

JHDL a été développé pour fonctionner avec les puces Xilinx 4000 et Virtex. Ces dernières comptent jusqu’à un million de portes logiques et sont utilisées aussi bien pour des travaux de conception, de création de circuits spécifiques en petites séries, que dans les routeurs ou certains équipements de stockage. La suite logicielle est basée sur une série de bibliothèques de classe Java, et comporte aussi un débogueur, un générateur de schémas pour l’assemblage des circuits et divers outils de test et d’implémentation.La suite d’outils JHDL, téléchargeable sur le site de l’université Brigham Young, sera disponible en code source ouvert dans les prochains mois. Le responsable de la recherche n’évoque pas de commercialisation, même si Xilinx, un grand fabriquant de FPGA, envisage d’ajouter JHDL à ses outils de développement maison.

🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.


Renaud Bonnet