Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 1 Fonctionnement d
Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 1 Fonctionnement du processeur : exécution des instructions machine STRUCTURE DU PROCESSEUR Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 2 Processeur (Unité Centrale) Unité Arithmétique et Logique Registres Unité de Commande Bus Processeur /Mémoire Séquenceur Décodeur Commandes Lecture/Ecriture Adresses Données R I CO RAD RDO Données Commandes Bus Interne PSW Z Y1 Y2 Opération horloge Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 3 Processeur (Unité Centrale) Bus Processeur /Mémoire Unité de Commande Séquenceur Décodeur Commandes Lecture/Ecriture Adresses Données R I CO RAD RDO horloge L'unité de commande est chargée de la reconnaissance des instructions et de leur exécution par l’unité de traitement au rythme de l'horloge Les registres : - RI (registre instruction) : contient l'instruction en cours d'exécution - CO (compteur ordinal ) : contient l'adresse en MC de la prochaine instruction - RAD (registre adresse) et RDO (registre de données) : registres d'interfaçage avec la mémoire centrale Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 4 Processeur (Unité Centrale) • Le registre est l’entité de base manipulée par le processeur. • Aucune opération n’est directement réalisée sur les cellules mémoires. R0 RB RSP R1 R2 Registres : - les registres généraux R0, R1, R2 - le registre de pile RSP (Register Stack Pointer) - les registres d'adressage : RB (registre de base) Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 5 Processeur (Unité Centrale) PSW Z Y1 Y2 Opération Unité Arithmétique et Logique L'unité Arithmétique et Logique (UAL) constitue l'unité d'exécution du processeur. Elle est composée : - de l'ensemble des circuits permettant de réaliser les opérations arithmétiques (addition, multiplication, division,…) et les opérations logiques (complément à 2, inverse, OU, ET, …) sur les opérandes Y1 et Y2 - d'un registre d'état PSW qui contient des indicateurs positionnés par le résultat Z des opérations effectuées : - O : positionné à 1 si Overflow, 0 sinon - Z : positionné à 1 si résultat opération nul, 0 sinon - C : positionné à 1 si carry, 0 sinon - S : positionné à 0 si résultat opération positif, 1 sinon S O C Z Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 6 Processeur (Brochage) Données Alimentation et masse Vcc GND A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 D0 D1 D2 D3 D4 D5 D6 D7 Microprocesseur Read Write Adresses Entrée horloge ou cristal Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 7 Fonctionnement du processeur : exécution des instructions machine EXECUTION D’UNE INSTRUCTION MACHINE : CHEMIN DE DONNEES DU PROCESSEUR Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 8 CONTEXTE • Le programme composé d’instructions machine et de données a été chargé en mémoire centrale par un outil CHARGEUR • Le compteur ordinal CO est chargé avec l’adresse en Mémoire centrale du mot contenant la première instruction du programme • L’exécution du programme s’effectue instruction par instruction, sous le pilotage de l’unité de commande du processeur. • Le traitement d’une instruction par le processeur se découpe en trois étapes : )FETCH : l’instruction est lue en mémoire centrale et copiée dans le registre RI du processeur )DECODAGE : l’instruction est reconnue par l’unité de décodage )EXECUTION : l’opération correspondant à l’instruction est réalisée Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 9 RI RAD RDO STOP 10 11 12 13 14 15 16 17 CONTEXTE Add D R A A C Load Im R 3 Store B R X 5 Horloge R PSW Z Y1 10 CO Séquenceur Décodeur Y2 adresses données RB C A D Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 10 Début Charger la prochaine instruction à exécuter depuis la mémoire dans le registre instruction (RI), Modifier le Compteur Ordinal pour qu’il pointe sur la prochaine instruction à exécuter, Décoder l’instruction qui vient d’être chargée, Charger les données éventuelles dans les registres internes, Exécuter l’instruction, Fin Les étapes d’exécution d’une instruction (Chargement/Décodage/Exécution) Fetch Décodage Exécution Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 11 Début Charger la prochaine instruction à exécuter depuis la mémoire dans le Registre instruction, Modifier le Compteur Ordinal pour qu’il pointe sur la prochaine instruction à exécuter, Les étapes d’exécution d’une instruction (Chargement/Décodage/Exécution) Fetch Registre Instruction : contient l’instruction en cours d’exécution Compteur Ordinal : contient l’adresse de la prochaine instruction a exécuter Bus Séquenceur Décodeur Horloge Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 12 RI RAD RDO STOP 10 11 12 13 14 15 16 17 Exécution de LOAD Im R 3 : Fetch Add D R A A C Load Im R 3 Store B R X 5 Horloge R PSW Z Y1 10 CO Séquenceur Décodeur Y2 adresses données RB CO --> RAD lecture 10 lecture 10 C A D Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 13 RI RAD RDO STOP 10 11 12 13 14 15 16 17 Exécution de LOAD Im R 3 : Fetch Add D R A A C Load Im R 3 Store B R X 5 Horloge R PSW Z Y1 10 CO Séquenceur Décodeur Y2 adresses données lecture Fin de lecture RDO --> RI Load Im R 3 Load … Load … RB C A D Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 14 RI RAD RDO STOP 10 11 12 13 14 15 16 17 Exécution de LOAD Im R 3 : Fetch Add D R A A C Load Im R 3 Store B R X 5 Horloge R PSW Z Y1 11 CO Séquenceur Décodeur Y2 adresses données Load … Load … Incrément CO INCO RB C A D Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 15 Début Charger la prochaine instruction à exécuter depuis la mémoire dans le registre instruction, Modifier le Compteur Ordinal pour qu’il pointe sur la prochaine instruction à exécuter, Les étapes d’exécution d’une instruction (Chargement/Décodage/Exécution) Fetch CO Æ RAD Lecture RDO Æ RI Incrémentation CO Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 16 Les étapes d’exécution d’une instruction (Chargement/Décodage/Exécution) Début Décoder l’instruction qui vient d’être chargée, Charger les données éventuelles dans les registres internes, Exécuter l’instruction, Fin Décodage Exécution LOAD Im R 3 : l'adressage est un mode immédiat. Il n’y a pas d’opérandes en mémoire centrale. Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 17 Les étapes d’exécution d’une instruction (Chargement/Décodage/Exécution) Début Décoder l’instruction qui vient d’être chargée, Charger les données éventuelles dans les registres internes, Exécuter l’instruction, Fin Décodage Exécution LOAD Im R 3 : l'opération est un chargement de registre. La valeur 3 est placée dans le registre R. R Å 3 Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 18 3 RAD RDO STOP 10 11 12 13 14 15 16 17 Exécution de LOAD Im R 3 : exécution Add D R A A C Load Im R 3 Store B R X 5 Horloge R PSW Z Y1 11 CO Séquenceur Décodeur Y2 adresses données Load Im R 3 RB 3 Æ R C A D RI RAD RDO STOP 10 11 12 13 14 15 16 17 Add D R A : Fetch Add D R A A C Load Im R 3 Store B R X 5 Horloge R PSW Z Y1 11, 12 Séquenceur Décodeur 3 Y2 RB CO Æ RAD Lecture RDO Æ RI Incrément CO 11 lecture Add D R A Add D R A Add D R A 11 INCO C A D Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 19 Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 20 Les étapes d’exécution d’une instruction (Chargement/Décodage/Exécution) Début Décoder l’instruction qui vient d’être chargée, Charger les données éventuelles dans les registres internes, Exécuter l’instruction, Fin Décodage Exécution Add D R A : l'adressage est un mode direct. Un premier opérande est le contenu de R. Le deuxième opérande est un mot mémoire d'adresse A : ramener cet opérande au niveau du CPU nécessite une opération de lecture en MC à l'adresse A. Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 21 Add D R A A RDO STOP 10 11 12 13 14 15 16 17 Add D R A A C Load Im R 3 Store B R X 5 Horloge R PSW Y1 CO Décodeur 3 Z Lecture A Æ RAD lecture Y2 Add D R A : Décodage, exécution A RB C A D Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 22 Add D R A A RDO STOP 10 11 12 13 14 15 16 17 Add D R A A C Load Im R 3 Store B R X 5 Horloge R PSW Y1 CO Décodeur 3 Z 5 Æ RDO Y2 5 5 Add D R A : Décodage, exécution RB C A D Architecture des machines NFA004, 2006/2007 Joëlle Delacroix 23 Les étapes d’exécution d’une instruction (Chargement/Décodage/Exécution) Début Décoder l’instruction qui vient d’être chargée, Charger les données éventuelles dans les registres internes, Exécuter l’instruction, Fin Décodage Exécution Add D R A : l'opération est une addition : il faut amener les deux opérandes à l'UAL et activer le circuit d'addition. Puis stocker le résultat dans R. Add D uploads/Industriel/ cours3-5 1 .pdf
Documents similaires










-
27
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jul 26, 2021
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 0.5644MB