Puce économe pour le décodage des données

Puce économe pour le décodage des données

Imaginez que vous utilisez une application bancaire en ligne pour déposer de l’argent sur votre compte. Comme toute information envoyée sur l’internet, ces communications peuvent être corrompues par du bruit qui insère des erreurs dans les données.

Pour surmonter ce problème, les expéditeurs codent les données avant de les transmettre, puis un récepteur utilise un algorithme de décodage pour corriger les erreurs et récupérer le message original. Dans certains cas, les données sont reçues avec des informations de fiabilité qui aident le décodeur à déterminer quelles parties d’une transmission sont susceptibles de contenir des erreurs.

Des chercheurs du MIT et d’ailleurs ont mis au point une puce de décodage qui utilise un nouveau modèle statistique pour exploiter ces informations de fiabilité d’une manière beaucoup plus simple et rapide que les techniques classiques.

Leur puce utilise un algorithme de décodage universel que l’équipe a précédemment mis au point et qui peut démêler n’importe quel code correcteur d’erreurs. En général, le matériel de décodage ne peut traiter qu’un type particulier de code. Cette nouvelle puce de décodage universel a battu le record du décodage économe en énergie, avec des performances 10 à 100 fois supérieures à celles des autres matériels.

Cette avancée pourrait permettre d’équiper les appareils mobiles de moins de puces, puisqu’ils n’auraient plus besoin de matériel distinct pour de multiples codes. Cela permettrait de réduire la quantité de matériaux nécessaires à la fabrication, ce qui réduirait les coûts et améliorerait la durabilité. En rendant le processus de décodage moins énergivore, la puce pourrait également améliorer les performances des appareils et prolonger la durée de vie des batteries. Elle pourrait être particulièrement utile pour des applications exigeantes comme la réalité augmentée et virtuelle et les réseaux 5G.

C’est la première fois que quelqu’un passe sous la barrière de 1 picojoule par bit pour le décodage. C’est à peu près la même quantité d’énergie dont vous avez besoin pour transmettre un bit à l’intérieur du système. Il s’agissait d’un seuil symbolique important, mais il modifie également l’équilibre dans le récepteur de ce qui pourrait être la partie la plus urgente du point de vue énergétique – nous pouvons déplacer cette énergie du décodeur vers d’autres éléments“, explique Muriel Médard, professeur de science et d’ingénierie logicielles à la School of Science NEC, professeur au département de génie électrique et d’informatique, et co-auteur d’un article présentant la nouvelle puce.

Un tri plus intelligent

Les données numériques sont transmises sur un réseau sous la forme de bits (0 et 1). L’expéditeur code les données en ajoutant un code correcteur d’erreurs, qui est une chaîne redondante de 0 et de 1 pouvant être considérée comme un hachage. Les informations relatives à ce hachage sont conservées dans un livre de codes spécifique. Un algorithme de décodage au niveau du récepteur, conçu pour ce code particulier, utilise son livre de codes et la structure de hachage pour retrouver les informations d’origine, qui peuvent avoir été mélangées par le bruit. Étant donné que chaque algorithme est spécifique à un code et que la plupart d’entre eux nécessitent un matériel dédié, un dispositif aurait besoin de nombreuses puces pour décoder différents codes.

Les chercheurs ont déjà fait la démonstration de GRAND (Guessing Random Additive Noise Decoding), un algorithme de décodage universel capable de déchiffrer n’importe quel code. GRAND fonctionne en devinant le bruit qui a affecté la transmission, en soustrayant ce modèle de bruit des données reçues, puis en vérifiant ce qui reste dans un livre de codes. Il devine une série de modèles de bruit dans l’ordre dans lequel ils sont susceptibles de se produire.

Les données sont souvent reçues avec des informations de fiabilité, également appelées informations logicielles, qui aident un décodeur à déterminer quels éléments sont des erreurs. La nouvelle puce de décodage, appelée ORBGRAND (Ordered Reliability Bits GRAND), utilise ces informations de fiabilité pour trier les données en fonction de la probabilité que chaque bit soit une erreur.

Mais ce n’est pas aussi simple que de classer des bits individuels. Alors que le bit le moins fiable peut être l’erreur la plus probable, les troisième et quatrième bits les moins fiables sont peut-être aussi susceptibles d’être une erreur que le septième bit le moins fiable. ORBGRAND utilise un nouveau modèle statistique qui peut trier les bits de cette manière, en considérant que plusieurs bits ensemble sont aussi susceptibles d’être une erreur que certains bits individuels.

Si votre voiture ne fonctionne pas, des informations générales peuvent vous dire qu’il s’agit probablement de la batterie. Mais si ce n’est pas la batterie seule, c’est peut-être la batterie et l’alternateur ensemble qui causent le problème. C’est ainsi qu’une personne rationnelle chercherait à résoudre le problème : elle se dirait qu’il pourrait s’agir de ces deux éléments ensemble avant de passer à quelque chose de beaucoup moins probable“, explique M. Médard.

Il s’agit d’une approche beaucoup plus efficace que les décodeurs traditionnels, qui s’intéressent plutôt à la structure du code et dont les performances sont généralement conçues pour le pire des cas.

Avec un décodeur traditionnel, vous sortiriez le plan de la voiture et examineriez chacune de ses pièces. Vous trouverez le problème, mais cela vous prendra beaucoup de temps et vous serez très frustré“, explique Médard.

ORBGRAND arrête le tri dès qu’un mot de code est trouvé, ce qui est souvent très rapide. La puce utilise également la parallélisation, générant et testant plusieurs modèles de bruit simultanément afin de trouver le mot de code plus rapidement. Comme le décodeur cesse de fonctionner dès qu’il a trouvé le mot de code, sa consommation d’énergie reste faible même s’il exécute plusieurs processus simultanément.

Une efficacité record

Lorsqu’ils ont comparé leur approche à d’autres puces, ORBGRAND a décodé avec une précision maximale tout en ne consommant que 0,76 picojoules d’énergie par bit, battant ainsi le précédent record de performance. ORBGRAND consomme entre 10 et 100 fois moins d’énergie que les autres dispositifs.

L’un des plus grands défis du développement de la nouvelle puce est venu de cette consommation d’énergie réduite, dit Médard. Avec ORBGRAND, la génération de séquences de bruit est maintenant si efficace sur le plan énergétique que d’autres processus sur lesquels les chercheurs ne s’étaient pas concentrés auparavant, comme la vérification du mot de code dans un livre de codes, consomment la majeure partie de l’effort.

Or, ce processus de vérification, qui revient à allumer la voiture pour voir si elle fonctionne, est la partie la plus difficile. Nous devons donc trouver des moyens plus efficaces de le faire“, explique-t-elle.

L’équipe étudie également les moyens de modifier la modulation des transmissions afin de profiter de l’efficacité accrue de la puce ORBGRAND. Elle envisage également de voir comment sa technique pourrait être utilisée pour gérer plus efficacement les transmissions multiples qui se chevauchent.

La recherche est financée, en partie, par l’agence américaine Defense Advanced Research Projects Agency (DARPA) et la Science Foundation Ireland.

Auteur : Adam Zewe, MIT News Office

Crédit image : Christine Daniloff, MIT

Les coauteurs de Médard comprennent l’auteur principal, Arslan Riaz, étudiant diplômé de l’université de Boston (BU), Rabia Tugce Yazicigil, professeur adjoint de génie électrique et informatique à BU, et Ken R. Duffy, alors directeur du Hamilton Institute de l’université de Maynooth et aujourd’hui professeur à l’université de Northeastern, ainsi que d’autres personnes du MIT, de BU et de l’université de Maynooth. Les travaux sont présentés à l’International Solid-States Circuits Conference.

[ Communiqué ]
Lien principal : news.mit.edu/2023/new-chip-demonstrates-energy-efficiency-decoding-0222

   

Articles connexes