Vous êtes sur la page 1sur 38

2015/2016

Structure machine

MAHSEUR Mohammed
UNIVERSITE ALGER3

Circuits combinatoires

2015/2016

I Premier chapitre : les circuits combinatoires


Un circuit combinatoire est un circuit dont les sorties sont obtenues en fonction des entres seulement

I.1 Le multiplexeur :
Cest un circuit a 2n entres est une sortie choisie parmi les 2n entres, le choix de lentre qui sort est
fait par n lignes de slection

I.1.1 Multiplexeur 1 parmi 2


Cest un multiplexeur 2 entres (e0 et e1) et une ligne de slection (s0) (et une sortie bien sr)

= 0 0 + 0 1
Donc son logigramme est le suivant :

I.1.2 Multiplexeur 1 parmi 4


Cest un multiplexeur 4 entres (e0, e1, e2 et e3) et deux lignes de slection (s0 et s1)

Question : donnez le schma dun multiplexeur 1 parmi 8 et 1 parmi 16 et 1 parmi 32


Exercice : raliser un MUX 1 parmi 4 en utilisant des MUX 1 parmi 2
Rponse :

Circuits combinatoires

2015/2016

Application du multiplexeur
La conversion parallle-srie. Imaginons une instruction code sur huit bits qui arrive en
parallle sur les huit lignes dun multiplexeur. Si on lche squentiellement les nombres de 000
111 sur les trois lignes de slection, les huit bits passent dans la ligne de sortie S lun aprs
lautre. Cest notamment intressant lorsquil sagit de passer des informations de lordinateur
vers une ligne tlphonique.
Matrialisation des devers circuits logiques
Exercice : soit F(a,b,c,d) une fonction qui test la parit dun nombre binaire sur quatre bits :abcd tel que
F=1 si le nombre de bits a 1 est impaire et gale a zro sinon
Raliser cette fonction laide dun MUX 1 parmi 16
Raliser cette fonction laide dun MUX 1 parmi 8 et un inverseur
a
b
c
D
F
S
0
0
0
0
0
e0=0
0
0
0
1
1
e1=1
0
0
1
0
1
e2=1
0
0
1
1
0
e3=0
0
1
0
0
1
e4=1
0
1
0
1
0
e5=0
0
1
1
0
0
e6=0
0
1
1
1
1
e7=1
1
0
0
0
1
e8=1
1
0
0
1
0
e9=0
1
0
1
0
0
e10=0
1
0
1
1
1
e11=1
1
1
0
0
0
e12=0
1
1
0
1
1
e13=1
1
1
1
0
1
e14=1
1
1
1
1
0
e15=0
Avec un MUX 161
On considre que a,b,c et d sont les lignes de slection du multiplexeur 1 parmi 16 donc il faut que les
entres e0.e15 soient quivalents aux valeurs de F

Circuits combinatoires

2015/2016

Avec un MUX 81
On considre que a,b et c sont les lignes de slection du multiplexeur 1 parmi 8 donc il faut que les
entres e0.e7 soient quivalents aux valeurs de F en fonction de d
a
b
c
d
F
S
0
0
0
0
0
e0=d
0
0
0
1
1
0
0
1
0
1
e1=
0
0
1
1
0
0
1
0
0
1
e2=
0
1
0
1
0
0
1
1
0
0
e3=d
0
1
1
1
1
1
0
0
0
1
e4=
1
0
0
1
0
1
0
1
0
0
e5=d
1
0
1
1
1
1
1
0
0
0
e6=d
1
1
0
1
1
1
1
1
0
1
e7=
1
1
1
1
0

I.2 Le dmultiplexeur
Cest un circuit une entre E et 2n sorties tel que lentre E est dirige vers une sortie parmi les 2n
sorties, le choix de la ligne de sortie seffectue selon la valeur des n lignes de slection.

I.2.1 Dmultiplexeur 1 vers 2


Cest un dmultiplexeur a 2 sorties (S0 et S1) et une ligne de commande (a0) (et une entre bien sr E)

Circuits combinatoires

A0
0
0
1
1

E
0
1
0
1

S1
0
1

2015/2016

S0
0
1
-

Donc
0 =
0
Et
1 = 0
Son logigramme est :
Exercice : donner le schma des DEMUX 1 vers 4 et 1 vers 8 et 1 vers 16 et 1 vers 32
Application du multiplexeur
La conversion srie- parallle. Imaginons une instruction code sur huit bits qui arrive en srie
sur une ligne dentre dun dmultiplexeur. Si on lche squentiellement les nombres de 000
111 sur les trois lignes de slection, les huit bits passent dans les lignes de sortie de s0 jusqu' s7.
Cest notamment intressant lorsquil sagit de passer des informations dune ligne tlphonique
vers lordinateur.
Matrialisation des devers circuits logiques
Exercice : raliser la fonction de parit (exercice prcdent avec un DEMUX 1 vers 16 et avec un
minimum des portes logiques.
Solution :
a
b
c
d
F
Les sorties
0
0
0
0
0
s0E
0
0
0
1
1
s1E
0
0
1
0
1
s2E
0
0
1
1
0
s3E
0
1
0
0
1
s4E
0
1
0
1
0
s5E
0
1
1
0
0
s6E
0
1
1
1
1
s7E
1
0
0
0
1
s8E
1
0
0
1
0
s9E
1
0
1
0
0
s10E
1
0
1
1
1
s11E
1
1
0
0
0
s12E
1
1
0
1
1
s13E
1
1
1
0
1
s14E
1
1
1
1
0
s15E
Si on met E=1 alors F gale a la somme des sorties a 1

Circuits combinatoires

2015/2016

I.3 Le codeur (encodeur)


Cest un circuit 2n entres et n sorties, il gnre un code binaire quivalent au numro dune entre
active
Exemple : Encodeur 42

e3 e2 e1 e0 S1 S0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
1
0
0
1
1
0
1
0
1
0
0
1
0
0
1
0
1
1
0
0
1
1
0
1
0
0
1
1
1
1
0
1
0
0
0
1
1
1
0
0
1
1
1
1
0
1
0
1
1
1
0
1
1
1
1
1
1
0
0
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
Apres simplification on obtient :
1 = 2 + 3 0 = 3 + 2 1
Application du codeur
Clavier des calculatrices ; tlcommande o il transforme une touche appuye du clavier en code
binaire quivalent (code ASCII en cas de clavier dordinateur).
Matrialisation des devers circuits logiques.

I.4 Le dcodeur
Cest un circuit a n entres et 2n sorties, il active la sortie
qui porte le numro quivalent au nombre binaire entr
est tandis que les autres sorties sont inactives (restent a
zro)
Lentre V active ou dsactive le dcodeur
Exemple dcodeur 24

Circuits combinatoires

2015/2016

e1

e0

S3

S2

S1

S0

0
1

x
0

x
0

0
0

0
0

0
0

0
1

1
1

1
1

0
1

0
1

1
0

0
0

0
0

0 = 1 2 1 = 1 0 2 =
1 0 3 = 1 0
Exercice raliser un dcodeur 38 a laide dun DEMUX 18
Solution :

Application dun dcodeur


Permet de slectionner lopration excuter dans lUAL

Ou dans nimporte quelle machine


Exemple machine laver automatique

Circuits combinatoires

2015/2016

I.5 Le comparateur
Cest circuit qui permet de comparer entre deux nombres binaire, il a comme entres deux nombres
binaires A et B, et trois sorties Fe (A=B), Fi(A<B) et Fs(A>B)

I.5.1 Comparateur un bit


Table de vrit
A
B
Fi
0
0
0
1
1
1
0
1
1

= =

Fe
1

Fs

1
1
= + =
=
+

Exercice : raliser un comparateur a deux bits par :


1. Des portes logiques
2. Des comparateurs un bit et des portes logiques
Rponse 2
Soit A=a1a0 et B=b1b0
Il faut utiliser deux comparateurs a un bit et faire la comparaison entre a1 et b1 dune part et entre a0 et
b0 dautre part
A=B si (a1=b1) et (a0=b0)
A<B si (a1<b1) ou [(a1=b1) et (a0<b0)]
7

Circuits combinatoires

2015/2016

A>B si (a1>b1) ou [(a1=b1)et (a0>b0)]

I.6 Ladditionneur
Cest un circuit qui calcule la somme de deux nombres binaires et retourne un rsultat binaire

I.6.1 Demi-additionneur
Cest un circuit qui fait la somme de deux nombres binaires sur un bit chacun et retourne deux sorties :
S : rsultat de laddition
R : retenue de laddition
A
B
R
S
0
0
0
0
0
1
0
1
1
0
0
1
1
1
1
0
= =

I.6.2 Additionneur complet a un bit


Lorsquon fait la somme binaire on additionne successivement des couples de deux bits quivalents
ainsi que la retenue du couple prcdent, donc un additionneur complet fait laddition de trois bits

I.6.3 Additionneur a N Bits

Introduction larchitecture des ordinateurs

2015/2016

II Deuxime chapitre : introduction larchitecture des


ordinateurs
Le mot ordinateur a t cr en 1955 pour dsigner une machine capable
dexcuter nimporte quel algorithme fournit sous forme de programme sur
nimporte quelle donne discrte fournit, dans la limite de ses capacits en
espace mmoire et en vitesse de calcul. Il se distingue dune machine
calculer par sa capacit enchainer plusieurs oprations complexes en
suivant des instructions paramtrables

II.1 Composants dun ordinateur


Un ordinateur est constitu de :
1. Une unit centrale (UC) ou microprocesseur
2. Des mmoires, parmi lesquelles on distingue :
La mmoire ROM (Read Only Memory) : mmoire a accs en lecture
seule, ensemble de bits dont ltat est fix une fois pour toute lors de la
construction de lordinateur, elle sert stocker des informations
permanentes (procdures de dmarrage)
La mmoire RAM : ou mmoire vive (Random Acces
memory) mmoire a accs alatoire : ensemble de bits modifiables ou sont
stockes les donnes sur lesquelles travail lordinateur.
3. Des priphriques dentre et/ou de sortie : Ecran, Imprimante, Baffles,
Webcam, Souris, Clavier, Manette de jeu, Mmoire externe, scanner, .
4. Des bus pour relier les trois prcdents
Ces composants peuvent tre schmatiss par :
Unit
Centrale
+
Mmoires

Priphriques
dentre

Priphriques de
sortie

II.2 Architecture de Von Neumann


Lorganisation matrielle des ordinateurs usuels suit une architecture dite de Von Neumann, son
originalit est de stocker les donnes et les instructions dans la mme mmoire, Dans celle-ci :
La RAM : sert stocker les donnes et les programmes
Unit de commande donne les ordres et synchronise lexcution des oprations dans lunit de
traitement du processeur central.
Unit centrale
Horloge

Instructions

Unit de commande
Ordres

Donnes
/rsultats

Unit de traitement

Mmoire
centrale RAM

Introduction larchitecture des ordinateurs

2015/2016

II.2.1 La mmoire vive RAM


Elle est compose dune suit de mots mmoire qui sont
des suites de bits de taille fixe, chaque mot mmoire est
identifi par son adresse qui est un code binaire.
Exemple: RAM de 16 mots de deux octets chacun avec
des adresses de 0 15 codes sur quatre bits.

adresse
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

Mot mmoire
1 octet
1 octet

II.2.2 Lunit de commande


Elle est compose de deux registres :
Le compteur ordinal (CO) : stocke ladresse de linstruction excuter, sa taille est identique
celle dune adresse mmoire.
Le registre dinstruction (RI) : stocke linstruction en cours dexcution sa taille est gale celle
dun mot mmoire.
CO (4bits)

RI (16 bits)

Le RI code linstruction en cours comme suit :

Code instruction

Adresse donne 1

Adresse donne 2

Adresse rsultat

Exemple : en supposant que les oprations de base sont codes 0000 pour laddition, 0001 pour la
multiplication, 0010 pour la soustraction et 0011 pour la division, 0011 1001 0011 0001 est
linstruction effectuant la division entre le mot mmoire dadresse 9 avec celui dadresse 3 et stockant le
rsultat dans le mot dadresse 1.

10

Introduction larchitecture des ordinateurs

2015/2016

II.2.3 Lunit de traitement


Elle excute des oprations de base et est compose de :
Trois registres : deux servant stocker les donnes doone1 et
donne2 ainsi que le rsultat de lopration arithmtique, leur
taille est celle dun mot mmoire
Lunit arithmtique et logique (UAL) capable, quand on lui
fournit le code dune opration arithmtique de prendre les
contenus des deux premiers registres et de remplir le troisime
par le rsultat.

II.3 Lunit centrale en uvre


Excuter un programme revient excuter ces instructions une par une
en commenant par mise de sa premire instruction dans le CO, lexcution dune instruction lmentaire
se fait suivant un cycle de trois phases :
Phase1 : linstruction courante dont ladresse est stocke dans le CO est recopie dans le RI en
transitant par le bus instruction .
Phase2 : cette instruction courante est dcode destination de lUAL, ainsi que le bus Ordres
transfre le code de lopration et le bus donnes/rsultats transfre dans les registres donne1
et donne2 le contenu des mots mmoires associs.
Phase3 : lUAL excute lopration en mettant jour son registre rsultats et transfre le
rsultat dans la mmoire centrale en utilisant le bus donnes/rsultats .
Par ailleurs le CO est automatiquement incrment, un nouveau cycle peut commencer alors pour la
nouvelle instruction.
Exemple
Etat initial

11

Introduction larchitecture des ordinateurs

Phase1

Phase2

Phase3

2015/2016

12

Les circuits squentiels

2015/2016

III Troisime chapitre : Les circuits squentiels


III.1 Dfinitions
III.1.1

Circuit squentiel

Un circuit squentiel est un circuit dont les sorites dpendent non


seulement de ltat des entres mais aussi de ltat antrieur de
certaines sorties (notion de mmorisation).
Cest un circuit dont le temps intervient dans la dfinition des sorties

III.1.2

Horloge

Composant passant rgulirement et indfiniment dun niveau haut (1) a un niveau bas (0) par la
gnration simultane des impulsions des signaux lectriques

T= la dure dune priode ; Frquence=1/T (Hertz)

III.1.3

Logique asynchrone

Les changements dtat des composants ne dpendent que du temps de raction des composants et du
temps de propagation des signaux.

III.1.4

Logique synchrone

Les signaux priodiques d'une horloge servent synchroniser tous les changements dtat.

III.2 Les bascules (flip-flop)


Systme bistable (deux tats 0 et 1) permettant de mmoriser une
information lmentaire, il reprsente une mmoire 1 bit ayant 2 tats :
, il utilise un mcanisme de verrou (latch)
On peut vrifier que les tats sont cohrents
( = 1) ( = 1) ( = 0) ( = 0) ( = 1)
Et ( = 0) ( = 0) ( = 1) ( = 1) ( = 0)

III.2.1

Bascules RS asynchrone (Reset; Set)

Cest une bascule a deux entres R (Reset : remise zro) et S (Set : mise
un) tels que :
Qt+1=Qt si les deux entres sont inactives
Qt+1=1 si S est active seule
Qt+1=0 si R est active seule
Un cas viter si les deux entres sont actives la fois parce dans ce cas on obtient :
+1 =
+1 = 0

13

Les circuits squentiels

III.2.2

2015/2016

La bascule RSH

Cest une bascule RS synchronise par un signal dhorloge H (niveau haut


en gnral). Cette bascule soufre toujours dun tat interdit et elle a un tat
de mmorisation en plus.
III.2.2.1 Bascule RSH en niveau haut (H=1)
Lorsque H=0, la bascule est dans l'tat mmoire.
Lorsque H =1, la bascule fonctionne comme une bascule RS.

H
R
S
+
+

0
X
X

1
0
0

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

14

Les circuits squentiels

2015/2016

III.2.2.2 Bascule RSH en niveau bas (H=0)


Lorsque H=1, la bascule est dans l'tat mmoire.
Lorsque H =0, la bascule fonctionne comme une bascule RS.
H
1
0
0
0
0

III.2.3

R
X
0
0
1
1

S
X
0
1
0
1

1
0
1

0
1
1

La Bascule D (Data)

Cest une bascule conue sur le mme principe que la RSH. Elle est obtenue partir d'une bascule RSH
en ne considrant que les deux combinaisons (R,S) = (0,1) et (1,0). Les entres R et S sont remplac par
, do elle ne traite pas les cas (0,0) et (1,1), do elle limine le deuxime cas de mmorisation

et le cas interdit de la bascule RSH. Il existe deux types de bascule D selon le mode de synchronisation :
Bascule D active sur le niveau (Bascule D-Latch)
Bascule D active sur le front (Bascule Normale)
III.2.3.1 Bascule D-Latch : fonctionne sur le niveau (haut H=1).

H
D
+
+

0
X

1
0
0
1
1
1
1
0
Cette table de vrit peut tre interprte comme suit :
Si H=0 alors Q+=Q (mmorisation)
Si H=1 alors Q+=D, donc on peut reprsenter sa table de vrit de la manire suivante :

H
+
+

1
D

15

Les circuits squentiels

2015/2016

Exercice : ralisez une bascule D-latch laide dun multiplexeur 21

En niveau haut

en niveau bas

III.2.3.2 Bascule D Normale


Pour cette bascule l'information doit tre stable juste avant l'arrive du
front montant de l'horloge

III.2.4

Bascule JK (Jump Knock out)

Cest une bascule synchrone (gnralement en front dhorloge), offrant les


fonctions : mmorisation, mise 0, mise 1 (les 3 fonctions de la bascule D), et
assurant en plus la fonction basculement (inversement des sorties).
La bascule JK est la bascule la plus complte, offrant tous les modes de
fonctionnement que lon peut demander une bascule.
III.2.4.1 Bascule JK en front montant

H
J
K
+
+ Observation
0/1
x
x
Mmorisation

0
0
Mmorisation

0
1
0
1
Mise 0

1
0
1
0
Mise 1

1
1
Basculement

16

Les circuits squentiels

2015/2016

Pour reprsenter Q+ en fonction de J et K on doit tablir sa table de vrit dtaille comme suit :
Entres
Sortie
J
K
Q
Q+
0
0
0
0
0
0
1
1
0
1
0
0
0
1
1
0
1
0
0
1
1
0
1
1
1
1
0
1
1
1
1
0

III.2.5

La bascule T (Toggle=basculer)

Cest une bascule qui fonctionne gnralement en front de lhorloge avec une
entre T, elle a seulement deux fonctions : mmorisation (+ = ) si T=0 et
basculement (+ = ) si T=1.

H
T
+
+ observation
0/1
X
Etat mmoire

0
Mmorisation

1
Basculement

Remarque : On peut remarquer que, lorsque T=1, la


sortie Q est de priode 2 fois plus longue que celle de
H, en effet, il faut 2 fronts montant de H pour obtenir
celui que Q. C'est pour cela que l'on lui donne aussi le
nom de diviseur de frquence par 2

Ralisation dune bascule T laide :


dune bascule JK

laide dune bascule D

17

Les circuits squentiels

2015/2016

Exercice : ralisez une bascule T laide dun Mux 21 en front montant

III.3 Dclenchement dune bascule


Synchronisation

sur niveau
d'horloge

niveau haut H=1

III.3.1

niveau bas H=0

sur front
d'horloge

front montant

par impulsion

front
descendant

Dclenchement sur niveau

Les entres sont prises en compte pendant un niveau fix de lhorloge (H = 1 ou H = 0).
Niveau haut : le signale H est utilis directement
Niveau bas : le signale H est utilis avec un inverseur (gnralement)

III.3.2

Dclenchement sur front

Les entres sont prises en compte pendant un front de lhorloge qui est le moment de passage dun
niveau autre (quelques nanosecondes).
Front montant : le moment du passage du niveau bas au niveau haut, un circuit est utilis pour
dtecter ce passage appel dtecteur du front montant. Linverseur introduit un retard de
quelques nanosecondes de sorte que le front de
CLK a lieu lgrement plus tard que celui de
CLK.

Front descendant : le moment du passage du niveau haut au niveau bas, un circuit est utilis pour
dtecter ce passage appel dtecteur du front descendant.
18

Les circuits squentiels

III.3.3

2015/2016

Dclenchement sur impulsion

Ce type de synchronisation est utilis dans les bascules matre-esclaves o le changement des sorties a
eu lieu pendant la transition complte dune impulsion dhorloge.

III.4 Analyse dun circuit squentiel


Lanalyse dun circuit squentiel est base sur la thorie des automates finis

III.4.1

Automate fini

Un automate fini possde un nombre fini dlments et de mmoires.


Un automate fini ne peut prendre que 2m tats appels tats internes, o m est le nombre de bits de
mmoire.
On peut caractriser un automate par :
Sa fonction de transfert
Sa table de transition
Son diagramme dtats ou de transition

III.4.2

Analyse

Lanalyse du circuit squentiel consiste trouver les quations caractristiques ou les diagrammes
temporels qui dcrivent le travail du circuit squentiel. En dautres termes, trouver les tats futurs et les
sorties du circuit squentiel en fonction de ces entres et ces tats prsents. On suit pour une dmarche
5 tapes :
1. Dterminer les quations des entres aux bascules.
2. Substituer les quations des entres dans les quations caractristiques des bascules pour obtenir
les quations de transition.
3. Trouver les quations des sorties en fonction des entres et de ltat actuel des bascules.
4. Trouver la table dtat (dite aussi la table de vrit) du circuit qui contient 4 colonnes montrant
ltat actuel des bascules, les entres (X1, X2, ..., Xn), les tats futures et les sorties.

5. Trouver le diagramme de transition du circuit qui est une autre forme de la table dtat qui
permet de faciliter le suivi de ltat du circuit squentiel et qui contient 2m cercles reprsentant
les diffrents tats possibles des bascules relies entre elles par des liens montrant les conditions
de passage dun tat un autre (entres / sorties).
Etat i

Etat k

Entres/sorties
19

Les circuits squentiels

2015/2016

Exemple1 : analyse du circuit suivant :

1. Les quations des entres des bascules :


= + = ( + )
=
2. Les quations caractristiques des bascules :
Rappelons que dans une bascule D la sortie Q+=D, (voir la section III.2.3.1), donc :
+ = = ( + )
+ = =
3. Les quations de sorties : = ( + )
4. Table dtat :
Entres Etats prsents
Etats futurs
Sorties
X
A
B
A+
B+
Y
0
0
0
0
0
0
0
0
1
0
0
1
0
1
0
0
0
1
0
1
1
0
0
1
1
0
0
0
1
0
1
0
1
1
1
0
1
1
0
1
0
0
1
1
1
1
0
0
5. Diagramme de transition :

20

Les circuits squentiels

2015/2016

Exemple2 : analyse du circuit suivant :

1. Les quations des entres des bascules


= ( + ) ; = ; =

2. Les quations caractristiques des bascules


On a pour la bascule D : Q+=D donc + = = ( + )
(voir la section III.2.4.1)
On a pour la bascule JK : + = +


+ =
+ = ( ). + = . . + . +

= ( +
) + .
.
= ( + ) + .
.
= ( + ) + . (
+ )

= ( + )
3. Les quations de sorties : = +
4. La table dtat
Entres Etats prsents
X
QA
QB
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
5. Diagramme de transition

Etats futurs
QA+
QB+
0
1
0
0
0
0
1
0
0
0
1
1
0
1
1
1

21

Sorties
Y
1
0
0
0
0
1
0
1

Les circuits squentiels

2015/2016

Exercice : analysez le circuit suivant :

III.5 Conception dun circuit squentiel


III.5.1

Gnralits

Lors de la conception dun circuit squentiel, on part du diagramme dtat ou de la table dtat pour obtenir
le circuit squentiel correspondant qui contient deux parties :
une partie purement combinatoire
un ensemble de bascules en nombre de m (le plus petit entier suprieur ou gal de log2(N), o N
est le nombre dtats diffrents).
Le type de bascule est dtermin en fonction du fonctionnement du circuit, et en gnral on choisit :
la bascule T ou JK pour la conception des compteurs,
la bascule D pour la conception des registres et mmoire,
les bascules RS et JK pour les problmes dordre gnral.
On prfre toujours lutilisation des bascules T et D pour leurs simplicits (ils disposent d'une seule
entre).

III.5.2

Etapes de conception dun circuit squentiel

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


transition.
2. Dtermination de la table dtat qui montre les tats futurs et les sorties en fonction des entres et
des tats prsents.
3. Rduction du nombre dtats.
4. Dtermination du nombre de bascules ncessaires et donner un nom chacune.
5. Dtermination du type de bascules et de la table des entres de chaque bascule.

6. Dtermination des quations dentres des bascules et des quations de sorties.


7. Conception (dessin) du circuit (du logigramme) dsir.

22

Les circuits squentiels

2015/2016

Exemple : ralisez un compteur modulo 8 laide des bascules T

Q2 Q1 Q0 Q2+ Q1+ Q0+ T2 T1 T0


0
0
0
0
0
1
0
0
1
0
0
1
0
1
0
0
1
1
0
1
0
0
1
1
0
0
1
0
1
1
1
0
0
1
1
1
1
0
0
1
0
1
0
0
1
1
0
1
1
1
0
0
1
1
1
1
0
1
1
1
0
0
1
1
1
1
0
0
0
1
1
1
Apres simplification on trouve :T2=Q1Q0 ; T1=Q0 ; T0=1
Logigramme :

Ralisation du mme avec des bascules JK


Q2
0
0
0
0
1
1
1
1

Q1
0
0
1
1
0
0
1
1

Q0
0
1
0
1
0
1
0
1

Q2+
0
0
0
1
1
1
1
0

Q1+
0
1
1
0
0
1
1
0

Q0+
1
0
1
0
1
0
1
0

J2
0
0
0
1
X
X
X
X

K2
X
X
X
X
0
0
0
1

J1
0
1
X
X
0
1
X
X

K1
X
X
0
1
X
X
0
1

23

J0
1
X
1
X
1
X
1
X

K0
X
1
X
1
X
1
X
1

Les circuits squentiels

2015/2016

Simplification

III.6 Initialisation des bascules


Les bascules sont initialises par deux entres prioritaires :
CLEAR : pour remise zro ; PRESET : pour remise un, donc une telle bascule fonctionne en niveau
haut selon la table de vrit suivante :

CLEAR PRESET Q+
Observation
+
0
0
La bascule fonctionne normalement, en fonction de lhorloge et ses entres
0
1
1
0
Remise 1 prioritaire
1
0
0
1
Remise 0 prioritaire

1
1
Q
Mmorisation

Exemple : schma dune bascule JK avec fonction dinitialisation

24

Les compteurs

2015/2016

IV Les compteurs
IV.1 Introduction
La fonction de comptage est
utilise chaque fois quon veut
dnombrer des vnements

IV.2 Dfinition
Un compteur est un systme
squentiel qui possde N tats
diffrents (appel compteur modulo N).
A chaque top dhorloge le compteur passe de ltat Ei ltat Ei+1 dune manire cyclique jusqu' revenir
ltat initial E0.
Un compteur est constitu de n Bascules (avec 2nN).
Notons que : Une bascule peut avoir 2 tats diffrents sa sortie (0 et 1), et peut donc permettre de compter
de 0 1. Avec 2 bascules on peut avoir jusqu 4 tats diffrents : 00, 01, 10 et 11, ce qui permet de
compter de 0 3 en binaire naturel. Avec 3 bascules on a 8 tats (de 000 111), et en gnral avec n
bascules on a 2n tats : on peut donc compter de 0 2n-1.
Il reste trouver comment doivent tre connectes les n bascules entre elles pour raliser un compteur,
sachant quil existe plusieurs types de compteurs, et donc plusieurs techniques de ralisation.
Remarque : un compteur qui compte partir de 23 jusqu' 25 est un compteur modulo 3 car il possde
trois tat diffrents : 23 ; 24 ; 25 et il est ralisable laide de deux bascules.

IV.3 Classification des compteurs


Les compteurs sont classs selon plusieurs critres :
Classification
des compteurs

Selon le sens du
comptage

Selon le type de
sortie

Selon de type de
synchronisation

Selon le nombre
d'etats
(modulo2,3,4,...)

Selon le mode
de comptage

Progressif
(compteur)

Binaire

Synchrone

Cycle complet

Regressif
(dcompteur)

Gray

Asynchrone

Cycle incomplet

BCD

.....

25

Les compteurs

IV.3.1

2015/2016

Selon le sens du comptage

IV.3.1.1 Progressif (compteur)


Lors du passage dun tat autre la sortie est incrmente par 1 : Ei+1=Ei+1.
Exemple : 000 ; 001 ; 010 ; 011 ; 100 ; 101 ; 110 ; 111 ; 000 ; 001 ;
IV.3.1.2 Rgressif (dcompteur)
Lors du passage dun tat autre la sortie est dcrmente par 1 : Ei+1=Ei-1
Exemple : 000 ; 111 ; 110 ; 101 ; 100 ; 011 ; 010 ; 001 ; 000 ; 111 ;

IV.3.2

Selon le type de sortie

La sortie dun compteur peut tre reprsente en binaire, en Gray, BCD,...

IV.3.3

Selon le type de synchronisation

IV.3.3.1 Compteur synchrone


Les bascules qui composent le compteur sont synchronises par la mme horloge. Toutes les sorties
changent dtat simultanment. Ce type de compteurs est ralis gnralement par nimporte quel type de
bascules.
Exemple :

IV.3.3.2 Compteur asynchrone


Les bascules sont synchronises indpendamment, en gnrale une horloge principale synchronise la
premire bascule (poids faible), alors que les autres sont synchronises par des fonctions logiques des
sorties du reste des bascules. Les sorties ne changent pas dtat en mme temps en raison du temps de
propagation propre chaque bascule (ce qui peut entrainer des dysfonctionnements). Ce type de
compteurs est ralis gnralement par des bascules qui possdent la fonction Basculement (bascule JK
ou T).
Exemple :

26

Les compteurs

IV.3.4

2015/2016

Selon le nombre dtats

Appel aussi le Modulo du compteur, cest le nombre de cas diffrents gnrs par le compteur.

IV.3.5

Selon le mode de comptage

IV.3.5.1 Cycle complet


Le compteur gnre tous les tats de sortie (combinaisons) possibles avant de revenir ltat initial.
Exemple : compteur modulo 8 avec 3 bits :000 ;001 ;010 ;011 ;100 ;101 ;110 ;111 ;000 ;001 ;
IV.3.5.2 Cycle incomplet
Le compteur recommence partir de ltat initial avant datteindre toutes les combinaisons possibles.
Exemple : compteur modulo 6 avec 3 bits : 000 ; 001 ; 010 ; 011 ; 100 ; 101 ; 000 ; 001 ;
Les compteurs a cycle incomplet asynchrones sont raliss gnralement avec des bascules qui possdent
loption initialisation prioritaire (bascules avec les options : Clear et Preset, voir la section : III.6).

IV.4 Exemples de compteurs


IV.4.1

Compteur asynchrone a cycle complet 3 bits

Cest un compteur modulo 23 (de 0 7), les bascules sont connectes en cascade, la premire bascule
(poids faible) reois le signale dhorloge pour la synchronisation, la deuxime reoit comme signale de
synchronisation la sortie de la premire bascule et ainsi de suite (en gnrale la bascule i est synchronise
par la sortie de la bascule i-1).
Table dtats

Chronogramme

Analyse : Ralisation avec des bascules T


Nous remarquons que :
A chaque front descendant de H, Q0 fait un basculement :0+ =
0 T0=1 ; Donc H reprsente
lhorloge de la bascule 0.
1T1=1 ; Donc Q0 reprsente
A chaque front descendant de Q0, Q1 fait un basculement : 1+ =
lhorloge de la bascule 1.
A chaque front descendant de Q1, Q2 fait un basculement : 2+ =
2T2=1 ; Donc Q1 reprsente
lhorloge de la bascule 2.

27

Les compteurs

2015/2016

Logigramme :

IV.4.2

Dcompteur asynchrone a cycle complet 3 bits

Cest un dcompteur modulo 23 (de 7 0), les bascules sont connectes en cascade, la premire bascule
(poids faible) reois le signale dhorloge pour la synchronisation, la deuxime reoit comme signale de
synchronisation la sortie complmentaire de la premire bascule et ainsi de suite (en gnrale la bascule i
est synchronise par la sortie complmentaire de la bascule i-1).
Table dtats

Chronogramme

Analyse : Ralisation avec des bascules T


Nous remarquons que :
A chaque front descendant de H, Q0 fait un basculement :0+ =
0 T0=1 ; Donc H reprsente
lhorloge de la bascule 0.
1T1=1 ; Donc
A chaque front descendant de
0 , Q1 fait un basculement : 1+ =
0 reprsente
lhorloge de la bascule 1.
1, Q2 fait un basculement : 2+ =
1 reprsente
A chaque front descendant de
2T2=1 ; Donc
lhorloge de la bascule 2.
28

Les compteurs

2015/2016

Logigramme

IV.4.3

Compteur asynchrone a cycle incomplet 3 bits Modulo 6

Lorsque le modulo est infrieur 2n , nous utiliserons des bascules avec fonction dinitialisation
Table de transition

Chronogramme

Calcul de la fonction Clear dans chaque bascule :


Nous remarquons que Clear2=Clear1=Clear0=Q2Q0

Logigramme

29

Les compteurs

IV.4.4

2015/2016

Dcompteur asynchrone a cycle incomplet 3 bits Modulo 6

Table dtats

Chronogramme

Calcul des fonctions Clear et Preset :


2 .
1 .
Nous remarquons que Clear1=Preset0=Preset2=
0

Logigramme

30

Les compteurs

IV.4.5

2015/2016

Compteur synchrone a cycle complet 3 bits

Cest un compteur modulo 8 constitu de trois bascules synchronises par le mme signale dhorloge, il
peut tre ralis par nimporte quel type de bascules :
Ralisation avec la bascule D :
Table dtats
Etat prsent
Etat futur
valeur
D2
D1
D0
Q2
Q1
Q0
Q2+
Q1+
Q0+
0
0
0
0
0
0
1
0
0
1
1
0
0
1
0
1
0
0
1
0
2
0
1
0
0
1
1
0
1
1
3
0
1
1
1
0
0
1
0
0
4
1
0
0
1
0
1
1
0
1
5
1
0
1
1
1
0
1
1
0
6
1
1
0
1
1
1
1
1
1
7
1
1
1
0
0
0
0
0
0
Calcul des quations de D2, D1 et D0 :

2 1 0 + 2
2 =
0 + 2
1 ;

1 = 1 0 + 1 0 = 1 0 ;
0 =
0
Logigramme :

31

Les compteurs

IV.4.6

2015/2016

Dcompteur synchrone a cycle complet 2 bits

Cest un dcompteur modulo 4 constitu de deux bascules.


Ralisation avec des bascules RS
Table dtats
Etat prsent
Etat futur
valeur
R1
Q1
Q0
Q1+
Q0+
3
1
1
1
0
0
2
1
0
0
1
1
1
0
1
0
0
x
0
0
0
1
1
0
Calcul des quations des entres R et S des deux bascules :
1 = 1 .
0

1 = 1 . 0
0 = 0
0 =
0
Logigramme

IV.4.7

S1

R0

S0

x
0
0
1

1
0
1
0

0
1
0
1

Compteur synchrone a cycle incomplet 3 bits Modulo 5

Cest un compteur compos de trois bascules synchronises par le mme signale dhorloge et qui
compte partir du zro jusqu' quatre.
Ralisation avec des bascules JK
Table dtats
Etat prsent
Etat futur
valeur
J2
K2
J1
K1
J0
K0
+
Q2 Q1
Q0
Q2 Q1+ Q0+
0
0
0
0
0
0
1
0
x
0
x
1
x
1
0
0
1
0
1
0
0
x
1
x
x
1
2
0
1
0
0
1
1
0
x
x
0
1
x
3
0
1
1
1
0
0
1
x
x
1
x
1
4
1
0
0
0
0
0
x
1
0
x
0
x
Calcul des quations des entres JK pour chaque bascule :

2 = 1 . 0 ; 2 = 1 ;

0 =
2 ; 0 = 1

1 = 1 = 0
32

Les compteurs

2015/2016

Logigramme

IV.4.8

Dcompteur synchrone a cycle incomplet 3 bits Modulo 5

Cest un dcompteur compos de trois bascules synchronises par le mme signale dhorloge et qui
dcompte partir du quatre jusqu' zro.
Ralisation avec des bascules T
Table dtats :
Etat prsent
Etat futur
valeur
T2
T1
T0
Q2 Q1
Q0
Q2+ Q1+ Q0+
4
1
0
0
0
1
1
1
1
1
3
0
1
1
0
1
0
0
0
1
2
0
1
0
0
0
1
0
1
1
1
0
0
1
0
0
0
0
0
1
0
0
0
0
1
0
0
1
0
0
Calcul des quations des entres de chaque bascule :

1 .
2 =
0
Logigramme

1 = 1 .
0 + 2

0 = 2 + 1 + 0

33

Les registres

2015/2016

V Les registres
V.1 Dfinition
Un registre est un ensemble de cellules mmoires constitues par des bascules.
Le contenu d'un registre peut donc tre considr comme un nombre binaire ou un "mot" de n bits.

V.2 Applications
Les applications des registres sont nombreuses, parmi lesquelles :
Stockage temporel de linformation
Conversion srie parallle
Multiplication par une puissance de 2 (dcalage vers la gauche).
Division par une puissance de 2 (dcalage vers la droite).

V.3 Types des registres


V.3.1 Registre de mmorisation
La fonction d'un tel registre est de "stocker / mmoriser" un mot de n bits.
Exemple de ralisation ( l'aide de bascules D) : chacune des cellules est une bascule D.
La sortie du registre mmorise le mot d'entre tant que H = 0 ou 1. Lorsque l'horloge prsente un front
montant, les donnes en sortie sont actualises. Le registre peut tre initialis grce aux entres de
forage asynchrone qui peuvent forcer les sorties des bascules 0 ou 1.
Exemple de registre de mmorisation :

Les entres prsentes sur E0, E1, E2, E3 sont mmorises en synchronisation avec le signal W (Write).
Elles peuvent tre lues sur les sorties Q0, Q1, Q2, Q3 en concidence avec le signal R (Read).

V.3.2 Registre dcalage


Ce type de registre sert dcaler tous les bits dun mot dun ou plusieurs crans vers la droite ou vers la
gauche. Il est constitu dune srie de bascules en cascade, o la sortie dune bascule est branche
lentre de la bascule suivante. Ces systmes peuvent tre utiliss pour effectuer des multiplications ou
divisions par une puissance de 2, ou encore pour effectuer une conversion srie parallle.
Exemple d'application : la multiplication par 2n
Soit N = 3 = 0011
2. N = 6 = 0110
2. (2.N) = 12 =1100
34

Les registres

2015/2016

On constate que pour effectuer la multiplication d'un nombre par 2 il suffit de dcaler tous les bits du
nombre de 1 cran vers la gauche (vers les bits de poids fort).
De la mme faon, pour raliser la division d'un nombre par 2 il suffit de dcaler tous les bits du nombre
de 1 cran vers la droite (vers les bits de poids faible).
Exemple de registre a dcalage :

V.3.2.1 Types dentres


Srie : l'information est prsente squentiellement bit
aprs bit la 1re bascule. chaque coup d'horloge, un
nouveau bit est prsent et ceux dj chargs sont dcals
d'un rang.

Parallle : comme dans un registre de mmorisation.


V.3.2.2 Type de sorties
Linformation stocke dans un registre dcalage peut tre lue de la mme manire, en srie ou en
parallle.
V.3.2.3 Sens de dcalage
Le dcalage peut se faire vers la droite ou vers la gauche. Certains registres sont capables de dcaler
droite ou gauche selon le choix (registres dcalage universels).

V.4 Exemples de registres


V.4.1 Registre a entres sries et sorties sries

Linformation est introduite bit par bit (en srie).


L'ensemble du registre est dcal d'une position (Bi, Bi+1) et la bascule B0 reoit une nouvelle
entre ES.
Un tel registre est appel registre entre srie gauche et sortie srie droite.

35

Les registres

2015/2016

V.4.2 Registre a entres sries et sorties parallles

V.4.3 Registre a entres parallles et sorties parallles

Il peut charger une information sur N bits en mme temps.


Les n bascules changement dtats en mme temps.
Chaque bascule Bi prend la valeur de linformation i.
Il possde une entre de chargement chg ( chg=0 tat mmoire, chg=1 chargement )

36

Les registres

2015/2016

V.4.4 Registre dcalage entre parallle et sortie parallle


L'entre D de chaque bascule est prcde d'un multiplexeur 2 vers 1.
Si l'entre S/L (Shift =dcalage /Load=chargement) est "1", on a : Di = Qi-1, au coup d'horloge, il y a
dcalage droite. Si S/L est "0", Di = bit de poids i du nombre d'entre ABCD, au coup d'horloge, Le
nombre ABCD est charg dans QAQBQCQD. Parmi les applications de ce genre de registre on trouve la
conversion srie-parallle ou parallle-srie. Dans le premier cas, le registre est plac en mode dcalage
(S/L=1), on charger le registre en srie (4 coups d'horloge sont ncessaires), et on vient de lire le nombre
de sortie QAQBQCQD. Dans le deuxime cas, on commence par charger le nombre d'entre ABCD dans le
registre (S/L=0 suivi d'un coup d'horloge), puis on repasse en mode dcalage (S/L=1) et on envoie une
suite de 4 coups d'horloge, chaque coup d'horloge, un bit est disponible sur la sortie srie = QD. Le mode
de chargement parallle dcrit ci-dessus est dit chargement synchrone, car le chargement se fait au front
d'horloge qui suit le passage de S/L "0".

37