L'embarqué > Matériel & systèmes > Composant > ST propulse le STM32 dans le monde des microprocesseurs et s’ouvre à Linux

ST propulse le STM32 dans le monde des microprocesseurs et s’ouvre à Linux

Publié le 21 février 2019 à 12:24 par François Gauthier        Composant  STMicroelectronics

ST propulse le STM32 dans le monde des microprocesseurs et s’ouvre à Linux

[EMBEDDED WORLD] Dix ans après la mise sur le marché du premier microcontrôleur de la famille STM32, STMicroelectronics saute le pas vers le monde des microprocesseurs en associant sur une même puce deux cœurs Arm Cortex-A7 et un cœur Cortex-M4. Avec à la clé la possibilité pour les concepteurs d’utiliser Linux pour leurs applications embarquées (sur le Cortex-A7) en l’associant à un OS temps réel (sur le Cortex-M4).

De ce fait, ST rejoint l'un de ses principaux concurrents, NXP, qui dès 2015 (à lépoque Freescale) avait mis à l’honneur cette association A7/M4 dans un processeur (l'i.MX7) avant de passer, avec l'i.MX8, à la mise en œuvre du cœur Cortex-A35 en lieu et place de l’A7. Néanmoins, la démarche de ST se distingue de celle de NXP à plusieurs égards.

D’abord ST capitalise sur la vaste base installée des STM32 et de l’écosystème qui s’est développé autour de ces microcontrôleurs en termes d’outils et de services depuis dix ans. Les concepteurs pouvant dès lors réutiliser leur code écrit pour les cœurs Cortex-M sur ce nouveau circuit. Avec en outre la possibilité d’affecter les périphériques de manière transparente soit au Cortex-A et son Linux, soit au Cortex-M avec son OS temps réel.

Ensuite, ST a fourni un effort important au niveau logiciel en proposant une distribution Linux baptisée OpenSTLinux fondée sur le noyau Linux 4.19 LTS (Long Term Stablity), inscrit sur le long terme avec un support par la communauté. Cette distribution OpenSTLinux, qui est optimisée pour le cœur Cortex-A et qui doit permettre d’accélérer les phases de développement d’un projet, a déjà été validée et acceptée, selon ST, par la Linux Foundation, le projet collaboratif Yocto et l’association Linaro.

Enfin, ST propose pour son circuit STM32MP1 un engagement sur 10 ans en matière d'approvisionnement industriel, la société venant par ailleurs de renouveler jusqu’en 2029 le support des premiers STM32, assurant de fait une assurance de fourniture sur 22 ans. On le voit, en optant pour le cœur Cortex-A7, ST a fait le choix, selon le fabricant franco-italien, du meilleur compromis taille/consommation/puissance afin de ne pas s’écarter trop brutalement, avec ce microprocesseur, de sa base installée très importante des utilisateurs des microcontrôleurs STM32.

D’un point de vue technologique, la famille de microprocesseurs STM32MP1 intègre deux cœurs de processeur d'application Arm Cortex-A7 cadencés à 650 MHz et un cœur de microcontrôleur Arm Cortex-M4 cadencé à 209 MHz. Le STM32MP1 est compatible avec les mémoires DDR SDRam (DDR3, DDR3L, LPDDR2, LPDDR3 32/16 bits à 533 MHz), ainsi qu’avec les mémoires flash (eMMC, cartes SD, NAND SLC, NAND SPI et flash NOR Quad-SPI). Le STM32MP1 s'accommode en outre des afficheurs de type parallèle et série allant jusqu’à la résolution WXGA à 60 images par seconde.

Le circuit intègre également un processeur graphique 3D de chez Vivante qui facilite le développement d’interfaces homme-machine en s’appuyant sur l’interface OpenGL ES 2.0 avec prise en charge native de Linux et de plusieurs environnements applicatifs dont Android et Qt. A ce sujet, ST indique qu’il a collaboré avec la société française Witekio pour assurer le portage d’Android sur le microprocesseur STM32MP1. Et pour accélérer le développement de produits sécurisés bâtis sur Linux, ST a aussi travaillé avec TimeSys, éditeur de logiciels libres, en particulier au niveau des BSP (Board Support Package), des pilotes, de la chaîne d'amorçage, du noyau Linux lui-même et du système d’exploitation sécurisé OP-TEE (Trusted Execution Environment), tous fournis avec le circuit.

Côté sécurité, la série des STM32MP1 s’appuie sur la technologies de sécurité TrustZone (inhérente à l’architecture Arm Cortex-A), sur des blocs d'IP de cryptographie et hachage, et sur une fonction de démarrage sécurisé (Secure Boot).

Au-delà, ST délivre les environnements complets de développement logiciel STM32CubeMP1 et STM32CubeMX. Ce dernier étant conçu pour faciliter la configuration des cœurs Cortex-A7 et Cortex-M4 aux niveaux logiciel et matériel tout en générant du code C sur des informations relatives au cœur M4, en particulier le fichier Linux appelé Device Tree, permettant la description de la configuration du processeur.

Le STM32MP1 offre 37 interfaces de communication parmi lesquelles trois connexions USB 2.0 dont deux à haut débit, un Gigabit Ethernet, 2 CAN FD et I²C standard, ainsi que des interfaces UART et SPI. Il est également livré avec un ensemble de périphériques analogiques qui comprend deux convertisseurs analogiques/numériques sur 16 bits, deux convertisseurs numériques/analogiques sur 12 bits, des régulateurs de tension embarqués (LDO) et 29 timers et 3 watchdogs.

L'architecture flexible de ce circuit garantit, selon ST, une grande efficacité énergétique. Par exemple, en arrêtant l’exécution du Cortex-A7 et en n’exécutant l'application qu’à partir du Cortex-M4 plus éco-efficace, la consommation peut en général être réduite de 25%. À partir de ce mode, passer en mode veille réduit encore de 2,5 fois la consommation d'énergie, tout en prenant en charge la reprise de l'exécution de Linux en 1 à 3 secondes, selon l'application.

Pour la gestion de l’alimentation, ST lance à cette occasion un circuit spécifique, le STPMIC1, un circuit PMIC (Power Management Integrated Circuit) composé de quatre régulateurs à découpage abaisseur de tension (DC/DC buck), six régulateurs de tension linéaires (LDO) et un régulateur à découpage élévateur de tension (DC/DC boost). Ce circuit permet de réduire la taille du circuit imprimé mais aussi le coût total de la solution et permet d’alimenter les autres composants de l’application comme les mémoires et autres périphériques. Ce circuit, optionnel, accompagne la série STM32MP1 notamment dans les applications alimentées sur batterie.

Les microprocesseurs multicœurs STM32MP1 sont annoncés par ST comme généralistes, destinés aux marchés de l'industriel, du grand public, de la maison intelligente, de la santé et du bien-être, à l’exception des applications automobiles et spatiales qui réclament des qualifications particulières.

Enfin signalons que des cartes d’évaluation et des kits Discovery sont d’ores et déjà disponibles. L’ensemble de ces technologies seront présentées en avant-première à l’ensemble des développeurs sur le stand de STMicrolectronics à Embedded World la semaine prochaine.

Vous pouvez aussi suivre nos actualités sur la vitrine LinkedIN de L'Embarqué consacrée aux microcontrôleurs : Embedded-MCU https://www.linkedin.com/showcase/embedded-mcu/

Sur le même sujet