objectif comprendre à l aide d un exemple simple le déroulement des instructions au niveau...

26
Objectif Comprendre à l ’aide d ’un exemple simple le déroulement des instructions au niveau microprogramme

Upload: odette-chambon

Post on 03-Apr-2015

104 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Objectif

• Comprendre à l ’aide d ’un exemple simple le déroulement des instructions au niveau microprogramme

Page 2: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Les microprogrammes

• Le cycle de base• Un exemple complet• L ’exécution

Page 3: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Cycle de base

Recherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Page 4: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Réalisation du contrôleur

Registre d’étatRegistre d’étatEntrées venant du

champ de code-op du

registre instruction

Sorties de contrôle duchemin de données

État suivant

+1

LCOPSRLECLMMCRI

CRAPSRLECLMMCEA

CRAPSRLECLMMCEA

PSREDAECREMM

Page 5: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Cycle de base

L’adresse de l’instruction à exécuter est dans le compteur ordinalL’adresse est mise dans le registre d’adresse de la mémoireL’instruction passe de la mémoire au registre instruction par l’intermédiaire du registre mot

Recherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Page 6: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Le fonctionnement

XXXX

+1

LCOPSRLECLMMCRI

CRAPSRLECLMMCEA

CRAPSRLECLMMCEA

PSREDAECREMM

LCOPSRLECLMMCRI

2

Recherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Recherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Page 7: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Cycle de base

Le compteur ordinal est incrémenté de 1 pour pointer sur l’adresse de l’instruction suivante. Remarque : Pour une instruction conditionnelle (Si Alors Sinon), le compteur ordinal n’est pas incrémenté, il est chargé avec l’adresse de l’instruction à exécuter.

Recherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Page 8: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Le fonctionnement

COP=C6

+1

LCOPSRLECLMMCRI

CRAPSRLECLMMCEA

CRAPSRLECLMMCEA

PSREDAECREMM

4

IncRecherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Recherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Page 9: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Cycle de base

La partie code de l’opération (ce que doit faire l’instruction) du registre instruction est décodée.Le contrôleur envoie les signaux de contrôle pour piloter le chemin de données.Les données se propagent à travers le chemin de données.Il est nécessaire de mettre au point,une méthodologie de synchronisation, pour définir à quel moment les signaux peuvent être lus et écrits.

Recherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Page 10: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Le fonctionnement

COP=C6

+1

LCOPSRLECLMMCRI

CRAPSRLECLMMCEA

CRAPSRLECLMMCEA

PSREDAECREMM

0

CADPSRLECLMMCEACRAEDA

Recherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Recherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Page 11: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Cycle de base

Et on recommence

Recherche de l’instruction

Exécution de l’instruction

Pointage vers l’instruction suivante

Page 12: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Le fonctionnement

XXXX

+1

LCOPSRLECLMMCRI

CRAPSRLECLMMCEA

CRAPSRLECLMMCEA

PSREDAECREMM

LCOPSRLECLMMCRI

2

Page 13: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Un exemple complet

Assembleur

Chargeuren Mémoire

Compilateur

Hiérarchie de traduction

?

{int a=8, b=4, c; c=a+b;}

LD A,(F800h)ADD A,(F810h)st (F820h),A

08 F80004 F810-- F8203AF800 FB00C6F810 FB0132F820 FB02

0804--3AF800C6F81032F820

Page 14: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

H

Accumulateur

Compteur Ordinal

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Reg

istr

e ad

ress

e

1

L’architecture

Page 15: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

H

Accumulateur

Compteur Ordinal

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Reg

istr

e ad

ress

e

1

DonnéesF800 08F810 04F820 00Instructions

FB00 3A F8 00FB01 C6 F8 10

FB02 32 F8 20

DonnéesF800 08F810 04F820 00Instructions

FB00 3A F8 00FB01 C6 F8 10

FB02 32 F8 20

FB00FB00

Charger le programme

Page 16: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

H

Accumulateur

Compteur Ordinal

Mémoire centrale

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Unité Centrale

FB

00

1

DonnéesF800 08F810 04F820 00

Instructions

FB00 3A F8 00FB01 C6 F8 10

FB02 32 F8 20

FB00

3A F8 00 3A F8 00

Extraction de l ’instruction

+1

Page 17: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

H

Accumulateur

Compteur Ordinal

Mémoire centrale

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Unité Centrale

FB

00

+1

DonnéesF800 08F810 04F820 00

Instructions

FB00 3A F8

00FB01 C6 F8 10

FB02 32 F8 20

FB01

3A F8 003A F8 00

Le compteur ordinal est incrémenté

+1

Page 18: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

H

Accumulateur

Compteur Ordinal

Mémoire centrale

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Unité Centrale

FB

00

1

DonnéesF800 08F810 04F820 00

Instructions

FB00 3A F8

00FB01 C6 F8 10

FB02 32 F8 20

FB01

083A F8 00

Le chargement : les signaux à piloter

08

+1

Page 19: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

H

Accumulateur

Compteur Ordinal

Mémoire centrale

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Unité Centrale

FB

01

1

DonnéesF800 08F810 04F820 00

Instructions

FB00 3A F8 00FB01 C6 F8 10

FB02 32 F8 20

FB01

C6 F8 10

Extraction de l ’instruction

08

C6 F8 10

+1

Page 20: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

H

Accumulateur

Compteur Ordinal

Mémoire centrale

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Unité Centrale

FB

00

+1

DonnéesF800 08F810 04F820 00

Instructions

FB00 3A F8

00FB01 C6 F8 10

FB02 32 F8 20

FB02

3A F8 00C6 F8 00

²

+1

Page 21: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

H

Accumulateur

Compteur Ordinal

Mémoire centrale

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Unité Centrale

F81

0

DonnéesF800 08F810 04F820 00

Instructions

FB00 3A F8

00FB01 C6 F8 10

FB02 32 F8 20

04C6 F810

12

1FB02

0408

Exécution

+1

Page 22: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

H

Accumulateur

Compteur Ordinal

Mémoire centrale

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Unité Centrale

FB

02

1

DonnéesF800 08F810 04F820 00

Instructions

FB00 3A F8 00FB01 C6 F8 10

FB02 32 F8 20

FB02

32 F8 20 32 F8 20

Extraction de l ’instruction

12

+1

Page 23: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Le compteur ordinal est incrémenté

H

Accumulateur

Compteur Ordinal

Mémoire centrale

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Unité Centrale

FB02

1

DonnéesF800 08F810 04F820 00

Instructions

FB00 3A F8 00FB01 C6 F8 10

FB02 32 F8 20

FB03

32 F8 20 32 F8 20

12

+1

Page 24: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

H

Accumulateur

Compteur Ordinal

Mémoire centrale

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Unité Centrale

F82

0

1

DonnéesF800 08F810 04F820 12

Instructions

FB00 3A F8

00FB01 C6 F8 10

FB02 32 F8 20

FB03

1232 F820

12

Exécution

+1

Page 25: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

Contrôleur

H

Accumulateur

Compteur Ordinal

Mémoire centrale

Registre mot

Bus de données

Bus d’adresses

Registre Instruction

U.A.L.

CRA

CEB

EDA CEA CRI LMM EMM

LEC ECRCAD

PSR

LCO CCO

Unité Centrale

Le programme est terminé

F80

0

1

DonnéesF800 08F810 04F820 12

Instructions

FB00 3A F8

00FB01 C6 F8 10

FB02 32 F8 20

FB03

Page 26: Objectif Comprendre à l aide d un exemple simple le déroulement des instructions au niveau microprogramme

La micro-programmation

Phase i

Phase i+1

Micro-commande

Commande 2Commande 1 Commande n

0 1 0 0 1

1 0 1

1 0 1

1 0

1 0

Chargement RA Chargement drapeaux

Adresse suivante

Adresse suivante

CompteurCompteur DécodeurDécodeur Registreinstruction

Registreinstruction

AdresseCommandes

Mémoire de micro-programme Adresse de la micro-instruction suivante