Arm Cortex-M52 vise à apporter l’IA aux petits appareils IoT à faible coût

Bras Cortex-M52Bras Cortex-M52

Arm Cortex-M52 est un nouveau cœur de microcontrôleur doté de la technologie Arm Helium et conçu pour apporter des capacités d’IA à des appareils IoT plus petits et moins coûteux que ce qui est déjà possible avec les SoC basés sur le cœur Arm Cortex-M55.

Principales caractéristiques et spécifications du Arm Cortex-M52 :

  • Architecture – Armv8.1-M
  • Interfaces de bus
    • AMBA 5 AXI 32 bits ou AMBA 5 AHB 32 bits Bus système principal
    • Bus périphérique AMBA 5 AHB 32 bits
    • Bus d’accès TCM AMBA 5 AHB 32 bits (port subordonné)
  • Pipeline – Pipeline à 4 étages
  • Sécurité
    • Technologie Arm TrustZone (en option), avec une unité d’attribution de sécurité (SAU) en option comprenant jusqu’à 8 régions. Vérification des limites de pile.
    • Prise en charge optionnelle de l’extension PACBTI (Pointer Authentication, Branch Target Identification)
  • Protection de la mémoire – Unités de protection de la mémoire (MPU) en option pour l’isolation des processus avec jusqu’à 16 régions MPU et une région d’arrière-plan – si TrustZone est implémenté, il peut y avoir une MPU sécurisée et une MPU non sécurisée.
  • Extension DSP – Extension DSP/SIMD 32 bits
  • Hélium à un battement en option, prenant en charge jusqu’à
    • 1 x MAC 32 bits/cycle
    • 2 MAC 16 bits/cycle
    • 4 MAC 8 bits/cycle
  • Unité à virgule flottante (FPU) – FPU en option avec prise en charge des opérations à virgule flottante demi-précision (fp16), simple précision (fp32) et double précision (fp64).
  • Prise en charge de l’accélérateur
    • Interface de coprocesseur en option (64 bits) prenant en charge jusqu’à 8 unités de coprocesseur pour les accélérateurs de calcul personnalisés
    • Instructions personnalisées du bras en option
  • Cache d’instructions – Jusqu’à 64 Ko avec ECC (facultatif)
  • Cache de données – Jusqu’à 64 Ko avec ECC (facultatif)
  • Instruction TCM (ITCM) – Jusqu’à 16 Mo avec ECC (en option)
  • Données TCM (DTCM) – Jusqu’à 16 Mo avec ECC (en option)
  • Interruptions – Contrôleur d’interruption vectoriel imbriqué (NVIC) intégré prenant en charge jusqu’à 480 interruptions + interruption non masquable (NMI). Nombre de niveaux de priorité configurable de 8 à 256.
  • Contrôleur d’interruption de réveil (WIC) – WIC interne et/ou externe (en option) pour réveiller le processeur après le déclenchement de l’alimentation par rétention d’état ou lorsque toutes les horloges sont arrêtées.
  • Prise en charge de faible consommation
    • Modes veille et veille profonde définis architecturalement
    • Instructions d’attente d’événement (WFE) et d’attente d’interruption (WFI) intégrées avec fonctionnalité Sleep On Exit
    • Signaux d’indication de sommeil et de sommeil profond
    • Plusieurs domaines de puissance avec prise en charge facultative de la rétention pour les mémoires et la logique
    • Efficacité des performances : 4,3 CoreMark/MHz et 1,6 DMIPS/MHz
  • Déboguer
    • Points d’arrêt matériels et logiciels
    • Cellule de Suivi des Performances (UGP)
    • Tracer
    • Trace d’instructions facultative avec Embedded Trace Macrocell (ETM), Data Trace (DWT) (trace de données sélective) et Instrumentation Trace (ITM) (trace logicielle)
  • Robustesse
    • ECC sur le cache d’instructions, le cache de données, le TCM d’instructions, le TCM de données (facultatif)
    • Étape de verrouillage à double cœur (en option)
    • Protection de l’interface bus (en option)
    • PMC-100 (contrôleur MBIST programmable, en option)
    • Extension de fiabilité, de disponibilité et de facilité d’entretien (RAS)

Le schéma fonctionnel du Cortex-M52 est quasiment identique à celui du Cortex-M55, mis à part le bloc PACBTI apparaissant à la place du bloc DSP, la chaîne « AXI-5 master » est remplacée par « AXI-5/AHB -5 interfaces de bus ». Il ne semble donc pas y avoir beaucoup de différences mais Arm propose un tableau comparatif pour tous les processeurs Arm Cortex-M que j’ai reproduit avec les cœurs Armv8 et le Cortex-M7 pour mieux comprendre les différences. (les utilisateurs de smartphones voudront peut-être faire pivoter leur téléphone en mode paysage pour lire le tableau)

Fonctionnalité Cortex-M33 Cortex-M35P Cortex-M52 Cortex-M55 Cortex-M7 Cortex-M85
Architecture d’ensemble d’instructions Ligne principale Armv8-M Ligne principale Armv8-M Ligne principale Armv8.1-M Ligne principale Armv8.1-M Armv7-M Ligne principale Armv8.1-M
Zone de confiance pour Armv8-M Oui (option) Oui (option) Oui (option) Oui (option) Non Oui
Hélium (extension vectorielle de profil M) Non Non Battement unique (option) Double battement (option) Non Double battement (option)
Extension du PACBTI Non Non Oui (option) Non Non Oui (option)
Unité à virgule flottante (FPU) SP (option) SP (option) HP, SP, DP (en option) HP, SP, DP (en option) SP, DP (option) HP, SP, DP (en option)
Traitement du signal numérique (DSP) Oui (option) Oui (option) Oui Oui Oui Oui
Division matérielle Oui Oui Oui Oui Oui Oui
Instructions personnalisées du bras Oui (option) Non Oui (option) Oui (option) Non Oui (option)
Interface coprocesseur Oui (option) Oui (option) Oui (option) Oui (option) Non Oui (option)
DMIPS/MHz 1,54 1,50 1,60 1,69 2.31 3.13
Marque de base/MHz 4.10 4.10 16h30 4h40 5.29 6.28
Nombre maximum d’interruptions externes 480 480 480 480 240 480
Nombre maximal de régions MPU 16 16 16 16 16 16
Autobus principal AHB (32 bits) AHB (32 bits) AXI (32 bits) ou AHB (32 bits) AXI (64 bits) AXI (64 bits) AXI (64 bits)
Cache d’instructions Non 2-16 Ko 0-64 Ko 0-64 Ko 0-64 Ko 0-64 Ko
Cache de données Non Non 0-64 Ko 0-64 Ko 0-64 Ko 0-64 Ko
Instruction MTC Non Non 0-16 Mo 0-16 Mo 0-16 Mo 0-16 Mo
Données MTC Non Non 0-16 Mo 0-16 Mo 0-16 Mo 0-16 Mo
Configuration DCLS (Dual Core Lock-Step) Non Oui Oui (option) Oui (option) Oui (option) Oui (option)

Nous pouvons en effet voir quelques différences supplémentaires entre le Cortex-M52 et le Cortex-M55, le premier prenant en charge l’hélium à un seul battement contre l’hélium à double battement pour le second, et le bus principal est de 32 bits pour la nouvelle partie, tandis que le Cortex- M55 prend en charge un bus AXI 64 bits. Cela peut expliquer pourquoi Arm affirme que le Cortex-M52 offre une voie de migration simplifiée à partir du Cortex-M33 et du Cortex-M4 pour les applications AIoT dans le contrôle automobile et industriel, la maintenance prédictive et la fusion de capteurs portables.

Le Cortex-M52 offre une meilleure efficacité, un encombrement réduit et un prix inférieur par rapport aux cœurs Cortex-M55 et Cortex-M85, au prix de performances inférieures. Mais la société affirme toujours que « les développeurs peuvent bénéficier d’une amélioration des performances du ML et du DSP, avec une augmentation des performances jusqu’à 5,6 fois pour le ML et jusqu’à 2,7 fois pour le traitement du signal numérique par rapport aux générations Cortex-M précédentes », ce qui Je suppose qu’il s’agirait des cœurs Cortex-M33/Cortex-M4 susmentionnés.​

Arm Cortex-M52 remplacera les solutions d’IA traditionnelles (très) avancées composées d’un CPU, d’un DSP et d’un NPU qui nécessitent trois chaînes d’outils, compilateurs, débogueurs, etc. distincts et permettront aux développeurs d’écrire avec un flux de développement unifié avec une seule chaîne d’outils et d’autres outils de développement pour les charges de travail traditionnelles, DSP et ML. Il reste également entièrement compatible logiciel avec les cœurs Cortex-M55 et Cortex-M85. Comme cela peut prendre un certain temps avant que le silicium réel ne soit disponible, le Cortex-M52 sera bientôt disponible sur Arm Virtual Hardware pour lancer le développement logiciel à l’avance.

Cela peut prendre un certain temps avant que les microcontrôleurs Arm Cortex-M52 soient mis sur le marché, et je m’attendrais à des annonces à partir de 2025. Plus d’informations peuvent être trouvées sur la page du produit et dans l’annonce.

Retrouvez l’histoire de Raspberry Pi dans cette vidéo :

YouTube video

  • 10 Vis Torx M5-2 2 X 20 Mm Pour Pare-chocs Ailes Voiture Pour Ford Pour Focus Pour Escape
  • 10 Vis Torx M5-2 2 X 20 Mm Pour Pare-chocs Ailes Voiture Pour Ford Pour Focus Pour Escape