Winter FPGA Project: RNS, Calculs d'addition et de multiplication massifs et Frugalité Moderne
L’hiver approche. Pas de geekerie outdoor, pas de PCB en tongs. C’est la saison des projets sédentaires. J’en profite pour explorer enfin un sujet que j’ai longtemps mis de côté : les FPGA. Mais pas pour faire clignoter des LEDs. D'autant plus que je suis bloqué dans mon projet LoRaTUBE : j'attend le PCB... L'idée de ce projet est d'expérimenter une idée originale : Peut-on utiliser un FPGA low cost pour implémenter un traitement du signal en arithmétique modulaire, via le Residue Number System (RNS) ? Et surtout : quel intérêt dans un contexte frugal et embarqué ?
Bertrand Selva
9/21/20252 min read
💡 Point de départ : un radar, une machine soviétique, et une architecture oubliée
Il y a quelques jours, je suis tombé sur des images d'urbex du site radar Duga, près de Tchernobyl.
Ce vestige de la guerre froide, conçu pour la détection transhorizon des missiles intercontinentaux, utilisait un ordinateur étrange : le K340A.
Sa particularité ? Il était basé sur le Residue Number System : une architecture de calcul fonctionnant sans propagation de retenue : Plutôt que de représenter les nombres en binaire, le K340A les représentait par leurs restes modulo plusieurs bases premières (ex : 3, 5, 7). Chaque opération (addition, multiplication) était alors réalisée en parallèle, indépendamment, sans retenue à propager.
On sacrifiait un peu de facilité de lecture… mais on gagnait énormément en scalabilité et en efficacité matérielle.


🔧 Mon objectif : un FIR en RNS sur FPGA + ESP32-S3
Je me suis donc lancé.
J’ai commandé un Tang Nano 9K (FPGA Gowin à base GW1N-9) et je vais le faire collaborer avec un ESP32-S3, qui servira à piloter et injecter les données.
But du jeu : coder un filtre FIR en RNS.
L’ESP32 recevra des échantillons (audio ou autres).
Il les convertira en représentation RNS.
Le FPGA effectuera les multiplications et accumulations de chaque "lane" modulaire en parallèle.
Enfin, l’ESP32 récupérera le résultat (éventuellement reconverti en base classique via un CRT).
🧮 Pourquoi utiliser le RNS aujourd’hui ?
La logique RNS ne date pas d’hier (mise en oeuvre pour le traitement du signal dans les années 60 et base arithmétique vieille de 2000 ans).
Mais elle présente encore des avantages structurels très adaptés aux systèmes embarqués frugaux :
Pas de propagation de retenue → logique plus simple, plus rapide, moins énergivore.
Modularité naturelle → on augmente la précision en ajoutant un modulo.
Parallélisme natif → pas besoin de chaîner les opérations.
Tolérance aux fautes → possibilité de redondance, détection d’erreurs.
Frugalité énergétique → on peut imaginer que c'est une architecture plus efficace et donc qu'elle conduirait à une moins grande conso. énergétique.
Autrement dit : une approche très cohérente avec les enjeux d’aujourd’hui, même si elle demande un peu plus d’efforts de mise en oeuvre.
🧗 Roadmap : entre pédagogie et benchmark
Je débute en FPGA (j'ai juste fait un peu de biblio, jamais de mise en oeuvre). Ce projet sera donc aussi un chemin d’apprentissage que je documenterai en détail :
Mise en route du Tang Nano 9K (hello world LED, compilation, timing).
FIR binaire classique (référence).
FIR en RNS : architecture, choix des moduli, pipeline.
Comparaison : LUT utilisées, temps de traitement, consommation estimée.
Et peut-être une extrapolation vers des usages différents (ça semble d'actualité) : cryptographiques ou IA légère.
🔗 Suivre le projet
Je publierai l’avancement sur mon blog et sur Hackaday :
👉 https://hackaday.io/project/204083-winter-fpgas-and-forgotten-arithmetic
L’idée est de tester le RNS dans un contexte de traitement du signal embarqué.
C'est une voie différente, historiquement intéressante, et technologiquement crédible dès qu’on parle de low power, calcul massivement parallèle, ou tolérance aux fautes.
Innovation
Systèmes embarqués, intelligence artificielle, deep learning, solutions sur mesure, efficacité, innovation, sécurité, fiabilité.
Contact
contact@selvasystems.net
SIREN 939271441
© 2025. All rights reserved.
© 2025. Tous droits réservés.