Vous êtes sur la page 1sur 58

LE MICROPROCESSEUR

www.slideshare.net/adelessafi

LE MICROPROCESSEUR
Un microprocesseur est un circuit intgr complexe caractris par une trs grande intgration et dot des facults d'interprtation et d'excution des instructions d'un programme. charg dorganiser les tches prcises par le programme et dassurer leur excution. prend en compte les informations extrieures au systme et assurer leur traitement. Cest le cerveau du systme.

LOI DE MOORE

Moore (un des co-fondateurs de la socit Intel) a mis l'hypothse que les capacits technologiques permettraient de multiplier par 2 tous les 18 mois le nombre de transistors intgrs sur les circuits.

LOI DE MOORE

ARCHITECTURE DE BASE DUN


MICROPROCESSEUR

Un microprocesseur est construit autour de deux lments principaux :


Une unit de commande Une unit de traitement

En plus

registres charges de stocker les diffrentes informations traiter

Ces lments sont relis par des bus internes permettant les changes dinformations

ARCHITECTURE DE BASE

REGISTRES

Il existe deux types de registres :

les registres d'usage gnral permettent l'unit de traitement de manipuler des donnes vitesse leve. Ils sont connects au bus donnes interne au microprocesseur. les registres d'adresses (pointeurs) connects sur le bus adresses.

LUNIT DE COMMANDE
permet de squencer le droulement des instructions. Effectue la recherche en mmoire de l'instruction. Comme chaque instruction est code sous forme binaire, elle en assure le dcodage pour enfin raliser son excution effectue la prparation de l'instruction suivante.

UNIT DE COMMANDE
Compos de: le compteur de programme constitu par un registre dont le contenu est initialis avec l'adresse de la premire instruction du programme. Il contient toujours ladresse de linstruction excuter.

UNIT DE COMMANDE
Compos de: le registre d'instruction et le dcodeur d'instruction : chacune des instructions excuter est range dans le registre instruction puis est dcode par le dcodeur dinstruction

UNIT DE COMMANDE
Compos de: Bloc logique de commande (ou squenceur) : Il organise l'excution des instructions au rythme dune horloge. Il labore tous les signaux de synchronisation internes ou externes (bus de commande) du microprocesseur en fonction des divers signaux de commande provenant du dcodeur dinstruction ou du registre dtat par exemple ralis soit de faon cble (obsolte), soit de faon micro-programme, on parle alors de micromicroprocesseur.

LUNIT DE TRAITEMENT
Cest le coeur du microprocesseur regroupe les circuits qui assurent les traitements ncessaires l'excution des instructions LUnit Arithmtique et Logique (UAL) est un circuit complexe qui assure les fonctions logiques (ET, OU, Comparaison, Dcalage , etc) ou arithmtique (Addition, soustraction). Le registre d'tat est gnralement compos de 8 bits considrer individuellement. Les accumulateurs sont des registres de travail qui servent stocker une oprande au dbut d'une opration arithmtique et le rsultat la fin de l'opration

LE REGISTRE D'TAT
Chacun de ces bits est un indicateur dont l'tat dpend du rsultat de la dernire opration effectue par lUAL. Sont aussi appel : indicateurs dtat ou flag ou drapeaux. Dans un programme le rsultat du test de leur tat conditionne souvent le droulement de la suite du programme

retenue (carry : C) retenue intermdiaire (Auxiliary-Carry : AC) signe (Sign : S) dbordement (overflow : OV ou V) zro (Z) parit (Parity : P)

CYCLE DEXCUTION DUNE INSTRUCTION


Le microprocesseur ne comprend quun certain nombre dinstructions qui sont codes en binaire. Le traitement dune instruction peut tre dcompos en trois phases Phase 1: Recherche de l'instruction traiter Phase 2 : Dcodage de linstruction et recherche de l'oprande Phase 3 : Excution de l'instruction

PHASE 1: RECHERCHE DE L'INSTRUCTION


TRAITER 1. Le PC contient l'adresse de l'instruction suivante du programme. Cette valeur est place sur le bus d'adresses par l'unit de commande qui met un ordre de lecture. 2. Au bout d'un certain temps (temps d'accs la mmoire), le contenu de la case mmoire slectionne est disponible sur le bus des donnes. 3. L'instruction est stocke dans le registre instruction du processeur.

PHASE 1: RECHERCHE DE L'INSTRUCTION


TRAITER

PHASE 2 : DCODAGE DE LINSTRUCTION ET RECHERCHE DE L'OPRANDE


Le registre d'instruction contient le premier mot de l'instruction qui peut tre code sur plusieurs mots. Ce premier mot contient le code opratoire qui dfinit la nature de l'opration effectuer (addition, rotation,...) et le nombre de mots de l'instruction. 1. L'unit de commande transforme l'instruction en une suite de commandes lmentaires ncessaires au traitement de l'instruction. 2. Si l'instruction ncessite une donne en provenance de la mmoire, l'unit de commande rcupre sa valeur sur le bus de donnes. 3. Loprande est stocke dans un registre.

PHASE 2 : DCODAGE DE LINSTRUCTION ET RECHERCHE DE L'OPRANDE

PHASE 3 : EXCUTION DE L'INSTRUCTION


1. Le micro-programme ralisant l'instruction est excut. 2. Les drapeaux sont positionns (registre d'tat). 3. L'unit de commande positionne le PC pour l'instruction suivante.

JEU DINSTRUCTIONS
premire tape de la conception dun microprocesseur -> dfinition de son jeu dinstructions Le jeu dinstructions dcrit lensemble des oprations lmentaires que le microprocesseur pourra excuter A un mme jeu dinstructions peut correspondre un grand nombre dimplmentations diffrentes du microprocesseur.

TYPE DINSTRUCTIONS

Les instructions que lon retrouve dans chaque microprocesseur peuvent tre classes en 4 groupes :
Transfert de donnes pour charger ou sauver en mmoire, effectuer des transferts de registre registre, etc Oprations arithmtiques : addition, soustraction, division, multiplication Oprations logiques : ET, OU, NON, NAND, comparaison, test, etc Contrle de squence : branchement, test, etc

CODAGE

Les instructions et leurs oprandes (paramtres) sont stocks en mmoire principale. La taille totale dune instruction (nombre de bits ncessaires pour la reprsenter en mmoire) dpend du type dinstruction et aussi du type doprande. Chaque instruction est code sur un nombre entier doctets afin de faciliter son dcodage par le processeur. Une instruction est compose de deux champs :
le code instruction, qui indique au processeur quelle instruction raliser le champ oprande qui contient la donne, ou la rfrence une donne en mmoire (son adresse).

EXEMPLE Le nombre d'instructions du jeu d'instructions est directement li au format du code instruction. un octet permet de distinguer au maximum 256 instructions diffrentes.

MODE DADRESSAGE
Un mode d'adressage dfinit la manire dont le microprocesseur va accder loprande. Les diffrents modes d'adressage dpendent des microprocesseurs mais on retrouve en gnral : l'adressage de registre o lon traite la donnes contenue dans un registre l'adressage immdiat o lon dfinit immdiatement la valeur de la donne l'adressage direct o lon traite une donnes en mmoire Selon le mode dadressage de la donne, une instruction sera code par 1 ou plusieurs octets.

PERFORMANCES DUN MICROPROCESSEUR


On peut caractriser la puissance dun microprocesseur par le nombre dinstructions quil est capable de traiter par seconde. Pour cela, on dfinit : le CPI (Cycle Par Instruction) qui reprsente le nombre moyen de cycles dhorloge ncessaire pour lexcution dune instruction pour un microprocesseur donn. le MIPS (Millions d'Instructions Par Seconde) qui reprsente la puissance de traitement du microprocesseur. MIPS=Fh/CPI avec Fh en MHz

MODE DACCS

Accs squentiel

Pour accder une information on doit parcourir toutes les informations prcdentes Accs lent Exemple : bandes magntiques (K7 vido)

Accs direct
Chaque information a une adresse propre On peut accder directement chaque adresse Exemple : mmoire centrale

MODE DACCS

Accs semi-squentiel

Intermdiaire entre squentiel et direct Exemple : disque dur Accs direct au cylindre Accs squentiel au secteur sur un cylindre

Accs associatif/par le contenu


Une information est identifie par une cl On accde une information via sa cl Exemple : mmoire cache

NOTION DARCHITECTURE RISC ET CISC

NOTION DARCHITECTURE RISC ET CISC


Actuellement larchitecture des microprocesseurs se composent de deux grandes familles : L architecture CISC (Complex Instruction Set Computer) Larchitecture RISC (Reduced Instruction Set Computer)

LARCHITECTURE CISC
incorporer au niveau processeur des instructions plus proches de la structure de ces langages plutt que de coder une opration complexe par plusieurs instructions plus petites (qui demanderaient autant daccs mmoire trs lent), il est prfrable dajouter au jeu dinstructions du microprocesseur une instruction complexe qui se chargerait de raliser cette opration Motivation : la mmoire travaillait trs lentement par rapport au processeur

LARCHITECTURE RISC
Motivation : 80% des traitements des langages de haut niveau faisaient appel seulement 20% des instructions du microprocesseur rduire le jeu dinstructions celles le plus couramment utilises et den amliorer la vitesse de traitement

LARCHITECTURE RISC
Chacune de ces instructions sexcutent en un cycle dhorloge ces instructions ne disposent que dun seul mode dadressage Par contre, les instructions complexes doivent tre ralises partir de squences bases sur les instructions lmentaires, ce qui ncessite un compilateur trs volu dans le cas de programmation en langage de haut niveau

PERFORMANCES DUN MICROPROCESSEUR


CPI (Cycle Par Instruction) : reprsente le nombre moyen de cycles dhorloge ncessaire pour lexcution dune instruction pour un microprocesseur donn. MIPS (Millions d'Instructions Par Seconde): la puissance de traitement du microprocesseur.

MIPS = Fh/CPI (avec Fh frquence dhoroge)

AMLIORATION DES PERFORMANCES


Augmenter la vitesse du processeur Modifier larchitecture interne (plusieurs bus) Amliorer les performances du bus de communication Paralllisation de certaines tches

PIPELINE

Excution dune instruction

PIPELINE
lorsque la premire tape de lexcution dune instruction est acheve, linstruction entre dans la seconde tape de son excution et la premire phase de lexcution de linstruction suivante dbute Il peut y avoir une instruction en cours dexcution dans chacune des tapes et chacun des composants du microprocesseur peut tre utilis chaque cycle dhorloge

PIPELINE

GAIN DE PERFORMANCE

Gain=(n*k)/(k+(n-1))

LA MMOIRE CACHE

LA MMOIRE CACHE

LA MMOIRE CACHE

LA MMOIRE CACHE

LA MMOIRE CACHE (NIVEAU DE CACHE)

MMOIRE CACHE : RALISATION

LA MMOIRE CACHE

LA MMOIRE CACHE: FONCTIONNEMENT

LA MMOIRE CACHE: FONCTIONNEMENT

LA MMOIRE CACHE: GESTION DE CONTENU

LA MMOIRE CACHE: EXEMPLE DE LOCALIT

LA MMOIRE CACHE: GESTION DU CONTENU

LA MMOIRE CACHE: REMPLACEMENT DES


DONNES

LA MMOIRE CACHE: REMPLACEMENT DES


DONNES

LA MMOIRE CACHE: COHRENCE ENTRE LE


CACHE ET LA MMOIRE CENTRALE

LA MMOIRE CACHE: CRITURE DES DONNES

LA MMOIRE CACHE: CORRESPONDANCE


DIRECTE

LA MMOIRE CACHE: CORRESPONDANCE


DIRECTE

LA MMOIRE CACHE: CORRESPONDANCE


ASSOCIATIVE