La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Architecture de machines Le microprocesseur Cours

Présentations similaires


Présentation au sujet: "Architecture de machines Le microprocesseur Cours"— Transcription de la présentation:

1 Architecture de machines Le microprocesseur Cours 2003-2004

2 UAL Mémoire Données & Programmes Unité de commande L’unité d’exécution

3 Fabrication

4 Fabrication(2)

5 Fabrication(3)

6 Présentation

7 Evolution de l’intégration: Processeurs x86

8 Microprocesseur = Unité Contrôle + UAL n L’Unité de contrôle –Décodage des instructions –Chargement des informations depuis la mémoire dans l ’UAL –Contrôle du flux du programme n L’Unité Arithmétique et Logique –Réalisation des opérations Calculs entiers Calculs sur les nombres réels Comparaisons

9 Le langage machine n Ensemble d ’instructions élémentaires traitées par le microprocesseur –Environ un millier d’instructions BranchementsCalculs sur les entiers ComparaisonsCommunication mémoire Calculs sur les réelsOpérations «multimédia» (MMX…) –Processeur Z80 utilisé en TP: 256 Instructions n Codage dans la mémoire –« code instruction » n Assembleur : –Représentation « lisible » du langage machine –Mnémonique: représentation des instructions

10 De l’assembleur au code machine OUTBUFEQU80H LDA,'A'-1 NCB:INCA OUT(OUTBUF),A CP'Z' JPNZ,NCB HALT

11 Les registres n Mémoires contenues dans le microprocesseur n Codés sur n bits –Capacité de traitement du processeur –64 bits dans les microprocesseurs modernes –4/8 bits dans les processeurs anciens n 3 types de registres –Registres entiers : Traitement des nombres entiers –Registres de contrôle : état et déroulement du programme –Registres calcul flottant

12 Principaux registres de contrôle n Registre d ’instruction : RI –Code de l ’instruction courante n Registre de position dans le programme : CO –Compteur Ordinal : adresse de la prochaine instruction à éxecuter n Registre de pile : SP –Permet de créer une « pile » dans la mémoire n Registres d ’état –Etats du microprocesseur Débordements de capacité Comparaisons Mode d ’exécution n Accumulateur –Registre de travail principal

13 Exemple d’instructions n Chargement depuis la mémoire –LD Registre, Adresse : Place dans un registre le contenu de l’adresse Chargement d’une valeur –LD Registre, Valeur : Place dans un registre la valeur fournie n Sauvegarde en mémoire –LD Registre, Adresse : Place dans la mémoire le contenu du registre n Addition –ADD Registre1, Registre2 : Ajoute Registre2 à Registre 1 –ADD Registre, Valeur : Ajoute la valeur au registre n Multiplication (n’existe pas) –Mult Registre1, Registre2 : Multiplie Registre1 par Registre 1 Mult Registre, Valeur : Multiplie le registre par la valeur n Comparaison –CP Registre1, Registre2 : Compare le registre 1 au registre 2 et place les bits d’état n Sauts inconditionnel –JP, JR Adresse (ou libellé) : Effectue un saut inconditionnel vers l’adresse spécifiée (ou le libellé pour simplifier)

14 L’horloge n Cadence les traitements dans l ’ordinateur Cycle du microprocesseur Traitements effectués en un top d ’horloge Détermine la vitesse du microprocesseur n Ne suffit pas pour connaître la performance réelle d ’une machine

15 Liaisons avec la mémoire n Registre d ’adresse et registre mot –Stockage de l ’adresse mémoire et de la donnée –Sélection de l ’opération Lecture Ecriture –Transfert ê 1 transfert par cycle au maximum –Dépend de la vitesse du bus mémoire –Processeurs actuels très dépendants de vitesses d’échange

16 L’adressage n Adressage direct –Spécification de l ’adresse LD (0120H),A : Charge dans A la valeur contenue en 0120H n Adressage indirect –L ’adresse à considérer est stockée (indirection) LD BC, 0120H LD (BC),A n Adressage indexé –Utilisation d ’un registre d ’index (IX, IY sur Z80) Adresse = Base + index LD (IX+3), 72 : Charge 72 à l’adresse IX+3 n La pile –Empilage (push) et dépilage (pop) –En général pas de contrôle de ces opérations !

17 Exemple: le Z80

18 Structure complexe n 2,5 unités d ’exécution –Arithmétique Calcul et comparaison des nombres entiers –Calcul flottant : coprocesseur mathématique => calcul sur les nombres réels –Unité multimédia MMX/SSE/3DNow! : exécution particulière de certaines opérations

19 Exécution en pipeline n Exécution de plusieurs instructions en même temps –Partage de l ’UAL –1 instruction prend « 1 cycle » n Pb : –Vidage du pipeline –Instructions de branchement

20 Exécution parallèle/prédictives n Mise à disposition de plusieurs UAL –Problème de remplissage du pipeline n Exécution prédictive

21 Exemple: le pentium

22 Exemple: l ’Athlon

23 Exemple : le Pentium 4

24 Pipeline Réel n PIV : 20 Niveaux n PIII: 10 Niveaux n Athlon: 11 Niveaux

25 L’Hyper Threading n Simule deux processeurs sur un seul –2 files d’exécution –Mêmes UAL n Nécessite des applications compatibles –Augmente la disponibilité du système

26 Optimisation de l’utilisation des ressources

27 RISC/CISC/VLIW n CISC n RISC n VLIW

28 Exemple de compilation : Factorielle En algorithmique Fact = 1 Pour i allant de 2 a N Fact = Fact * i Fin pour En C Int fact(int n) { int i = 2 ; int result = 1 ; while(i <= N) { result *= i ; i++ ; } fact = result ; } ; En assembleur Load A, adresse de N Load B, 1 Load C, 2 BoucleCmp A,C Jmp Fin Mult B,C Add C,1 Jmp Boucle FinRTN


Télécharger ppt "Architecture de machines Le microprocesseur Cours"

Présentations similaires


Annonces Google