• Aller au contenu
  • Aller au menu
  • Aller à la recherche

CPU ⬜ Carré Petit Utile

CPU

Carré, Petit, Utile : Le programme radio des gens du numérique.
Tous les Jeudi à 11h sur Radio <FMR>

  • Programmes
  • Interviewes
  • Chroniques
  • Chercher
  • Suivez-nous !
  • CPU
  • ⬜
  • Chroniques
  • ›
  • Ainsi naquit
  • ›
  • Ainsi naquit : Le Front de Libération des FPGA
  • ← précédent

Ainsi naquit : Le Front de Libération des FPGA

jeudi 19 février 2026. Chroniques › Ainsi naquit

Extrait de l'émission CPU release Ex0233 : FPGA, deuxième partie.

Avez-vous entendu parler du Front de Libération des FPGA ? Rassurez-vous, c’est politiquement correct, à moins que vous trouviez le Logiciel Libre subversif. Car c’est de cela qu’il s’agit : libérer les logiciels de programmation de FPGA, qui sont historiquement très fortement verrouillés par les fondeurs. Un comble pour des puces qui libèrent le concepteur de la rigidité du flot de développement d’une carte électronique figée.

Paradoxalement, à l’époque des PAL, Programmable Array Logic, ces ancêtres des FPGA, l’organisation interne des bits de configuration, et la méthode électrique pour charger ce contenu dans une puce, étaient généralement documentés, car la logique elle-même était tellement simple qu’il n’y avait pas grand chose d’autre à faire que l’expliquer au concepteur, par ailleurs déjà habitué à manipuler des portes logiques élémentaires. En ces temps reculés, on n’avait pas encore inventé les langages de haut niveau comme le Verilog et le VHDL : c’était plutôt l’équivalent de l’assembleur.

Mais un FPGA, c’est une autre affaire. Le bitstream, la séquence de bits chargée dans le FPGA, n’a pas d’intelligibilité directement rapportable à l’intention exprimée dans le source VHDL. Il est illusoire de chercher un parallèle avec nos désassembleurs et autres débogueurs langage machine. Le synthétiseur, le compilateur pour électroniciens, est un logiciel éminemment complexe, et fortement compétitif, nécessitant des centaines d’années·hommes de développement, vous savez, cette unité selon laquelle, si un programmeur peut écrire le logiciel de pilotage d’un paquebot en six jours, six programmeurs peuvent l’écrire en un jour.

Et vous croyez vraiment que ça va arrêter un libriste ? Certainement pas Clifford Claire Wolf ni Cotton Seed (lui, c’est un pseudo). Yosys n’est pas le seul projet de logiciel libre de synthèse FPGA, mais c’est certainement le plus avancé : il semble qu’à ce jour cette suite logicielle soit la seule suffisamment complète pour implémenter le flot de développement de bout en bout, partant d’un HDL, ici le Verilog, jusqu’à des puces industrielles comme le milieu-de-gamme Lattice ECP5, le très abordable Lattice iCE40 et la 7ème génération Xilinx qui va du populaire Spartan-7 au très haut-de-gamme Virtex-7 ; celui qui colle une extase aux programmeurs, et des sueurs froides aux acheteurs quand ils reçoivent le devis.

Depuis 2012, la phase de synthèse est implémentée par le synthétiseur Yosys, suivi du place’n’route Arachne-PNR maintenant remplacé par nextpnr, et ses back-ends comme IceStorm pour le FPGA iCE40, Trellis pour l’ECP5, et d’autres encore, formant ainsi une suite logicielle couvrant les mêmes étapes que les outils vendus par les fabricants de FPGA. Les tâches annexes comme la simulation sont assurées par Verilator, le chargement par OpenFPGALoader, et j’en passe.

C’est compliqué, hein ? C’est exactement ce que je me suis dit quand le grain du FPGA m’a pris et que j’ai commencé l’excellent tutoriel de Russell Merrick sur nandland.com, tutoriel qui justement utilisait une petite carte de développement bon marché équipée d’un iCE40.

Or, il était hors de question que j’installe la toolchain propriétaire de Lattice… c’est pas que je sois libriste radical, c’est juste que tous ces logiciels de synthèse HDL, ils ne sont disponibles que sous Windows, ou à la rigueur sous Linux. Mais l’idée d’installer sur mon serveur personnel des logiciels bourrés de gestionnaires de licences payantes, aussi appelés rootkit, très peu pour moi ! Et pourquoi pas Steam tant qu’on y est ? Alors que Yosys et Arachne-PNR, j’ai pu les compiler sur mon Mac, une machine Unix comme une autre.

Faut croire que j’étais pas le premier à parcourir ce chemin, et je sais bien que la récompense est dans le voyage, mais c’est quand même mieux quand on arrive au bout.

Ce voyage, c’est celui commencé il y a plus de 10 ans par Fabien Marteau, softeux depuis tout petit et passé au hardware lors de ses études d’ingénieur : en juillet 2015 il a publié un article sur linuxfr.org, et depuis début 2015 il tient son blog sur le sujet.

Ainsi naquit le Front de Libération des FPGA

La page-clé, c’est la cartographie que maintient Fabien sur l’écosystème des outils libres pour FPGA, qui d’ailleurs ne compte pas que les outils de synthèse cités précédemment, mais aussi toute une palanquée d’alternatives à Verilog et VHDL comme Chisel, popularisé notamment par l’architecture processeur RISC-V. Eh bien, Fabien a une collection de pages sur les HDL Open Source. Encore faut-il choisir un modèle de FPGA : là encore vous êtes couverts, Fabien publie régulièrement ses tests de cartes de développement et ne manque pas de détailler quels logiciels libres il a rassemblés pour chaque puce.

Parlant de libérer les FPGA, c’est surtout les logiciels de développement pour FPGA que Yosys et quelques autres ont libéré. Mais quid du silicium ? Figurez-vous qu’il existe (au moins) deux projets de silicium Open Source réalisant la fonction FPGA : PRGA, le FPGA de l’université de Princeton, et OpenFPGA, qui n’est pas l’une des consoles de jeux format GameBoy de la marque Analogue.
Mais pourquoi le FLF n’en dit mot ? Parce que ça nous fait une belle jambe, à nous les hobbyistes, et les électroniciens de PME. ! Vous avez un fondeur de silicium dans votre garage, vous ?

Alors le Front de Libération des FPGA n’est peut-être pas aussi disruptif que le Front de libération des nains de jardin, mais il est nettement plus utile, parce qu’il est pragmatique. Remercions Fabien Marteau de prendre le temps de partager ses expérimentations et cataloguer patiemment les solutions libres, en plus de son vrai métier dans un bureau d’études. Où il utilise peut-être des logiciels professionnels propriétaires, mais chuuuut…

FabienM, l’équipe de CPU sera ravie de t’offrir une pinte si tu passes sur Toulouse. Ton engagement et ta passion t’honorent.

Textes : Benoit
Photo : Kit MiSTer d'émulation, opéré par un public jeune de l'émission, CC-By-SA, Da Scritch pour CPU et Radio <FMR>

Pièces jointes

  • 0233-CPU-Naquit-FrontLibFPGA(19-02-26).mp3

Aucun commentaire

Ajouter un commentaire

Le code HTML est affiché comme du texte et les adresses web sont automatiquement transformées. Votre e-mail ne sera pas affiché.

Menu

Catégories

  • Programmes
  • Interviewes
  • Chroniques
  • Hors micro
  • Teaser

Séries

  • Arrière-guichet
  • Bio is the new Black
  • Bulletin de santé d´Internet 2017
  • Composants
  • Crie si tu sais…
  • Elles codent
  • Futurs alternatifs
  • Histoires de la cryptographie
  • Intelligence artificielle
  • Killed By App
  • Langages machine
  • lost and found
  • Paranoid android
  • Parce que c’est Notre Projet Souverain
  • Quelque chose de totalement différent
  • Radio numérique
  • Read That Funky Manual !
  • Recycle
  • Situation critique
  • Webmasters

Toutes les séries

Menu extra

Suivez-nous !

  • 🎵 Podcast des émissions
  • 🎧 …pour Android
  • 🎧 …via Apple Podcast
  • 🎧 …en newsletter
  • Comment faire

Réseaux sociaux

  • BlueSky @cpu.pm
  • @cpu@Mastodon.tetaneutral.net
  • LinkedIn company/cpuprogramme
  • Nous écrire par e-mail

Développeurs

  • Benoît
  • Da Scritch
  • Enflammée
  • Gabriel
  • Infested Grunt
  • René Speranza
  • Thibault
  • Toute l'équipe

Producteurs

  • Radio <FMR>
  • Silicium
  • Régie publicitaire

Code source (github)

  • CPU-Audio web component
  • Thème Dotclear "CPU-15"
  • Youtube future playlist

Pages juridiques

  • Documentation du programme
  • Licence de l'émission et des sonores
  • Politique de confidentialité 🍪
  • Accessibilité du site : partielle
  • Mentions légales

SRSLY ?

  • Fédération Française de lecture sportive de logs serveurs

Informations

Interviewes et chroniques en licence CC-BY-NC ⬜ Émissions © DaScritch et l'équipe pour Radio <FMR> ⬜ Propulsé par Dotclear