Vous êtes sur la page 1sur 19

Unité de commande

avec registre d’états

„ Système numérique
„ Graphe des états
„ Conception VHDL
„ Réalisation

andre.stauffer@epfl.ch

Système numérique
Un système numérique se compose de deux parties:
- une unité de traitement
- une unité de commande

L’unité de traitement est réalisée de manière câblée

L’unité de commande admet trois réalisations distinctes:


- une réalisation câblée avec un registre d’états
- une réalisation microprogrammée avec un registre
d’adresse
- une réalisation microprogrammée avec un compteur
d’adresse

1
Système numérique
Pour la réalisation câblée de l’unité de commande, il convient
de construire le graphe des états d’une machine séquentielle
de Moore à partir de l’organigramme fonctionnel du système
numérique:

- le graphe associe un sommet à chacune des opérations


(rectangles) de l’organigramme

- chacun des sommets englobe les éventuels tests (losanges)


qui suivent l’opération pour autant que l’opération ne
modifie pas les variables testées

- si les variables testées sont modifiées par l’opération qui


précède les tests, le graphe associe un sommet comportant
une opération neutre (NOP) aux tests

F<=1
E
A<=0, B<=X, C<=Y, F<=0, I<=0
(A,B)<=(A,B)*2, B(0)<=0
A<=A-C

A(7)
B(0)<=1
(A,B)<=(A,B)*2, B(0)<=0 (A,B)<=(A,B)*2, B(0)<=0
A<=A+C, I<=I+1 A<=A-C, I<=I+1

I7
A(7)
A<=A+C B(0)<=1

organigramme fonctionnel du diviseur

2
E,A(7),I7=0--
E0
OP1
1--
E1
OP2
E2
OP3
E3
OP6
E4 -0- E9
OP0 OP4
-1-
E5 E10
OP3 OP3
E6 E11
OP7 OP8
-10 E7 -00
OP0
-11 -01
E8 E12
OP5 OP4
graphe des états de l’unité de commande

Graphe des états

operation description S(3:0)


OP0 NOP 0000
OP1 F <= 1 0001
OP2 A <= 0, B <= X, C <= Y, F <= 0, I <= 0 0010
OP3 (A,B) <= (A,B) * 2, B(0) <= 0 0011
OP4 B(0) <= 1 0100
OP5 A <= A + C 0101
OP6 A <= A - C 0110
OP7 A <= A + C, I <= I + 1 0111
OP8 A <= A - C, I <= I + 1 1000

table des opérations du diviseur

3
Conception VHDL
Unité de commande avec registre d’états du diviseur

symbole VHDL

Conception VHDL
Unité de commande avec registre d’états du diviseur

REG
Entrées RST
CLK
Décodeur Décodeur
Sorties
d’états futurs Etat_Futur Etat_Présent de sortie
D Q

Registre d’états

machine de MOORE

4
codage des états et des commandes

décodeur d’états futurs

5
Conception VHDL

registre d’états

décodeur de sortie

6
Conception VHDL

schéma RTL

Conception VHDL

schéma RTL

7
codage des états

8
registre d’états

décodeur d’états futurs

9
décodeur d’états futurs

décodeur de sortie

10
décodeur de sortie

Conception VHDL

schéma RTL

11
Conception VHDL

schéma RTL

Réalisation
Diviseur X = Q .Y + R

symbole VHDL

12
Réalisation

schéma VHDL

Réalisation

banc de test

13
Laboratoire 5
Unité de commande avec registre d’états du multiplicateur

F<=1
E
A<=0, B<=Y, C<=X, D<=0, F<=0, I<=0

B(0)
(D,A)<=A+C

(A,B)<=(D,A,B)/2, D<=0, I<=I+1


I(2)
organigramme fonctionnel

14
Laboratoire 5
Unité de commande avec registre d’états du multiplicateur

E,B(0),I(2)=0--
E0
OP1
1--
E1
OP2
-0- E2
OP0
-1-
E3
OP3
E4
OP4
--1 E5 --0
OP0

graphe des états

Laboratoire 5
Unité de commande avec registre d’états du multiplicateur

operation description S(2:0)


OP0 NOP 000
OP1 F <= 1 001
OP2 A <= 0, B <= Y, C <= X, D <= 0, F <= 0, I <= 0 010
OP3 (D,A) <= A + C 011
OP4 (A,B) <= (D,A,B)/2, D <= 0, I <= I + 1 100

table des opérations

15
Laboratoire 5
Unité de commande avec registre d’états du multiplicateur

symbole VHDL

16
Laboratoire 5
Multiplicateur P = X . Y

symbole VHDL

17
Laboratoire 5
Multiplicateur P = X . Y

banc de test

18
19

Vous aimerez peut-être aussi