• 0:00
    /
    0:00
    Loaded: 0%
    0:00
    Progress: 0%
    Stream TypeLIVE
    0:00
     
    1x
    Advertisement

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"
Annonces Google