Unité: Systèmes logiques (SysLog1)
Conception de systèmes numériques (CSN)
Les bascules
Etienne Messerli
& collègues de l'institut REDS
Octobre 2021
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p1
Qu’appelle-t-on une bascule ?
Bascule = circuit ayant :
▪ un comportement séquentiel (dépendant du temps, de l'historique des
évènements)
▪ une seule sortie à 2 états
▪ pas plus de 2 états stables
Bascules classées selon le nombre d’états stables :
▪ astable (oscillateur) : aucun état stable
▪ monostable : 1 état stable
▪ bistable : 2 états stables
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p2
Bascules bistables
Définition d'une bascule bistable :
▪ 2 états stables
▪ Actions sur les entrées:
• permettent de forcer un état ou un changement d’état
▪ Sans actions sur les entrées: maintien de l’état
• mémorisation
▪ L’état dépend l'état actuel des entrées et de l'historique des
évènements
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p3
Bascules bistables, comportement
Bascules bistables classées selon leur comportement :
▪ bascule asynchrone RS (bascule élémentaire)
▪ bascule à verrouillage (verrou, «latch»), sensible à l’état de l’entrée
de commande du verrou
▪ bascule «edge triggered», sensible à un flanc d’un signal de
commande, souvent nommée flip-flop
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p4
Bascule élémentaire
Module logique permettant d’initialiser et de stocker une valeur
logique
Mise à ‘ 1 ’
Bascule Valeur
Mise à ‘ 0 ’
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p5
Bascule RS asynchrone …
Comportement :
▪ Set = '1' mise à '1' de la sortie
▪ Reset = '1' mise à '0' de la sortie
▪ Set = Reset = '0' maintien, la sortie conserve sa valeur
▪ Set = Reset = '1' interdit
Set Bascule RS
Q
Reset asynchrone
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p6
… bascule RS asynchrone …
Conception d'une bascule RS :
▪ l'évolution dépend des entrées et de l'état présent (historique),
nous rajoutons Q comme entrée dans la TDV
R S Q Q+
0 0 0 …
Q: Etat présent de Maintien
0 0 1 …
la bascule RS 0 1 0 ...
Set
Q+ : Etat futur de 0 1 1 …
la bascule RS 1 0 0 …
Reset
1 0 1 …
1 1 0 …
1 1 1 …
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p7
… bascule RS asynchrone …
Conception de la bascule RS:
▪ Etablir l'équation simplifiée de Q+ à l'aide d'une table de Karnaugh
▪ Dessiner le schéma logique de Q+
▪ Connecter le signal Q sur Q+
▪ Transformer le schéma logique en utilisant des portes NOR et des
inverseurs NOT
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p8
… bascule RS asynchrone …
Schéma logique :
S
Q
X
Y
R
A quoi sert la porte inverseur sur la sortie Q ?
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p9
… bascule RS asynchrone
Table des transitions Symbole CEI
R S Q+
0 0 Q Set S Q
0 1 1
1 0 0 Reset R
1 1 interdit
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 10
Bascule RS asynchrone: inconvénients
La bascule RS asynchrone est sensible à toute impulsion sur ses
entrées
▪ Si durée supérieure au temps de propagation de 2 portes
=> changement d'état définitif de la bascule RS
▪ Si durée inférieur au temps de propagation de 2 portes
=> état final de la bascule RS indéterminé !
Les commutations des circuits produisent des parasites
Nos circuits génèrent des aléas
Ces parasites et ces aléas peuvent faire changer d’état une
bascule RS asynchrone
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 11
Bascule à verrouillage (latch)
Solution pour éviter les basculements indésirables :
▪ verrouiller la bascule lorsque des parasites et/ou des aléas peuvent
apparaître sur les entrées
▪ verrouiller = rendre les entrées inactives
Ajout d'une entrée de commande, nommée G, soit:
▪ G = ‘1’ active les actions des entrées S et R
▪ G = ‘0’ désactive les actions des entrées S et R
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 12
Latch D …
But : mémoriser une information d'un bit, au moment souhaité
Entrées :
▪ D : donnée
▪ G : commande de verrouillage (gate)
Comportement :
▪ G = '1' => la sortie prend la valeur de l’entrée D :
cette bascule est transparente (verrou ouvert)
▪ G = '0' => la sortie conserve sa valeur
Bascule sensible sur un niveau de l'entrée de commande G
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 13
… latch D …
Schéma logique :
(S)
D
Q
X
G
Y
(R)
Version basée sur une bascule RS
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 14
… latch D …
Table des transitions : Symbole CEI :
G D Q+
0 0 Q D 1D Q
0 1 Q
1 0 0 G G1
1 1 1
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 15
… latch D
Compléter le chronogramme suivant:
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 16
Décalage avec des Latchs
Registre à décalage avec des Latchs
Q0 Q1 Q2 Q3
A 1D 1D 1D 1D
G1 G1 G1 G1
Gate
Gate
A
Q0
Q1
Q2
Q3
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 17
Décalage avec des Latchs "bis"
Registre à décalage avec des latchs et 2 signaux de commande
Q0 Q1 Q2 Q3
A 1D 1D 1D 1D
G1 G1 G1 G1
Gate
Gate
A
Q0
Q1
Q2
Q3
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 18
Principe de bascule "maître-esclave" …
Soit le schéma de principe d'une bascule sensible au flanc basé sur une bascule
maître-esclave:
A Qm Qe Q
1D Q 1D Q
G1 G1
Horloge
Horloge
A
Qm
Q = Qe
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 19
… principe de bascule "maître-esclave"
Problème dans le fonctionnement de ce schéma:
A Qm Qe Q
1D Q 1D Q
G1 G1
Horloge
Horloge
/Horloge
tp
Zone où les 2 latchs sont ouverts. Risque que l’état de
l’entrée A passe à travers les 2 latchs simultanément !
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 20
Bascule "maître-esclave" …
Bascule constituée de 2 Latchs avec 2 signaux gates inversés
ces deux signaux ne doivent pas être actifs simultanément
D Qm Qe Q
1D Q 1D Q
Gate
G1 G1
Horloge
nGate
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 21
… bascule "maître-esclave" …
Analyse du fonctionnement interne
Horloge
Gate
nGate
D
Qm
Q = Qe
Le comportement correspond à une bascule sensible au flanc
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 22
Flip-flop D ou bascule "Edge trigger"
Comportement :
▪ Si un flanc montant ou descendant (suivant la polarité choisie) se
présente sur l ’entrée d ’horloge, la sortie prend à cet instant la
valeur de l ’entrée D
Bascule sensible sur un flanc
Le signal de commande à action dynamique est nommé :
Horloge ou Clock
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 23
... flip-flop D (DFF) …
Table des transitions Table des transitions
synchrones (horloge implicite):
Horloge D Q+ D Q+
0 0 0 0
1 1 1 1
Symbole CEI Polarité du flanc
- montant
D 1D Q
Horloge C1 - descendant
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 24
Schéma interne flip-flop D (DFF)
X
Q
Y
nQ
Horloge
Z
D
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 25
Exercice
Complétez le chronogramme suivant pour:
un flip-flop D et pour un latch (verrou)
Horloge
G
Qlatch
Qflip-flop
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 26
Caractéristiques dynamiques DFF …
Les caractéristiques dynamiques découle du fonction-
nement autonome du flip-flop
▪ L'étude du fonctionnement de la bascule maître-esclave montre ce
fonctionnement autonome (similaire pour un flip-flop)
Horloge
tset-up thold
D Stable Stable
tpDFF
Q
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 27
… caractéristiques dynamiques DFF
Description des différents timings:
▪ tset-up: temps de set-up
Temps pendant lequel la flip-flop prépare les signaux internes du 1er étage
pendant que Horloge est à '0'
▪ thold: temps de maintien
Temps pendant lequel l'entrée doit être stable pour permettre le changement
de l'état de l'horloge de '0' à '1' sans perdre l'état interne.
thold est très souvent nul = 0 ns
▪ tpDFF: temps de propagation de la bascule
Temps de propagation entre le flanc actif de l'horloge et la sortie
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 28
Flip-flop D: initialisation
Au démarrage d'un système il faut pouvoir placer les bascules
dans un état déterminé reset et/ou set asynchrone
▪ reset actif R Sortie Q prend immédiatement la valeur 0
▪ set actif S Sortie Q prend immédiatement la valeur 1
Symbole d’un flip-flop D avec reset et set asynchrone
nSet
D 1D S Q
clock C1
R
nReset
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 29
Flip-flop T (toggle)…
Bascule sensible au flanc :
▪ Si T = 0 alors la sortie est maintenue
▪ Si T = 1 alors la sortie Q est inversée
Table des transitions Symbole CEI:
synchrones :
T Q+ T 1T Q
0 Q clock C1
1 not Q
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 30
Flip-flop JK …
Bascule sensible au flanc :
▪ si J = K = 0 la sortie conserve sa valeur (hold)
▪ si J = 1 et K = 0 la sortie prend la valeur 1 (set)
▪ si K = 1 et J = 0 la sortie prend la valeur 0 (reset)
▪ si J = K = 1 la sortie prend l'état inverse (toggle)
Table des transitions Symbole CEI:
synchrones :
J K Q+
J 1J Q
0 0 Q
clock C1
0 1 0
1 0 1 K 1K
1 1 not Q
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 31
… flip-flop JK …
Autre table des transitions synchrones pour flip-flop JK
Etat présent Etat suivant J K
'0' '0' '0' '-'
'0' '1' '1' '-'
'1' '0' '-' '1'
'1' '1' '-' '0'
E. Messerli (HES-SO / HEIG-VD / REDS), 2020 Bascules, p 32