Ouvrir le menu principal
Différentes variantes des Cortex-M0 et Cortex-M3

ARM Cortex-M est une famille de processeur RISC 32-bits d'architecture ARM servant à la fois de microprocesseur et de microcontrôleur à destination de l'embarqué. Elle implémente d'abord le jeu d'instructions ARMv6-M (Cortex-M0, Cortex-M0+ et Cortex-M1) puis le ARMv7-M (Cortex-M3, Cortex-M4 et Cortex-M7)[1]. Cette famille a été développé par ARM Ltd en parallèle à la famille Cortex-A (ARMv7-A) destinée au marché des smartphones et tablettes tactiles et à la famille Cortex-R (ARMv7-R) destinée au temps réel.

La carte en matériel libre Arduino Due est équipé d'un Cortex-M3[2].

La carte synthétiseur audio en matériel libre Axoloti utilise un Cortex-M4F, le STM32 F4 de STMicroelectronics[3].

Sommaire

ARMv6Modifier

Cortex-M0Modifier

Le cœur Cortex-M0 est optimisé pour une petite taille de puce de silicium, il est notamment utilisé dans les puces de bas prix.

Caractéristique du cœur Cortex-M0 :

  • Architecture ARMv6-M
  • Pipeline 3 étapes

Options de silicium :

  • Multiplier la vitesse du matériel avec 1 ou 32 cycles.

IntégrationsModifier

Les microcontrôleurs suivants sont basés sur le cœur Cortex-M0 :

PSoC 4, 4M, 4L, Infineon XMC1000, Nordic nRF51, NXP LCP1100, LCP1200, Famille NuvoTon NuMicro M0, Sonix SN32F700, STMicroelectronics STM32 F0, Toshiba TX00, Vorago VA10800 (température extrême), VA10820 (trempé aux radiations).

Les puces suivantes ont un Cortex-M0 comme cœur secondaire :

NXP LPC4300(un Cortex-M4F + un Cortex-M0) Les microcontrôleurs sans fil CC1310 et CC2650 de Texas Instruments(un processeur réseau Cortex-M3+ un processeur réseau Cortex-M0 programmable+ un moteur de contrôleur de capteur breveté).

Cortex-M0+Modifier

  • Architecture ARMv6-M
  • Pipeline 2 étapes

Cortex-M1Modifier

  • Architecture ARMv6-M
  • Pipeline 3 étapes

ARMv7Modifier

Cortex-M3Modifier

Il est notamment utilisé dans les STMicroelectronics STM32 F1 et les Rockchip RKnanoC et RKnanoD.

Cortex-M4Modifier

Le Cortex-M4 ajoute un DSP, et dans sa version Cortex-M4F comporte également une unité de calcul flottant.

Optionnel :

  • Le Cortex-M4F comporte un FPU, le FPv4-SP : Simple précision conforme à la norme IEEE-754.


Il est notamment utilisé dans les STMicroelectronics STM32 F3 et F4 en version M4F.

Cortex-M7Modifier

C'est le plus performant des processeurs de la série Cortex-M[4]

Il est notamment utilisé dans les STMicroelectronics STM32 F7 et H7.

ARMv8Modifier

Dans le domaine des microcontrôleurs, l'architecture ARMv8 reste en 32 bits, contrairement aux domaine des Applications (Cortex-A), où l'on trouve à la fois quelques 32 bits et une majorité de 64 bits (AARCH64).

Cortex-M23Modifier

Le Cortex-M23 est annoncé en Octobre 2016 il est basé sur la nouvelle architecture ARMv8-M (un sous-ensemble des instructions ARMv8 ne comportant pas d'instructions 64 bits d'AArch64).

Il a les caractéristiques du Cortex-M0+, mais comporte en plus des instructions de division d'entier, des fonctionnalités de sécurité TrustZone et un pipeline d'instruction en 2 étapes.

Cortex-M33Modifier

Il a les caractéristiques du Cortex-M4 comporte en plus les fonctionnalités de sécurité TrustZone, et un pipeline d'instruction en 3 étapes.

Optionnel :

  • FPU FPv5 : Simple précision conforme à la norme IEEE-754.

AnnexesModifier

Notes et référencesModifier

Liens externesModifier

Sur les autres projets Wikimedia :