+ All Categories
Home > Documents > Architecture des ordinateurs V -...

Architecture des ordinateurs V -...

Date post: 12-Jul-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
97
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Architecture des ordinateurs V Frédéric Boulanger CentraleSupélec w w Architecture des ordinateurs [email protected] 37
Transcript
Page 1: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Architecture des ordinateurs V

Frédéric Boulanger

CentraleSupélec

w

w Architecture des ordinateurs [email protected] 37

Page 2: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception d’un microprocesseur

w Architecture des ordinateurs Conception d’un microprocesseur 38

Page 3: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Architecture de von Neumann

Les ordinateurs actuels ont une architecture caractérisée en 1945 parJohn von Neumann :▶ unité arithmétique et logique (UAL)

▶ unité de contrôle (séquençage des opérations)▶ mémoire (données et programme)▶ dispositifs d’entrée-sortie

w Architecture des ordinateurs Conception d’un microprocesseur 39

Page 4: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Architecture de von Neumann

Les ordinateurs actuels ont une architecture caractérisée en 1945 parJohn von Neumann :▶ unité arithmétique et logique (UAL)▶ unité de contrôle (séquençage des opérations)

▶ mémoire (données et programme)▶ dispositifs d’entrée-sortie

w Architecture des ordinateurs Conception d’un microprocesseur 39

Page 5: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Architecture de von Neumann

Les ordinateurs actuels ont une architecture caractérisée en 1945 parJohn von Neumann :▶ unité arithmétique et logique (UAL)▶ unité de contrôle (séquençage des opérations)▶ mémoire (données et programme)

▶ dispositifs d’entrée-sortie

w Architecture des ordinateurs Conception d’un microprocesseur 39

Page 6: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Architecture de von Neumann

Les ordinateurs actuels ont une architecture caractérisée en 1945 parJohn von Neumann :▶ unité arithmétique et logique (UAL)▶ unité de contrôle (séquençage des opérations)▶ mémoire (données et programme)▶ dispositifs d’entrée-sortie

w Architecture des ordinateurs Conception d’un microprocesseur 39

Page 7: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Unité arithmétique et logique

A B

SOp

NZ

VC

16 16

4

Exemple de l’UAL du coursOp3 Op2 Op1 Op0 Opération0 0 0 0 S = A0 0 0 1 S = A ou B0 0 1 0 S = non (A ou B)0 0 1 1 S = non (A et B)0 1 0 0 S = A et B0 1 0 1 S = B0 1 1 0 S = non B0 1 1 1 S = A xor B1 0 0 0 S = A - B1 0 0 1 S = A + B1 0 1 0 S = A + A1 0 1 1 S = A - 11 1 0 0 S = A + 11 1 0 1 S = FFFF1 1 1 0 S = 01 1 1 1 S = non A

w Architecture des ordinateurs Conception d’un microprocesseur 40

Page 8: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

RegistresUn processeur utilise des registres pour stocker les arguments et lesrésultats des opérations élémentaires.L’accès aux registres est plus rapide que l’accès à la mémoire.Notre processeur utilise un banc de 8 registres :

os1 n° du registre pour out1os2 n° du registre pour out2is n° du registre à charger avec in

on1 indique si le registre os1 est négatifon2 indique si le registre os2 est négatifon1 indique si le registre os1 est nulon2 indique si le registre os2 est nulclk horloge de chargement de in

w Architecture des ordinateurs Conception d’un microprocesseur 41

Page 9: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Une calculette

En assemblant l’UAL et le banc de registres, on obtient une calculette quiest le cœur de notre processeur :

Circuit

w Architecture des ordinateurs Conception d’un microprocesseur 42

Page 10: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Une calculette avec mémoire

Circuit

w Architecture des ordinateurs Conception d’un microprocesseur 43

Page 11: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Retour à von Neumann

▶ unité arithmétique et logique (UAL) OK

▶ mémoire (données et programme) OK▶ unité de contrôle (séquençage des opérations) ?▶ dispositifs d’entrée-sortie plus tard

w Architecture des ordinateurs Conception d’un microprocesseur 44

Page 12: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Retour à von Neumann

▶ unité arithmétique et logique (UAL) OK▶ mémoire (données et programme) OK

▶ unité de contrôle (séquençage des opérations) ?▶ dispositifs d’entrée-sortie plus tard

w Architecture des ordinateurs Conception d’un microprocesseur 44

Page 13: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Retour à von Neumann

▶ unité arithmétique et logique (UAL) OK▶ mémoire (données et programme) OK▶ unité de contrôle (séquençage des opérations) ?

▶ dispositifs d’entrée-sortie plus tard

w Architecture des ordinateurs Conception d’un microprocesseur 44

Page 14: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Retour à von Neumann

▶ unité arithmétique et logique (UAL) OK▶ mémoire (données et programme) OK▶ unité de contrôle (séquençage des opérations) ?▶ dispositifs d’entrée-sortie plus tard

w Architecture des ordinateurs Conception d’un microprocesseur 44

Page 15: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Unité de contrôle (séquenceur)

▶ Décompose l’exécution d’une instruction en étapes

▶ Donne à chaque étape les signaux :

▶ de sélection des registres du banc▶ de chargement des registres▶ du code opération de l’UAL▶ de connexion de la mémoire ou des registres à l’entrée B▶ de lecture/écriture en mémoire

▶ A besoin de savoir quelle instruction on exécute :Registre d’instruction RI

w Architecture des ordinateurs Conception d’un microprocesseur 45

Page 16: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Unité de contrôle (séquenceur)

▶ Décompose l’exécution d’une instruction en étapes▶ Donne à chaque étape les signaux :

▶ de sélection des registres du banc▶ de chargement des registres▶ du code opération de l’UAL▶ de connexion de la mémoire ou des registres à l’entrée B▶ de lecture/écriture en mémoire

▶ A besoin de savoir quelle instruction on exécute :Registre d’instruction RI

w Architecture des ordinateurs Conception d’un microprocesseur 45

Page 17: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Unité de contrôle (séquenceur)

▶ Décompose l’exécution d’une instruction en étapes▶ Donne à chaque étape les signaux :

▶ de sélection des registres du banc

▶ de chargement des registres▶ du code opération de l’UAL▶ de connexion de la mémoire ou des registres à l’entrée B▶ de lecture/écriture en mémoire

▶ A besoin de savoir quelle instruction on exécute :Registre d’instruction RI

w Architecture des ordinateurs Conception d’un microprocesseur 45

Page 18: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Unité de contrôle (séquenceur)

▶ Décompose l’exécution d’une instruction en étapes▶ Donne à chaque étape les signaux :

▶ de sélection des registres du banc▶ de chargement des registres

▶ du code opération de l’UAL▶ de connexion de la mémoire ou des registres à l’entrée B▶ de lecture/écriture en mémoire

▶ A besoin de savoir quelle instruction on exécute :Registre d’instruction RI

w Architecture des ordinateurs Conception d’un microprocesseur 45

Page 19: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Unité de contrôle (séquenceur)

▶ Décompose l’exécution d’une instruction en étapes▶ Donne à chaque étape les signaux :

▶ de sélection des registres du banc▶ de chargement des registres▶ du code opération de l’UAL

▶ de connexion de la mémoire ou des registres à l’entrée B▶ de lecture/écriture en mémoire

▶ A besoin de savoir quelle instruction on exécute :Registre d’instruction RI

w Architecture des ordinateurs Conception d’un microprocesseur 45

Page 20: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Unité de contrôle (séquenceur)

▶ Décompose l’exécution d’une instruction en étapes▶ Donne à chaque étape les signaux :

▶ de sélection des registres du banc▶ de chargement des registres▶ du code opération de l’UAL▶ de connexion de la mémoire ou des registres à l’entrée B

▶ de lecture/écriture en mémoire▶ A besoin de savoir quelle instruction on exécute :

Registre d’instruction RI

w Architecture des ordinateurs Conception d’un microprocesseur 45

Page 21: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Unité de contrôle (séquenceur)

▶ Décompose l’exécution d’une instruction en étapes▶ Donne à chaque étape les signaux :

▶ de sélection des registres du banc▶ de chargement des registres▶ du code opération de l’UAL▶ de connexion de la mémoire ou des registres à l’entrée B▶ de lecture/écriture en mémoire

▶ A besoin de savoir quelle instruction on exécute :Registre d’instruction RI

w Architecture des ordinateurs Conception d’un microprocesseur 45

Page 22: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Unité de contrôle (séquenceur)

▶ Décompose l’exécution d’une instruction en étapes▶ Donne à chaque étape les signaux :

▶ de sélection des registres du banc▶ de chargement des registres▶ du code opération de l’UAL▶ de connexion de la mémoire ou des registres à l’entrée B▶ de lecture/écriture en mémoire

▶ A besoin de savoir quelle instruction on exécute :Registre d’instruction RI

w Architecture des ordinateurs Conception d’un microprocesseur 45

Page 23: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Codage des instructions

Notre processeur doit pouvoir exécuter différentes instructions :▶ chargement d’un registre depuis une case mémoire ;

▶ écriture de la valeur d’un registre dans une case mémoire ;▶ copie d’une valeur d’un registre à un autre ;▶ addition de deux registres ;▶ soustraction de deux registres ;▶ test de conditions :

▶ exécuter une instruction si un résultat est nul▶ exécuter une instruction si un résultat est négatif

w Architecture des ordinateurs Conception d’un microprocesseur 46

Page 24: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Codage des instructions

Notre processeur doit pouvoir exécuter différentes instructions :▶ chargement d’un registre depuis une case mémoire ;▶ écriture de la valeur d’un registre dans une case mémoire ;

▶ copie d’une valeur d’un registre à un autre ;▶ addition de deux registres ;▶ soustraction de deux registres ;▶ test de conditions :

▶ exécuter une instruction si un résultat est nul▶ exécuter une instruction si un résultat est négatif

w Architecture des ordinateurs Conception d’un microprocesseur 46

Page 25: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Codage des instructions

Notre processeur doit pouvoir exécuter différentes instructions :▶ chargement d’un registre depuis une case mémoire ;▶ écriture de la valeur d’un registre dans une case mémoire ;▶ copie d’une valeur d’un registre à un autre ;

▶ addition de deux registres ;▶ soustraction de deux registres ;▶ test de conditions :

▶ exécuter une instruction si un résultat est nul▶ exécuter une instruction si un résultat est négatif

w Architecture des ordinateurs Conception d’un microprocesseur 46

Page 26: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Codage des instructions

Notre processeur doit pouvoir exécuter différentes instructions :▶ chargement d’un registre depuis une case mémoire ;▶ écriture de la valeur d’un registre dans une case mémoire ;▶ copie d’une valeur d’un registre à un autre ;▶ addition de deux registres ;

▶ soustraction de deux registres ;▶ test de conditions :

▶ exécuter une instruction si un résultat est nul▶ exécuter une instruction si un résultat est négatif

w Architecture des ordinateurs Conception d’un microprocesseur 46

Page 27: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Codage des instructions

Notre processeur doit pouvoir exécuter différentes instructions :▶ chargement d’un registre depuis une case mémoire ;▶ écriture de la valeur d’un registre dans une case mémoire ;▶ copie d’une valeur d’un registre à un autre ;▶ addition de deux registres ;▶ soustraction de deux registres ;

▶ test de conditions :

▶ exécuter une instruction si un résultat est nul▶ exécuter une instruction si un résultat est négatif

w Architecture des ordinateurs Conception d’un microprocesseur 46

Page 28: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Codage des instructions

Notre processeur doit pouvoir exécuter différentes instructions :▶ chargement d’un registre depuis une case mémoire ;▶ écriture de la valeur d’un registre dans une case mémoire ;▶ copie d’une valeur d’un registre à un autre ;▶ addition de deux registres ;▶ soustraction de deux registres ;▶ test de conditions :

▶ exécuter une instruction si un résultat est nul▶ exécuter une instruction si un résultat est négatif

w Architecture des ordinateurs Conception d’un microprocesseur 46

Page 29: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Codage des instructions

Notre processeur doit pouvoir exécuter différentes instructions :▶ chargement d’un registre depuis une case mémoire ;▶ écriture de la valeur d’un registre dans une case mémoire ;▶ copie d’une valeur d’un registre à un autre ;▶ addition de deux registres ;▶ soustraction de deux registres ;▶ test de conditions :

▶ exécuter une instruction si un résultat est nul

▶ exécuter une instruction si un résultat est négatif

w Architecture des ordinateurs Conception d’un microprocesseur 46

Page 30: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Codage des instructions

Notre processeur doit pouvoir exécuter différentes instructions :▶ chargement d’un registre depuis une case mémoire ;▶ écriture de la valeur d’un registre dans une case mémoire ;▶ copie d’une valeur d’un registre à un autre ;▶ addition de deux registres ;▶ soustraction de deux registres ;▶ test de conditions :

▶ exécuter une instruction si un résultat est nul▶ exécuter une instruction si un résultat est négatif

w Architecture des ordinateurs Conception d’un microprocesseur 46

Page 31: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Accès à la mémoire▶ chargement d’un registre :

ldr rx, adresse

charge le registre rx avec le contenu de la case mémoired’adresse adresse.

Par exemple, si la case mémoire d’adresse 0x002C contient lavaleur 0x004A, l’instruction ldr r1, 0x002C charge la valeur0x004A dans le registre r1.

w Architecture des ordinateurs Conception d’un microprocesseur 47

Page 32: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Accès à la mémoire▶ chargement d’un registre :

ldr rx, adresse

charge le registre rx avec le contenu de la case mémoired’adresse adresse.Par exemple, si la case mémoire d’adresse 0x002C contient lavaleur 0x004A, l’instruction ldr r1, 0x002C charge la valeur0x004A dans le registre r1.

w Architecture des ordinateurs Conception d’un microprocesseur 47

Page 33: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Accès à la mémoire▶ chargement d’un registre :

ldr rx, adresse

charge le registre rx avec le contenu de la case mémoired’adresse adresse.Par exemple, si la case mémoire d’adresse 0x002C contient lavaleur 0x004A, l’instruction ldr r1, 0x002C charge la valeur0x004A dans le registre r1.

w Architecture des ordinateurs Conception d’un microprocesseur 47

Page 34: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Accès à la mémoire▶ écriture d’un registre :

str rz, adresse

écrit la valeur du registre rz dans la case mémoire d’adresseadresse.

Par exemple, si le registre r2 contient la valeur 0x0012,l’instruction str r2, 0x00AB écrit la valeur 0x0012 dans lamémoire à l’adresse 0x00AB.

w Architecture des ordinateurs Conception d’un microprocesseur 48

Page 35: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Accès à la mémoire▶ écriture d’un registre :

str rz, adresse

écrit la valeur du registre rz dans la case mémoire d’adresseadresse.Par exemple, si le registre r2 contient la valeur 0x0012,l’instruction str r2, 0x00AB écrit la valeur 0x0012 dans lamémoire à l’adresse 0x00AB.

w Architecture des ordinateurs Conception d’un microprocesseur 48

Page 36: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Copie d’une valeur d’un registre à un autremov rx, ry

copie la valeur du registre ry dans le registre rx.Par exemple, si r2 contient 0x0008, l’instruction mov r0, r2 placela valeur 0x0008 dans le regsitre r0.

w Architecture des ordinateurs Conception d’un microprocesseur 49

Page 37: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Additionadd rx, ry, rz

place la somme de ry et rz dans le registre rx.Par exemple, si r0 contient 0x0008 et r1 contient 0x0002,l’instruction add r2, r0, r1 place la valeur 0x000A dans leregistre r2.

w Architecture des ordinateurs Conception d’un microprocesseur 50

Page 38: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Soustractionsub rx, ry, rz

place la différence de ry et rz dans le registre rx.Par exemple, si r0 contient 0x0008 et r1 contient 0x0002,l’instruction add r2, r0, r1 place la valeur 0x0006 dans leregistre r2.

w Architecture des ordinateurs Conception d’un microprocesseur 51

Page 39: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Tests de condition

▶ cmp rx, ry

compare les valeurs de rx et ry

▶ la comparaison se fait par soustraction : rx - ry

▶ si le résultat est nul, les deux registres sont égaux▶ si le résultat est négatif, rx < ry

▶ pour utiliser le résultat de la comparaison, il faut mémoriser lavaleur des indicateurs N et Z de l’UAL⇒ registre d’état SR.

w Architecture des ordinateurs Conception d’un microprocesseur 52

Page 40: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Tests de condition

▶ cmp rx, ry

compare les valeurs de rx et ry▶ la comparaison se fait par soustraction : rx - ry

▶ si le résultat est nul, les deux registres sont égaux▶ si le résultat est négatif, rx < ry

▶ pour utiliser le résultat de la comparaison, il faut mémoriser lavaleur des indicateurs N et Z de l’UAL⇒ registre d’état SR.

w Architecture des ordinateurs Conception d’un microprocesseur 52

Page 41: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Tests de condition

▶ cmp rx, ry

compare les valeurs de rx et ry▶ la comparaison se fait par soustraction : rx - ry

▶ si le résultat est nul, les deux registres sont égaux

▶ si le résultat est négatif, rx < ry

▶ pour utiliser le résultat de la comparaison, il faut mémoriser lavaleur des indicateurs N et Z de l’UAL⇒ registre d’état SR.

w Architecture des ordinateurs Conception d’un microprocesseur 52

Page 42: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Tests de condition

▶ cmp rx, ry

compare les valeurs de rx et ry▶ la comparaison se fait par soustraction : rx - ry

▶ si le résultat est nul, les deux registres sont égaux▶ si le résultat est négatif, rx < ry

▶ pour utiliser le résultat de la comparaison, il faut mémoriser lavaleur des indicateurs N et Z de l’UAL⇒ registre d’état SR.

w Architecture des ordinateurs Conception d’un microprocesseur 52

Page 43: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Tests de condition

▶ cmp rx, ry

compare les valeurs de rx et ry▶ la comparaison se fait par soustraction : rx - ry

▶ si le résultat est nul, les deux registres sont égaux▶ si le résultat est négatif, rx < ry

▶ pour utiliser le résultat de la comparaison, il faut mémoriser lavaleur des indicateurs N et Z de l’UAL⇒ registre d’état SR.

w Architecture des ordinateurs Conception d’un microprocesseur 52

Page 44: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

Pour modifier le comportement d’un programme selon le résultat d’unecomparaison, on utilise des instructions de branchement :▶ beq adresse

saute à l’instruction qui se trouve à adresse si la dernièrecomparaison a donné un résultat nul.

▶ beq = Branch if EQualle saut se fait si les deux valeurs comparées étaient égales...

▶ ... donc si l’indicateur Z était à 1▶ On trouve la valeur de cet indicateur dans le registre d’état▶ Exemple : cmp r0, r1

beq 0x1F2A

w Architecture des ordinateurs Conception d’un microprocesseur 53

Page 45: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

Pour modifier le comportement d’un programme selon le résultat d’unecomparaison, on utilise des instructions de branchement :▶ beq adresse

saute à l’instruction qui se trouve à adresse si la dernièrecomparaison a donné un résultat nul.

▶ beq = Branch if EQualle saut se fait si les deux valeurs comparées étaient égales...

▶ ... donc si l’indicateur Z était à 1▶ On trouve la valeur de cet indicateur dans le registre d’état▶ Exemple : cmp r0, r1

beq 0x1F2A

w Architecture des ordinateurs Conception d’un microprocesseur 53

Page 46: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

Pour modifier le comportement d’un programme selon le résultat d’unecomparaison, on utilise des instructions de branchement :▶ beq adresse

saute à l’instruction qui se trouve à adresse si la dernièrecomparaison a donné un résultat nul.

▶ beq = Branch if EQualle saut se fait si les deux valeurs comparées étaient égales...

▶ ... donc si l’indicateur Z était à 1

▶ On trouve la valeur de cet indicateur dans le registre d’état▶ Exemple : cmp r0, r1

beq 0x1F2A

w Architecture des ordinateurs Conception d’un microprocesseur 53

Page 47: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

Pour modifier le comportement d’un programme selon le résultat d’unecomparaison, on utilise des instructions de branchement :▶ beq adresse

saute à l’instruction qui se trouve à adresse si la dernièrecomparaison a donné un résultat nul.

▶ beq = Branch if EQualle saut se fait si les deux valeurs comparées étaient égales...

▶ ... donc si l’indicateur Z était à 1▶ On trouve la valeur de cet indicateur dans le registre d’état

▶ Exemple : cmp r0, r1

beq 0x1F2A

w Architecture des ordinateurs Conception d’un microprocesseur 53

Page 48: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

Pour modifier le comportement d’un programme selon le résultat d’unecomparaison, on utilise des instructions de branchement :▶ beq adresse

saute à l’instruction qui se trouve à adresse si la dernièrecomparaison a donné un résultat nul.

▶ beq = Branch if EQualle saut se fait si les deux valeurs comparées étaient égales...

▶ ... donc si l’indicateur Z était à 1▶ On trouve la valeur de cet indicateur dans le registre d’état▶ Exemple : cmp r0, r1

beq 0x1F2A

w Architecture des ordinateurs Conception d’un microprocesseur 53

Page 49: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

▶ blt adresse

saute à l’instruction qui se trouve à adresse si la dernièrecomparaison a donné un résultat négatif.

▶ blt = Branch if Lower Thanle saut se fait si la première valeur était inférieure à la deuxième...

▶ ... donc si l’indicateur N était à 1▶ On trouve la valeur de cet indicateur dans le registre d’état▶ Exemple : cmp r0, r1

blt 0x1F2A

w Architecture des ordinateurs Conception d’un microprocesseur 54

Page 50: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

▶ blt adresse

saute à l’instruction qui se trouve à adresse si la dernièrecomparaison a donné un résultat négatif.

▶ blt = Branch if Lower Thanle saut se fait si la première valeur était inférieure à la deuxième...

▶ ... donc si l’indicateur N était à 1▶ On trouve la valeur de cet indicateur dans le registre d’état▶ Exemple : cmp r0, r1

blt 0x1F2A

w Architecture des ordinateurs Conception d’un microprocesseur 54

Page 51: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

▶ blt adresse

saute à l’instruction qui se trouve à adresse si la dernièrecomparaison a donné un résultat négatif.

▶ blt = Branch if Lower Thanle saut se fait si la première valeur était inférieure à la deuxième...

▶ ... donc si l’indicateur N était à 1

▶ On trouve la valeur de cet indicateur dans le registre d’état▶ Exemple : cmp r0, r1

blt 0x1F2A

w Architecture des ordinateurs Conception d’un microprocesseur 54

Page 52: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

▶ blt adresse

saute à l’instruction qui se trouve à adresse si la dernièrecomparaison a donné un résultat négatif.

▶ blt = Branch if Lower Thanle saut se fait si la première valeur était inférieure à la deuxième...

▶ ... donc si l’indicateur N était à 1▶ On trouve la valeur de cet indicateur dans le registre d’état

▶ Exemple : cmp r0, r1

blt 0x1F2A

w Architecture des ordinateurs Conception d’un microprocesseur 54

Page 53: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

▶ blt adresse

saute à l’instruction qui se trouve à adresse si la dernièrecomparaison a donné un résultat négatif.

▶ blt = Branch if Lower Thanle saut se fait si la première valeur était inférieure à la deuxième...

▶ ... donc si l’indicateur N était à 1▶ On trouve la valeur de cet indicateur dans le registre d’état▶ Exemple : cmp r0, r1

blt 0x1F2A

w Architecture des ordinateurs Conception d’un microprocesseur 54

Page 54: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

▶ b adresse

saute à l’instruction qui se trouve à adresse.

▶ b = Branch▶ Exemple : cmp r0, r1

beq 0x1F2A

code pour le cas où r0 ̸= r1

b 0x1F30

0x1F2A code pour le cas où r0 = r10x1F30 suite du code

▶ Équivalent de : if r0 == r1: ... else: ...

w Architecture des ordinateurs Conception d’un microprocesseur 55

Page 55: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

▶ b adresse

saute à l’instruction qui se trouve à adresse.▶ b = Branch

▶ Exemple : cmp r0, r1

beq 0x1F2A

code pour le cas où r0 ̸= r1

b 0x1F30

0x1F2A code pour le cas où r0 = r10x1F30 suite du code

▶ Équivalent de : if r0 == r1: ... else: ...

w Architecture des ordinateurs Conception d’un microprocesseur 55

Page 56: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

▶ b adresse

saute à l’instruction qui se trouve à adresse.▶ b = Branch▶ Exemple : cmp r0, r1

beq 0x1F2A

code pour le cas où r0 ̸= r1

b 0x1F30

0x1F2A code pour le cas où r0 = r10x1F30 suite du code

▶ Équivalent de : if r0 == r1: ... else: ...

w Architecture des ordinateurs Conception d’un microprocesseur 55

Page 57: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

▶ b adresse

saute à l’instruction qui se trouve à adresse.▶ b = Branch▶ Exemple : cmp r0, r1

beq 0x1F2A

code pour le cas où r0 ̸= r1

b 0x1F30

0x1F2A code pour le cas où r0 = r10x1F30 suite du code

▶ Équivalent de : if r0 == r1: ... else: ...

w Architecture des ordinateurs Conception d’un microprocesseur 55

Page 58: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

Par défaut, les instructions s’exécutent en séquence :▶ quand une instruction est exécutée, on passe à celle qui suit en

mémoire.

▶ il faut donc toujours connaître l’adresse de la prochaine instruction▶ le processeur mémorise cette adresse dans un registre :

le compteur ordinal (PC = program counter )▶ lors de l’exécution d’une instruction, le PC est incrémenté pour

contenir l’adresse de l’instruction suivante▶ lors d’un branchement, on charge l’adresse à laquelle il faut sauter

dans le PC.

w Architecture des ordinateurs Conception d’un microprocesseur 56

Page 59: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

Par défaut, les instructions s’exécutent en séquence :▶ quand une instruction est exécutée, on passe à celle qui suit en

mémoire.▶ il faut donc toujours connaître l’adresse de la prochaine instruction

▶ le processeur mémorise cette adresse dans un registre :le compteur ordinal (PC = program counter )

▶ lors de l’exécution d’une instruction, le PC est incrémenté pourcontenir l’adresse de l’instruction suivante

▶ lors d’un branchement, on charge l’adresse à laquelle il faut sauterdans le PC.

w Architecture des ordinateurs Conception d’un microprocesseur 56

Page 60: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

Par défaut, les instructions s’exécutent en séquence :▶ quand une instruction est exécutée, on passe à celle qui suit en

mémoire.▶ il faut donc toujours connaître l’adresse de la prochaine instruction▶ le processeur mémorise cette adresse dans un registre :

le compteur ordinal (PC = program counter )

▶ lors de l’exécution d’une instruction, le PC est incrémenté pourcontenir l’adresse de l’instruction suivante

▶ lors d’un branchement, on charge l’adresse à laquelle il faut sauterdans le PC.

w Architecture des ordinateurs Conception d’un microprocesseur 56

Page 61: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

Par défaut, les instructions s’exécutent en séquence :▶ quand une instruction est exécutée, on passe à celle qui suit en

mémoire.▶ il faut donc toujours connaître l’adresse de la prochaine instruction▶ le processeur mémorise cette adresse dans un registre :

le compteur ordinal (PC = program counter )▶ lors de l’exécution d’une instruction, le PC est incrémenté pour

contenir l’adresse de l’instruction suivante

▶ lors d’un branchement, on charge l’adresse à laquelle il faut sauterdans le PC.

w Architecture des ordinateurs Conception d’un microprocesseur 56

Page 62: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Branchements

Par défaut, les instructions s’exécutent en séquence :▶ quand une instruction est exécutée, on passe à celle qui suit en

mémoire.▶ il faut donc toujours connaître l’adresse de la prochaine instruction▶ le processeur mémorise cette adresse dans un registre :

le compteur ordinal (PC = program counter )▶ lors de l’exécution d’une instruction, le PC est incrémenté pour

contenir l’adresse de l’instruction suivante▶ lors d’un branchement, on charge l’adresse à laquelle il faut sauter

dans le PC.

w Architecture des ordinateurs Conception d’un microprocesseur 56

Page 63: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

RécapitulonsInstructionsldr rx, adresse rx← Mem[adresse]

str rz, adresse Mem[adresse]← rz

mov rx, ry rx← ry

add rx, ry, rz rx← ry + rzsub rx, ry, rz rx← ry - rzcmp rx, ry SR← N et Z selon rx - rybeq adresse PC← adresse si Z vaut 1 dans SRblt adresse PC← adresse si N vaut 1 dans SRb adresse PC← adresse

Registres▶ Registre d’adresse mémoire RADM.▶ Registre d’instruction RI = code de l’instruction à exécuter.▶ Registre d’état SR = résultat de cmp.▶ Compteur ordinal PC = adresse de la prochaine instruction.

w Architecture des ordinateurs Conception d’un microprocesseur 57

Page 64: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Modes d’adressageUn mode d’adressage est une manière d’indiquerla valeur d’un opérande.▶ adressage par registre

L’opérande est contenu dans un registre : mov r0, r1

▶ adressage directL’opérande se trouve en mémoire à une adressequi est directement indiquée : ldr r0, 0x25FC

▶ Autre exemple d’adressage direct : beq 0xAB2C

▶ adressage immédiatL’opérande est donné immédiatement (sans passer par un registreou une adresse) : add r0, r0, #1

▶ Autre exemple d’adressage immédiat : cmp r1, #2

▶ adressage direct par registreL’opérande se trouve en mémoire à une adresse contenuedans un registre : ldr r0,[r2] ou beq r6

w Architecture des ordinateurs Conception d’un microprocesseur 58

Page 65: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Modes d’adressageUn mode d’adressage est une manière d’indiquerla valeur d’un opérande.▶ adressage par registre

L’opérande est contenu dans un registre : mov r0, r1

▶ adressage directL’opérande se trouve en mémoire à une adressequi est directement indiquée : ldr r0, 0x25FC

▶ Autre exemple d’adressage direct : beq 0xAB2C

▶ adressage immédiatL’opérande est donné immédiatement (sans passer par un registreou une adresse) : add r0, r0, #1

▶ Autre exemple d’adressage immédiat : cmp r1, #2

▶ adressage direct par registreL’opérande se trouve en mémoire à une adresse contenuedans un registre : ldr r0,[r2] ou beq r6

w Architecture des ordinateurs Conception d’un microprocesseur 58

Page 66: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Modes d’adressageUn mode d’adressage est une manière d’indiquerla valeur d’un opérande.▶ adressage par registre

L’opérande est contenu dans un registre : mov r0, r1

▶ adressage directL’opérande se trouve en mémoire à une adressequi est directement indiquée : ldr r0, 0x25FC

▶ Autre exemple d’adressage direct : beq 0xAB2C

▶ adressage immédiatL’opérande est donné immédiatement (sans passer par un registreou une adresse) : add r0, r0, #1

▶ Autre exemple d’adressage immédiat : cmp r1, #2

▶ adressage direct par registreL’opérande se trouve en mémoire à une adresse contenuedans un registre : ldr r0,[r2] ou beq r6

w Architecture des ordinateurs Conception d’un microprocesseur 58

Page 67: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Modes d’adressageUn mode d’adressage est une manière d’indiquerla valeur d’un opérande.▶ adressage par registre

L’opérande est contenu dans un registre : mov r0, r1

▶ adressage directL’opérande se trouve en mémoire à une adressequi est directement indiquée : ldr r0, 0x25FC

▶ Autre exemple d’adressage direct : beq 0xAB2C

▶ adressage immédiatL’opérande est donné immédiatement (sans passer par un registreou une adresse) : add r0, r0, #1

▶ Autre exemple d’adressage immédiat : cmp r1, #2

▶ adressage direct par registreL’opérande se trouve en mémoire à une adresse contenuedans un registre : ldr r0,[r2] ou beq r6

w Architecture des ordinateurs Conception d’un microprocesseur 58

Page 68: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Modes d’adressageUn mode d’adressage est une manière d’indiquerla valeur d’un opérande.▶ adressage par registre

L’opérande est contenu dans un registre : mov r0, r1

▶ adressage directL’opérande se trouve en mémoire à une adressequi est directement indiquée : ldr r0, 0x25FC

▶ Autre exemple d’adressage direct : beq 0xAB2C

▶ adressage immédiatL’opérande est donné immédiatement (sans passer par un registreou une adresse) : add r0, r0, #1

▶ Autre exemple d’adressage immédiat : cmp r1, #2

▶ adressage direct par registreL’opérande se trouve en mémoire à une adresse contenuedans un registre : ldr r0,[r2] ou beq r6

w Architecture des ordinateurs Conception d’un microprocesseur 58

Page 69: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Modes d’adressageUn mode d’adressage est une manière d’indiquerla valeur d’un opérande.▶ adressage par registre

L’opérande est contenu dans un registre : mov r0, r1

▶ adressage directL’opérande se trouve en mémoire à une adressequi est directement indiquée : ldr r0, 0x25FC

▶ Autre exemple d’adressage direct : beq 0xAB2C

▶ adressage immédiatL’opérande est donné immédiatement (sans passer par un registreou une adresse) : add r0, r0, #1

▶ Autre exemple d’adressage immédiat : cmp r1, #2

▶ adressage direct par registreL’opérande se trouve en mémoire à une adresse contenuedans un registre : ldr r0,[r2] ou beq r6

w Architecture des ordinateurs Conception d’un microprocesseur 58

Page 70: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Format des instructionsInstruction code imm rx ry rz

4 bits 1 bit 3 bits 3 bits 3 bits 2 bitsldr rx,adresse 0000 1 rx

adressestr rz,adresse 0001 1 rz

adressemov rx,ry 0010 0 rx rymov rx,#val 0010 1 rx

valadd rx,ry,rz 0011 0 rx ry rzadd rx,ry,#val 0011 1 rx ry

valsub rx,ry,rz 0100 0 rx ry rzsub rx,ry,#val 0100 1 rx ry

val

w Architecture des ordinateurs Conception d’un microprocesseur 59

Page 71: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Format des instructionsInstruction code imm rx ry rz

4 bits 1 bit 3 bits 3 bits 3 bits 2 bitscmp ry,rz 0101 0 ry rzcmp ry,#val 0101 1 ry

valbeq rz 0110 0 rzbeq adresse 0110 1

adresseblt rz 0111 0 rzblt adresse 0111 1

adresseb rz 1000 0 rzb adresse 1000 1

adresse

w Architecture des ordinateurs Conception d’un microprocesseur 60

Page 72: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Chemin de données

w Architecture des ordinateurs Conception d’un microprocesseur 61

Page 73: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Le séquenceur est chargé de piloterles signaux du chemin de données

▶ Il reçoit en entrée le code de l’instruction (RI) et les indicateurs (SR)▶ Il décompose l’exécution d’une instruction en une suite d’étapes▶ Il dispose pour cela d’une horloge :

T1P1T2P2T3P3

▶ Ti configure la combinatoire (codes UAL, connexions)▶ Pi permet de charger les registres et d’écrire en mémoire

w Architecture des ordinateurs Conception d’un microprocesseur 62

Page 74: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Le séquenceur est chargé de piloterles signaux du chemin de données

▶ Il reçoit en entrée le code de l’instruction (RI) et les indicateurs (SR)

▶ Il décompose l’exécution d’une instruction en une suite d’étapes▶ Il dispose pour cela d’une horloge :

T1P1T2P2T3P3

▶ Ti configure la combinatoire (codes UAL, connexions)▶ Pi permet de charger les registres et d’écrire en mémoire

w Architecture des ordinateurs Conception d’un microprocesseur 62

Page 75: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Le séquenceur est chargé de piloterles signaux du chemin de données

▶ Il reçoit en entrée le code de l’instruction (RI) et les indicateurs (SR)▶ Il décompose l’exécution d’une instruction en une suite d’étapes

▶ Il dispose pour cela d’une horloge :T1P1T2P2T3P3

▶ Ti configure la combinatoire (codes UAL, connexions)▶ Pi permet de charger les registres et d’écrire en mémoire

w Architecture des ordinateurs Conception d’un microprocesseur 62

Page 76: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Le séquenceur est chargé de piloterles signaux du chemin de données

▶ Il reçoit en entrée le code de l’instruction (RI) et les indicateurs (SR)▶ Il décompose l’exécution d’une instruction en une suite d’étapes▶ Il dispose pour cela d’une horloge :

T1P1T2P2T3P3

▶ Ti configure la combinatoire (codes UAL, connexions)▶ Pi permet de charger les registres et d’écrire en mémoire

w Architecture des ordinateurs Conception d’un microprocesseur 62

Page 77: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Le séquenceur est chargé de piloterles signaux du chemin de données

▶ Il reçoit en entrée le code de l’instruction (RI) et les indicateurs (SR)▶ Il décompose l’exécution d’une instruction en une suite d’étapes▶ Il dispose pour cela d’une horloge :

T1P1T2P2T3P3

▶ Ti configure la combinatoire (codes UAL, connexions)

▶ Pi permet de charger les registres et d’écrire en mémoire

w Architecture des ordinateurs Conception d’un microprocesseur 62

Page 78: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Le séquenceur est chargé de piloterles signaux du chemin de données

▶ Il reçoit en entrée le code de l’instruction (RI) et les indicateurs (SR)▶ Il décompose l’exécution d’une instruction en une suite d’étapes▶ Il dispose pour cela d’une horloge :

T1P1T2P2T3P3

▶ Ti configure la combinatoire (codes UAL, connexions)▶ Pi permet de charger les registres et d’écrire en mémoire

w Architecture des ordinateurs Conception d’un microprocesseur 62

Page 79: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Première étape : le fetch

▶ Il s’agit d’aller chercher le code de l’instruction en mémoire▶ L’adresse de cette instruction se trouve dans le PC▶ Il faut placer cette adresse dans le RADM▶ Le code de l’instruction apparaît en sortie de la mémoire▶ Il faut le charger dans le RI▶ Il faut incrémenter le PC

Circuit Logisim

w Architecture des ordinateurs Conception d’un microprocesseur 63

Page 80: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Première étape : le fetch▶ Il s’agit d’aller chercher le code de l’instruction en mémoire

▶ L’adresse de cette instruction se trouve dans le PC▶ Il faut placer cette adresse dans le RADM▶ Le code de l’instruction apparaît en sortie de la mémoire▶ Il faut le charger dans le RI▶ Il faut incrémenter le PC

Circuit Logisim

w Architecture des ordinateurs Conception d’un microprocesseur 63

Page 81: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Première étape : le fetch▶ Il s’agit d’aller chercher le code de l’instruction en mémoire▶ L’adresse de cette instruction se trouve dans le PC

▶ Il faut placer cette adresse dans le RADM▶ Le code de l’instruction apparaît en sortie de la mémoire▶ Il faut le charger dans le RI▶ Il faut incrémenter le PC

Circuit Logisim

w Architecture des ordinateurs Conception d’un microprocesseur 63

Page 82: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Première étape : le fetch▶ Il s’agit d’aller chercher le code de l’instruction en mémoire▶ L’adresse de cette instruction se trouve dans le PC▶ Il faut placer cette adresse dans le RADM

▶ Le code de l’instruction apparaît en sortie de la mémoire▶ Il faut le charger dans le RI▶ Il faut incrémenter le PC

Circuit Logisim

w Architecture des ordinateurs Conception d’un microprocesseur 63

Page 83: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Première étape : le fetch▶ Il s’agit d’aller chercher le code de l’instruction en mémoire▶ L’adresse de cette instruction se trouve dans le PC▶ Il faut placer cette adresse dans le RADM▶ Le code de l’instruction apparaît en sortie de la mémoire

▶ Il faut le charger dans le RI▶ Il faut incrémenter le PC

Circuit Logisim

w Architecture des ordinateurs Conception d’un microprocesseur 63

Page 84: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Première étape : le fetch▶ Il s’agit d’aller chercher le code de l’instruction en mémoire▶ L’adresse de cette instruction se trouve dans le PC▶ Il faut placer cette adresse dans le RADM▶ Le code de l’instruction apparaît en sortie de la mémoire▶ Il faut le charger dans le RI

▶ Il faut incrémenter le PCCircuit Logisim

w Architecture des ordinateurs Conception d’un microprocesseur 63

Page 85: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Première étape : le fetch▶ Il s’agit d’aller chercher le code de l’instruction en mémoire▶ L’adresse de cette instruction se trouve dans le PC▶ Il faut placer cette adresse dans le RADM▶ Le code de l’instruction apparaît en sortie de la mémoire▶ Il faut le charger dans le RI▶ Il faut incrémenter le PC

Circuit Logisim

w Architecture des ordinateurs Conception d’un microprocesseur 63

Page 86: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

▶ Première étape : le fetch▶ Il s’agit d’aller chercher le code de l’instruction en mémoire▶ L’adresse de cette instruction se trouve dans le PC▶ Il faut placer cette adresse dans le RADM▶ Le code de l’instruction apparaît en sortie de la mémoire▶ Il faut le charger dans le RI▶ Il faut incrémenter le PC

Circuit Logisim

w Architecture des ordinateurs Conception d’un microprocesseur 63

Page 87: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

Tableau des tempsOn indique pour chaque temps :▶ la configuration du chemin de données (signaux Ti)

▶ les registres à charger (signaux Pi)▶ pendant le fetch, cela ne dépend pas de l’instruction▶ pour les temps suivants, il faut tenir compte du code de l’instruction

On détermine ainsi le nombre de temps nécessairesà l’exécution des instructionsTableau des temps

w Architecture des ordinateurs Conception d’un microprocesseur 64

Page 88: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

Tableau des tempsOn indique pour chaque temps :▶ la configuration du chemin de données (signaux Ti)▶ les registres à charger (signaux Pi)

▶ pendant le fetch, cela ne dépend pas de l’instruction▶ pour les temps suivants, il faut tenir compte du code de l’instruction

On détermine ainsi le nombre de temps nécessairesà l’exécution des instructionsTableau des temps

w Architecture des ordinateurs Conception d’un microprocesseur 64

Page 89: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

Tableau des tempsOn indique pour chaque temps :▶ la configuration du chemin de données (signaux Ti)▶ les registres à charger (signaux Pi)▶ pendant le fetch, cela ne dépend pas de l’instruction

▶ pour les temps suivants, il faut tenir compte du code de l’instructionOn détermine ainsi le nombre de temps nécessairesà l’exécution des instructionsTableau des temps

w Architecture des ordinateurs Conception d’un microprocesseur 64

Page 90: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

Tableau des tempsOn indique pour chaque temps :▶ la configuration du chemin de données (signaux Ti)▶ les registres à charger (signaux Pi)▶ pendant le fetch, cela ne dépend pas de l’instruction▶ pour les temps suivants, il faut tenir compte du code de l’instruction

On détermine ainsi le nombre de temps nécessairesà l’exécution des instructionsTableau des temps

w Architecture des ordinateurs Conception d’un microprocesseur 64

Page 91: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

Tableau des tempsOn indique pour chaque temps :▶ la configuration du chemin de données (signaux Ti)▶ les registres à charger (signaux Pi)▶ pendant le fetch, cela ne dépend pas de l’instruction▶ pour les temps suivants, il faut tenir compte du code de l’instruction

On détermine ainsi le nombre de temps nécessairesà l’exécution des instructions

Tableau des temps

w Architecture des ordinateurs Conception d’un microprocesseur 64

Page 92: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

Tableau des tempsOn indique pour chaque temps :▶ la configuration du chemin de données (signaux Ti)▶ les registres à charger (signaux Pi)▶ pendant le fetch, cela ne dépend pas de l’instruction▶ pour les temps suivants, il faut tenir compte du code de l’instruction

On détermine ainsi le nombre de temps nécessairesà l’exécution des instructionsTableau des temps

w Architecture des ordinateurs Conception d’un microprocesseur 64

Page 93: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

Équations du séquenceurÀ partir du tableau des temps :▶ on détermine quand les signaux doivent être actifs

▶ on en déduit les équations des signaux# Registre

HRADM = P1+P2+P4*(LDR+STR)

# UAL

U0 =

T4*IMM+T5*(LDR+STR+BEQ+BLT+B+(MOV*IMM)+ADD)

# Connexions

PCA = T1+T2+T3*IMM

À faire lors du BE n° 1

w Architecture des ordinateurs Conception d’un microprocesseur 65

Page 94: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

Équations du séquenceurÀ partir du tableau des temps :▶ on détermine quand les signaux doivent être actifs▶ on en déduit les équations des signaux

# Registre

HRADM = P1+P2+P4*(LDR+STR)

# UAL

U0 =

T4*IMM+T5*(LDR+STR+BEQ+BLT+B+(MOV*IMM)+ADD)

# Connexions

PCA = T1+T2+T3*IMM

À faire lors du BE n° 1

w Architecture des ordinateurs Conception d’un microprocesseur 65

Page 95: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

Équations du séquenceurÀ partir du tableau des temps :▶ on détermine quand les signaux doivent être actifs▶ on en déduit les équations des signaux

# Registre

HRADM = P1+P2+P4*(LDR+STR)

# UAL

U0 =

T4*IMM+T5*(LDR+STR+BEQ+BLT+B+(MOV*IMM)+ADD)

# Connexions

PCA = T1+T2+T3*IMM

À faire lors du BE n° 1

w Architecture des ordinateurs Conception d’un microprocesseur 65

Page 96: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Conception du séquenceur

Équations du séquenceurÀ partir du tableau des temps :▶ on détermine quand les signaux doivent être actifs▶ on en déduit les équations des signaux

# Registre

HRADM = P1+P2+P4*(LDR+STR)

# UAL

U0 =

T4*IMM+T5*(LDR+STR+BEQ+BLT+B+(MOV*IMM)+ADD)

# Connexions

PCA = T1+T2+T3*IMM

À faire lors du BE n° 1

w Architecture des ordinateurs Conception d’un microprocesseur 65

Page 97: Architecture des ordinateurs V - Supélecwdi.supelec.fr/architecture/downloads/Slides/Archi-05... · 2019-07-04 · Récapitulons Instructions ldr rx, adresse rx Mem[adresse] str

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Suite...

Code

w Architecture des ordinateurs Conception d’un microprocesseur 66


Recommended