Pourquoi ne pas appliquer la recette des logiciels libres au matériel et aux processeurs ? Cette idée, certains l’ont eu dès le début des années 2000. Il aura toutefois fallu attendre 2020 pour assister au véritable décollage des processeurs libres, sous l’impulsion du mouvement RISC-V.

Par David Feugey

Le PC tel que nous le connaissons aujourd’hui est par essence une plateforme ouverte. Tous les ordinateurs Windows équipés de processeurs x86 sont en effet des « compatibles PC », dans le sens où ils sont de lointains rejetons de machines dont la caractéristique principale était d’être des clones de l’IBM Personal Computer, l’IBM PC.

Assez rapidement, il est apparu toutefois que le concept pouvait être poussé plus loin. La communauté du logiciel libre a répondu présent côté logiciel système, avec des projets comme Linux ou coreboot. Restait à s’attaquer au hardware, en particulier aux processeurs.

2000 : L’ÈRE OPENCORES

Début 2000, une initiative privée, OpenCores, fait connaître l’open hardware au grand public. Toute une décennie de projets s’en est suivie, avec des flops parfois retentissants, comme l’Open Graphics Project.

Que reste-t-il aujourd’hui de cette mouvance ? De grands groupements, comme la Fondation Fossi (Free and open source silicon foundation) ou l’Oshwa (Open source hardware association). Mais aussi des architectures novatrices, comme l’OpenRISC, un projet visant à créer une série de processeurs au design open source.
Quelques industriels, dont Samsung, ont utilisé de l’OpenRISC au sein de certains de leurs composants. Toutefois, le manque de contributions fait que cette architecture processeur est loin de connaître le succès qu’elle mériterait.

C’est d’ailleurs globalement le sort qui attendra la plupart des projets menés à l’époque, même s’il faut noter la présence de quelques pépites. L’interface Wishbone permet ainsi de connecter des briques de base entre elles, facilitant grandement la mise au point de processeurs en open hardware. Le cœur Amber reprend l’architecture ARMv2a (passée dans le domaine public) et pourrait devenir une alternative à certains cœurs ARM dédiés au monde des microcontrôleurs…

Plus récemment, toute une communauté s’est créée autour des FPGA (des composants reprogrammables), avec comme ambition de recréer des processeurs et systèmes du passé sur des cartes dédiées : Chameleon, MiST, etc.
Une communauté à ne pas négliger, puisque nous y trouvons des développements qui pourraient s’avérer très intéressants, comme le cœur ao486, aujourd’hui équivalent à celui d’un 486SX.

2020 : LA RÉVOLUTION RISC-V

En 2010, un groupe de chercheurs de l’Université de Berkeley se lance dans la création du jeu d’instructions d’une nouvelle famille de processeurs : RISC-V. Tous les travaux du laboratoire sont proposés sous une licence open source très permissive, la licence BSD. Le premier composant RISC-V – gravé en 28 nm – sort de l’usine du fondeur STMicroelectronics dès 2011. Afin de coordonner les efforts des participants, la Fondation RISC-V a été créée en 2015. Et afin d’en garantir l’indépendance, il sera plus tard décidé de la délocaliser en Suisse. Chose faite en 2020, avec l’apparition de RISC-V International.

L’année 2020 signe le véritable démarrage de RISC-V, avec de nombreuses annonces d’importance et un programme très ambitieux : « L’ISA RISC-V offre un nouveau niveau de liberté logicielle et matérielle. Gratuite et extensible, elle ouvre la voie aux 50 prochaines années de conception et d’innovation informatique », peut-on ainsi lire sur le site de RISC-V International.

L’architecture RISC-V se veut modulaire, avec des versions 32 bits et 64 bits et des extensions comme la compression de code (pour lutter contre ARM sur le marché des microcontrôleurs) ou des unités de traitement des nombres flottants pouvant grimper jusqu’à la quadruple précision (ce qui intéressera sans nul doute le milieu scientifique). L’OpenRISC l’a montré : une architecture processeur n’est rien sans soutiens. Et ils sont ici nombreux : RISC-V International compte aujourd’hui plus de 750 membres, répartis dans plus de 50 pays. Et, plus que cela, l’architecture RISC-V est populaire. Un véritable phénomène.

RISC-V : LES TROIS NOMS À RETENIR

Lorsqu’il est question de puces RISC-V, un nom revient souvent : SiFive. Pourquoi tous les regards se tournent aujourd’hui vers cette start-up ? Parce que ses trois fondateurs sont Krste Asanović, Yunsup Lee et Andrew Waterman, les trois mêmes qui ont mené le projet RISC-V à l’Université de Berkeley entre 2010 et 2015 !
SiFive a donc très rapidement lancé de premières offres. Mais c’est – là encore – en 2020 que les choses se sont accélérées, avec l’annonce de l’HiFive Unmatched, une carte mère dédiée au monde des ordinateurs personnels et pourvue d’un processeur Freedom U740 64 bits. Une offre qui fonctionnera bien entendu sous Linux.

Autre nom à retenir, celui d’Alibaba. Le géant chinois a levé le voile en 2019 sur le XuanTie 910, un processeur pour serveurs, comprenant 16 cœurs cadencés à 2,5 GHz. Nous en savons maintenant plus sur cette offre : Alibaba a réussi à pousser les performances par mégahertz de son XT910 au-delà de celles du cœur Cortex-A73 d’ARM.
Des unités spécifiques sont intégrées afin de booster les opérations d’intelligence artificielle. Enfin, le XT910 sera gravé en 12 nm. Notons que d’autres composants sont prévus, descendant jusqu’au lilliputien XT902, dédié à l’internet des objets (capteurs et edge computing).

Le troisième nom à surveiller de près est européen. L’EPI (European processor initiative) est un projet visant à créer une famille de processeurs basse consommation adaptés au monde des infrastructures massives : cloud, big data et supercalculateurs. L’objectif est de pouvoir développer le premier supercalculateur de puissance exaflopique (1 000 pétaflops), mais également d’assurer l’indépendance technologique de l’Europe. Nous retrouvons derrière ce projet 27 partenaires européens, dont Atos, le CEA, Genci, Kalray, Menta, Prove & Run et SiPearl côté français. La start-up SiPearl sera par ailleurs chargée de concrétiser cette nouvelle génération de processeurs. Ce soutien mondial promet de belles années au phénomène RISC-V. N’oublions pas toutefois qu’il s’agit ici d’une ISA ouverte. Des places dans les secteurs des cœurs et processeurs ouverts sont donc encore à prendre, avec des acteurs en pointe, comme IBM.

 

OPENSPARC, UNE CPU OPEN TORPILLÉE PAR ORACLE

C’est Sun Microsystems qui le premier a senti le vent tourner en faveur de processeurs ouverts. Il a ainsi lancé sous licence GPL l’OpenSPARC T1 en 2005 (dont les spécifications sont toujours en ligne sur le site Oracle), puis l’OpenSPARC T2 en 2007 (spécifications toujours en ligne). Des composants 64 bits à 8 cœurs, ultra performants.
Le rachat de Sun Microsystems en 2010 par Oracle mettra toutefois un coup d’arrêt définitif à cette initiative. Et pourtant, le mouvement avait réussi à prendre, avec les LEON (processeurs durcis créés pour répondre aux besoins de l’Agence spatiale européenne) et les Feiteng chinois (dédiés au monde des supercalculateurs). Ces Feiteng utilisent aujourd’hui l’architecture ARM.

 

DES JEUX D’INSTRUCTIONS ÉGALEMENT OUVERTS

L’ISA (Instruction set architecture) désigne le jeu d’instructions d’un processeur.
Nombreux sont aujourd’hui les acteurs à jouer la carte de l’ISA ouverte pour surfer sur la vague de l’open source. Les concepteurs de processeurs peuvent créer des puces compatibles avec une ISA ouverte, sans devoir payer de royalties. C’est le cas de l’ISA RISC-V, mais aussi de la Power ISA, ouverte par IBM pendant l’été 2019.
Notons le semi-échec MIPS Open, un projet lancé par Wave Computing en 2018, mais dont le site renvoie aujourd’hui une erreur 404.

 

QUAND IBM NOUS REFAIT LE COUP DU PC

Avec le mouvement OpenPower, IBM veut lancer une plateforme ouverte… pour les serveurs. Tout en allant bien plus loin qu’avec le PC, puisque BIOS et hyperviseurs sont sous licence open source.IBM s’est même positionné en 2020 sur le terrain de l’open hardware en livrant deux cœurs Power sous licence Creative Commons CC-BY 4.0 : l’A2I (pour les environnements multicœurs) et l’A2O (pour les environnements monocœur).
L’A2I est pour le moins légendaire, puisqu’il était au cœur des supercalculateurs BlueGene/Q