Title: Les circuits squentiels
1Les circuits séquentiels
- LÂ additionneur 4 bits
- Analyse des périodes d activités
- Les automates
- La synthèse des automates
2Objectif
- Nous allons découvrir comment synthétiser une
fonction à partir d un circuit séquentiel. - .
3Ladditionneur 1 bit
rs
Additionneur
s
a
b
re
4Ladditionneur 4 bits à propagation
Nous allons analyser les séquences d activités
des additionneurs 1 bit en fonction du temps.
b3
a3
bo
ao
b1
a1
b2
a2
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
s3
so
s1
s2
5Ladditionneur 4 bits à propagation
Intervalle 0-2
b3
a3
bo
ao
b1
a1
b2
a2
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
s3
so
s1
s2
Actif inactif inactif inactif
6Ladditionneur 4 bits à propagation
Intervalle 2-4
b3
a3
bo
ao
b1
a1
b2
a2
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
s3
so
s1
s2
Inactif actif inactif inactif
7Ladditionneur 4 bits à propagation
Intervalle 4-6
b3
a3
bo
ao
b1
a1
b2
a2
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
s3
so
s1
s2
Inactif inactif actif inactif
8Ladditionneur 4 bits à propagation
Intervalle 6-8
b3
a3
bo
ao
b1
a1
b2
a2
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
s3
so
s1
s2
Inactif inactif inactif actif
9Ladditionneur
Si a chaque intervalle de temps un seul
additionneur est actif, il doit être possible de
réaliser un circuit avec une seul additionneur.
1 Bit
r-1
Nous allons tenter de voir comment réaliser ce
circuit.
10Ladditionneur
Analysons le fonctionnement en fonction des
intervalles de temps.
1 Bit
r-1
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
11Ladditionneur
t0 a0 b0 r-1
1 Bit
r-1
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
t0
12Ladditionneur
t0 a0 b0 r-1
t1
s0 r0
1 Bit
r-1
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
t1
t0
13Ladditionneur
t1 a1 b1 r0
s0 r0
1 Bit
r-1
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
t1
t0
14Ladditionneur
La retenue doit être disponible en entrée.
t1 a1 b1 r0
s0 r0
1 Bit
r-1
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
t1
t0
15Ladditionneur
t1 a1 b1 r0
t2
s1 r1
1 Bit
r-1
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
t2
t0
t1
16Ladditionneur
t2 a2 b2 r1
s1 r1
1 Bit
r-1
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
t2
t0
t1
17Ladditionneur
t2 a2 b2 r1
s1 r1
1 Bit
r-1
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
t2
t0
t1
18Ladditionneur
t2 a2 b2 r1
t3
s2 r2
1 Bit
r-1
r1
r2
r0
r3
r-1
r-1
1 Bit
1 Bit
1 Bit
1 Bit
t3
t0
t1
t2
19Ladditionneur
L utilisation ici d un registre permet de
mémoriser la retenue t-1 .
t3 a3 b3 r2
s2 r2
1 Bit
r-1
Mémoire
Horloge
20Ladditionneur
Réalisation d un additionneur à partir d un
circuit séquentiel.
1 Bit
r-1
Mémoire
Horloge
21Les circuits séquentiels
- Un circuit séquentiel est un circuit dont les
sorties dépendant des entrées et de l état du
système. - Etat ce quil faut mémoriser de lhistoire du
passé, c-a-d jusquà linstant t1, pour pouvoir
déterminer les sorties présentes S(t).
22Les automates détats finis
e(ti)
s(ti1)
Logique combinatoire
r-1
q(ti)
q(ti1)
état de lautomate
Horloge
23Les automates détats finis
e(ti)
s(ti1)
Logique combinatoire
r-1
q(ti)
Automate détats finis
q(ti1)
état de lautomate
Horloge
24Les automates d états finis
- Un automate est un être mathématique dont la
réponse à un stimulus extérieur dépend de ce
stimulus et de l état interne de l automate. - Un automate fini a un nombre fini d états
internes. Les stimulus sont susceptibles de faire
passer l automate d un état à un autre état. - L automate est entièrement déterminé par la
donnée de ses fonctions de transition qui
fournissent le nouvel état et la réponse en
fonction de l ancien état et du stimuli.
25Synthèse dun circuit séquentiel
- Pour réaliser la synthèse dun circuit séquentiel
il faut - 1 déterminer le graphe des états (diagramme de
transitions) - 2 déterminer le nombre de bascules
- 3 construire la table détats
- 4 réaliser les circuits combinatoires associés
aux entrées des bascules et aux sorties
26Synthèse dun additionneur
Nous allons tenter de réaliser la synthèse d un
additionneur à l aide d un circuit séquentiel.
Vue externe
Additionneur
27Diagramme de transition graphe détat
État ce quil faut mémoriser de lhistoire du
passé, c-a-d jusquà linstant t1, pour pouvoir
déterminer les sorties présentes S(t)
Dans notre exemple , il y a deux états internes
Etat1 Retenue Etat2 Pasretenue.
Etat
Etats
Etat
Additionneur
28Synthèse dun additionneur (graphe détat)
Après avoir défini les états, il faut compléter
le graphe par les transitions du systèmes.
Entrées/sortie
Une fonction de transition définit l évolution
d un automate sous l effet d un stimulus
externe.
Etat
Transition
Etats
Etat
Additionneur
Représentation Mealey
29Synthèse dun additionneur (graphe détat)
01/1
Voici le graphe de transition complet de
l additionneur. Nous allons vérifier son
comportement à partir d un certains nombres de
stimulus d entrées.
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
30Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
31Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
32Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
33Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
34Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
35Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
36Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
37Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
38Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
39Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
40Synthèse dun additionneur (graphe détat)
01/1
t5 1 t4 01 1 t3 10 1 t2 00 0 t
1 01 0 t 11
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
Additionneur
11/1
01/0
10/0
41Synthèse dun additionneur (table des états)
01/1
Jai vérifié sur un jeu dentrées non exhaustif
que le graphe semble bien correspondre au
comportement attendu de mon système. La
construction du graphe est l étape la plus
délicate.
00/0
10/1
Aucune retenue
00/1
11/0
une retenue
11/1
01/0
10/0
42Représentation sous forme de table
Pour synthétiser mon circuit, on représente ce
graphe par une table des états.
01/1
00/0
10/1
a b EPresent s EFutur 0 0 AR 0 AR 0 0 UR 1 AR 0 1
AR 1 AR 0 1 UR 0 UR 1 0 AR 1 AR 1 0 UR 0 UR 1 1 A
R 0 UR 1 1 UR 1 UR
AR
00/1
11/0
UR
11/1
01/0
10/0
43Codage des états
01/1
Codage des états Nombre de bascules
00/0
10/1
0
Il y a deux états Etat aucune retenue est codé
0 Etat une retenue est codé 1 Le nombre de
bascules est donnée par 2nbBgt nb Etats nb B1
00/1
11/0
1
11/1
01/0
10/0
44La table des états
01/1
On remplace le nom de l état par son code.
00/0
10/1
a b EPresent s EFutur 0 0 0 0 0 0 0 1 1 0 0 1 0 1
0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1
1
0
00/1
11/0
1
11/1
01/0
A partir de cette table il est facile de
déterminer les fonctions logique donnant la
sortie et l état.
10/0
45Synthèse dun additionneur (schéma)
Les équations sont réalisées à l aide de
circuits combinatoires.
s
a
b
D
État à mémoriser
46Synthèse dun additionneur (schéma)
s
a
Logique combinatoire
b
D
Registres detats
47Remarques Mealey/Moore
00
01/1
00/0
10/1
UR S0
AR S0
AR
00
00
11/0
00/1
AR S1
UR S1
UR
00
11/1
01/0