systeme a microprocesseur - beddouri

Upload: achraf-rossoneri

Post on 13-Apr-2018

244 views

Category:

Documents


1 download

TRANSCRIPT

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    1/69

    Pr. Abdelali EL BDOURI

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    2/69

    Haut Niveau VS Bas Niveau

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    3/69

    Assembleur: philosophie et atouts

    Lassembleur abrg ASM estle langage de programmationde plus bas niveau.

    Un langage trop proche du

    matriel oblige le

    programmeur se soucier deconcepts proches dufonctionnement de la machine

    langage de programmation :un code de communication,

    permettant un tre humain

    de dialoguer avec sa machine.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    4/69

    Assembleur: philosophie et atouts

    le terme "Assembleur" dsigne tour tour deuxchoses diffrentes:

    Le langage de programmation de plus basniveau accessible facilement un humain.

    Un logiciel transformant un fichier sourcecontenant des instructions, en un fichierexcutable que le processeur peutcomprendre.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    5/69

    lassembleur : rien n'est parfait

    Le programme est long etfastidieux crire.

    Les programmes crits enassembleur sont trs peu

    portables vers une autrearchitecture, existante ou future.

    Raliser un programme completavec demande normmentd'efforts et d'exprience.

    Difficult de localisation d'erreursau cours de la mise au point duprogramme.

    le cot de dveloppement.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    6/69

    lassembleur : Avantages.

    la possibilit de faire toutet n'importe quoi avec lammoire. L'ASM n'a pas de

    limite et de scurit.Autant il peut tre utile,autant il peut dtruire.

    Les programmes faits enASM sont plus petits, plus

    rapides et beaucoup plusefficaces que ceux faitavec des compilateurs.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    7/69

    lassembleur : Avantages.

    le seul langage permettant demodifier un programmecompil dont on na pas lessources (utiles pour le ReverseEngineering entre autres).

    Possibilit d'intgration dansdes langages de plus hautniveau pour les partiesncessitant d'tre optimiser,d'ailleurs bon nombre delangages de programmationpermettent, afin de comblerleurs lacunes (vitessed'excution, accs auxpriphriques, etc.), d'appelerdes routines crites en

    assembleur.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    8/69

    lassembleur : Avantages.

    Vu que lassembleur estqualifi comme tant lelangage de programmationle plus bas niveau, il dpenddonc fortement du type deprocesseur. Ainsi il n'existepas un langage assembleur,mais un langage assembleurpar type de processeur.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    9/69

    Les diffrents systmes programmables

    Les circuits spcialiss ou ASIC :(Application Specific IntegratedCircuit)

    Les circuits spcialiss sont des

    circuits spcialiss ds leurconception pour une application

    donne (circuit sur mesure ).

    exemples:

    DSP (Digital Signal

    Processor) processeur 3-D (carte

    graphique)

    contrleur de bus, ...

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    10/69

    Les diffrents systmes programmables

    Les circuits spcialiss ou ASIC :(Application Specific IntegratedCircuit)

    Avantages :

    Trs rapide

    Consommation moindre

    Optimis pour une application

    Inconvnients :

    Possibilit d'volution limit

    Cot

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    11/69

    Les diffrents systmes programmables

    PLD (programmable logic device,circuit logique programmable):

    Un circuit logique programmable,ou rseau logique programmable, estun circuit intgr logique qui peut

    tre reprogramm aprs safabrication. Il est compos denombreuses cellules logiqueslmentaires pouvant tre librementassembl. (Wikipdia)

    FPGA (field-programmablegate array, rseau de portesprogrammables in-situ),

    PAL (programmable arraylogic, rseau logique

    programmable),

    ...

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    12/69

    Les diffrents systmes programmables

    PLD (programmable logic device,circuit logique programmable):

    Avantages :

    Forte modularit

    Rapidit

    Inconvnients :

    Mise en uvre plus complexe

    Cots de dveloppement

    lev

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    13/69

    Les diffrents systmes programmables

    Microprocesseur etMicrocontroleur :

    Un microprocesseur constitue lecoeur de tout ordinateur: il

    excute les instructions quicomposent les programmes quenous lui demandons dexcuter.

    caractris par une trs grandeintgration et dot des facults

    fonctionnelles dinterprtation etdexcution des instructions dunprogramme .

    Microcontrleur=

    Microprocesseur

    +

    priphriques

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    14/69

    Les diffrents systmes programmables

    Microprocesseur etMicrocontroleur :

    Avantages :

    Mise en uvre simple.

    Cots de dveloppement

    rduits.

    Inconvnients : Plus lent.

    Utilisation sous optimale

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    15/69

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    16/69

    Elments de base dun systme microprocesseur :

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    17/69

    Elments de base dun systme microprocesseur :

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    18/69

    Elments de base dun systme microprocesseur :

    Le microprocesseur:

    Appel souvent Unit Centrale CPU qui prend en charge les calculsarithmtiques/ logiques lmentaires etles tests.

    Lunit de mmoire:

    Comprenant aussi bien de lammoire vive RAM que de lammoire morte ROM, EPROM, ...

    Cette section reoit le programme etles donnes, ces derniers tant modifisau fur et mesure que se droule letraitement.

    Cette section sert galement lammorisation des valeursintermdiaires et des valeurs finales descalculs raliss pendant lexcution du

    programme.

    Linterfaage Entre/Sortie:

    Constitu de deux modules :

    Le module dentre:

    contient tous les dispositifs servant

    prlever des informations et des

    donnes de lextrieur du calculateur

    et les transfrer dans sa mmoire.

    Le module de sortie:regroupe tous les lments que lon a

    prvu pour transfrer des donnes etdes informations du calculateur vers

    le monde extrieur.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    19/69

    Elments de base dun systme microprocesseur :

    les bus:

    Un bus de donnes :

    Permettant les transfertsdinformations sur un faisceau de

    plusieurs conducteurs parallles. Le

    nombre de fil est lune descaractristiques essentielles delUC. En principe, la largeur du busde donnes est gale la taille desmots manipuls par lemicroprocesseur (8 bits, 16 bits, ...).

    Un bus dadresses :

    un ensemble de conduits paralllesunidirectionnel permettant de

    pointer toutes les cases mmoiresadressables par le calculateurnumrique. Le nombre de lignes dece bus dtermine la taille maximalede la mmoire.

    Un bus de commande et de

    contrle :

    Comportant :

    Des lignes qui permettent lUC de spcifier la RAM ou aux

    ports dentre et de sortie si elle

    veut faire une criture ou une

    lecture.

    Des lignes utilises par lUCpour rpondre aux priphriques,

    par exemple : acceptation dune

    demande dinterruption ou dun

    accs direct mmoire, ...

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    20/69

    Dfinition et volution des

    microprocesseurs

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    21/69

    Dfinition

    Un P est gnralement une puceintgre programmable renfermanttous les circuits de lunit decommande, des registres et de lunit

    arithmtique et logique.

    le microprocesseur regroupe uncertain nombre de transistorslmentaires interconnects,

    caractris par une trs grandeintgration et dot des facultsfonctionnelles dinterprtation etdexcution des instructions dun

    programme

    Il se charge des fonctions suivantes:

    Fournir les signaux desynchronisation et de commande tous les lments du calculateur.

    Prendre en charge les instructionset les donnes en mmoire.

    Transfrer les donnes entre lammoire et les dispositifsdEntre/Sortie et vice versa.

    Dcoder les instructions desprogrammes.

    Effectuer les oprations

    arithmtiques et logiquescorrespondant aux instructions.

    Ragir aux signaux de commandeproduits par les E/S comme lesignal dinitialisation (Reset),lessignaux correspondant auxinterruptions, ...

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    22/69

    Evolution :

    le premier micro processeur a t

    invent, en 1971, par Intel

    le premier microprocesseur qui a

    t commercialis, le 15

    novembre 1971, est l'Intel 4004( 4-bits).

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    23/69

    Composants d'un microprocesseur

    Les trois lments

    Une unit arithmtique etlogique (UAL).

    Une unit de commande(UC).

    jeu de registres .

    Ces trois lments sont relis

    entre eux par un bus interne,

    celui-ci permettant les changes

    de Donnes entre les diffrentes

    parties du microprocesseur

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    24/69

    Composants d'un microprocesseur

    UAL:

    Elle permet deffectuer les oprationsarithmtiques (+, -, *, /) et logiques(OR, AND, XOR).

    Exemple de circuit : 74LS181, UAL4 bits

    Ce circuit ralise des fonctionsarithmtiques et logiques sur A et B,avec le rsultat dans F.

    Lopration est dtermine par M et

    par les entres de slection S0, S1,S2, et S3 :

    M=1 : 16 fonctions logiques

    M=0 : 16 fonctions arithmtiques

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    25/69

    Composants d'un microprocesseur

    Lunit de commande:

    Elle permet de "squencer" ledroulement des instructions.Elle effectue la recherche en

    mmoire de l'instruction, ledcodage, l'excution et la

    prparation de l'instructionsuivante. L'unit de commandelabore tous les signaux de

    synchronisation internes ouexternes (bus des commandes)au microprocesseur.

    Son rle est :

    denvoyer des signaux decontrle pour connecter les

    registres au bus.

    de superviser lefonctionnement de lUAL.

    de donner des signauxdhorloge lensemble deP.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    26/69

    Composants d'un microprocesseur

    Jeu de registres:

    Le jeu de registre contientl'ensemble des registres dumicroprocesseur.

    Loges directement sur leprocesseur

    ils sont en nombre trs limite.Certains d'entre eux sontaffects des oprations d'ordregnral et sont accessibles auprogrammeur tout moment.Nous disons alors qu'il s'agit deregistres gnraux.

    D'autres registres ont des rlesbien plus spcifiques et nepeuvent pas servir un usagenon spcialis.

    Enfin, d'autres registres sontinvisibles et par consquentinaccessible au programmeur.Ces registres ne sont accessiblesqu'au microprocesseur.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    27/69

    Deux types de processeurs :

    RISC : (Reduced Instruction Set

    Computer)

    Nombre d'instructions rduit

    (slection des instructions

    pour une excution plus

    rapide)

    Dcodage des instructionsplus rapide

    CISC :( Complex Instruction Set

    Computer)

    Grand nombre d'instructions,

    Type de processeur le plus

    rpandu

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    28/69

    Structures des systmes P

    Structure de Von Neumann Structure de Harvard

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    29/69

    Les lments de choix

    Architecture :

    ALU (8, 16, 32, 64 bits)

    Structure du processeur

    (Harvard, Von Neumann).

    Type de processeur (RISC,CISC).

    Taille des mmoires

    programme et donne.

    Nombre de ports

    dentre/sortie.

    Fonctionnalits :

    Fonctions analogiques : CAN,

    CNA, Comparateur, ...

    Fonctions de communication :UART (Communication

    srie), USB, I2C, ...

    Facilit de programmation

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    30/69

    Les lments de choix

    Mise en uvre, maintenance :

    Cot de dveloppement :

    outils de dveloppement,

    formation, ...

    Suivi du microcontrleur :

    production suivie,

    disponibilit, composant

    obsolte, ...

    Caractristiques lectriques :

    Frquence dhorloge

    Tensions dalimentation

    Consommation dnergie,

    Caractristiques physiques :

    Type de botier : DIL, PLCC,

    ...

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    31/69

    Registres du CPU

    Le nombre et le types des

    registres que possde leCPU sont une partiedterminante de son

    architecture et ont uneinfluence importante sur la

    programmation.

    Les registres les plusimportants:

    Compteur ordinal(CO).

    Registre d'instruction(RI).

    Accumulateur (ACC).

    Registres gnraux.

    Registres d'index (XR).

    Registre d'tat .

    Registre pointeur depile.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    32/69

    Compteur Ordinal (CO)

    Le registre CO (Program counter"PC") contient toujours l'adressemmoire de la prochaine instruction excuter .

    Le CO est automatiquementincrment aprs chaque utilisation.

    Le programme est ainsi excut ensquence moins qu'il ne contienneune instruction modifiant la squence(ex :instruction de saut).

    La taille du CO dpend du nombre depositions de mmoire adressables parle p.

    Le programmateur n'a pas accsdirect au CO.

    Ex:

    (PC)=10000H ; il pointe la mmoire quicontient l'instruction MOV C,B qui est codesur deux octets (89 D9H) ; l'unit de

    commande incrmentera de deux le contenu duPC : (PC) =10002H (la mmoire sera supposetre organise en octets).

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    33/69

    Registre dinstruction (RI)

    Lorsque le CPU va chercher uneinstruction en mmoire, il la placedans le registre dinstruction (RI).

    La taille de RI correspond la tailledu mot mmoire.

    Sa valeur est dcode par undcodeur pour dterminerlopration excuter.

    RI

    Dcodeur

    Squenceur

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    34/69

    Accumulateur (ACC)

    Le registre le plus important delUAL

    Dans la plupart des oprations

    arithmtiques et logique ,laccumulateur contient un desoprandes avant l'excution et lersultat aprs.

    Il a la mme taille que le motmmoire et le programmeur a unaccs direct l'accumulateur.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    35/69

    Registres gnraux

    Permettent de sauvegarderdes information frquemmentutilises pendant leprogramme ou des rsultats

    intermdiaires pour viter desaccs la mmoireacclrant ainsi lexcution duprogramme.

    Ils sont la disposition duprogrammeur qui peut lesutiliser avec les instructionsqui les manipulent :

    Chargement dun registre partir de la mmoire oudun autre registre.

    Enregistrement enmmoire du contenuregistre.

    Transfert du contenuregistre dansl'accumulateur et vice-

    versa. Incrmentation ou

    dcrmentation d'unregistre.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    36/69

    Registre dindex (XR)

    Peuvent tre utiliss comme desregistre gnraux pour sauvegarderet pour compter.

    Utiles pour la manipulation destableaux de donnes.

    Utiliss dans le mode d'adressageindex.

    Adresse effectivede loprande

    =

    Base(contenu de registre)

    d'index

    +Dplacement

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    37/69

    Registre dtat

    Appel aussi registre condition.

    Il contient diffrents bits appels

    drapeaux (flags) indiquant l'tatd'une condition particulire dans leCPU.

    Ces bits peuvent tre tests parprogramme et ainsi dterminer lasquence d'instructions suivre.(casdes branchement conditionnels)

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    38/69

    Registre pointeur de pile (SP)

    Ce registre est utilis pour simulerune pile dans la mmoire, danslaquelle on rserve une zone mmoire.

    Il contient l'adresse du sommet de lapile. Celle-ci est une partie de la

    mmoire, elle permet de stocker desinformations (le contenu des registres)relatives au traitement desinterruptions et des sous-programmes.

    La pile est gre en LIFO : (Last IN

    First Out) dernier entr premier sorti.Le pointeur de pile SP pointe le hautde la pile, il est dcrment avantchaque empilement, et incrmentaprs chaque dpilement.

    exemple:

    PUSH A empilera le registre A et POPA le dpilera.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    39/69

    Registre pointeur de pile (SP)

    Question?

    Que se passera-t-il durant

    l'excution du programme

    commenant en 12E30H?

    Que vaudra SP et que

    contiendra

    la pile cette adresse,

    la fin du programme?

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    40/69

    Registre pointeur de pile (SP)

    Rponse.

    Le programme commence parsauvegarder le contenu de Cdans la pile (PUSH C). Pour cela(SP) est dcrment de deux((SP)=31000H-2=30FFEH), puis

    on effectue l'criture de (C) dansla mmoire l'adresse (SP) :(30FFEH) = 6142H.

    Pour PUSH A on obtient :(30FFCH)=1234H, et pourPUSH B : (30FFAH)=2D5AH.

    Pour l'instruction POP B, ((SP))est charg dans le registre B((SP)=30FFAH ; (B)=2D5AH)

    puis (SP) est incrment de deux((SP)= 30FFAH+2=30FFCH).Enfin, pour POP A on obtient :(A)=1234H et (SP)=30FFCH +

    2 = 30FFEH

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    41/69

    Structure dune instruction

    Opcode Oprande instruction

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    42/69

    Structure dune instruction

    Chaque ligne est compose de champs

    Le champ tiquette, qui peut tre vide.

    Le champ mnmonique (obligatoire)

    Le champ oprande, par exemple EAX, BX, DH,CL, MonCompteur, 10 (normalementobligatoire)

    Et dun champ commentaire, qui peut tre vide.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    43/69

    Structure dune instruction

    tiquette :

    oUne instruction peut tre prcde d'unidentificateur qui reprsente l'adresse de

    stockage de cette instruction. On appelle cetidentificateur une tiquette (label en anglais).

    o Ie label permet un reprage plus ais

    lintrieur du programme. Le nom du label estarbitraire. Vous pouvez le nommer comme avous chante tant qu'il est unique et ne viole pas

    la convention de nom de lassembleur.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    44/69

    Structure dune instruction

    tiquette : rgles dcriture Par exemple vous ne pouvez pas prendre le mot 'MOV' comme

    nom de label.

    Nutilisez pas de labels qui peuvent tre confondus avec dautreslabels.

    Evitez les lettres I, O, Z, et les chiffres 0, 1, 2.

    Evitez aussi des labels tels que XXXX et XXXXX car on ne lesdiffrencie pas aisment.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    45/69

    Structure dune instruction

    Mnmonique :Un mnmonique dinstruction est un mot courtqui identifie une instruction.

    Oprandes :La syntaxe assembleur Intel x86 dfinitloprande de gauche comme oprandedestination, celui dans lequel on trouve lersultat de linstruction. Loprande de droite estappel oprande source. Le champ oprande estun champ optionnel selon linstruction.

    Une instruction peut avoir entre zro et troisoprandes.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    46/69

    Structure dune instruction

    Oprandes :

    Dans la plupart des assembleurs, il ne peut yavoir quune seule instruction par ligne.Chaque oprande peut tre le nom dunregistre, une constante, une expressionconstante ou un emplacement

    mmoire.(suivant le mode d'adressage)

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    47/69

    Structure dune instruction

    Exemples

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    48/69

    I ntel 8086

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    49/69

    Description physique du 8086

    Le microprocesseur Intel 8086 est un

    microprocesseur 16 bits, apparu en 1978.

    Cest le premier microprocesseur de la famille

    Intel 80x86 (8086, 80186, 80286, 80386,

    80486,Pentium, ...).

    Il se prsente sous la forme dun botier DIP

    (Dual In-line Package) 40 broches

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    50/69

    Description physique du 8086

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    51/69

    Schma fonctionnel du 8086

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    52/69

    Description et utilisation des signaux

    du 8086 CLK: entre du signal dhorloge qui cadence

    le fonctionnement du microprocesseur.

    Ce signal provient dun gnrateur dhorloge :le 8284.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    53/69

    Description et utilisation des signaux

    du 8086 RESET : entre de remise zro du

    microprocesseur. Lorsque cette entre est mise

    ltat haut pendant au moins 4 priodesdhorloge, le microprocesseur est rinitialis :il va excuter linstruction se trouvant ladresse FFFF0H. Le signal de RESET est

    fourni par le gnrateur dhorloge. READY : entre de synchronisation avec la

    mmoire. Ce signal provient galement dugnrateur dhorloge.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    54/69

    Description et utilisation des signaux

    du 8086 TEST : entre de mise en attente du microprocesseurdun vnement extrieur.

    MN/MX : entre de choix du mode de fonctionnementdu microprocesseur :

    mode minimum (MN/MX = 1) : le 8086 fonctionne demanire autonome, il gnre lui-mme le bus decommande (RD, WR, ...) ;

    mode maximum (MN/MX = 0) : ces signaux decommande sont produits par un contrleur de bus, le8288. Ce mode permet de raliser des systmesmultiprocesseurs.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    55/69

    Description et utilisation des signaux

    du 8086 NMI et INTR : entres de demande

    dinterruption.

    INTR : interruption normale.NMI (Non Maskable Interrupt) :interruption prioritaire.

    INTA : Interrupt Acknowledge, indique que lemicroprocesseur accepte linterruption.

    HOLD et HLDA: signaux de demande

    daccord daccs direct la mmoire (DMA).

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    56/69

    Description et utilisation des signaux

    du 8086 A16/S3 A19/S6 : 4 bits de poids fort du bus

    dadresses, multiplexs avec 4 bits dtat.

    AD0 AD15 : 16 bits de poids faible du bus

    dadresses, multiplexs avec 16 bits de

    donnes. Le bus A/D est multiplex(multiplexage temporel) do la ncessit dun

    demultiplexage pour obtenir sparment les

    bus dadresses et de donnes

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    57/69

    Description et utilisation des signaux

    du 8086 Chronogramme du bus A/D :

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    58/69

    Description et utilisation des signaux

    du 8086 Le dmultiplexage des signaux AD0 AD15:

    Il se fait en mmorisant ladresse lorsquecelle-ci est prsente sur le bus A/D, laide

    dun verrou (latch), ensemble de bascules D.

    La commande de mmorisation de ladresse

    est gnre par le microprocesseur : cest lesignal ALE, Address Latch Enable.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    59/69

    Description et utilisation des signaux

    du 8086 Le dmultiplexage des signaux AD0 AD15:Circuit de demultiplexage A/D :

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    60/69

    Description et utilisation des signaux

    du 8086 Le dmultiplexage des signaux AD0 AD15:

    Fonctionnement :

    si ALE = 1, le verrou est transparent (Q = D) ;

    si ALE = 0, mmorisation de la dernire

    valeur de D sur les sorties Q;

    les signaux de lecture (RD) ou dcriture (WR)ne sont gnrs par le microprocesseur que

    lorsque les donnes sont prsentes sur le bus

    A/D.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    61/69

    Description et utilisation des signaux

    du 8086 Le dmultiplexage des signaux AD0 AD15:

    Exemples de bascules D : circuits 8282, 74373,

    74573.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    62/69

    Description et utilisation des signaux

    du 8086 RD : Read, signal de lecture dune donne.

    WR: Write, signal dcriture dune donne.

    M/I O : Memory/Input-Output, indique si le 8086 adresse lammoire (M/IO = 1) ou les entres/sorties (M/IO = 0).

    DEN : Data Enable, indique que des donnes sont en trainde circuler sur le bus A/D (quivalent de ALE pour lesdonnes).

    DT/R : Data Transmit/Receive, indique le sens de transfertdes donnes :

    DT/R = 1 : donnes mises par le microprocesseur(criture)

    DT/R = 0 : donnes reues par le microprocesseur

    (lecture).

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    63/69

    Description et utilisation des signaux

    du 8086 Chronogramme des signaux DEN et DT/R

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    64/69

    Description et utilisation des signaux

    du 8086 Utilisation des signaux DEN et DT/R :Il sont utiliss pour la commande de tampons de bus

    (buffers)permettant damplifier le courant fourni par le

    microprocesseur sur le bus de donnes.Exemples de tampons de bus : circuits transmetteurs bidirectionnels

    8286 ou 74245.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    65/69

    Organisation interne du 8086

    Le 8086 est constitu de deux unitsfonctionnant en parallle :

    lunit dexcution (EU : Execution Unit) .

    lunite dinterface de bus (BIU : Bus

    I nter face Uni t).

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    66/69

    Organisation interne du 8086

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    67/69

    Organisation interne du 8086

    Rle des deux units :

    lunit dinterface de bus (BIU) rechercheles instructions en mmoire et les range

    dans une file dattente ; lunit dexcution (EU) excute les

    instructions contenues dans la filedattente.

    Les deux units fonctionnent simultanment,do une acclration du processusdexcution dun programme (fonctionnement

    selon le principe du pipe-line).

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    68/69

    Organisation interne du 8086

    Le microprocesseur 8086 contient 14 registres

    rpartis en 4 groupes :

    Registres gnraux : 4 registres sur 16 bits.

    Registres de pointeurs et dindex : 4 registres sur 16 bits.

    Pointeur dinstruction et indicateurs (flags) : 2 registres sur

    16 bits.

    Registres de segments : 4 registres sur 16 bits.

  • 7/27/2019 Systeme a Microprocesseur - Beddouri

    69/69

    Organisation interne du 8086