Fonctionnement de l'unité centrale J.-M. ADAM – D. BARDOU
Schéma général de l'unité centrale Mémoire centrale H Séquenceur CO 1 2 3 k k+1 k+2 ... RI RA U.A.L. A B RD U.E. BUS
La mémoire centrale contient : des données des programmes Mémoire centrale H Séquenceur CO 1 2 3 k k+1 k+2 ... RI 41 145 720 RA CHA 0 CHB 2 ADD RGA 3 U.A.L. A B RD U.E. BUS
Le registre d’adresse (RA) contient l’adresse du mot mémoire à lire ou à écrire Mémoire centrale H Séquenceur CO 1 2 3 k k+1 k+2 ... RI 41 145 720 RA 3 1 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B RD U.E. BUS
Le registre donnée (RD) contient l’information lue ou à écrire dans le mot dont l’adresse est dans RA Mémoire centrale H Séquenceur CO 1 2 3 k k+1 k+2 ... RI 41 145 720 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B RD 826 826 U.E. BUS
L’unité Arithmétique et Logique effectue les calculs (+, -, *, /) et les opérations logiques (et, ou, non) Mémoire centrale H Séquenceur CO 1 2 3 k k+1 k+2 ... RI 41 145 720 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. L’U.A.L. manipule les données des registres A et B A B 18 826 RD 826 U.E. BUS
Les unités d’échange assurent la communication entre l’unité centrale et les périphériques Mémoire centrale H Séquenceur CO 1 2 3 k k+1 k+2 ... RI 41 145 720 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD 826 BUS U.E. U.E.
Le bus assure la communication entre les composants de l’unité centrale Mémoire centrale H Séquenceur CO 1 2 3 k k+1 k+2 ... RI 41 145 720 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD 826 BUS U.E. U.E.
Le compteur ordinal (CO) Mémoire centrale H Séquenceur CO k 1 2 3 k k+1 k+2 ... RI 41 145 720 Le CO contient l’adresse mémoire de la prochaine instruction à exécuter. 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD 826 BUS U.E. U.E.
Le registre d’instruction (RI) contient l’instruction en cours d’exécution Mémoire centrale H Séquenceur CO k RGB 3 1 2 3 k k+1 k+2 ... RI 41 145 720 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD 826 BUS U.E. U.E.
Le séquenceur envoie ses commandes aux autres organes de l’unité centrale au rythme de l’horloge (H) commandes Mémoire centrale H Séquenceur CO k 1 2 3 k k+1 k+2 ... RI RGB 3 41 145 720 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD 826 BUS U.E. U.E.
Le séquenceur, l’horloge et le registre d’instruction (RI) constituent l’unité de commande Mémoire centrale H Séquenceur CO k RGB 3 1 2 3 k k+1 k+2 ... RI 41 145 720 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD 826 BUS U.E. U.E.
L’unité de commande, l’unité arithmétique et logique, le bus et les registres CO, RA et RD constituent le processeur Unité de commande Mémoire centrale H Séquenceur CO k RGB 3 1 2 3 k k+1 k+2 ... RI 41 145 720 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD 826 BUS U.E. U.E.
Simulation de l’exécution d’une instruction Mémoire centrale H Séquenceur CO k RGB 3 1 2 3 k k+1 k+2 ... RI 41 145 720 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD 826 BUS U.E. U.E.
Lecture de l’instruction : copie du compteur ordinal (CO) dans le registre adresse (RA) Lecture CO Écriture RA Mémoire centrale H Séquenceur CO k k RI RGB 3 1 2 3 k k+1 k+2 ... 41 145 720 826 RA k 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD 826 BUS U.E. U.E.
Lecture de l’instruction : lecture de la mémoire copie du compteur ordinal (CO) dans le registre adresse (RA) Lecture mémoire Mémoire centrale H Séquenceur CO k RI RGB 3 1 2 3 k k+1 k+2 ... 41 145 720 826 RA k CHA 0 CHB 2 ADD RGA 3 CHA 0 U.A.L. A B 18 826 RD 826 BUS U.E. U.E.
Lecture de l’instruction : copie du registre donnée (RD) dans le registre instruction (RI) lecture de la mémoire Écriture RI Lecture RD Mémoire centrale H Séquenceur CO k 1 2 3 k k+1 k+2 ... RI RGB 3 41 CHA 0 145 720 826 RA k CHA 0 CHB 2 ADD RGA 3 U.A.L. A B CHA 0 18 826 RD CHA 0 BUS U.E. U.E.
Incrémentation du compteur ordinal Lecture de l’instruction : copie du registre donnée (RD) dans le registre instruction (RI) Incrémenter CO Mémoire centrale H Séquenceur CO k+1 k 1 2 3 k k+1 k+2 ... RI 41 CHA 0 145 720 826 RA k CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD CHA 0 BUS U.E. U.E.
Décodage de l’instruction : Incrémentation du compteur ordinal « CHarger le registre A avec le mot d’adresse 0 » Incrémentation du compteur ordinal Mémoire centrale H Séquenceur Décodage CO k+1 1 2 3 k k+1 k+2 ... RI 41 CHA 0 145 720 826 RA k CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD CHA 0 BUS U.E. U.E.
Interprétation de l’instruction : Décodage de l’instruction : copie de l’adresse du RI dans le registre adresse RA Décodage de l’instruction : « CHarger le registre A avec le mot d’adresse 0 » Lecture adresse du RI Écriture RA Mémoire centrale H Séquenceur CO k+1 1 2 3 k k+1 k+2 ... RI 41 CHA 0 145 720 826 RA k CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD CHA 0 BUS U.E. U.E.
Interprétation de l’instruction : lecture en mémoire copie de l’adresse du RI dans le registre adresse RA Lecture mémoire Mémoire centrale H Séquenceur CO k+1 1 2 3 k k+1 k+2 ... 41 RI 41 CHA 0 145 720 826 RA CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 18 826 RD CHA 0 BUS U.E. U.E.
Interprétation de l’instruction : lecture en mémoire Interprétation de l’instruction : copie du registre donnée (RD) dans le registre A de l’U.A.L. Écriture A Lecture RD Mémoire centrale H Séquenceur CO k+1 1 2 3 k k+1 k+2 ... RI 41 CHA 0 145 720 826 RA CHA 0 CHB 2 ADD RGA 3 U.A.L. A 18 41 B 826 RD 41 41 BUS U.E. U.E.
Fin d’exécution de l’instruction : Simulation de l’exécution d’une le registre A a été chargé avec la valeur du mot mémoire d’adresse 0 Simulation de l’exécution d’une séquence d’instructions : exécution des instructions suivantes Mémoire centrale H Séquenceur CO k+1 1 2 3 k k+1 k+2 ... RI 41 CHA 0 145 720 826 RA CHA 0 CHB 2 ADD RGA 3 U.A.L. A 41 B 826 RD 41 BUS U.E. U.E.
Lecture de l’instruction suivante : copie du compteur ordinal (CO) dans le registre adresse (RA) Lecture CO Écriture RA Mémoire centrale H Séquenceur CO k+1 k+1 RI CHA 0 1 2 3 k k+1 k+2 ... 41 145 720 826 RA k+1 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 41 826 RD 41 BUS U.E. U.E.
Lecture de l’instruction suivante : lecture de la mémoire copie du compteur ordinal (CO) dans le registre adresse (RA) Lecture mémoire Mémoire centrale H Séquenceur CO k+1 RI CHA 0 1 2 3 k k+1 k+2 ... 41 145 720 826 RA k+1 CHA 0 CHB 2 ADD RGA 3 CHB 2 U.A.L. A B 41 826 RD 41 BUS U.E. U.E.
Lecture de l’instruction suivante : copie du registre donnée (RD) dans le registre instruction (RI) lecture de la mémoire Écriture RI Lecture RD Mémoire centrale H Séquenceur CO k+1 1 2 3 k k+1 k+2 ... RI CHA 0 41 CHB 2 145 720 826 RA k+1 CHA 0 CHB 2 ADD RGA 3 U.A.L. CHB 2 A B 41 826 RD CHB 2 BUS U.E. U.E.
Lecture de l’instruction suivante: Incrémentation du compteur ordinal copie du registre donnée (RD) dans le registre instruction (RI) Incrémentation du compteur ordinal Incrémenter CO Mémoire centrale H Séquenceur CO k+2 k+1 1 2 3 k k+1 k+2 ... RI 41 CHB 2 145 720 826 RA k+1 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 41 826 RD CHB 2 BUS U.E. U.E.
Décodage de l’instruction : Incrémentation du compteur ordinal « CHarger le registre B avec le mot d’adresse 2 » Incrémentation du compteur ordinal Mémoire centrale H Séquenceur Décodage CO k+2 1 2 3 k k+1 k+2 ... RI 41 CHB 2 145 720 826 RA k+1 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 41 826 RD CHB 2 BUS U.E. U.E.
Interprétation de l’instruction : Décodage de l’instruction : copie de l’adresse du RI dans le registre adresse RA Décodage de l’instruction : « CHarger le registre B avec le mot d’adresse 2 » Lecture adresse du RI Écriture RA Mémoire centrale H Séquenceur CO k+2 2 1 2 3 k k+1 k+2 ... RI 41 CHB 2 145 720 826 RA k+1 2 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 41 826 RD CHB 2 BUS U.E. U.E.
Interprétation de l’instruction : lecture en mémoire copie de l’adresse du RI dans le registre adresse RA Lecture mémoire Mémoire centrale H Séquenceur CO k+2 1 2 3 k k+1 k+2 ... RI 41 CHB 2 145 720 720 826 RA 2 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 41 826 RD CHB 2 BUS U.E. U.E.
Interprétation de l’instruction : lecture en mémoire Interprétation de l’instruction : copie du registre donnée (RD) dans le registre B de l’U.A.L. Écriture B Lecture RD Mémoire centrale H Séquenceur CO k+2 1 2 3 k k+1 k+2 ... RI 41 CHB 2 145 720 826 RA 2 CHA 0 CHB 2 ADD RGA 3 U.A.L. A 41 826 720 B RD 720 720 BUS U.E. U.E.
Lecture de l’instruction suivante : Interprétation de l’instruction : copie du compteur ordinal (CO) dans le registre adresse (RA) Interprétation de l’instruction : copie du registre donnée (RD) dans le registre B de l’U.A.L. Lecture CO Écriture RA Mémoire centrale H Séquenceur CO k+2 k+2 1 2 3 k k+1 k+2 ... RI CHB 2 41 145 720 826 RA k+2 2 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 41 720 RD 720 BUS U.E. U.E.
Lecture de l’instruction suivante : copie du compteur ordinal (CO) dans le registre adresse (RA) Lecture de l’instruction suivante : lecture de la mémoire Lecture mémoire Mémoire centrale H Séquenceur CO k+2 RI CHB 2 1 2 3 k k+1 k+2 ... 41 145 720 826 RA k+2 CHA 0 CHB 2 ADD RGA 3 U.A.L. ADD A B 41 720 RD 720 BUS U.E. U.E.
Lecture de l’instruction suivante : copie du registre donnée (RD) dans le registre instruction (RI) lecture de la mémoire Écriture RI Lecture RD Mémoire centrale H Séquenceur CO k+2 1 2 3 k k+1 k+2 ... RI CHB 2 41 ADD 145 720 826 RA k+2 CHA 0 CHB 2 ADD RGA 3 U.A.L. ADD A B 41 720 RD ADD BUS U.E. U.E.
Lecture de l’instruction suivante: Incrémentation du compteur ordinal copie du registre donnée (RD) dans le registre instruction (RI) Incrémentation du compteur ordinal Incrémenter CO Mémoire centrale H Séquenceur CO k+3 k+2 1 2 3 k k+1 k+2 ... RI 41 ADD 145 720 826 RA k+2 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 41 720 RD ADD BUS U.E. U.E.
Décodage de l’instruction : Incrémentation du compteur ordinal « ADDitionner le registre A et le registre B » Incrémentation du compteur ordinal Mémoire centrale H Séquenceur Décodage CO k+3 1 2 3 k k+1 k+2 ... RI 41 ADD 145 720 826 RA k+2 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 41 720 RD ADD BUS U.E. U.E.
Interprétation de l’instruction : Décodage de l’instruction : addition de A et B (le résultat est placé dans A) Décodage de l’instruction : « ADDitionner le registre A et le registre B » Addition Mémoire centrale H Séquenceur CO k+3 1 2 3 k k+1 k+2 ... RI 41 ADD 145 720 826 RA k+2 CHA 0 CHB 2 ADD RGA 3 U.A.L. 761 A 761 41 B 720 RD ADD BUS U.E. U.E.
Lecture de l’instruction suivante : Interprétation de l’instruction : copie du compteur ordinal (CO) dans le registre adresse (RA) Interprétation de l’instruction : addition de A et B (le résultat est placé dans A) Lecture CO Écriture RA Mémoire centrale H Séquenceur CO k+3 k+3 1 2 3 k k+1 k+2 ... RI ADD 41 145 720 826 RA k+3 k+2 CHA 0 CHB 2 ADD RGA 3 U.A.L. A B 761 720 RD ADD BUS U.E. U.E.
Lecture de l’instruction suivante : copie du compteur ordinal (CO) dans le registre adresse (RA) Lecture de l’instruction suivante : lecture de la mémoire Lecture mémoire Mémoire centrale H Séquenceur CO k+3 RI ADD 1 2 3 k k+1 k+2 ... 41 145 720 826 RA k+3 CHA 0 CHB 2 ADD RGA 3 U.A.L. RGA 3 A 761 B 720 RD ADD BUS U.E. U.E.
Lecture de l’instruction suivante : copie du registre donnée (RD) dans le registre instruction (RI) lecture de la mémoire Écriture RI Lecture RD Mémoire centrale H Séquenceur CO k+3 1 2 3 k k+1 k+2 ... RI ADD RGA 3 41 145 720 826 RA k+3 CHA 0 CHB 2 ADD RGA 3 U.A.L. RGA 3 A 761 B 720 RD RGA 3 BUS U.E. U.E.
Lecture de l’instruction suivante: Incrémentation du compteur ordinal copie du registre donnée (RD) dans le registre instruction (RI) Incrémentation du compteur ordinal Incrémenter CO Mémoire centrale H Séquenceur CO k+4 k+3 1 2 3 k k+1 k+2 ... RI 41 RGA 3 145 720 826 RA k+3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A 761 B 720 RD RGA 3 BUS U.E. U.E.
Décodage de l’instruction : Incrémentation du compteur ordinal « RanGer la valeur du registre A dans le mot d’adresse 3 » Incrémentation du compteur ordinal Mémoire centrale H Séquenceur Décodage CO k+4 1 2 3 k k+1 k+2 ... RI 41 RGA 3 145 720 826 RA k+3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A 761 B 720 RD RGA 3 BUS U.E. U.E.
Interprétation de l’instruction : Décodage de l’instruction : copie de l’adresse du RI dans le registre adresse RA Décodage de l’instruction : « RanGer la valeur du registre A dans le mot d’adresse 3 » Lecture adresse du RI Écriture RA Mémoire centrale H Séquenceur CO k+4 3 1 2 3 k k+1 k+2 ... RI 41 RGA 3 145 720 826 RA k+3 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A 761 B 720 RD RGA 3 BUS U.E. U.E.
Interprétation de l’instruction : copie du registre A dans le registre donnée RD copie de l’adresse du RI dans le registre adresse RA Lecture A Écriture RD Mémoire centrale H Séquenceur CO k+4 1 2 3 k k+1 k+2 ... RI 41 RGA 3 145 720 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. 761 A 761 B 720 RD RGA 3 761 BUS U.E. U.E.
Interprétation de l’instruction : copie du registre A dans le registre donnée RD Interprétation de l’instruction : écriture en mémoire Écriture mémoire Mémoire centrale H Séquenceur CO k+4 RI RGA 3 1 2 3 k k+1 k+2 ... 41 145 720 826 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A 761 B 720 RD 761 761 BUS U.E. U.E.
Interprétation de l’instruction : écriture en mémoire Fin de la simulation de l’exécution d’une séquence d’instructions Mémoire centrale H Séquenceur CO k+4 1 2 3 k k+1 k+2 ... RI RGA 3 41 145 720 761 RA 3 CHA 0 CHB 2 ADD RGA 3 U.A.L. A 761 B 720 RD 761 BUS U.E. U.E.