Construire une GPU semblait être un projet réservé uniquement aux grandes entreprises disposant de ressources financières, techniques et humaines considérables. Cependant, Matthias Balwierz, connu sous le nom de Bitluni, remet en question cette idée. Il ne s’agit pas de reproduire une GeForce ni de rivaliser avec NVIDIA, mais de créer une machine graphique chez soi utilisant des milliers de microcontrôleurs RISC-V.
La première étape : un projet ambitieux
La première phase de son projet consiste à assembler 8 192 microcontrôleurs, chacun relié à un LED RGB. Cette approche atypique fusionne traitement graphique et affichage, permettant à la structure de fonctionner à la fois comme carte graphique et écran. Bien que ce prototype soit prometteur, il est encore loin d’atteindre l’échelle et les capacités d’un système complet.
Une GPU construite pixel par pixel
Au départ, Bitluni envisageait de créer un type d’écran. Cependant, face aux coûts et à la complexité, il a décidé de ne pas utiliser de composants RGB adressables, qui auraient augmenté significativement le coût. À la place, il a choisi de souder un LED à chaque microcontrôleur, transformant chaque chip en une unité graphique individuelle, ce qui a considérablement accru le travail de conception et de programmation.
Pour atteindre une résolution de 1920×1080, il aurait fallu plus de deux millions de microcontrôleurs. Bitluni a donc ajusté son objectif à 320×200 pixels, ce qui nécessite tout de même 64 000 puces. Ainsi, il a conservé un budget gérable tout en envisageant un développement futur à plus large échelle.
Structure du système
Pour gérer cette abondance de matériel, le système est divisé en modules de 16×32 “pixels”, organisés en cercles. Chaque groupe de 32 microcontrôleurs est contrôlé par une unité CH32V, ce qui facilite la coordination interne et optimise le traitement des informations.
Défis techniques et économiques
Le choix du microcontrôleur QingKe CH570 est aussi une décision économique. Ce composant, doté d’une CPU RISC-V de 32 bits, coûte environ 0,13 dollars chacun. Toutefois, l’addition des coûts totaux reste conséquente : pour les 64 000 puces nécessaires, le budget pourrait dépasser 8 000 dollars.
En matière d’alimentation, la demande en énergie pour le système final est impressionnante. Il faudra estimer environ 2 161 W, soit près de 655 ampères à 3,3 V. Cela a poussé Bitluni à se tourner vers une alimentation robuste et des convertisseurs capables de gérer cette charge.
Conception et programmation
Un aspect essentiel du projet est la conception de l’infrastructure, notamment les cartes de circuits imprimés (PCB). Bitluni a dû faire face à la complexité de ces designs, allant jusqu’à une carte de six couches. En outre, il a envisagé une solution de refroidissement par immersion, bien qu’il ait décidé de ne pas poursuivre cette option pour des raisons économiques.
La programmation de chaque microcontrôleur représente également un défi majeur. Pour automatiser cette tâche, Bitluni a utilisé une imprimante 3D modifiée, capable de charger le code sur chaque chip sans intervention manuelle, transformant son outil de fabrication en une machine de programmation.
Conclusion : Une expérience unique
Ce projet, bien qu’encore loin de rivaliser avec des GPUs modernes en termes de performances, offre un aperçu fascinant de ce qui est réalisable en combinant créativité, technologie et accès à des composants économiques. Bitluni démontre qu’avec des ressources appropriées, il est envisageable de réaliser des avancées notables dans des domaines qui étaient autrefois réservés à de grandes entreprises.
Images | Bitluni

