Architecture des ordinateurs - Licence Informatique

publicité
Architecture des ordinateurs
Licence Informatique - Université de Provence
Circuits séquentiels
Jean-Marc Talbot
[email protected]
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
87 / 123
Circuits séquentiels
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
88 / 123
Bascule RS
Rétro-action croisée entre
les sorties Q1 et Q2 .
Dans un circuit séquentiel, les valeurs de sorties dépendent à la fois
des valeurs des entrées
des valeurs antérieurs de (certaines) sorties
Le temps est un paramètre dans les circuits séquentiels
En coupant cette rétro-action,
Ils permettent de stocker une information au cours du temps et sont
donc l’élément principal des mémoires
Sorties en fonction des entrées :
Q10 = Q2 + R
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
89 / 123
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
Q20 = Q1 + S
90 / 123
Bascule RS : états stables
Bascule RS : R = 0, S = 1
Q10 = Q2 + R
Q20 = Q1 + S
Selon les valeurs de R et S
Q10 = Q2 + R
Q20 = Q1 + S
R = 0 et S = 1, on a alors
Le circuit est dans un état stable lorsque (pour R, S inchangées)
Q10
= Q1
et
Q20
= Q2
Supposons :
t +ε
t + 2ε
t + 3ε
Q1
Q2t
1
1
Q2
0
0
0
Q10 = Q2 + 0 = Q2
Q20 = Q1 + 1 = 0
Q1t+1 = 1 et Q2t+1 = 0
la bascule stable à l’instant t
les sorties Q1 et Q2 valent respectivement Q1t et Q2t à ce même instant t.
On met Q1 à 1 (Set)
Les valeurs à l’instant t + 1 sont obtenues lorsque le système est stable (pour les
sorties et des valeurs constantes de R et S).
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
91 / 123
Bascule RS : R = 1, S = 0
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
92 / 123
Bascule RS : R = S = 0
Pour R = 0, S = 1 et R = 1, S = 0, les sorties vérifient
Selon les valeurs de R et S
Q1 = Q2
Q10 = Q2 + R
Q20 = Q1 + S
R = S = 0, on a alors
R = 1 et S = 0, on a alors
Q1
0
0 0
Q2 Q1t 1 1
Q10 = Q2 + 1 = 0
Q20 = Q1 + 0 = Q1
Q1 Q2t Q1t Q2t . . .
Q2 Q1t Q2t Q1t . . .
Q1t+1 = 0 et Q2t+1 = 1
Q10 = Q2 + 0 = Q2
Si Q1t = Q2t alors on a un état stable.
On met Q1 à 0 (Reset)
Q1t+1 = Q1t et Q2t+1 = Q2t
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
Q20 = Q1 + 0 = Q1
93 / 123
L3 Informatique - Université de Provence ()
(On mémorise)
Architecture des ordinateurs
94 / 123
Bascule RS : exemple
Bascule RS : R = S = 1
Lorsque R = 0, S = 1 le circuit est mis à 1
Q10 = Q2 + 1
Lorsque R = 1, S = 0 le circuit est mis à 0
Si R = S = 1 alors
Lorsque R = 0, S = 0 le circuit restitue la valeur mémorisée
on obtient un état stable
Q20 = Q1 + 1
Q1t+1 = 0 et Q2t+1 = 0
S
Cependant, repasser à R = S = 0 rend le circuit instable
R
Q1 0 1 0 . . .
Q2 0 1 0 . . .
Q1
Pour R = S = 1, on considère que le circuit est dans un état indéfini.
t0
t
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
95 / 123
Bascule RS : le circuit
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
96 / 123
Bascule D : le circuit
Dans un fonctionnement normal de la bascule RS, Q1 et Q2 sont
complémentaires. Ainsi, on note Q1 , Q et Q2 , Q.
Q
D
S
Q
W
R
RS
On considére donc le fonctionnement du circuit uniquement pour une
sortie Q.
S R
0 0
0 1
1 0
1 1
L3 Informatique - Université de Provence ()
D
Q
Quand W = 0 alors la bascule reste dans le même état et la
sortie vaut la dernière valeur mémorisée.
Q t+1
Qt
0
1
indéfini
Architecture des ordinateurs
Quand W = 1 alors la sortie de la bascule vaut D et cette valeur
est mémorisée
D = Data
97 / 123
L3 Informatique - Université de Provence ()
W = Write
Architecture des ordinateurs
98 / 123
Bascule D (II)
Horloge (I)
D W
0 0
1 0
0 1
1 1
Q t+1
Qt
Qt
0
1
la bascule RS restitue la valeur mémorisée
Pour les circuits synchrones, les sorties évoluent selon les entrées
mais seulement au signal de l’horloge.
Quand W = 1 alors
I
si D = 1 alors R 0 = 0, S 0 = 1.
si D = 0 alors R 0 = 1, S 0 = 0.
L3 Informatique - Université de Provence ()
la bascule RS fait Set
la bascule RS fait Reset
Architecture des ordinateurs
99 / 123
Horloge (II)
front montant
Ceci est bien-sûr problématique si les différentes valeurs d’entrée ne
sont pas toutes disponibles en même temps.
On opère alors à une synchronisation qui s’effectue à l’aide d’un
signal impulsionnel de fréquence fixe appelé signal d’horloge.
Quand W = 0 alors R 0 = S 0 = 0
I
Les circuits précédents sont dit asynchrone : leur sorties évoluent dès
que les entrées changent. Il n’y a pas de contrôle sur les instants où
entrées et sorties changent.
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
100 / 123
Bascule RS synchrone (I)
front descendant
R
Q
H
S
période
Q
Quand H = 0 alors le circuit restitue sur Q la valeur mémorisée
fréquence =
L3 Informatique - Université de Provence ()
RS
Quand H = 1 alors le circuit se comporte comme une bascule RS
(asynchrone).
1
période
Architecture des ordinateurs
101 / 123
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
102 / 123
Bascule RS synchrone (II)
Bascule RS synchrone (II)
H
S
R
Quand H = 0 alors R 0 = S 0 = 0
Quand H = 1 alors R 0 = R et S 0 = S
Q
t
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
103 / 123
Bascules déclenchées par niveau d’horloge
R
R
Q
H
RS
Q
S
104 / 123
Pour certaines bascules, ce n’est pas la position haute de l’horloge
(niveau d’horloge) qui les active mais le passage du niveau bas au
niveau haut du signal d’horloge (ou inversement).
Q
RS
Architecture des ordinateurs
Bascules déclenchées sur front d’horloge (I)
H
S
L3 Informatique - Université de Provence ()
t0
On parle de bascules déclenchés par front d’horloge :
Q
sur front montant quand l’horloge est mise de 0 à 1.
sur front descendant quand l’horloge est mise de 1 à 0.
La bascule de gauche se déclenche sur le niveau haut de l’horloge
tandis que celle de droite se déclenche sur le niveau bas.
Le front active la bascule et les entrées sont prises en compte, le
reste de la période la bascule est verrouillé.
Quand la bascule n’est pas déclenchée, on dit qu’elle est verrouillée.
Le déclenchement sur front permet de mieux contrôler l’instant des
actions.
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
105 / 123
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
106 / 123
Bascules déclenchées sur front d’horloge (II)
Bascules D à déclenchement sur front d’horloge (I)
Q
D
H
Pourquoi ?
H
D
Q
D
D
Si on souhaite mémoriser de l’information à des instants très précis, il
faut une horloge avec une impulsion la plus courte possible.
La bascule de gauche se déclenche sur front montant ( ) et celle de
droite sur front descendant ( ).
Mais : difficultés technologiques de concevoir de telles horloges
Pour la bascule à déclenchement sur front montant :
H
0
1
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
107 / 123
Bascules D à déclenchement sur front d’horloge (II)
L3 Informatique - Université de Provence ()
D Q t+1
Qt
Qt
0
0
1
1
Architecture des ordinateurs
108 / 123
Bascules D à déclenchement sur front d’horloge (III)
Bascules D en maı̂tre-esclave
Q0
D
bascule D
H
Remarque : Les entrées des horloges des bascules maı̂tre et esclave
sont inversées. Ainsi, la modification de l’entrée D n’a aucune
incidence sur la sortie Q lors d’une phase stable de l’horloge (0 ou 1).
Esclave
Maı̂tre
C’
D0
Q
bascule D
Les points importants du fonctionnement de la bascule
L’entrée D et la sortie Q ne sont jamais en “contact” direct
(l’information ne peut aller directement de D à Q).
C
L’entrée de la bascule “Esclave” est reliée à la sortie Q 0 de la bascule
“Maı̂tre”.
Cela est du à l’inverseur sur l’entrée d’horloge du maı̂tre qui a un
temps de basculement inférieur aux autres portes du circuit.
Toute modification sur la sortie du Maı̂tre se répercute sur l’Esclave : le
Maı̂tre asservie l’Esclave.
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
109 / 123
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
110 / 123
Bascules D à déclenchement sur front d’horloge (IV)
A l’instant t : on considère C 0 = C = 0
Avant t : C 0 = 1 et C = 0
I
I
Bascules D à déclenchement sur front d’horloge (V)
I
la donnée D est transférée par le Maı̂tre sur sa sortie Q 0
L’esclave est inactif donc la sortie Q reste inchangée
I
I
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
111 / 123
Bascules D à déclenchement sur front d’horloge (VI)
le Maı̂tre devient inactif et l’Esclave le reste
l’information sur l’entrée D juste avant t est présente en Q 0 et
mémorisée par la bascule (puisque C 0 est passé de 1 à 0).
la sortie Q reste inchangée.
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
112 / 123
Bascules D à déclenchement sur front d’horloge (VII)
Juste après t : C 0 = 0 et C = 1
I
I
le Maı̂tre est inactif et l’Esclave devient actif
l’information sur l’entrée D 0 (donc celle de Q 0 ) passe sur la sortie Q.
De l’instant t à t 0 :
I
Rien ne change pour Q puisque C 0 = 0 et C = 1
Le transfert de la donnée en D vers la sortie Q a bien été effectué
sur le front de l’horloge (en t + ε)
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
113 / 123
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
114 / 123
Bascules D à déclenchement sur front d’horloge (VIII)
Bascules D à déclenchement sur front d’horloge (IX)
Après l’instant t 0 : C 0 = 1 et C = 0
A l’instant t 0 : C 0 = C = 0
I
I
I
l’Esclave devient inactif et le Maı̂tre le reste
les sorties Q et Q 0 sont inchangées
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
I
115 / 123
En réalité ... (I)
le Maı̂tre devient actif, l’Esclave reste inactif
l’entrée D est recopié sur la sortie Q 0 mais la sortie Q reste
identique
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
116 / 123
En réalité ... (II)
En réalité, le temps de passage de 0 à 1 (ou inversement) des signaux
n’est pas nul.
Il est important que le maı̂tre et l’esclave ne soient jamais actifs en
même temps ; ceci est réalisé ici car l’inverseur sur l’entrée d’horloge
du maı̂tre a un temps de basculement inférieur aux autres portes du
circuit.
Seuil basculement
autre porte
Seuil basculement
porte non
H
C’
On utilise ce temps de front suffisament bref pour effectuer la
mémorisation.
C
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
117 / 123
t1
t2
L3 Informatique - Université de Provence ()
t3
t4
Architecture des ordinateurs
118 / 123
Forçage des bascules
Vu à la télé ...
Sur les bascules (synchrones), il existe généralement une ou deux
entrées supplémentaires PRESET, CLEAR qui indépendamment de
l’horloge
PRESET : force la sortie à 1
CLEAR : force la sortie à 0
CLEAR H
1
0
0
0
1
0
0
D Q t+1
0
Qt
Qt
0
0
1
1
Ceci est utilisé notamment pour l’initialisation de la bascule lors de sa
mise sous tension (garantie d’un état initialement stable).
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
119 / 123
Bascules et réalisation
74LS279 Low power Schottky IC. Quad set-reset latches. 16 pin DIP
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
120 / 123
Registre 4 bits (Parallel In - Parallel Out)
Réalisation :
Autres types de Bascules
registre 1-bit = 1 bascule RS (ou D)
registre n-bits = n bascules RS (ou D) en parallèle
Bascule T
Bascule JK, JKME
registre 4 bits
Réalisations
Registres, registres à décalage
Compteurs
Mémoire
Signaux : W (écriture)
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
121 / 123
L3 Informatique - Université de Provence ()
R (lecture)
Architecture des ordinateurs
122 / 123
Buffer (ou porte) 3 états
Dans les circuits jusqu’à maintenant, on a considéré 2 états (0 et 1) ;
ils correspondent à des états d’un circuit “connecté”.
Il existe un autre état, l’état haute impédance (état HZ) qui
correspond à une déconnection de la liaison.
Enable
0
0
1
1
L3 Informatique - Université de Provence ()
Architecture des ordinateurs
Entrée
0
1
0
1
Sortie
HZ
HZ
0
1
123 / 123
Téléchargement