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 Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet 2002 1 Architecture Fondamentale des Microprocesseurs Institut Supérieur d’Electronique.

Présentations similaires


Présentation au sujet: "Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet 2002 1 Architecture Fondamentale des Microprocesseurs Institut Supérieur d’Electronique."— Transcription de la présentation:

1 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Architecture Fondamentale des Microprocesseurs Institut Supérieur d’Electronique du Nord 41 Boulevard Vauban Lille Cedex - France

2 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Architecture d’un ordinateur Unité centrale Mémoire centrale Contrôleurs d’entrée/sortie ou interface Canaux de communication (bus)

3 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Les types d’architecture : SISD Une instruction manipule une seule donnée (Single Instruction Single Data) instruction

4 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Une instruction manipule un ensemble de données (Single Instruction Multiple Data) : machine tableau Les types d’architecture : SIMD instruction

5 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Les types d’architecture : MISD Un ensemble d’instructions manipule une seule donnée (Multiple Instruction Single Data) : machine vectorielle ou pipeline Instruction 1 Instruction 2 Instruction 3 Instruction 4 Instruction 2 Instruction 3 Instruction 4 Instruction 5

6 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Les types d’architecture : MIMD Un ensemble d’instructions manipule un ensemble de données (Multiple Instruction Multiple Data) : machine multi-processeurs MISD SISD SIMD

7 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Architecture de Von Neuman Machine de Von Neuman (1945) programme : suite d’instructions codées en binaire et mémorisées en mémoire centrale données : codées en binaire et mémorisées en mémoire centrale les instructions sont exécutées séquentiellement par l’unité centrale une instruction manipule une seule donnée (SISD)

8 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Mémoire centrale : rôle et fonctions Rôle : mémorisation des instructions et des données code binaire (algèbre de Boole) 0 : absence de courant 1 : présence de courant Fonctions d’accès : écriture : mémorisation d’une information lecture : récupération d’une information préalablement enregistrée

9 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Mémoire centrale : constituants Cellule mémoire : circuit électronique chargé de mémoriser un seul bit d’information Mémoire centrale : construire un mot à partir d’un ensemble de cellules construire un ensemble de mots créer un mécanisme d’accès à un mot dans l’ensemble des mots : adressage

10 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Mémoire centrale : vision logique Vision logique : tableau de mots plus ou moins grand mécanisme d’adressage : chaque mot est repéré par son emplacement (adresse) dans le tableau (indice) Flottant IEEE sur 32 bits (valeur -1, ) B9 0E Entier signé sur 16 bits (valeur -2) FE FF

11 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Unité centrale : composition L’unité centrale (CPU - Central Processing Unit) regroupe 5 blocs fonctionnels : l’unité de contrôle l’unité arithmétique et logique les registres généraux les registres spécialisés l’interfaçage avec l’extérieur

12 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Unité de contrôle Bus de contrôleBus d’adresseBus de donnéeHorloge Interruptions int e l 8085 Bus de communication interne Registre D Registre H Registre C Registre E Registre L Registre B Compteur ordinal PC Pointeur de pile SP Accumulateur Indicateurs Registre d’instruction Décodeur d’instructions et séquenceur Unité de contrôle Registre d’adresseRegistre de donnée UAL

13 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Unité de contrôle Elle contrôle la totalité du fonctionnement de l’unité centrale lecture, décodage, et exécution des instructions lecture et écriture des données en mémoire centrale lecture et écriture des registres contrôle de l’unité arithmétique et logique contrôle de l’interface avec l’extérieur : bus d’adresse et de donnée fonctions d’accès à la mémoire centrale interruptions,...

14 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Programme Un programme écrit en langage évolué (C) n’est pas compréhensible directement par la machine (i.e. par l’unité de contrôle)... if (i == 0) { i = 1 ; } j = 2 ;... cmp i,#0 bne label move #1,i label: move #2,j... compilateur E A100B F B 3F assembleur

15 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Instructions étiquetteadresse mnémoniquecode opération (opcode) opérande(s)... cmp i,#0 bne label move #1,i label: move #2,j E A 100B F B 3F

16 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Exécution d’un programme Bus de contrôleBus d’adresseBus de donnéeHorloge Interruptions int e l 8085 Bus de communication interne Registre D Registre H Registre C Registre E Registre L Registre B Compteur ordinal PC Pointeur de pile SP Accumulateur Indicateurs Registre d’instruction Décodeur d’instructions et séquenceur Unité de contrôle Registre d’adresseRegistre de donnée UAL

17 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Exécution d’un programme Le compteur ordinal (PC ou Program Counter) registre spécialisé contient à tout moment l’adresse de l’instruction qui va être exécutée 3E A 0B PC

18 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Unité arithmétique et logique (ALU) Bus de contrôleBus d’adresseBus de donnéeHorloge Interruptions int e l 8085 Bus de communication interne Registre D Registre H Registre C Registre E Registre L Registre B Compteur ordinal PC Pointeur de pile SP Accumulateur Indicateurs Registre d’instruction Décodeur d’instructions et séquenceur Unité de contrôle Registre d’adresseRegistre de donnée UAL

19 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Unité arithmétique et logique (ALU) Rôle : calcul d’opérations élémentaires opérations arithmétiques addition, soustraction, multiplication, division changement de signe opérations logiques et, ou, ou exclusif, inversion décalage, rotation Traite des mots de taille fixe (1, 2, 4 octets) Génère les indicateurs caractérisation du dernier résultat produit par l’ALU

20 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Registres Bus de contrôleBus d’adresseBus de donnéeHorloge Interruptions int e l 8085 Bus de communication interne Registre D Registre H Registre C Registre E Registre L Registre B Compteur ordinal PC Pointeur de pile SP Accumulateur Indicateurs Registre d’instruction Décodeur d’instructions et séquenceur Unité de contrôle Registre d’adresseRegistre de donnée UAL

21 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Registres Registres généraux opérandes pour l’unité arithmétique et logique résultats des calculs (accumulateur) en nombre variable (2 à plusieurs dizaines) taille = taille des mots traités par l’ALU Registres spécialisés compteur ordinal (Program Counter - PC) registre d’état (Status Register - SR) pointeur de pile (Stack Pointer - SP)

22 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet (variable i) (variable j) Exemple d’exécution SR (indicateur Z) PC 0 100F ???? ? cmp i,#0 bne label move #1,i label: move #2,j E A100B F B 3F F if (i == 0) { i = 1 ; } j = 2 ;...

23 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Modes d’adressage des opérandes Permettent de localiser précisément les opérandes d’une instruction immédiat (constante) registre (donnée « anonyme ») direct (donnée « variable ») en mémoire centrale indirect (pointeur sur...) en mémoire centrale via un registre autres suivant la puissance du CPU : indirect avec déplacement (8086, 68000) pré/post indexé (68000) facteur d’échelle (80386)

24 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Modes d’adressage (1) 3E 33 immédiat (constante) 0 registreR2 direct / absolu[3044] R1 R3 R2 R

25 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Modes d’adressage (2) indirect via registre[R2] indirect via registre avec déplacement [R2-2] R1 R3 R2 R R1 R3 R2 R

26 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Jeu d’instructions (1) déplacementMOV destination,source MOV R3,R2 MOV [2000],-4 R1 R3 R2 R FFE FFC FFFC

27 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Jeu d’instructions (2) opérations ADD R3,R2 NOT [R2] R1 R3 R2 R ADD destination,source NOT destination R1 R3 R2 R BBBB

28 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Jeu d’instructions (3) Saut inconditionnel - JMP adresse le compteur ordinal (PC) est remplacé par l’adresse spécifiée par l’instruction l’exécution du programme reprend à partir de la nouvelle valeur du compteur ordinal Saut conditionnel - JNZ adresse la condition porte sur la valeur d’un ou de plusieurs indicateurs de l’UAL (registre d’état) le compteur ordinal (PC) est remplacé par l’adresse spécifiée par l’instruction si et seulement si la condition est vérifiée

29 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Sous-programme Vision logique : 2 composants une pile mémorisée en mémoire centrale le pointeur de sommet de pile (Stack Pointer - SP) Appel d’un sous-programme : CALL adresse SP  SP - k// création d’un nouveau sommet [SP]  PC// sauvegarde de l’adresse de retour PC  adresse// saut au sous-programme Retour d’un sous-programme : RETURN PC  [SP]// restauration de l’adresse de retour SP  SP + k// destruction du sommet

30 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet pile (k = 2) PC SP Exemple d’exécution CALL CALL RETURN RETURN

31 Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet Interruptions Définition : arrivée d’un événement extérieur à l’unité centrale Action : appel forcé d’un sous-programme d’interruption, indépendant du programme en cours d ’exécution Unité centrale Programme en cours Appel du 18 Capteur Programme en cours


Télécharger ppt "Architecture Fondamentale des Microprocesseurs - Laurent ALLAIN - Juillet 2002 1 Architecture Fondamentale des Microprocesseurs Institut Supérieur d’Electronique."

Présentations similaires


Annonces Google