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

Présentations similaires


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

1 Architecture de machines Le microprocesseur
Cours

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

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
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 L’Unité Arithmétique et Logique Réalisation des opérations Calculs entiers Calculs sur les nombres réels Comparaisons

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

10 De l’assembleur au code machine
OUTBUF EQU 80H LD A,'A'-1 NCB: INC A OUT (OUTBUF),A CP 'Z' JP NZ,NCB HALT

11 Les registres Mémoires contenues dans le microprocesseur
Codés sur n bits Capacité de traitement du processeur 64 bits dans les microprocesseurs modernes 4/8 bits dans les processeurs anciens 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
Registre d ’instruction : RI Code de l ’instruction courante Registre de position dans le programme : CO Compteur Ordinal : adresse de la prochaine instruction à éxecuter Registre de pile : SP Permet de créer une « pile » dans la mémoire Registres d ’état Etats du microprocesseur Débordements de capacité Comparaisons Mode d ’exécution Accumulateur Registre de travail principal

13 Exemple d’instructions
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 Sauvegarde en mémoire LD Registre, Adresse : Place dans la mémoire le contenu du registre Addition ADD Registre1, Registre2 : Ajoute Registre2 à Registre 1 ADD Registre, Valeur : Ajoute la valeur au registre Multiplication (n’existe pas) Mult Registre1, Registre2 : Multiplie Registre1 par Registre 1 Mult Registre, Valeur : Multiplie le registre par la valeur Comparaison CP Registre1, Registre2 : Compare le registre 1 au registre 2 et place les bits d’état 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 Cadence les traitements dans l ’ordinateur
Cycle du microprocesseur <=> Traitements effectués en un top d ’horloge Détermine la vitesse du microprocesseur Ne suffit pas pour connaître la performance réelle d ’une machine

15 Liaisons avec la mémoire
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 Adressage direct Adressage indirect Adressage indexé
Spécification de l ’adresse LD (0120H),A : Charge dans A la valeur contenue en 0120H Adressage indirect L ’adresse à considérer est stockée (indirection) LD BC, 0120H LD (BC),A 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 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 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 Exécution de plusieurs instructions en même temps Partage de l ’UAL 1 instruction prend « 1 cycle » Pb : Vidage du pipeline Instructions de branchement

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

21 Exemple: le pentium

22 Exemple: l ’Athlon

23 Exemple : le Pentium 4

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

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

26 Optimisation de l’utilisation des ressources

27 RISC/CISC/VLIW CISC RISC 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 Boucle Cmp A,C Jmp Fin Mult B,C Add C,1 Jmp Boucle Fin RTN


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

Présentations similaires


Annonces Google