PLAN - fsg.rnu.tn 3 - Logique séquentielle.pdf · Cours Circuits Logiques 1 26/10/2016 Khaled...

25
Faculté des Sciences de Gabes Département d’informatique 26/10/2016 Cours Circuits Logiques 1 26/10/2016 1 Khaled Hassine [email protected] Par : Khaled Hassine CHAPITRE HAPITRE III III – LOGIQUE OGIQUE SÉQUENTIELLE ÉQUENTIELLE 26/10/2016 2 Khaled Hassine Conception d’un circuit séquentiel Analyse d’un circuit séquentiel Généralités Les registres et les compteurs PLAN 26/10/2016 3 Présentation des bascules Khaled Hassine Conception d’un circuit séquentiel Analyse d’un circuit séquentiel Généralités Les registres et les compteurs PLAN 26/10/2016 4 Présentation des bascules Khaled Hassine

Transcript of PLAN - fsg.rnu.tn 3 - Logique séquentielle.pdf · Cours Circuits Logiques 1 26/10/2016 Khaled...

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 1

26/10/2016 1Khaled Hassine

[email protected]

Par :

Khaled Hassine

CCHAPITREHAPITRE IIIIII ––LLOGIQUEOGIQUE SSÉQUENTIELLEÉQUENTIELLE

26/10/2016 2Khaled Hassine

Conception d’un circuit séquentiel

Analyse d’un circuit séquentiel

Généralités

Les registres et les compteurs

PLAN

26/10/2016 3

Présentation des bascules

Khaled Hassine

Conception d’un circuit séquentiel

Analyse d’un circuit séquentiel

Généralités

Les registres et les compteurs

PLAN

26/10/2016 4

Présentation des bascules

Khaled Hassine

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 2

Introduction

Les opérateurs que nous avons vus dans lechapitre précédent sont des opérateursélémentaires dits booléens car ils réalisent lesopérations logiques de l'algèbre de Boole.

Les circuits construits à partir de ces opérateurssont dits circuits combinatoires (Combinatorycircuit) dont les sorties dépendent uniquement del’état des entrées et l'apparition des données àl'entrée du circuit entraîne le passage de chaquesortie à l'état défini par la fonction logiquecorrespondante.

26/10/2016 Khaled Hassine 5

Schéma général d’un circuitcombinatoire

26/10/2016 Khaled Hassine 6

X0

::

X1

Xn-1

Y0Y1

Ym-1

::

Notion de mémoire

Soit un circuit combinatoire permettant de signaler unecoupure ou un court-circuit dans un système deproduction. La sortie du circuit alimente une sonneried'alarme par l'intermédiaire d'un amplificateur. Cecircuit déclenche, le cas échéant, la sonnerie d'alarmependant la courte durée du court-circuit.

Il est donc souhaitable de disposer d'un circuit quiconserve l'information (en d'autres termes un circuitavec mémoire) afin que la personne concernée (legardien par exemple) puisse le détecter.

Ce circuit est dit fonction mémoire ou fonctionbascule, en référence à son composant de base.

26/10/2016 Khaled Hassine 7

Définition d’une bascule

Une bascule est un opérateur susceptible de : basculer, c'est à dire, de changer d'état sur

commande de conserver le nouvel état jusqu'à l'apparition

d'une nouvelle commande. Une bascule est donc une mémoire

élémentaire permettant de sauvegarder unbit.

26/10/2016 Khaled Hassine 8

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 3

Généralités sur les circuitsséquentiels

Les opérateurs bascules permettent la réalisationdes circuits séquentiels (Sequentials circuits).

Un circuit séquentiel est un assemblage decircuits logiques et de circuits de mémorisations(les bascules) élémentaires.

Les circuits séquentiels sont des circuits dont lessorties dépendent non seulement de l’état desentrées mais aussi et surtout de l’état du systèmeaux instants passés.

26/10/2016 Khaled Hassine 9

Schéma général d’un circuitséquentiel

26/10/2016 Khaled Hassine 10

X0

::

X1

Xn-1

Y0

Y1

Ym-1

::

:

Circuitscombinatoires

Z0

Zl-1V0

Vp-1

Elémentsmémoires

1,0

1,0

1,0

1,0

),(

),(

pr

lk

nj

mi

pourVXfZ

VXfY

kjrr

kjii

Circuit synchrone et asynchrone

Lorsque les changements d'état des divers composants d'uncircuit séquentiel se produisent à des instants qui dépendentdes temps de réponse des autres composants et des tempsde propagation des signaux on parle de logiqueséquentielle asynchrone.

Cependant les retards peuvent ne pas être identiques pourtoutes les variables binaires et conduire à certains aléas.Ceux-ci peuvent être évités en synchronisant la séquencedes diverses opérations logiques sur les signaux périodiquesprovenant d'une horloge. La logique séquentielle est alorsdite synchrone : tous les changements d'état sontsynchronisés sur un signal de contrôle.

26/10/2016 Khaled Hassine 11

Horloge

On associe souvent aux circuits séquentiels une entréesupplémentaire dite entrée d'horloge (dite Clock et noté CP).

Cette horloge fournit une succession périodique d'impulsions delargeur tp, supposée petite devant la période T. Une telle bascule estqualifiée de synchrone.

On note Qn la valeur de la sortie Q pendant le nième intervalleprécédant la nième impulsion et Qn+1 la valeur correspondante dansl'intervalle suivant la nième impulsion.

Dans le cas où le circuit serait sans horloge, on dit qu’il fonctionneen mode asynchrone. L'avantage principal du mode synchrone estd'être insensible aux parasites en dehors des impulsions d'horloge.

26/10/2016 Khaled Hassine 12

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 4

Horloge

26/10/2016 Khaled Hassine 13

T est de l'ordre de 70 µs et le temps demaintien de l'état 1 est de l'ordre de 10 µs.

Automates de Moore et de Mealy

Si la conception des circuits combinatoires repose surl'algèbre de Boole, les circuits séquentiels reposent,quant à eux, sur la théorie des automates finis.

Les automates finis sont des êtres mathématiquescomposés d'un nombre fini d'éléments et notammentdes mémoires.

Il existe principalement deux classes d'automates finis : l'automate de Moore l'automate de Mealy.

26/10/2016 Khaled Hassine 14

Automate de Moore

Les sorties à l'instant t+1 tiennent compte desétats à l'instant t+1, c'est à dire, on commencepar calculer les nouveaux états et à partir deces derniers, on calcule les sorties.

26/10/2016 Khaled Hassine 15

L o g iq u ec o m b in a to ire

E ta t d el’a u to m a te

Q

S o r t ieE n t ré e

L o g iq u ec o m b in a to ire

Automate de Mealy

Les sorties à l'instant t+1 tiennent compte desétats à l'instant t.

Ceci revient à calculer en parallèle lesnouveaux états et les sorties.

26/10/2016 Khaled Hassine 16

Etat del’automate

Q

Entrée SortieLogique

combinatoire

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 5

Conception d’un circuit séquentiel

Analyse d’un circuit séquentiel

Généralités

Les registres et les compteurs

PLAN

26/10/2016 17

Présentation des bascules

Khaled Hassine

Définition et principe defonctionnement

Une bascule (flip-flop) a pour rôle demémoriser une information élémentaire. C'estune mémoire à 1 bit.

Une bascule possède deux sortiescomplémentaires, notées : Q et Q’. Ce typede circuit est encore appelé circuit bistable.

La mémorisation fait appel à un verrou (latch)ou système de blocage.

26/10/2016 Khaled Hassine 18

Principe de verrou dans unebascule

26/10/2016 Khaled Hassine 19

Q

Q

A

B

Ce verrou permet de conserver un état, il faut maintenant savoircomment charger cet état

Différents types debascules Bascule RS Bascule D Bascule JK Bascule T Bascule maître esclave

26/10/2016 Khaled Hassine 20

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 6

Différents types debascules Bascule RS Bascule D Bascule JK Bascule T Bascule maître esclave

26/10/2016 Khaled Hassine 21

Bascule RS

La bascule RS dispose de deux entrées R : Reset : Mise à zéro

S : Set : Mise à 1

deux sorties Q et Q'.

La sortie Q de la porte 1 est réinjectée à l'entrée de laporte 2 et inversement.

26/10/2016 Khaled Hassine 22

Bascule RS

26/10/2016 Khaled Hassine 23

R

SR

S

Q

Q’

Q

Q’

Bascule RS Synchrone

26/10/2016 Khaled Hassine 24

3

4 2

1S

R

CP

Q

Q'

Le fonctionnement de la bascule synchrone dépend de la présence de l'impulsion d'horloge(CP) : aussi longtemps que CP est à 0, les sorties des portes 3 et 4 restent à 1 indifféremmentdes variations des entrées S et R. Les sorties Q et Q' restent alors inchangées. Une fois CPpasse à la valeur 1, les informations venant de S et R peuvent modifier les sorties des portes 1et 2.

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 7

Fonction de la bascule RS

26/10/2016 Khaled Hassine 25

S R Q(t) Q'(t) Q(t+1) Q'(t+1) Observations

1 0 0 1 1 0l'état Set. "Set for 1"

1 0 1 0 1 0

0 1 0 1 0 1l'état Clear

0 1 1 0 0 1

0 0 0 1 0 1sans changement

0 0 1 0 1 0

Cas ou S=R=1

Si S = 1 et R = 1, l'état est dit indéterminé car on est entrain de forcer à mettre la bascule en même temps à l'état 1et à l'état 0.

Q peut être dans ce cas égal à Q' et ceci dépend de l'ordred'arrivée des entrées à la bascule.

En effet, si on applique S = 1 et R = 0 ou S = 0 et R = 1, onimpose l'état de la sortie Q respectivement à 1 ou à 0,l'autre sortie prenant la valeur complémentaire. Cet état semaintient lorsque les deux entrées retournent à 0. Laconfiguration S = R = 1 est à proscrire car ici elle imposeles deux sorties dans l'état 0, ce qui est inconsistantlogiquement avec notre définition.

26/10/2016 Khaled Hassine 26

Caractéristiques de labascule RS

26/10/2016 Khaled Hassine 27

S R Qt+1 Commentaire

0 0 Qt Pas de changement

0 1 0 Mise à zéro (Clear)

1 0 1 Mise à 1 (Set)

1 1 ? Etat indéterminé

))(())(()()1( tQSRtQSSRRStQSRtQ

Différents types debascules Bascule RS Bascule D Bascule JK Bascule T Bascule maître esclave

26/10/2016 Khaled Hassine 28

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 8

Principe de base

La bascule D est obtenue après une légèremodification de la bascule RS en insérant uninverseur entre S et R.

On interdit ainsi les états ou S=R et enparticulier l’état indéterminé S=R=1.

On appelle l’unique entrée D.

26/10/2016 Khaled Hassine 29

Schéma de la bascule Dasynchrone

26/10/2016 Khaled Hassine 30

Q(t)

Q’(t) Q’(t)

Q(t)DD S

R

Caractéristiques de la bascule D

26/10/2016 Khaled Hassine 31

D S R Qt+1 Commentaire

0 0 1 0 Mise à zéro

1 1 0 1 Mise à 1

DtQ )1(

Différents types debascules Bascule RS Bascule D Bascule JK Bascule T Bascule maître esclave

26/10/2016 Khaled Hassine 32

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 9

Principe de base

La bascule JK est un perfectionnement de labascule RS. Le cas indéterminé de cettedernière (S et R égaux à 1) est défini dans labascule JK, par une inversion des états dessorties en asservissant les entrées R et S auxsorties

26/10/2016 Khaled Hassine 33

KQR

QJS

Schéma de la bascule JK

26/10/2016 Khaled Hassine 34

Q(t)

Q’(t)

Q(t)J

Q’(t)

J

CP

S

RK K

Table de vérité de la basculeJK

26/10/2016 Khaled Hassine 35

J K Q(t) S R Q(t+1) Comment Commentaire

0 0 0 0 0 Q(t)Q(t)

Pas de

changement0 0 1 0 0 Q(t)

0 1 0 0 0 Q(t)=00 Mise à zéro

0 1 1 0 1 0

1 0 0 1 0 11 Mise à 1

1 0 1 0 0 Q(t)=1

1 1 0 1 0 1Q’(t) État inversé

1 1 1 0 1 0

Fonction caractéristique de labascule JK

26/10/2016 Khaled Hassine 36

JK

Q

00 01 11 10

0 0 0 1 1

1 1 0 0 1

QKQJtQ )1(

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 10

Différents types debascules Bascule RS Bascule D Bascule JK Bascule T Bascule maître esclave

26/10/2016 Khaled Hassine 37

Principe de base

Pour une bascule J-K, nous constatons que siJ=K=1, l'état de la sortie est inversé à chaquecycle d'horloge.

La bascule T a une seule entrée appelée"Trigger" (mot anglais pour diredéclenchement) est obtenue par connexion desentrées J et K à une même source.

Il est pour cela parfois dit la basculecomplément.

26/10/2016 Khaled Hassine 38

Schéma et tableaucaractéristique de la bascule JK

26/10/2016 Khaled Hassine 39

Q(t) Q(t)TT

CP

S

R

T J K Qt+1 Commentaire

0 0 0 Qt Pas de changement

1 1 1 Q't État inversé

Différents types debascules Bascule RS Bascule D Bascule JK Bascule T Bascule maître esclave

26/10/2016 Khaled Hassine 40

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 11

Composition

La bascule maître esclave est formée de deuxbascules reliées à la même horloge mais le topd'horloge de la première bascule (le maître) estl'opposé du top d'horloge de la deuxièmebascule (l'esclave).

26/10/2016 Khaled Hassine 41

Exemple d'une bascule maîtreesclave.

26/10/2016 Khaled Hassine 42

S

R

R

SQ(t)

R

SQ(t)

CP

Q’(t) Q’(t)

Fonctionnement

Le fonctionnement de cette bascule est comme suit : lorsque le top d'horloge est en front montant (=1), il permet

aux données de passer de la bascule maître alors que le topd'horloge de la bascule esclave est égale à 0, et donc lesdonnées ne passent pas à la bascule esclave.

En front descendant de l'horloge (=0), les données nepassent pas au maître mais les sorties de la bascule maîtrepasse aux entrées de l'esclave.

L'objectif est de garantir le passage des informationssans transformation éventuelle du à un éventuel bruitou toute perturbation comme "le problème de course"(Race problem).

26/10/2016 Khaled Hassine 43

Preset et Clear

Les entrées asynchrones (utiliser en absencede signal d'horloge) Pr (Preset) et Cr (Clear)permettent d'assigner l'état initial de labascule, par exemple à la mise sous tensionpour éviter tout aléa.

En fonctionnement normal, ces deux entréesdoivent être maintenues à 1.

26/10/2016 Khaled Hassine 44

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 12

Preset et Clear

Pr Cr Q

1 1 Q

0 1 0

1 0 1

26/10/2016 Khaled Hassine 45

Table d’excitation des bascules

Les tables caractéristiques des bascules spécifient leprochain état quand les entrées et l'état actuel sont connus.

Or, durant la conception d'un processus (circuit logique),les états de transitions (présent et prochain) sont souventconnus et ce sont les entrées qui sont à déterminer pourassurer la transition voulue.

Pour cette raison, il nous faut une table qui donne lesentrées nécessaires pour une transition d'états donnée.

Cette table est dite table d'excitation de la bascule (ou ducircuit combinatoire). Elle est donc constituée de deuxcolonnes Qt et Qt+1 et une colonne pour chaque entrée. Il ya quatre transitions (4 lignes) pour aller de Qt à Qt+1.

26/10/2016 Khaled Hassine 46

Tables d'excitation des bascules

Bascule RS Bascule D Bascule JK Bascule T

Qt Qt+1 S R D J K T

0 0 0 X 0 0 X 0

0 1 1 0 1 1 X 1

1 0 0 1 0 X 1 1

1 1 X 0 1 X 0 0

26/10/2016 Khaled Hassine 47

Par exemple, pour la bascule J-K, pour obtenir la transition 0 à 1 il fautque l'entrée J soit dans l'état 1, quelque soit l'état de l'entrée K.

J = K = 1 qui inverse l'état de la bascule ou J = 1 et K = 0 qui charge 1 dans la bascule.

Une croix indique que l'état de l'entrée considérée est indifférent : 0 ou 1.

Conception d’un circuit séquentiel

Analyse d’un circuit séquentiel

Généralité

Les registres et les compteurs

PLAN

26/10/2016 48

Présentation des bascules

Khaled Hassine

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 13

Démarche à suivre

L’analyse de circuit séquentiel (Analysis ofclocked sequential circuits) consiste à trouverles équations caractéristiques ou lesdiagrammes temporels qui décrivent le travaildu circuit séquentiel.

En d’autres termes, trouver les états futurs etles sorties du circuit séquentiel en fonction deces entrées et ces états présents.

On suit pour une démarche à 4 étapes

26/10/2016 Khaled Hassine 49

Première et deuxième étape

Première étape : Trouver les équations caractéristiques de chaque

bascule qui montre l’état futur de la bascule enfonction des entrées et l’état des autres bascules ducircuit.

L’ensemble des équations caractéristiques desdifférentes bascules s’appelle équations d’états (Stateequation).

Deuxième étape : Trouver les équations des sorties en fonction des

entrées et l’état actuel des bascule.

26/10/2016 Khaled Hassine 50

Troisième étape

Trouver la table d’état (dite aussi la table devérité) du circuit qui contient 4 colonnesmontrant l’état actuel des bascules, les entrées(X1, X2, ..., Xn), les états futures et les sorties.

26/10/2016 Khaled Hassine 51

Entrées Etats présents Prochains états Les sorties

X1, X2, ..., Xn A1, A2, ..., Am A1, A2, ..., Am Y1, Y2, ..., Yl

Quatrième étape

Trouver le diagramme de transition ducircuit qui est une autre forme de la tabled’état qui permet de faciliter le suivi l’état ducircuit séquentiel et qui contient 2m cerclesreprésentant les différents états possibles desbascules et on relie entre elles par des liensmontrant les conditions de passage d’un état àun autre (les entrées suivies de / suivi dessorties).

26/10/2016 Khaled Hassine 52

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 14

Exemple à base de bascule Det JK

26/10/2016 Khaled Hassine 53

CP

Q

Q’A

D

Q

Q’

B

K

X

Y

J

Deux bascules : la première A de type D et la deuxième B de type JKUne entrée X et une sortie Y.

Première étape : équationscaractéristiques des bascules

26/10/2016 Khaled Hassine 54

L’entrée de la bascule A est :

L’entrée de la bascule B est :

XK

AXJ

B

B

Les équations caractéristiques des bascules :( 1) ( )

( 1) ( )

( )

( )

( )

( ) ( ) ( )

A t B X A

B t J B KB X A B XB

XA X A B XB XAB X BA XB

XAB X AB XB X AB B X AB

X A B X AB

X A B X A B X A B

DA = B(X+A)

Deuxième étape

26/10/2016 Khaled Hassine 55

L’équation caractéristique de la sortieY est :

( 1) ( 1)Y XA t X B t

Troisième étape : tabled’états du circuit

26/10/2016 Khaled Hassine 56

A(t) B(t) X A(t+1) B(t+1) Y

0 0 0 0 1 1

0 0 1 0 0 0

0 1 0 0 0 0

0 1 1 1 1 1

1 0 0 0 0 0

1 0 1 0 1 0

1 1 0 1 0 0

1 1 1 1 1 1

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 15

Quatrième étape : Lediagramme d’états

26/10/2016 Khaled Hassine 57

1/1

1/0

1/0

X/Y

10

11

00

010/0

0/1

1/10/1

0/0

Exemple à base de basculeRS

26/10/2016 Khaled Hassine 58

S

Q' Q

R

A

S

Q' Q

R

B

X Y

RA SA RB SBCP

Première étape : équationscaractéristiques des bascules

26/10/2016 Khaled Hassine 59

Les entrées des bascules :

A B

A B

R X Q

S XQ

AB

AB

QXS

QXR

Première étape : équationscaractéristiques des bascules

26/10/2016 Khaled Hassine 60

Les équations caractéristiques des bascules :

( 1) ( ( )) ( )( ( ) ( ))

( ( ))( ( ) ( )) ( ) ( ) ( ) ( )

( ( ) ( )) ( ) ( )

A A A A B B A

B B A B A B A

B A B A

Q t R S Q t X Q t XQ t Q t

X Q t XQ t Q t XQ t XQ t Q t Q t

X Q t Q t Q t Q t

( 1) ( ( ))

( )( ( ) ( ))

( ) ( )

B B B B

A A B

A B

Q t R S Q t

XQ t X Q t Q t

XQ t Q t

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 16

Deuxième étape

26/10/2016 Khaled Hassine 61

L’équation caractéristique de la sortie Y est :

( 1)Y X A t

Troisième étape : tabled’états du circuit

26/10/2016 Khaled Hassine 62

QA(t) QB(t) X SA RA QA(t+1) SB RB QB(t+1) Y

0 0 0 0 0 0 0 0 0 0

0 0 1 0 1 0 1 0 1 1

0 1 0 1 0 1 0 0 1 0

0 1 1 0 0 0 1 0 1 1

1 0 0 0 0 1 0 1 0 0

1 0 1 0 1 0 0 0 0 1

1 1 0 1 0 1 0 1 0 0

1 1 1 0 0 1 0 0 1 0

Quatrième étape : Lediagramme d’états

26/10/2016 Khaled Hassine 63

1/1

0/0

1/0

X/Y

10

11

00

010/0

0/0

QAQB

1/1

1/1

0/0

Conception d’un circuit séquentiel

Analyse d’un circuit séquentiel

Généralité

Les registres et les compteurs

PLAN

26/10/2016 64

Présentation des bascules

Khaled Hassine

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 17

Généralités

Lors de la conception d’un circuit séquentiel, on part du diagrammed’états ou la table d’états pour obtenir le circuit séquentielcorrespondant qui contient deux parties : une purement combinatoire un ensemble de bascule en nombre de (le plus petit entier

supérieur ou égal - Least integer greater then or equal) où N est lenombre d’états différents.

Le type de bascule est déterminé en fonction du fonctionnement ducircuit et en général on choisit : la bascule T ou JK pour la conception des compteurs, la bascule D pour la conception des registres et mémoire les bascules RS et JK pour les problèmes d’ordre général.

On préfère toujours l’utilisation des bascules T et D pour leurssimplicités (ils disposent d'une seule entrée).

26/10/2016 Khaled Hassine 65

)(log2 N

Etapes de conception d’un circuitséquentiel

Comprendre le fonctionnement du circuit et le traduireéventuellement en un diagramme de transition.

Détermination de la table d’état qui montre les états futurset les sorties en fonction des entrées et des états présents.

Réduction du nombre d’états. Détermination du nombre de bascules nécessaires et donner

un nom à chacune. Détermination du type de bascule et de la table d’excitation

du circuit. Détermination des équations d’entrées des bascules et des

équations de sortie. Conception (dessin) du circuit (du logigramme) désiré.

26/10/2016 Khaled Hassine 66

Exemple

26/10/2016 Khaled Hassine 67

Concevoir le circuit séquentiel du diagramme suivant :

1/1

1/0 1/0

X/Y

ba

0/0

1/1

d

e

f

1/00/0

1/00/10/0

0/0

c0/1

Table d’états

26/10/2016 Khaled Hassine 68

Etat présent X Etat suivant Y

a 0 a 0

a 1 b 1

b 0 d 0

b 1 f 0

c 0 a 0

c 1 e 1

d 0 e 0

d 1 c 0

e 0 f 1

e 1 f 0

f 0 e 1

f 1 a 0

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 18

Détermination des bascules

Nombres : Le diagramme d'état comporte 6 états, il nous faut

donc 3 bascules notées C, B et A (C de poids fort et Ade poids faible).

On désigne l'état a par 000 et f par 101. Types :

On a certainement besoin d'un élément logique qui ala capacité de complémentation.

Cet élément peut être l'une de deux bascules T ou JK. On choisit la bascule T, elle est la plus simple

puisqu'elle nécessite une seule entrée.

26/10/2016 Khaled Hassine 69

Table d’excitation

26/10/2016 Khaled Hassine 70

Etat présent Etat futur Excitation bascules

X Cn Bn An Cn+1 Bn+1 An+1 TC TB TA Y

0 a 0 0 0 a 0 0 0 0 0 0 0

1 a 0 0 0 b 0 0 1 0 0 1 1

0 b 0 0 1 d 0 1 1 0 1 0 0

1 b 0 0 1 f 1 0 1 1 0 0 0

0 c 0 1 0 a 0 0 0 0 1 0 0

1 c 0 1 0 e 1 0 0 1 1 0 1

0 d 0 1 1 e 1 0 0 1 1 1 0

1 d 0 1 1 c 0 1 0 0 1 1 0

0 e 1 0 0 f 1 0 1 0 0 1 1

1 e 1 0 0 f 1 0 1 0 0 1 0

0 f 1 0 1 e 1 0 0 0 0 1 1

1 f 1 0 1 a 0 0 0 1 0 1 0

Equations d’entrées des basculeset les équations de sortie

26/10/2016 Khaled Hassine 71

Pour les bascules A et B

QBQA

XQC

00 01 11 10 QBQA

XQC

00 01 11 10

00 0 0 1 0 00 0 1 1 1

01 1 1 X X 01 0 0 X X

11 1 1 X X 11 0 0 X X

10 1 0 1 0 10 0 0 1 1

A A B C B AT XQQ Q QQ B B C AT Q X Q Q

équations d’entrées des basculeset les équations de sortie

26/10/2016 Khaled Hassine 72

Pour la bascule C et la sortie Y

QBQA

XQC

00 01 11 10 QBQA

XQC

00 01 11 10

00 0 0 1 0 00 0 0 0 0

01 0 0 X X 01 1 1 X X

11 0 1 X X 11 0 0 X X

10 0 1 0 1 10 1 0 0 1

( )

C A B A B B A

A B A B

T XQ Q XQQ XQ Q

X Q Q XQQ

C C AY XQ X Q Q

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 19

Conception du circuit

26/10/2016 Khaled Hassine 73

)( XQQQQXQT

QQXQQT

QQQQQQQXT

QQXQQXY

ABCBAC

ACCBB

ABCBCBAA

ACBC

Conception d’un circuit séquentiel

Analyse d’un circuit séquentiel

Généralité

Les registres et les compteurs

PLAN

26/10/2016 74

Présentation des bascules

Khaled Hassine

Définition d’un registre

Les informations et les résultats intermédiaires manipuléspar l'unité centrale sont rangés dans des dispositifs(modules de mémorisation internes au processeur) appelésregistres.

Ces derniers représentent l'unité de base manipulée parl'unité centrale. En particulier, aucune opération ne se faitdirectement sur les cellules mémoire. Celles-ci sontrecopiées dans des registres avant d'être traitées par leprocesseur.

Les registres permettent, en effet, de ranger les instructions,les adresses, les données ou les résultats issus de l'unité detraitement. Un cas particulier des registres est le compteur.

26/10/2016 Khaled Hassine 75

Définition d’un compteur

Un compteur est un registre qui change d'étatséquentiellement sous l'effet d'une impulsiond'entrée.

Cette impulsion peut provenir d'un générateurd'impulsions (Clock Pulse) ou d'une autre sourceexterne, à des intervalles de temps réguliers oualéatoirement.

Les compteurs sont très utiles dans un ordinateur,en particulier pour le séquencement desinstructions exécutées.

26/10/2016 Khaled Hassine 76

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 20

Exemples Conception d’un compteur Conception d’un décompteur Conception d’un registre

26/10/2016 Khaled Hassine 77

Conception d’un compteur binairesynchrone

On souhaite concevoir un compteur binaire 3bits qui compte donc de 0 à 7. C’est uncompteur complet.

On dispose pour ce faire, de trois bascules A0,A1, A2 (A0 est celle de poids faible).

26/10/2016 Khaled Hassine 78

Conditions de complémentationdes bascules au prochain compte

26/10/2016 Khaled Hassine 79

Etat présent (t) Etat futur (t+1)

A2 A1 A0 A2 A1 A0

0 0 0 0 0 0 1 A0 doit passer de 0 à 1.

1 0 0 1 0 1 0 A0 et A1 changent d'état.

2 0 1 0 0 1 1 A0 doit passer de 0 à 1.

3 0 1 1 1 0 0 Toutes les bascules changent d'état.

4 1 0 0 1 0 1 Seule A0 change d'état.

5 1 0 1 1 1 0 A0 et A1 changent d'état.

6 1 1 0 1 1 1 A0 doit passer de 0 à 1.

7 1 1 1 0 0 0 Toutes les bascules changent d'état.

Observations

On a certainement besoin d'un élément logique qui a lacapacité de complémentation. Cet élément peut être l'unede deux bascules T ou JK. On choisit la bascule T, elle estla plus simple puisqu'elle nécessite une variable d'entrée.

Le bit le moins significatif est complémenté à chaqueimpulsion d'horloge. L'entrée de la bascule contenant le bitde poids faible (A0) doit être donc maintenu constammentà 1.

Chacun des autres bits est complémenté au prochain topd'horloge si tous les bits moins significatifs qui le précèdentsont à l'état 1. L'entrée de la bascule A1 est donc A0 et cellede A2 est le couple A0 A1 relié par une porte ET.

26/10/2016 Khaled Hassine 80

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 21

Table d’excitation

26/10/2016 Khaled Hassine 81

Etat présent (t) Etat futur (t+1) Entrée des bascules

A2 A1 A0 A2 A1 A0 T2 T1 T0

0 0 0 0 0 0 1 0 0 1

1 0 0 1 0 1 0 0 1 1

2 0 1 0 0 1 1 0 0 1

3 0 1 1 1 0 0 1 1 1

4 1 0 0 1 0 1 0 0 1

5 1 0 1 1 1 0 0 1 1

6 1 1 0 1 1 1 0 0 1

7 1 1 1 0 0 0 1 1 1

Logigramme

26/10/2016 Khaled Hassine 82

A1A0

A2

00 01 11 10 A1A0

A2

00 01 11 10

0 1 1 0 11 1 1 1 1

01 AT 012 AAT

CP

T

Q' Q

T

Q' Q

T

Q' Q

1

A2 A1 A0

Exemples Conception d’un compteur Conception d’un décompteur Conception d’un registre

26/10/2016 Khaled Hassine 83

Décompteur

Dans un décompteur, aussi dit compteur binaire àrebours (Binary Down Counter), le compte ou lecontenu du compteur est réduit (décrémenté) de 1 àchaque nouvelle impulsion.

On s'intéresse à la conception d'un décompteur 4 bits. L'état de départ est toutes les bascules à 1 (soit 1111= 15). Par la suite, à chaque nouvelle impulsion, la valeur

numérique contenue dans le décompteur décroît. Ainsi, les états binaires successifs parcourus sont : 14, 13,

...

26/10/2016 Khaled Hassine 84

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 22

Evolution du décompteurEtat présent Etat futur ObservationsA3 A2 A1 A0 A3 A2 A1 A0

15 1 1 1 1 1 1 1 0 A0 doit passer de 0 à 1.14 1 1 1 0 1 1 0 1 A0 et A1 changent d'état.13 1 1 0 1 1 1 0 0 A0 doit passer de 0 à 1.12 1 1 0 0 1 0 1 1 Toutes les bascules changent d'état.11 1 0 1 1 1 0 1 0 Seule A0 change d'état.10 1 0 1 0 1 0 0 1 A0 et A1 changent d'état.9 1 0 0 1 1 0 0 0 A0 doit passer de 0 à 1.8 1 0 0 0 0 1 1 1 Toutes les bascules changent d'état.7 0 1 1 1 0 1 1 0 A0 doit passer de 0 à 1.6 0 1 1 0 0 1 0 1 A0 et A1 changent d'état.5 0 1 0 1 0 1 0 0 A0 doit passer de 0 à 1.4 0 1 0 0 0 0 1 1 Toutes les bascules changent d'état.3 0 0 1 1 0 0 1 0 Seule A0 change d'état.2 0 0 1 0 0 0 0 1 A0 et A1 changent d'état.1 0 0 0 1 0 0 0 0 A0 doit passer de 0 à 1.0 0 0 0 0 1 1 1 1 Toutes les bascules changent d'état.

26/10/2016 Khaled Hassine 85

Observations

Comme pour le compteur, on a besoin d'un élément logiquequi a la capacité de complémentation, soit la bascule T.

Le bit le moins significatif est complémenté à chaqueimpulsion d'horloge. L'entrée de la bascule contenant le bitde poids faible (A0) doit donc maintenue constamment à 1.

Chacun des autres bits est complémenté au prochain topd'horloge si tous les bits moins significatifs que lui sont àl'état 0. L'entrée de la bascule A1 est A'0 et celle de A2 et lecouple A'0 A'1 relié par une porte ET. L'entrée de A3 et lecouple A'0 A'1A'2 relié par une porte ET.

26/10/2016 Khaled Hassine 86

Table d’excitationA3 A2 A1 A0 A3 A2 A1 A0 TA3 TA2 TA1 TA0

15 1 1 1 1 1 1 1 0 1

14 1 1 1 0 1 1 0 1 1 1

13 1 1 0 1 1 1 0 0 1

12 1 1 0 0 1 0 1 1 1 1 1

11 1 0 1 1 1 0 1 0 1

10 1 0 1 0 1 0 0 1 1 1

9 1 0 0 1 1 0 0 0 1

8 1 0 0 0 0 1 1 1 1 1 1 1

7 0 1 1 1 0 1 1 0 1

6 0 1 1 0 0 1 0 1 1 1

5 0 1 0 1 0 1 0 0 1

4 0 1 0 0 0 0 1 1 1 1 1

3 0 0 1 1 0 0 1 0 1

2 0 0 1 0 0 0 0 1 1 1

1 0 0 0 1 0 0 0 0 1

0 0 0 0 0 1 1 1 1 1 1 1 1

26/10/2016 Khaled Hassine 87

Equations d’entrée des basculesQBQA

QDQC

00 01 11 10 QBQA

QDQC

00 01 11 10

00 1 1 1 1 00 1 1

01 1 1 1 1 01 1 1

11 1 1 1 1 11 1 1

10 1 1 1 1 10 1 1

26/10/2016 Khaled Hassine 88

1ATAB QT

QBQA

QDQC

00 01 11 10 QBQA

QDQC

00 01 11 10

00 1 00 1

01 1 0111 1 1110 1 10 1

ABC QQT ABCD QQQT

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 23

Logigramme d’un décompteur

26/10/2016 Khaled Hassine 89

CP

T

Q' Q

T

Q' Q

T

Q

Count

T

Q' Q

A0A1A2A3

Q'

Compteur décompteur

26/10/2016 Khaled Hassine 90

Compteur décompteur

26/10/2016 Khaled Hassine 91

Exemples Conception d’un compteur Conception d’un décompteur Conception d’un registre

26/10/2016 Khaled Hassine 92

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 24

Conception des registres

Les opérations possibles effectuées sur les registres sont : le chargement

En parallèle : tous les bits de l'information sont chargéssimultanément.

En série : l'information se présente "bit après bit" sur le bit de poidsfort ou celui de poids faible pour être chargée en n cycles d'horloge (nest la taille du registre) par décalages successifs.

le décalage : un registre capable de décaler l'information binairequ'il contient, aussi bien à gauche qu'à droite, est appelé registreà décalage ou à glissement.

Ces opérations sont sélectionnées par l'intermédiaire d'unecommande dite mode. Une fois le mode choisi, lacommande est synchronisée par le signal d’Horloge.

26/10/2016 Khaled Hassine 93

Schéma conceptuel d’unregistre

26/10/2016 Khaled Hassine 94

Entrée parallèle

Entréesérie

Horloge

ModeSens

Initialisation

Entréesérie

Les différentes entrées de commande pilotant les registres sont lessuivantes : Signal de commande ou signal d'horloge. Mode de fonctionnement (décalage ou chargement). Sens de décalage (droite ou gauche) ou de chargement (série ou

parallèle). Éventuellement, des mises en conditions initiales telle que la

remise à zéro du contenu du registre.

Composition d’un registre Un registre de taille n bits se compose de n bascules et des portes qui

régissent et contrôle l'opération de décalage. Bien que les ordinateurs fonctionnent généralement en mode parallèle

(chargement de tous les bits en un top d'horloge), ils utilisent aussi lesopérations de décalage pour des opérations particulières (multiplication etdivision en particulier) qui sont des opérations en série.

Considérons à titre d'exemple, un registre à décalage 4 bits. On souhaitestocker l'information binaire 1011 par des décalages successifs à droite.Pour cela, A chaque impulsion d'horloge CP, un bit est amené par l'entrée en série et en

même temps le bit le plus à droite est extrait de la ligne de sortie en série. Avec la même impulsion, les autres bits du registre sont décalés à droite d'une

position. Après la quatrième impulsion, l'information binaire 1011 est introduite dans le

registre.

26/10/2016 Khaled Hassine 95

Exemple d’un registre à décalage 3bits

Afin d'obtenir un registre disposant des opérations suivantes : décalage àdroite (DD), décalage à gauche (DG), chargement parallèle (ChPa) et pasde changement (PaCh), il suffit d'utiliser un décodeur 2x4 permettant decoder ces quatre opérations. Une entrée Clear pour la mise à zéro de toutes les bascules du registre. Une entrée CP de l'horloge de synchronisation. Une entrée série pour les décalages à droite (SR : Shift Right), connectée à la

bascule la plus à gauche (A2) et dont le rôle est de supporter le bit à insérerlors d'une opération de décalage à droite.

Une entrée série pour le décalage à gauche (SL : Shift Left), connectée à labascule la plus à droite (A0) et dont le rôle est de supporter le bit à insérer lorsd'une opération de décalage à gauche.

n lignes de sorties parallèles, une par bascule du registre permettant d'extraireson contenu instantanément, les sorties Q des différentes bascules.

n lignes d'entrées parallèles, une par bascule du registre, notées I0, I1, I2,permettant son éventuel chargement en parallèle.

26/10/2016 Khaled Hassine 96

Faculté des Sciences de GabesDépartement d’informatique

26/10/2016

Cours Circuits Logiques 25

26/10/2016 Khaled Hassine 97

C P

D

Q ' Q

D

Q ' Q

D

Q ' Q

C lear

D écodeur 2 x 4

SL

PaC h D D D G C hPa

A 0A 1A 2

I0

I1

I2

F 0

F 1

SR

26/10/2016 98Khaled Hassine