Les circuits séquentiels
N. HADJI
Introduction
Dans un circuit combinatoire, une sortie est uniquement fonction des entrées. Par contre, dans un circuit séquentiel,
une sortie est une fonction des entrées mais aussi des sorties du circuit. Cela signifie qu’un circuit séquentiel garde la
mémoire des états passés.
ht
1. Définitions
tp
Une bascule est un circuit logique capable de mémoriser une information binaire. Cette information est représentée
par la sortie Q de la bascule (état de la bascule). Qt+1 = f (Ei, Qt) Qt+1 est le nouvel état de la bascule (noté
généralement Q+ ) Ei sont les entrées de la bascule. Qt est l’ancien état de la bascule ( noté généralement Q )
://
Dans ce cours on utilisera le circuit séquentiel comme étant une interconnexion de bascules.
m
2. Bascules usuelles
be
Il existe quatre types de bascules :
2.1 La bascule RS
la
ch
e.
jim
do
.c
om
Table de vérité :
ht
tp
://
On remarque dans cette table que lorsque
m
be
Or, logiquement, c’est impossible !! donc cet
état restera indéterminé (Qt+1 = X)
La table caractéristique de la bascule RS est donc :
la
ch
e.
jim
Son équation de sortie est :
do
Afin de lever l’indétermination provoquée par l’état instable, on définit la bascule JK de la manière suivante :
.c
om
On garantit de cette manière que l’état R=1 et S=1 ne se produira jamais.
2.2 La bascule JK
Table caractéristique :
ht
Son équation de sortie vaut :
tp
__ __
Q = J . Qt + K Qt
t+1
://
2.3 La bascule D
m
Table caractéristique :
be
la
Son équation de sortie vaut Qt+1 = D
ch
2.4 La bascule T
e.
Table caractéristique :
jim
Son équation de sortie vaut Qt+1= T ⊕ Qt
do
3. Notion horloge
.c
Une horloge est une variable logique qui passe successivement de 0 à 1 et de 1 à 0 d’une façon périodique.
Cette variable est utilisée souvent comme une entrée des circuits séquentiels, le circuit est dit alors synchrone.
om
L’horloge est notée généralement CK ( Clock) ou parfois H (Horloge).
ht
tp
://
m
be
T est la période calculée généralement en secondes.
la
F = 1/T est la fréquence calculée en Hertz
3.1 Bascules asynchrones :
ch
Les sorties des bascules asynchrones peuvent changer à tout moment dès qu’une ou plusieurs entrées changent.
e.
3.2 Bascules synchrones.
Le changement sur les sorties se produit après le changement de l’horloge. Les entrées servent à préparer le
jim
changement d’état, mais ne provoquent pas de changement des sorties. Tout changement d’état est synchronisé par
l’horloge.
3.3 Exemples de bascules synchrones et asynchrones
do
.c
om
ht
tp
://
m
be
la
ch
e.
jim
do
Dans la bascule asynchrone, les entrées agissent instantanément sur la sortie sans tenir compte du temps.
Dans le premier diagramme on a :
.c
1ère colonne R S = 0 0 → Q = 0
om
2ème colonne R S = 0 1 → Q = 1
3ème colonne R S = 0 1 → Q = 1 (pas de changement d’état)
et ainsi de suite …..
Dans la bascule synchrone, les entrées ne peuvent agir sur la sortie que lorsqu’il y a un signal d’horloge (front
montant dans notre figure). La sortie Q garde alors sa valeur pendant toute une période
Remarque :
On remarque que pour les mêmes variations de R S dans le temps, on n’obtient pas les mêmes variations de Q selon
que la bascule soit synchrone ou asynchrone.
5. Analyse d’un circuit séquentiel
Pour analyser un circuit séquentiel, il faut :
a. Etablir les équations d’entrée de chaque bascule
b. Réaliser la Table de Vérité du circuit (le principe est de retrouver les Qi+ à partir des
valeurs des équations
ht
d’entrée).
c. En déduire le diagramme des états d’où le rôle du circuit.
tp
Le diagramme des états peut être constitué d’une ou plusieurs séquences
://
Exemple :
m
be
la
ch
e.
J2 = Q0Q1 J1 = Q0 J0 = 1
jim
K2 = Q0Q1 K1 = Q0 K0 = 1
Table de vérité :
do
.c
om
Diagramme des états :
ht
tp
://
A chaque état du circuit à l’instant (t) succède un état à l’instant (t+1).
m
Par exemple (011)t → (100)t+1
be
Ce circuit représente un compteur binaire modulo 8, il compte de 0 à 7.
la
ch
e.
jim
T1 = Q0 ⊕ x
T0 = 1
do
Si x = 0 alors T1 = Q0 et T0 = 1
Si x = 1 alors
T1 = Q0 et T0 = 1
.c
Table de vérité :
om
ht
tp
://
m
be
la
ch
e.
jim
do
.c
om
Pour X = 0 ce circuit est un compteur modulo 4 et pour X = 1 c’est un décompteur modulo 4.
5. Tables d’excitation des bascules
Une table d’excitation (ou table de transition) consiste à retrouver les valeurs d’entrée d’une bascule
selon la
variation des états de sortie de cette bascule.
5.1 Bascule R S
Table de vérité :
ht
tp
://
m
Par exemple quand Qt Qt+1 = 0 0,
on a R S = 0 0 ou R S = 1 0. On dira donc que R S = X 0.
be
De même pour tous les autres cas, sauf pour les 2 derniers cas car
R S = 1 1 est un cas impossible.
Table d’excitation (R S) :
la
ch
e.
jim
5.2 Bascule J K
Table de vérité
do
.c
om
Par exemple quand Qt Qt+1 = 0 1, on a J K = 1 0 ou J K = 1 1. On dira donc que J K =1 X.
De même pour tous les autres cas.
Table d’excitation (J K) :
ht
tp
://
5.3 Bascule T
Table de vérité :
m
be
la
ch
Quand Qt = Qt+1 T = 0
e.
Quand Qt ≠ Qt+1 T = 1
jim
Table d’excitation (T) :
do
.c
5.4 Bascule D
om
Table de vérité :
ht
Dans cette bascule D est toujours égal à Qt+1.
tp
Table d’excitation (D) :
://
m
be
6. Synthèse d’un circuit séquentiel
la
La synthèse d’un circuit séquentiel consiste à retrouver les fonctions d’entrée de ce circuit à partir d’un diagramme
d’états (séquence). Pour cela il faut :
ch
a. Etablir le diagramme des états (ou séquence) et donner le nombre de bascules nécessaires.
b. Réaliser la table de transition
c. En déduire les équations d’entrée aux bascules
d. Réaliser le circuit correspondant
e.
Exemple :
jim
Réaliser un circuit qui fait la séquence suivante à l’aide de bascules JK
do
a) Séquence :
.c
om
b) Table des transitions :
ht
tp
://
m
Connaissant l’état des bascules à l’instant (t) et à l’instant (t+1), on peut déterminer les fonctions d’entrée de ces
bascules à partir de la table d’excitation de la bascule JK.
be
On remarque dans cette table que J1 = 1 et K1 = 1
On calcule donc les fonctions de J2 K2 et J0 K0
la
c) Fonctions d’entrée (simplifiées par les tableaux de Karnaugh)
ch
e.
jim
do
.c
om
Fonctions d’entrée aux bascules :
ht
J2 = Q1 J1 = 1 J0 = Q2Q1
K2 = Q1 K1 = 1 K0 = Q2Q1
tp
d) Circuit :
://
m
be
la
ch
Exemple 2 (Diagramme avec états équivalents)
Dans un diagramme d’états, il arrive parfois que deux ou plusieurs états soient équivalents; dans ce cas il faut le
e.
simplifier. Deux états à l’instant (t) sont équivalents s’ils ont le même état suivant (t+1) avec les mêmes variables de
contrôle (entrée et sortie)
jim
do
.c
om
ht
tp
://
m
Pour simplifier le diagramme, on le représente sous forme tabulaire.
be
On voit que pour les mêmes variables d’entrée/sortie, A et E ont les mêmes états suivants donc ils sont équivalents ;
Il faut alors supprimer un des deux. Dans cet exemple on supprime E et on remplace tous les E du tableau par A
la
ch
e.
jim
do
.c
om
On a également les états D et F qui sont équivalents, on supprime donc F et on obtient un nouveau tableau et un
nouveau diagramme :
Tableau simplifié :
ht
tp
Diagramme des états simplifié :
://
m
be
la
ch
Pour réaliser le circuit, il faut codifier les états. Généralement on utilise des codes binaires croissant selon l’ordre
alphabétique.
e.
A = 00 B = 01 C = 10 D = 11
Max (A,B,C,D) = D = 11
jim
La plus grande valeur s’écrit sur 2 bits donc il faut 2 bascules pour réaliser ce circuit.
Table de transition :
do
.c
om
ht
tp
://
m
T0 = 1
be
la
ch
e.
jim
do
Circuit correspondant :
.c
om
ht
tp
://
6. Chronogrammes
m
Le chronogramme est une représentation graphique de l'évolution de l’état d’un circuit dans le temps. Il utilise une
horloge de période T.
be
Il existe deux types de circuits séquentiels, les circuits synchrones et les circuits asynchrones. Dans un circuit
synchrone, toutes les bascules sont reliées à la même horloge.
la
Généralement on retrouve la séquence d’un circuit à l’aide d’une table de vérité mais on peut aussi retrouver
directement celle – ci à l’aide d’un chronogramme.
ch
Pour réaliser le chronogramme d’un circuit il faut :
a. Donner l’état initial de chaque bascule à l’instant (t)
b. En déduire les valeurs des entrées pour chaque bascule à l’instant (t)
e.
c. A partir de ces entrées, retrouver l’état de chaque bascule à l’instant (t+1)
d. (t+1) devient (t) et on recommence jusqu’à ce qu’on retrouve l’état initial
jim
Exemple 1 : (circuit synchrone)
do
.c
om
ht
tp
://
m
be
Etat (t) Q1Q0= 0 1
Q1 et Q0 à l’instant (t) nous donnent les valeurs de T1 et T0 à l’instant (t)
la
T1 = 1 car Q0 = 1
ch
T0 = 1 (circuit)
T1 et T0 à l’instant (t) nous donnent les valeurs de Q1 et Q0 à l’instant (t+1)
e.
T1 = 1 => Q1t+1 = Q1t
jim
T0 = 1 => Q0t+1 = Q0t
Etat (t+1) Q1Q0 = 1 0
do
Exemple 2 : (circuit asynchrone) :
.c
om
J0 = 1
K0 = 1
J1 = 1
K1= 1
CK0 = CK
___
CK1 = Q0
ht
tp
://
m
be
la
ch
e.
Soit CK l’horloge principale du circuit et T sa période
jim
L’horloge de la bascule (J0K0) est reliée à l’horloge principale CK0 = CK
Sa période est T0 = T
do
___ __
L’horloge de la bascule (J1K1) est reliée à Q0 donc CK1 =Q0
Sa période est T1 = 2 T
.c
Dans cet exemple les bascules sont sensibles au front montant de l’horloge, c'est-à-dire qu’elles changent d’état
quand leurs horloges passent de 0 à 1
om
On a toujours J0 = 1 et K0 = 1 donc Q0t+1 = Q0t à la fin de chaque période T0. On trace ainsi le graphe de Q0.
__
A partir de Q0 on déduit Q0 donc CK1.
On a toujours J1 = 1 et K1 = 1 .
__
donc Q1t+1 = Q1t à la fin de chaque période T1. On trace ainsi le graphe de Q1
7. Les registres
Un registre est un ensemble ordonné de n bascules qui permet de mémoriser une information sur n bits.
Il existe plusieurs types de registres :
– Registre à entrées série et sortie série
– Registre à entrées parallèles et sorties parallèles
– Registre à entrées série et sortie parallèle.
ht
– Registre à entrées parallèles et sortie série
7.1 Registres à décalage (bascules D)
tp
Les registres à décalage sont des registres à entrées série et sortie série
://
a) Registre à décalage à gauche
m
be
L'ensemble du registre est décalé d'une position vers la gauche
Q3t+1= Q2t Q2t+1 = Q1t Q1t+1 = Q0t Q0t+1 = 0
la
La bascule D0 reçoit une nouvelle entrée à droite Es = 0 et Q3 est perdu.
ch
C’est un registre avec entrée série à droite et sortie série à gauche
D3 = Q2 D2 = Q1 D1 = Q0 D0 = 0
e.
Circuit :
jim
do
.c
om
Plus généralement, pour un registre de n bascules on a :
D0 = 0 et Di = Qi-1
b) Registre à décalage à droite
On a : D3 = 0 D2 = Q3 D1 = Q2 D0 = Q1
Plus généralement pour un registre de n bascules on a :
Dn-1 = 0 et Di = Qi+1
c) Registre à décalage circulaire à gauche
ht
tp
L'ensemble du registre est décalé d'une position vers la gauche et la bascule D0 reçoit Q3
On a : D3 = Q2 D2 = Q1 D1 = Q0 D0 = Q3
://
Plus généralement pour un registre de n bascules on a :
m
D0 = Qn-1 et Di = Qi-1
d) Registre à décalage circulaire à droite
be
la
L'ensemble du registre est décalé d'une position vers la gauche et la bascule D3 reçoit Q0
ch
On a : D3 = Q0 D2 = Q3 D1 = Q2 D0 = Q1
Pour un registre de n bits on aura : Dn-1 = Q0 et Di = Qi+1
e.
jim
do
.c
om