L’architecture multicoeur des Aurix d’Infineon bénéficie d’un premier compilateur pour le langage Rust, signé HighTec

[EMBEDDED WORLD] Le fournisseur germanique d'outils logiciels HighTec EDV-Systeme (*), basé à Sarrebruck, étend aujourd'hui ses technologies de compilation destinées aux processeurs Aurix d’Infineon, avec la prise en charge du premier compilateur Rust pour cette architecture 32 bits multicœur.

Il s’agit d’une extension des outils de HighTec déjà éprouvés pour cette architecture matérielle vis-à-vis des langages C/C++ et qui s’appuie sur la technologie de compilation open source LLVM (Low Level Virtual Machine).

Avec cette proposition, les utilisateurs des secteurs automobile et industriel peuvent désormais profiter des avantages de sécurité et de sûreté inhérents à l’architecture multicœur Aurix, associés aux caractéristiques propres du langage Rust, lui aussi armé pour résoudre de problèmes de sécurité.

Pour rappel, le langage de programmation Rust a connu ces derniers mois une croissance significative en popularité, motivée par le besoin croissant des développeurs de créer des applications sûres et sécurisées. Les fonctionnalités de gestion mémoire de Rust aident par exemple à prévenir divers types de vulnérabilités qui sont souvent à l'origine des défaillances de systèmes embarqués. Ce qui fait du langage Rust une option de plus en plus attrayante pour les développeurs qui cherchent à écrire du code sécurisé et robuste, la fondation Linux ayant même décidé d’ajouter Rust comme second langage de programmation après le C pour le codage du noyau.

De son côté, la famille de microcontrôleurs Aurix d'Infineon est devenue une solution largement adoptée pour les applications dotées d’exigences strictes en matière de sûreté et de sécurité. La combinaison du langage de programmation Rust avec les microcontrôleurs Aurix certifiés Asil-D/SIL3 fournit dès lors une plate-forme doublement fiable et résiliente pour les applications critiques.

Le compilateur Rust pour l’Aurix TC3x se caractérise par un système de construction logicielle (build) rapide et des optimisations de code adaptées à l'architecture des microcontrôleurs Aurix. Il exploite la technologie LLVM, bénéficiant de ce fait d’un écosystème ouvert et cohérent avec les compilateurs C/C++ existants pour Aurix. Selon HighTec, la technologie est en mesure d'accélérer le développement et la certification d'applications critiques pour la sécurité dans l'automobile et l'automatisation industrielle, avec un accent mis sur la notion de sûreté de fonctionnement.

D'ici 2024, HighTec prévoit d’élargir la portée du compilateur Rust pour Aurix afin de le qualifier et de le certifier en matière de sûreté de fonctionnement

Du côté d’Infineon, qui fait ainsi un premier pas pour créer un écosystème Rust dans le secteur de l’embarqué, les familles de microcontrôleurs Aurix TC3xx, TC4xx, Traveo et PSoC prennent ou prendront désormais en charge le langage Rust. Le microcontrôleur automobile Aurix TC3xx utilise d’ores et déjà le compilateur Rust d’HighTec EDV-Systeme, la prise en charge de l’Aurix TC4xx et du PsoC étant prévue au deuxième semestre 2023. Le Traveo 2G utilisera quant à lui la chaîne de compilation officielle Rust pour les cibles Arm Cortex-M.

Dans le détail, le package logiciel Aurix Rust de HighTec comprend les outils du compilateur Rust, y compris le système de construction logicielle, les bibliothèques Rust, une couche d'abstraction matérielle et les BSP (Board Support Package) pour le circuit TC375. Ainsi que des exemples d’application comprenant l'utilisation de pilotes de périphériques écrits en C, accompagnés d’une documentation comprenant des instructions de boot.

Pour être complet, signalons que HighTec vient de rejoindre la Rust Foundation en tant que membre Silver.

(*) HighTec se présente comme le seul fournisseur de compilateurs à être qualifié "Infineon Preferred Design House"