Microprocesseurs et Microcontrôleurs - · PDF fileMicroprocesseurs et...

of 44/44
Ministère de l’Enseignement Supérieur, de la Recherche Scientifique et de la Technologie Université Virtuelle de Tunis Microprocesseurs et Microcontrôleurs Les microcontrôleurs Jlassi Khaled Attention ! Ce produit pédagogique numérisé est la propriété exclusive de l'UVT. Il est strictement interdit de la reproduire à des fins commerciales. Seul le téléchargement ou impression pour un usage personnel (1 copie par utilisateur) est permis.
  • date post

    18-Feb-2018
  • Category

    Documents

  • view

    220
  • download

    0

Embed Size (px)

Transcript of Microprocesseurs et Microcontrôleurs - · PDF fileMicroprocesseurs et...

  • Ministre de lEnseignement Suprieur, de la Recherche Scientifique et de la Technologie

    Universit Virtuelle de Tunis

    Microprocesseurs

    et Microcontrleurs Les microcontrleurs

    Jlassi Khaled

    Attention !

    Ce produit pdagogique numris est la proprit exclusive de l'UVT. Il est strictement interdit de la reproduire des fins

    commerciales. Seul le tlchargement ou impression pour un usage personnel (1 copie par utilisateur) est permis.

  • Microprocesseurs et Microcontrleurs Les microcontrleurs

    2 Jlassi Khaled

    Universit Virtuelle de Tunis

    I. Introduction.

    Comme nous lavions dis prcdemment, un microcontrleur est un composant

    runissant sur un seul et mme silicium un microprocesseur, divers dispositifs

    d'entres/sorties et de contrle d'interruptions ainsi que de la mmoire, notamment

    pour stocker le programme dapplication. Il intgre galement un certain nombre

    de priphriques spcifiques des domaines cibls (bus srie, interface parallle,

    convertisseur analogique numrique, ...). Les microcontrleurs amliorent donc

    l'intgration et le cot (li la conception et la ralisation) d'un systme base de

    microprocesseur en rassemblant les lments essentiels dun tel systme dans un seul

    circuit intgr. On parle alors de "systme sur une puce" (en anglais : "System On

    chip"). Il existe plusieurs familles de microcontrleurs, se diffrenciant par la vitesse de

    leur processeur et par le nombre de priphriques qui les composent. Toutes ces

    familles ont un point commun cest de runir tous les lments essentiels dune

    structure base de microprocesseur sur une mme puce. Voici gnralement ce

    que lon trouve lintrieur dun microcontrleur:

    Un processeur (C.P.U.),

    Des bus,

    De la mmoire de donne (RAM et EEPROM),

    De la mmoire programme (ROM, OTPROM, UVPROM ou EEPROM),

    Des interfaces parallles pour la connexion des entres / sorties,

    Des interfaces sries (synchrone ou asynchrone) pour le dialogue avec dautres

    units,

    Des timers pour gnrer ou mesurer des signaux avec une grande prcision

    temporelle.

    Le microcontrleur apparat donc comme un systme extrmement complet et

    performant, capable d'accomplir une ou plusieurs tches trs spcifiques, pour

    lesquelles il a t programm. Ces tches peuvent tre trs diverses, si bien qu'on

    trouve aujourd'hui des microcontrleurs presque partout: dans les appareils

    lectromnagers (rfrigrateurs, fours micro-ondes...), les tlviseurs et

  • Microprocesseurs et Microcontrleurs Les microcontrleurs

    3 Jlassi Khaled

    Universit Virtuelle de Tunis

    magntoscopes, les tlphones sans fil, les priphriques informatiques (imprimantes,

    scanners...), les voitures (airbags, climatisation, ordinateur de bord, alarme...), les

    avions et vaisseaux spatiaux, les appareils de mesure ou de contrle des processus

    industriels, ... La force du microcontrleur, qui lui a permis de s'imposer de manire si

    envahissante en si peu de temps, c'est sa spcialisation, sa trs grande fiabilit et son

    cot assez faible (pour les modles produits en grande srie, notamment pour

    l'industrie automobile).

    L'objectif premier est d'offrir le plus de performances et de services pour un prix

    minimal de la puce. Or aujourd'hui un coeur de processeur de 16 ou 32 bits

    reprsente une augmentation de la surface occupe sur le silicium de seulement

    quelques pour-cent par rapport un circuit en 8 bits. Opter pour un coeur de

    processeur en 16 ou en 32 bits, c'est permettre entre autres des excutions parallles,

    un espace mmoire largi, des interfaces de communications ou encore le

    remplacement de fonctions analogiques par des traitements numriques.

    Actuellement, une version 16 bits, voire 32 bits, a un cot comparable un 8 bits. Les

    modles 8 bits ont encore leur lot d'applications mais, trop souvent pousss leur

    limite sans oublier l'espace mmoire qui reste inexorablement plafonn 64 Ko.

    II. Le processeur.

    II.1 Structure classique.

    Il est clair que la puissance dun microcontrleur est directement lie au processeur

    quil intgre. Ce processeur est surtout caractris par la famille laquelle il

    appartient (CISC, RISC, VLIW, DSP). Il est constitu par un certain nombre dlments

    similaires ce que lon trouve dans un microprocesseur. Voici ce quon trouve

    lintrieur :

    - Une Unit Arithmtique et Logique (UAL, en anglais Aritmetic and Logical Unit -

    ALU), qui prend en charge les calculs arithmtiques lmentaires et les tests.

    - Une Unit de Contrle.

    - Des registres, qui sont des mmoires de petite taille (quelques octets), suffisamment

    rapides pour que l'UAL puisse manipuler leur contenu chaque cycle de lhorloge.

    Un certains nombre de registres sont communs la plupart des processeurs :

  • Microprocesseurs et Microcontrleurs Les microcontrleurs

    4 Jlassi Khaled

    Universit Virtuelle de Tunis

    Compteur dinstructions : Ce registre contient ladresse mmoire de

    linstruction en cours dexcution.

    Accumulateur : Ce registre est utilis pour stocker les donnes en cours de

    traitement par lUAL.

    Registre dadresses : Il contient toujours ladresse de la prochaine information

    lire par lUAL, soit la suite de linstruction en cours, soit la prochaine

    instruction.

    Registre dinstructions : Il contient linstruction en cours de traitement.

    Registre dtat : Il sert stocker le contexte du processeur, ce qui veut dire

    que les diffrents bits de ce registre sont des drapeaux (flags) servant

    stocker des informations concernant le rsultat de la dernire instruction

    excute.

    Pointeurs de pile : Ce type de registre, dont le nombre varie en fonction du

    type de processeur, contient ladresse du sommet de la pile (ou des piles).

    Registres gnraux : Ces registres sont disponibles pour les calculs.

    - Un squenceur, qui permet de synchroniser les diffrents lments du processeur.

    En particulier, il initialise les registres lors du dmarrage de la machine et il gre les

    interruptions.

    - Une horloge qui synchronise toutes les actions de lunit centrale. Elle est prsente

    dans les processeurs synchrones, et absente des processeurs asynchrones et des

    processeurs autosynchrones

    - Une unit dentre-sortie, qui prend en charge la communication avec la mmoire

    de lordinateur ou la transmission des ordres destins piloter ses processeurs

    spcialiss, permettant au processeur daccder aux priphriques de lordinateur.

    II.2 Structures Actuelles.

    Les processeurs actuels intgrent des lments plus complexes :

    - Plusieurs UAL, ce qui permet de traiter plusieurs instructions en mme temps.

    L'architecture superscalaire, en particulier, permet de disposer des UAL en parallle,

    chaque UAL pouvant excuter une instruction indpendamment de l'autre.

    - L'architecture superpipeline permet de dcouper temporellement les traitements

    effectuer. Cest une technique qui vient du monde des supercalculateurs.

  • Microprocesseurs et Microcontrleurs Les microcontrleurs

    5 Jlassi Khaled

    Universit Virtuelle de Tunis

    - Une unit de prdiction de saut, qui permet au processeur danticiper un saut dans

    le droulement dun programme, permettant dviter dattendre la valeur dfinitive

    dadresse du saut. Cela permet de mieux remplir le pipeline.

    - Une unit de calcul en virgule flottante (en anglais Floating Point Unit - FPU), qui

    permet dacclrer les calculs sur des nombres rels cods en virgule flottante.

    - La mmoire cache, qui permet dacclrer les traitements, en diminuant les accs

    la RAM. Ces mmoires tampons sont en effet beaucoup plus rapides que la RAM

    et ralentissent moins le CPU. Le cache instructions reoit les prochaines instructions

    excuter, le cache donnes manipule les donnes. Parfois, un seul cache unifi est

    utilis pour le code et les donnes. Plusieurs niveaux de caches peuvent coexister,

    on les dsigne souvent sous les noms de L1, L2 ou L3. Dans les microprocesseurs

    volus, des units spciales du processeur sont dvolues la recherche, par des

    moyens statistiques et/ou prdictifs, des prochains accs en mmoire centrale.

    II.3 Jeu dinstructions.

    On peut classer les instructions qu'un microprocesseur ou microcontrleur est capable

    d'effectuer en quelques groupes.

    II.3.1 Instructions de transfert.

    Le microprocesseur ou microcontrleur passe une grande partie de son temps transfrer des

    octets d'un emplacement vers un autre : d'un priphrique vers un registre interne, d'un

    registre interne vers la mmoire RAM ou vice-versa, d'un registre interne vers un

    priphrique ; ce qui ne peut en gnral pas tre fait, c'est un transfert direct d'une case

    mmoire une autre ou vers un priphrique; Quoique certains instructions de transfert

    utilisent comme oprande source un emplacement mmoire et comme oprande destination un

    autre emplacement mmoire. Ceci ne veut pas dire quun transfert direct mmoire-mmoire

    est possible. En faite linformation source est dabord lue par le processeur, ensuite elle est

    crite dans lemplacement mm