Microcontrôleur - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Du microprocesseur au microcontrôleur

Le processeur est l'élément central d'un système informatique : il interprète les instructions et traite les données d'un programme. Il a besoin de certains éléments externes pour fonctionner :

  • une horloge pour le cadencer (en général à quartz ou Boucle à verrouillage de phase (PLL: Phase-Locked Loop)) ;
  • de la mémoire pour stocker les variables durant l’exécution du programme (mémoire vive RAM) et le programme d’une mise sous tension à l’autre (mémoire morte ROM). Si l'on conçoit un système dédié à une tâche bien particulière (ce qui est généralement le cas des systèmes embarqués), le programme n'est pas amené à changer. Il peut donc être stocké dans une mémoire morte (ROM) ;
  • des périphériques (pour interagir avec le monde extérieur).

Ces éléments sont reliés par 3 bus :

  • le bus d'adresse qui permet au microprocesseur de sélectionner la case mémoire ou le périphérique auquel il veut accéder pour lire ou écrire une information (instruction ou donnée) ;
  • le bus de données qui permet le transfert des informations entre les différents éléments ; ces informations seront soit des instructions, soit des données en provenance ou à destination de la mémoire ou des périphériques ;
  • le bus de contrôle qui indique si l'opération en cours est une lecture ou une écriture, si un périphérique demande une interruption pour faire remonter une information au processeur, etc.

Traditionnellement, ces composants sont intégrés dans des circuits distincts. Le développement d'un tel système à base de microprocesseur se trouve donc pénalisé par (liste non exhaustive) :

  • la nécessité de prévoir l'interconnexion de ces composants (bus, câblage, nappes de connexion) ;
  • la place occupée physiquement par les composants et les moyens d'interconnexion ;
  • la consommation énergétique ;
  • la chaleur dégagée ;
  • le coût financier.

Les microcontrôleurs améliorent l'intégration et le coût (lié à la conception et à la réalisation) d'un système à base de microprocesseur en rassemblant ces éléments essentiels dans un seul circuit intégré. Un microcontrôleur est donc un composant autonome, capable d'exécuter le programme contenu dans sa mémoire morte dès qu'il est mis sous tension. Selon les modèles et les conditions de fonctionnement, les microcontrôleurs peuvent avoir besoin de quelques composants externes (quartz, quelques condensateurs, parfois une ROM), mais ceci reste très limité.

Lorsque toutes les fonctions du système informatique sont regroupées dans un unique circuit intégré, y compris les fonctions logiques, analogiques, radiofréquence, d'interface (USB, Ethernet, etc.), on parle alors de System on Chip (système sur puce ou système mono-puce). Ces composants sont basés sur un ou plusieurs cœurs de microcontrôleur, de microprocesseur ou de DSP.

Utilisations et volume du marché

Les microcontrôleurs sont très utilisés dans tous les systèmes embarqués évoqués en introduction. Ils sont également très prisés en robotique amateur (robots autonomes) et en modélisme (automatismes des maquettes de réseaux ferroviaires par exemple).

Les microcontrôleurs représentent la plus grosse partie des ventes dans le marché des microprocesseurs. En effet, un foyer moyen d'un pays développé est susceptible d'être équipé de seulement un ou deux microprocesseurs généralistes (ordinateurs), mais d'une ou deux douzaines de microcontrôleurs (appareils électroménagers). Une automobile de milieu de gamme est équipée d'au moins 50 microcontrôleurs.

Microcontrôleur ST6 équipé d'une mémoire EPROM effaçable aux UV.

Les fabricants proposent souvent des versions spéciales de leurs microcontrôleurs pour faciliter le développement matériel et logiciel des applications. Par exemple, lorsque les mémoires mortes utilisées étaient des EPROM, il existait des variantes des microcontrôleurs équipées de fenêtres sur le dessus, qui permettaient d'effacer le programme grâce à de la lumière ultraviolette. Ceci permettait de recommencer une programmation après un cycle programmation-test.

Pour de petites séries (quelques milliers d'unités ou moins), les microcontrôleurs programmables une seule fois (OTP, one-time programmable) sont économiques. Ils sont basés sur la même puce que la version UV-EPROM, se programment avec le même matériel, mais le boîtier n'est pas équipé de la fenêtre qui permet l'effacement (et qui est onéreuse).

Il peut exister des versions de microcontrôleurs dépourvus de mémoire morte interne. La mémoire morte est alors située dans un boîtier extérieur, par exemple une EPROM. Il suffit alors d'un simple programmateur d'EPROM pour réaliser la programmation, mais des broches du microcontrôleur sont requises pour la communication avec la mémoire externe, et ne peuvent donc pas être utilisées pour les entrées-sorties. Ces versions sont plus coûteuses, mais peuvent se révéler intéressantes si les quantités visées sont faibles.

Plus rarement, on rencontre une variante de l'approche précédente, le piggy back. Le microcontrôleur ne dispose pas non plus de mémoire morte interne, mais la communication avec l’EPROM se fait non pas par des broches d'entrée-sortie, mais par des broches spéciales situées sur le dessus du boîtier. L’EPROM se fixe alors au-dessus du microcontrôleur, et ne monopolise pas de port d'entrée-sortie. Ces versions sont souvent onéreuses et peu pratiques, sauf pour les phases de développement et les très petites séries.

Le recours à la programmation sur place, dans le circuit applicatif, permet de mettre à jour le programme après la fabrication du produit. On parle alors de flashage. Cette opération peut être effectuée via un programme situé en ROM, ou passer par l'utilisation d'un connecteur physique particulier. Dans tous les cas, on évite ainsi un retour en usine pour effectuer la mise à jour.

Lorsqu'il s'agit de produire de plus grandes séries (plusieurs milliers et plus), le coût de réalisation d'un masque pour la fabrication de mémoire morte non programmable est facilement amorti sur tous les exemplaires produits. On peut alors fixer le contenu de la mémoire morte lors de la réalisation du circuit intégré, et non plus lors du montage du produit. Cependant, ces mémoires présentent l'inconvénient de ne pouvoir être mises à jour. Si l'on envisage néanmoins de telles mises à jour, on peut prévoir de monter le microcontrôleur sur un support, ce qui permet de le faire remplacer par un technicien en cas de nécessité.

Page générée en 0.111 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise