Atmel intègre l’outil d’optimisation du code embarqué de Somnium dans son environnement Studio 7

Atmel Studio 7

Le fournisseur de semi-conducteurs Atmel a intégré au sein de son environnement de développement Studio 7 la technologie de compilation optimisée DRT du britannique Somnium. Utilisée jusque-là ...principalement pour la programmation des microcontrôleurs Kinetis de Freescale, cette technologie permet, via un compilateur GCC optimisé et un éditeur de liens propriétaire, de réaliser une optimisation globale du code embarqué C/C++ sur des cœurs ARM Cortex en s’appuyant sur une connaissance fine de la structure interne des microcontrôleurs. En particulier des mécanismes de communication avec les mémoires, sources de pertes de performances dans beaucoup d’applications embarquées.

Récemment annoncé par Atmel, l’environnement Studio 7, au sein duquel l’outil DRT est désormais intégré de manière transparente, est une plate-forme de développement libre de droits, basée sur la technologie Visual Studio de Microsoft, et dédiée à la programmation des microcontrôleurs à cœur ARM d’Atmel, ainsi que de ses architectures AVR. Dans cette version 7, la société a aussi introduit un outil de construction d’applications basé sur des technologies Web (donc sans installation spécifique à gérer). Baptisé Atmel Start, il est dédié à la sélection et à la configuration de composants logiciels de base, sur lesquels l’utilisateur peut développer sa propre application.

L'objectif est d'accélérer, via une interface graphique, les phases de mise au point et d’assemblage des pilotes de bas niveau, des couches logicielles intermédiaires (middleware), du système d’exploitation temps réel et des piles de communication classiques, afin de générer un paquetage logiciel complet, utilisable directement au sein de l’environnement Studio 7, mais aussi dans d’autres environnements comme µVision de Keil ou Embedded Workbench d’IAR.

D’autre part, pour les utilisateurs des plates-formes Arduino, Studio 7 est capable de récupérer les programmes écrits en langage Arduino pour les transformer en un code C++ universel, facilitant ainsi la migration d’un système de prototypage vers un équipement industriel.