Télécharger la présentation
Publié parJames Maillet Modifié depuis plus de 10 années
1
Architecture de machines Le microprocesseur
Cours
2
Fabrication
3
Schéma simplifié Mémoire Données & Programmes UAL Unité de commande
4
L’unité de commande Décodage des instructions
Chargement des informations depuis la mémoire dans l ’ALU Contrôle du flux du programme
5
Le langage machine Ensemble d ’instructions élémentaires traitées par le microprocesseur Codage dans la mémoire Environ 300 instructions Branchements Calculs sur les entiers Comparaisons Communication mémoire Calculs sur les réels Opérations «multimédia» (MMX…) Assembleur : représentation « lisible » du langage machine
6
Exemple de code en assembleur
77F9EFE4 call F95C57 77F9EFE9 leave 77F9EFEA ret 77F9EFEB push ebp 77F9EFEC mov ebp,esp 77F9EFEE sub esp,10h 77F9EFF1 mov ax,word ptr [ebp+10h] 77F9EFF5 mov edx,dword ptr [ebp+8] 77F9EFF8 mov word ptr [ebp-6],ax 77F9EFFC mov eax,dword ptr [ebp+0Ch] 77F9EFFF push edi
7
L’exécution d’un programme
Pas à pas Notion de cycle d’horloge
8
Les registres Mémoires contenues dans le microprocesseur
Codés sur un nombre de bits Capacité de traitement du processeur Ex : Registres 64 bits dans le pentium 3 types de registres Registres entiers : Traitement des nombres entiers Registres calcul flottant Registres de contrôle : état et déroulement du programme
9
Exemple d’instructions
Chargement depuis la mémoire Load Registre, Adresse : Place dans un registre le contenu de l’adresse Chargement d’une valeur Load Registre, Valeur : Place dans un registre la valeur fournie Sauvegarde en mémoire Store 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 Mult Registre1, Registre2 : Multiplie Registre1 par Registre 1 Mult Registre, Valeur : Multiplie le registre par la valeur Comparaison Cmp Registre1, Registre2 : Compare le registre 1 au registre 2 et saute une adresse si Registre2 <= Registre1 Sauts inconditionnel Jmp Adresse (ou libellé) : Effectue un saut inconditionnel vers l’adresse spécifiée (ou le libellé pour simplifier)
10
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
11
Les 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 Registres d ’état Etats du microprocesseur Débordements de capacité Comparaisons Mode d ’exécution Accumulateur Stockage des opérandes dans l ’UAL
12
L’horloge Permet de cadencer 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
13
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
14
L’adressage Adressage direct Adressage indirect Adressage indexé
Spécification de l ’adresse Adressage indirect L ’adresse contient l ’adresse à considérer (indirection) Adressage indexé Utilisation d ’un registre d ’index Adresse = Base + index La pile Permet de stocker des informations Définie en mémoire avec un registre de pile (SP)
15
Structure complexe 3 unités d ’exécution Arithmétique Calcul flottant
Calcul et comparaison des nombres entiers Calcul flottant calcul sur les nombres réels Unité multimédia Ex : le mmx
16
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
17
Exécution parallèle/prédictives
Mise à disposition de plusieurs UAL Problème de remplissage du pipeline Exécution prédictive
18
RISC/CISC/VLIW CISC RISC VLIW Vers une unification ?
19
Exemple: le pentium
20
Exemple: l ’Athlon
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.