Le STM32N6 est notre STM32 le plus récent et le plus puissant et le premier à être équipé de notre accélérateur Neural-ART, une unité de traitement neuronal (NPU) personnalisée capable de 600 GOPS, permettant ainsi aux applications d’apprentissage automatique qui nécessitaient un microprocesseur accéléré de fonctionner désormais sur un MCU. C’est aussi notre premier MCU Cortex-M55 et l’un des rares de l’industrie à fonctionner à 800 MHz. De plus, avec 4,2 Mo, le STM32N6 comprend la plus grande RAM intégrée sur un STM32. C’est aussi notre premier appareil à inclure notre GPU NeoChrom aux côtés d’un encodeur accéléré H.264. Par conséquent, compte tenu de toutes ses capacités, ST proposera également une version générale du STM32N6 sans NPU pour le rendre encore plus accessible.*
Table des matières
Quel est l’état de l’apprentissage automatique à la périphérie ?
Démocratiser l’IA sur les MCU

L’idée d’exécuter une application d’apprentissage automatique à la périphérie est loin d’être nouvelle. ST a contribué à la populariser en lançant STM32Cube.AI en 2019. Cette solution logicielle convertit un réseau neuronal en code C optimisé pour les microcontrôleurs STM32, assurant ainsi de grandes performances malgré les contraintes de traitement et de mémoire. Elle a permis la création d’applications telles que la reconnaissance de défauts sur les imprimantes 3D et autres détections et classifications d’anomalies que ST a rendues plus accessibles grâce à des outils comme NanoEdge AI Studio. Néanmoins, de nombreux algorithmes de réseaux neuronaux sont trop exigeants pour un microcontrôleur classique, ce qui impliquait jusqu’à présent de passer à un microprocesseur avec NPU.
L’inévitabilité de l’IA sur les MCU
Le problème est que, quelle que soit la qualité d’un microprocesseur, certains intégrateurs auront toujours besoin d’un microcontrôleur. Les raisons sont variées, allant d’une nomenclature plus simple à l’utilisation d’un système d’exploitation en temps réel, en passant par une consommation d’énergie plus faible. Quoi qu’il en soit, l’IA à la périphérie ne deviendra omniprésente que lorsqu’elle sera plus accessible sur tous les systèmes embarqués. Par conséquent, l’industrie se réunit pour renforcer l’IA sur les microcontrôleurs et de plus en plus de MCU adoptent une NPU. Toutefois, ces unités de traitement neuronal ont tendance à être très similaires, voire identiques. ST a cependant choisi une voie différente. En effet, nous avons adopté une approche unique en concevant une NPU en interne.
STM32N6 : Pourquoi un NPU personnalisé ?
L’histoire de l’accélérateur Neural-ART

Aujourd’hui, nous pouvons divulguer que nos équipes travaillent sur l’accélérateur ST Neural-ART depuis 2016. La solution logicielle STM32Cube.AI que nous avons lancée en 2019 a été directement influencée par la recherche et le développement menés sur l’accélérateur ST Neural-ART à l’époque. Ensuite, lorsque l’industrie a adopté STM32Cube.AI et que nous avons vu comment les ingénieurs utilisaient nos solutions pour créer des produits d’IA de pointe innovants, nous avons modifié notre Accélérateur Neural-ART pour sortir quelque chose d’unique. Aucun autre fabricant de MCU à usage général ne dispose d’un écosystème matériel et logiciel pour l’IA à la périphérie aussi profondément personnalisé et optimisé.
Le caractère unique de l’accélérateur Neural-ART
Concrètement, l’accélérateur Neural-ART du STM32N6 actuel comporte près de 300 unités de multiplication-accumulation configurables et deux bus mémoire AXI 64 bits pour un débit de 600 GOPS. C’est 600 fois plus que ce qui est possible sur notre STM32H7 le plus rapide, qui ne comporte pas de NPU. Cette architecture révolutionnaire permet non seulement d’effectuer plus d’opérations par cycle d’horloge et d’optimiser le flux de données afin d’éviter les goulot d’étranglement, mais elle est également optimisée pour la consommation d’énergie, avec un taux impressionnant de 3 TOPS/W.
ST a également veillé à ce que son accélérateur Neural-ART prenne en charge, dès son lancement, un plus grand nombre d’opérateurs d’IA que ce qui est courant dans l’industrie. Le nouveau STM32N6 est déjà compatible avec le plus grand nombre d’opérateurs sur TensorFlow Lite, Keras et ONNX, et nous nous engageons à augmenter continuellement le nombre d’opérateurs pris en charge. De plus, la possibilité d’utiliser le format ONNX signifie que les architecte de données peuvent utiliser le STM32N6 pour la plus large gamme d’applications d’IA. En d’autres termes, nous ne voulions pas seulement livrer un matériel plus optimisé que les solutions concurrentes, mais aussi une plateforme plus accessible qui permettrait aux développeurs d’utiliser leur flux de travail actuel et de réduire leur temps de mise sur le marché.
STM32N6 : Qu’est-ce qui en fait un MCU phare ?
Un puissant Cortex-M55

Le STM32N6 est avant tout un STM32. En fait, c’est le STM32 le plus puissant de ST, en grande partie parce qu’il s’agit de notre premier microcontrôleur à utiliser un processus FinFET de 16 nm. En adoptant cette technologie lithographique, nous nous sommes assurés de pouvoir faire fonctionner le Cortex-M55 à 800 MHz. Elle nous a également permis d’intégrer la plus grande quantité de mémoire vive sur un STM32 tout en incluant de nombreuses IP. Le STM32N6 est également équipé d’un module Ethernet Gigabit prenant en charge les time-sensitive networking, de six interfaces SPI et de deux interfaces I3C, de deux CAN 12 bits, de quatre temporisateurs avancés 32 bits, et bien plus encore.
Un pipeline de caméras unique
Comme nous prévoyons que les clients utiliseront le STM32N6 avec des caméras dans des applications de vision industrielle, grâce à son NPU et à ses performances, nous avons inclus notre tout nouveau processeur de signal d’image (ISP), le même que l’on trouve sur le STM32MP2 et qui est compatible avec le logiciel STM32 ISP IQTune. Grâce à ce logiciel, les développeurs n’ont pas besoin de faire appel à des prestataires de services tiers coûteux pour adapter l’ISP au capteur CMOS, à l’objectif, aux conditions d’éclairage, etc. Le STM32N6 supporte également le MIPI CSI-2, ce qui lui permet de supporter l’interface de caméra la plus populaire dans les applications mobiles sans avoir besoin d’un ISP externe compatible avec cette interface série de caméra particulière. Le STM32N6 peut donc traiter plus facilement des images provenant de plusieurs capteurs d’images et assurer la pérennité d’un système.
Un GPU 2.5D, beaucoup de RAM intégrée et un encodeur H.264

De plus, le STM32N6 offre une configuration de mémoire unique pour les développeurs d’interfaces graphiques. Les 4,2 Mo de RAM du STM32N6 peuvent stocker un double tampon d’image pour un écran 1280 x 800. Le STM32N6 est également équipé d’interfaces flash SPI Octo et Hexa pour récupérer les données dans la mémoire flash externe, avec mise en cache des données dans la RAM externe, sans risquer de créer un goulot d’étranglement.
Le STM32N6 intègre également notre GPU NeoChrom, un encodeur H.264, ainsi qu’un encodeur et un décodeur JPEG. Associé à sa grande mémoire vive intégrée et à ses interfaces flash rapides, le nouveau MCU phare permet de nouvelles applications telles que les panneaux de sécurité avec des interfaces utilisateur riches et la diffusion de vidéos à partir de capteurs de caméra. Cela signifie également que les développeurs peuvent désormais envisager de faire fonctionner un réseau neuronal en conjonction avec une interface graphique sans avoir à utiliser plusieurs MCU, puisque le NPU, le GPU et les encodeurs et décodeurs multimédias peuvent décharger le processeur, ce qui permet de disposer de beaucoup plus de functionalitées sur un seul appareil.
Un écosystème complet d’outils et de partenaires
Le fait que nous ayons personnalisé le Neural-ART Accelerator et que nous soyons si proches du coeur du STM32N6 signifie que ST peut fournir un écosystème complet d’outils logiciels qui facilitent et optimisent grandement la création de nouvelles applications d’IA avec le STM32N6. Cela commence par ST Edge AI Suite, un référentiel d’outils logiciels gratuits, de cas d’utilisation et de documentation qui aident les développeurs à créer de l’IA pour l’Intelligent Edge, quel que soit leur niveau d’expérience. La ST Edge AI Suite comprend également des outils tels que le Edge AI Developer Cloud, qui propose des réseaux neuronaux dédiés dans notre zoo modèle STM32, une ferme de cartes pour l’évaluation comparative dans le monde réel, et bien d’autres choses encore.
Les efforts de ST garantissent que les ingénieurs peuvent travailler avec les cadres existants. C’est pourquoi nous avons développé une technologie de base (ST Edge AI Core) pour optimiser et convertir les réseaux neuronaux à partir des frameworks d’IA les plus courants afin de tirer pleinement parti de l’accélérateur Neural-ART. En outre, notre écosystème vise également à renforcer la collaboration avec de nombreux partenaires matériels et logiciels, et nous travaillons continuellement à l’intégration dans des écosystèmes plus larges. Par exemple, les développeurs peuvent utiliser STM32Cube.AI en conjonction avec NVIDIA TAO Toolkit, AWS STM32 ML at the Edge Accelerator, ou expérimenter notre modèle zoo sur Hugging Face, qui héberge un nombre croissant de contenus STM32 AI.

Comment commencer ?
Le STM32N6 est un nouveau jalon car, comme le montrent le NPU, le GPU, la RAM intégrée, le Cortex-M55, les périphériques et d’autres spécifications, il transforme les applications d’IA de pointe à hautes performances sur MCU en permettant de nouveaux cas d’utilisation, tels que la vision par ordinateur, le traitement audio et bien plus encore. Même sans son NPU, le STM32N6 remporte la couronne de STM32 phare en élevant les applications vidéo et multimédia avancées, en permettant des interfaces utilisateur améliorées et complexes qui nécessitaient auparavant des MCU dédiés et plus onéreux. En résumé, le STM32N6 inaugure une nouvelle ère de l’informatique en rendant les applications d’IA haut de gamme et de pointe plus accessibles et abordables.
La meilleure façon de participer à cette révolution est de se procurer l’une des cartes de développement STM32N6 déjà disponibles. Nous proposons actuellement une carte Nucleo et un kit de découverte, et nous venons de publier STM32CubeN6, un logiciel dédié comprenant un middleware et du code d’exemple. Nous avons également mis à jour notre ST Edge AI Suite pour prendre en charge le nouveau dispositif et TouchGFX Designer est livré avec un Board Support Package pour le kit afin que les développeurs puissent utiliser rapidement le nouveau dispositif et créer des interfaces utilisateur impressionnantes. Nous sommes également ravis d’annoncer que des cartes de développement tierces intégrant le STM32N6 seront disponibles à une date ultérieure.