New Micro-instructions - Université...
Transcript of New Micro-instructions - Université...
![Page 1: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/1.jpg)
Micro-instructions
Ordinateurs: Structure et Applications, Hiver 2017 Jean-François Lalonde
![Page 2: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/2.jpg)
Instructions vs micro-instructions
• Une instruction est une « action » pouvant être exécutée par le microprocesseur.
• Une instruction n’est pas atomique: elle est divisée en une séquence de « micro-instructions »
• Ces micro-instructions dépendent de la structure interne, et du cycle d’instructions du microprocesseur
![Page 3: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/3.jpg)
Cycle d’instructions
1. LIRE (FETCH)
Aller chercher la prochaine instruction
3. EXÉCUTE
Exécuter l’instruction
Que fait le microprocesseur?
1. Lire: aller chercher la prochaine instruction
2. Décode: décode l’instruction (détermine ce qu’il y a à faire)
3. Exécute: exécuter l’instruction
2. DÉCODE
Décoder l’instruction
![Page 4: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/4.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
Bus de données
Bus d’adresses
Bus de contrôle (L/E)
Structure interne
![Page 5: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/5.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
MDRBus de données
Bus d’adresses
Registres généraux
IR
PC
Structure interne
Bus de contrôle (L/E)
![Page 6: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/6.jpg)
“Fetch” en détails…• Que se passe-t-il vraiment quand le micro-
processeur veut lire la prochaine instruction?
• Où est l’instruction?
• En mémoire, à l’adresse contenue dans registre PC (“Program Counter”)
• But du « fetch »
• Placer l’instruction dans le registre IR (« Instruction Register ») pour le décodage
![Page 7: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/7.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
Bus de données
Bus d’adresses
Bus interne
Bus de contrôle (L/E)
« Lire »
Action Signification µ-instructions
Lecture IR ⃪ instruction ?
MAR
MDRIR
PC
![Page 8: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/8.jpg)
Bus de données
Bus d’adresses
Bus interne
Bus de contrôle (L/E)
Extérieur du microprocesseur
Intérieur du microprocesseur
« Lire »
• MAR ⃪ PC
• On place le contenu du PC dans le MAR • PC contient l’adresse de la prochaine exécution à exécuter.
• On active le bus de contrôle en lecture
• Après cette opération, l’instruction comme telle est disponible… dans le MDR
MAR
MDRIR
PC
![Page 9: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/9.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
Bus de données
Bus d’adresses
Bus interne
Bus de contrôle (L/E)
« Lire »
• IR ⃪ MDR
• On place le contenu du MDR dans l’IR • Voilà! l’instruction est dans l’IR, prête à être décodée
MAR
MDRIR
PC
![Page 10: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/10.jpg)
« Lire » en détails… • MAR ⃪ PC
• On place le contenu du PC dans le MAR • PC contient l’adresse de la prochaine exécution à exécuter.
• On active le bus de contrôle en lecture
• Après cette opération, l’exécution comme telle est disponible… dans le MDR
• IR ⃪ MDR
• On place le contenu du MDR dans l’IR • Voilà! l’instruction est dans l’IR, prête à être décodée et
ensuite exécutée
Action Signification µ-instructions
Lecture IR ⃪ instruction MAR ⃪ PC IR ⃪ MDR
![Page 11: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/11.jpg)
« Exécuter » en détails
• Admettons un moment que l’instruction dans IR ait été décodée. Comment faire pour exécuter l’instruction?
• Il nous faut connecter un circuit de calcul sur le bus interne
![Page 12: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/12.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
MDRBus de données
Bus d’adresses
Bus interneIR
PC
Bus de contrôle (L/E)
![Page 13: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/13.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
MDR
ACC
Bus de données
Bus d’adresses
Bus interneIR
PC
Bus de contrôle (L/E)
Circuit de calcul (ALU)
Registres généraux
![Page 14: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/14.jpg)
« Décoder » en détails
• Comment faire pour savoir quelles opérations effectuer pour exécuter une instruction?
• Il nous faut un circuit de décodage sur le bus interne
![Page 15: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/15.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
MDR
ACC
Bus de données
Bus d’adresses
Bus interne
Registres généraux
IR
PC
Bus de contrôle (L/E)
Circuit de calcul (ALU)
![Page 16: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/16.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
MDR
ACC
Bus de données
Bus d’adresses
Bus interne
Registres généraux
IR
Circuit de décodage
PC
Bus de contrôle (L/E)
Circuit de calcul (ALU)
![Page 17: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/17.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
MDR
ACC
Bus de données
Bus d’adresses
Bus interne
Registres généraux
IR
Circuit de décodage
PC
Bus de contrôle (L/E)
Circuit de calcul (ALU)
![Page 18: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/18.jpg)
MOV R0 #0x71
Instruction Signification µ-instructions
MOV R0 #0x71 R0 ⃪ 0x71 ?
![Page 19: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/19.jpg)
MOV R0 #0x71• Tout d’abord: quelle est la représentation binaire (sur
16 bits, comme dans le TP1) de cette instruction?
Instruction Signification Binaire (16 bits)
MOV R0 #0x71 R0 ⃪ 0x71 0x4071
8 Jeu d’instruction du micro-processeur
Toutes les instructions du microprocesseur sont sur 16 bits et se décomposent comme suit :Bits 15 à 12 : Opcode de l’instructionBits 11 à 8 : Registre utilisé comme premier paramètre.Bits 7 à 0 : Registre ou constante utilisés comme deuxième paramètreLe microprocesseur possède quatre registres généraux nommés R0, R1, R2 et R3. En plus de ces
quatre registres, un registre de pointeur d’instruction PC est disponible. Cependant, ce registre nepeut être utilisé qu’avec l’instruction MOV. Le nombre identifiant le registre PC est 0xF (15).
Le jeu d’instruction supporte les instructions suivantes où Rd est le registre destination, Rs leregistre source et Rc le registre de condition :
Mnémonique Opcode DescriptionMOV Rd Rs 0000 Écriture de la valeur du registre Rs dans le registre RdMOV Rd Const 0100 Écriture d’une constante dans le registre RdADD Rd Rs 0001 Addition des valeurs des registres Rd et Rs et insertion du résultat
dans le registre RdADD Rd Const 0101 Addition de la valeur du registre Rd avec une constante et inser-
tion du résultat dans RdSUB Rd Rs 0010 Soustraction de la valeur Rs à l’intérieur de registre Rd.SUB Rd Const 0110 Soustraction d’une constante à l’intérieur du registre RdLDR Rd [Rs] 1000 Chargement d’une valeur se trouvant à l’adresse Rs de l’ordinateur
dans un registre.STR Rd [Rs] 1001 Écriture de la valeur d’un registre à l’adresse Rs de l’ordinateur.JZE Rc Const 1111 Saut à l’instruction située à l’adresse identifiée par la constante,
mais seulement si Rc = 0 (sinon, cette instruction n’a aucun effet).JZE Rc [Rs] 1011 Saut à l’instruction située à l’adresse Rs seulement si Rc = 0
(sinon, cette instruction n’a aucun effet).
Table 1 – Jeu d’instructions du microprocesseur
6
8 Jeu d’instruction du micro-processeur
Toutes les instructions du microprocesseur sont sur 16 bits et se décomposent comme suit :Bits 15 à 12 : Opcode de l’instructionBits 11 à 8 : Registre utilisé comme premier paramètre.Bits 7 à 0 : Registre ou constante utilisés comme deuxième paramètreLe microprocesseur possède quatre registres généraux nommés R0, R1, R2 et R3. En plus de ces
quatre registres, un registre de pointeur d’instruction PC est disponible. Cependant, ce registre nepeut être utilisé qu’avec l’instruction MOV. Le nombre identifiant le registre PC est 0xF (15).
Le jeu d’instruction supporte les instructions suivantes où Rd est le registre destination, Rs leregistre source et Rc le registre de condition :
Mnémonique Opcode DescriptionMOV Rd Rs 0000 Écriture de la valeur du registre Rs dans le registre RdMOV Rd Const 0100 Écriture d’une constante dans le registre RdADD Rd Rs 0001 Addition des valeurs des registres Rd et Rs et insertion du résultat
dans le registre RdADD Rd Const 0101 Addition de la valeur du registre Rd avec une constante et inser-
tion du résultat dans RdSUB Rd Rs 0010 Soustraction de la valeur Rs à l’intérieur de registre Rd.SUB Rd Const 0110 Soustraction d’une constante à l’intérieur du registre RdLDR Rd [Rs] 1000 Chargement d’une valeur se trouvant à l’adresse Rs de l’ordinateur
dans un registre.STR Rd [Rs] 1001 Écriture de la valeur d’un registre à l’adresse Rs de l’ordinateur.JZE Rc Const 1111 Saut à l’instruction située à l’adresse identifiée par la constante,
mais seulement si Rc = 0 (sinon, cette instruction n’a aucun effet).JZE Rc [Rs] 1011 Saut à l’instruction située à l’adresse Rs seulement si Rc = 0
(sinon, cette instruction n’a aucun effet).
Table 1 – Jeu d’instructions du microprocesseur
6
![Page 20: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/20.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
MDR
ACC
Bus de données
Bus d’adresses
Bus interne
Registres généraux(R0)
Circuit de décodage
PC
+1
Bus de contrôle (L/E)
Circuit de calcul (ALU)
IR[7..0]
![Page 21: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/21.jpg)
MOV R0 #0x71• R0 ⃪ IR[7…0]
• On place les 8 bits les moins significatifs dans R0 via le bus interne
Instruction Signification µ-instructions
MOV R0 #0x71 R0 ⃪ 0x71 R0 ⃪ IR[7..0]
![Page 22: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/22.jpg)
ADD R1 R3
Instruction Signification µ-instructions
ADD R1 R3 R1 ⃪ R1 + R3 ?
![Page 23: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/23.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
MDR
ACC
Bus de données
Bus d’adresses
Bus interne
Registres généraux (R1, R3)
IR
Circuit de décodage
PC
Bus de contrôle (L/E)
Circuit de calcul (ALU)(+)
![Page 24: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/24.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
MDR
ACC
Bus de données
Bus d’adresses
Bus interne
Registres généraux
IR
Circuit de décodage
PC
Bus de contrôle (L/E)
Circuit de calcul (ALU)
![Page 25: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/25.jpg)
ADD R1 R3• ACC ⃪ R1 + R3
• On fait l’addition de R1 et R3, le résultat est placé dans l’accumulateur
• R1 ⃪ ACC
• On transfert le contenu de l’accumulateur dans le registre R1
Instruction Signification µ-instructions
ADD R1 R3 R1 ⃪ R1 + R3 ACC ⃪ R1 + R3 R1 ⃪ ACC
![Page 26: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/26.jpg)
LDR R1 [R0]
Instruction Signification µ-instructions
LDR R1 [R0] R1 ⃪ Memoire[R0] ?
![Page 27: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/27.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MDR
ACC
Bus de données
Bus d’adresses
Bus interne
Registres généraux(R0)
IR
Circuit de décodage
PC
+1
Bus de contrôle (L/E)
Circuit de calcul (ALU)
MAR
![Page 28: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/28.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
ACC
Bus de données
Bus d’adresses
Bus interneIR
Circuit de décodage
PC
+1
Bus de contrôle (L/E)
Circuit de calcul (ALU)
Registres généraux(R1)
MDR
![Page 29: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/29.jpg)
LDR R1 [R0]• MAR ⃪ R0
• Le contenu de R0 est placé sur le bus d’adresse via le MAR
• Le bus de contrôle est activé en lecture
• R1 ⃪ MDR
• Le contenu du bus de données, accessible via le MDR, est placé dans R1.
Instruction Signification µ-instructions
LDR R1 [R0] R1 ⃪ Memoire[R0] MAR ⃪ R0 R1 ⃪ MDR
![Page 30: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/30.jpg)
Après chaque lecture…
Action µ-instructionsIncrémenter PC PC ⃪ PC + 1
![Page 31: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/31.jpg)
Extérieur du microprocesseur
Intérieur du microprocesseur
MAR
MDR
ACC
Bus de données
Bus d’adresses
Bus interne
Registres généraux
IR
Circuit de décodage
PC
+1
Bus de contrôle (L/E)
Circuit de calcul (ALU)
![Page 32: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/32.jpg)
Résumé (lecture & exécution)Instruction Étapes µ-instructions
ADD R1 R3
lecture MAR ⃪ PC IR ⃪ MDR
incrémente PC PC ⃪ PC+1
exécution ACC ⃪ R1 + R3 R1 ⃪ ACC
MOV R0 #0x71
lecture MAR ⃪ PC IR ⃪ MDR
incrémente PC PC ⃪ PC+1
exécution R0 ⃪ IR[7..0]
![Page 33: New Micro-instructions - Université Lavalvision.gel.ulaval.ca/~jflalonde/cours/1001/h17/cours/9... · 2017. 1. 31. · Micro-instructions MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪](https://reader033.fdocuments.net/reader033/viewer/2022052103/603e335fd0be4114331249b9/html5/thumbnails/33.jpg)
Programmes, instructions, et micro-instructions
Programme
c = a+b;
Instructions
MOV R0 #0x71 LDR R1 [R0] MOV R0 #0x72 LDR R2 [R0] ADD R1 R2 … Micro-instructions
MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 MAR ⃪ R0 R1 ⃪ MDR
Micro-instructions
MAR ⃪ PC IR ⃪ MDR PC ⃪ PC+1 R0 ⃪ IR[7..0]