Professional Documents
Culture Documents
Premire partie
Les nombres
Chapitre 1
Les
systmes
de numration
1.1
George Boole
2 nov. 1815, Lincoln, R.-U.
8 dc. 1864, Ballintemple, Irlande
La reprsentation polynomiale
1.2
1.2.1
Le systme binaire
Introduction
Le systme dcimal est malheureusement difficile adapter aux mcanismes numriques, car il est difficile de concevoir du matriel lectronique fonctionnant sur dix
plages de tensions diffrentes.
On lui prfrera donc le systme binaire :
base B=2 ;
2 symboles : 0 et 1 appels lments binaires ou bits (bit=Binary digIT) ;
le systme binaire est pondr par 2 : les poids sont les puissances de 2 ;
Exemple :
26
1
25
0
24
1
23
1
22
0
21
0
20
1
21
0
23
1
23
1
Poids :
23
0
0
0
0
0
0
0
0
22
0
0
0
0
1
1
1
1
21
0
0
1
1
0
0
1
1
20
0
1
0
1
0
1
0
1
B10
0
1
2
3
4
5
6
7
Poids :
23
1
1
1
1
1
1
1
1
22
0
0
0
0
1
1
1
1
21
0
0
1
1
0
0
1
1
20
0
1
0
1
0
1
0
1
B10
8
9
10
11
12
13
14
15
Le bit le plus significatif le bit le plus gauche est appel bit de poids fort ou
MSB (Most Significant Bit).
Le bit le moins significatif le bit le plus droite est appel bit de poids faible
ou LSB (Less Significant Bit).
Si on utilise N bits, on peut reprsenter 2N valeurs diffrentes de 20 2N 1
Exemple :
N = 8 : 00000000 11111111 255
Remarque :
Comme lon traite souvent en micro-informatique de nombres 8 ou 16 lments binaires (e.b.), on se sert des systmes :
octal : base 8 ;
hexadcimal : base 16.
1.3
Le systme octal
base B=8 ;
8 symboles : 0, 1, 2, 3, 4, 5, 6, 7 ;
Lintrt de ce systme est que la base 8 est une puissance de 2 (8 = 23 ), donc les
poids sont aussi des puissances de 2.
Chaque symbole de la base 8 est exprim sur 3 e.b. : (ai )8 = bi2 bi1 bi0
Exemple :
(52, 3)8 = 101 010, 011
1.4
Le systme hexadcimal
base B=16 ;
15 symboles : 0, 1, 2, . . . , 9, A, B, C, D, E, F appels digits ;
chaque symbole est exprim en binaire sur 4 bits ;
Exemple :
(F 3D, 2)16 = 1111 0111 1101, 0010
1.5
1.5.1
1.5.2
A
Premire mthode
Elle consiste soustraire successivement la plus grande puissance de B
Exemple :
+ 36
+
4
(100)10 = (1100100)2
+
0
100 = 1.26
36 = 1.25
4 = 1.22
Deuxime mthode
Elle consiste diviser par B autant de fois que cela est ncessaire pour obtenir un
quotient nul. Ensuite on crit les restes dans lordre inverse de celui dans lequel ils ont
t obtenus.
Pour la partie fractionnaire on multiplie par B (rsultat nul ou selon la prcision
demande)
Exemple :
(20, 4)10 = (?)2
Partie entire :
20
0
2
10
0
Partie fractionnaire :
2
5
1
2
2
0
0
2
1
1
0, 4
2
0, 8
2
0
0, 8
2
1, 6
0, 6
2
1, 2
1.5.3
1.5.4
Exemple :
(1011011)2
(|{z}
001 |{z}
011 |{z}
011 )2
(133)8
(0101
| {z } 1011
|{z })2
(5B)16
1.5.5
10
Chapitre 2
Codage des
nombres dans les
machines numriques
Blaise Pascal
19 juin 1623, Clermont, France
19 aot 1662, Paris, France
Les systmes logiques sont constitus de mcanismes qui ne permettent de noter que
2 tats : 0 ou 1. Une mmoire lmentaire est donc une unit contenant 0 ou 1.
Plusieurs de ces units sont assembles pour reprsenter un nombre binaire.
Exemple :
mmoire 8 bits :
2.1
Les nombres sont reprsents en binaire sur n bits : n = nombre dunits mmoires
(n = 8, 16, 32, 64, . . .)
On peut reprsenter des nombres allant de 0 2n1 .
11
2.2
2.2.1
Solution la plus simple : on ajoute un e.b. gauche du module pour le signe. Ainsi,
un nombre commenant
par un 0 sera positif, alors quun nombre commenant par un
0+
1 sera ngatif :
1
Exemple :
avec 4 e.b. Les valeurs vont de 7 +7
Signe
1
1
1
1
1
1
1
1
Module
111
110
101
100
011
010
001
000
Valeur
-7
-6
-5
-4
-3
-2
-1
0
Signe
0
0
0
0
0
0
0
0
Module
111
110
101
100
011
010
001
000
Valeur
7
6
5
4
3
2
1
0
2.2.2
+5 0101
5 1010
12
2.2.3
Cest
la reprsentation la plus utilise. Le bit le plus gauche est encore le bit de
0+
signe :
1
A
A
A+A
1+A+A
= A+1
= an1 an2 a0
(on complmente chaque coefficient)
=
1 1 ... 1
= 1 0| 0 {z
. . . 0}
(car on reprsente sur n bits seulement)
0
2.3
Dans un calculateur, un nombre est toujours crit sous forme d1 bloc de n e.b.
(considr comme un entier N ).
Pour reprsenter les nombres fractionnaires il est ncessaire de dfinir la position de
la virgule : pour ce faire, il existe deux mthodes.
13
2.3.1
On dcide que la virgule est toujours une position donne (un entier peut tre
reprsentatif dun nombre fractionnaire si on connat la place de la virgule).
Exemple :
Virgule au rang K (K chiffres aprs la virgule) :
La valeur N crite en mmoire aura les poids suivants :
N = 2N 1K 20 21 2K
0 N (2n 1)2K
Virgule au rang 0 :
N = 2N 1 20
0 N 2N 1
Inconvnient de la mthode :
problme de gestion de la virgule notamment dans les multiplications (pour les
additions et soustractions pas de problme, la position de la virgule ne change
pas) ;
limitation de la taille de la partie entire et de la partie dcimale
Exemple :
2.3.2
mantisse
1re approche
Soit N = a3 a2 a1 a0 , a1 a2 a3 : N peut se noter : (a6 a5 a4 a3 a2 a1 a0 ).23
exposant = 3
mantisse = a6 a5 a4 a3 a2 a1 a0
Les valeurs de la mantisse et lexposant seront nots en complment 2 en mmoire
du calculateur
14
Exemple :
Soit la mmoire de taille suivante :
4 bits
12 bits
exposant
mantisse
Coder la valeur 26,75 en virgule flottante.
(26, 75)10 = (11010, 110)2
exposant = 3
3
(11010, 11)2 = (11010110).2
mantisse = 11010110
1101 0000011010110
| {z }|
{z
}
exp=3
mantisse=214
26, 75 = 214.23
2me approche
Mthode inverse on considre que le bit le plus gauche de la mantisse pour
poids 21 .
Soit : N = a3 a2 a1 a0 , a1 a2 a3
N peut aussi se noter (0, a1 a2 a3 a4 a5 a6 a7 ). |{z}
24
|
{z
}
mantisse
exp
Exemple :
Mme exemple que prcdemment :
(26, 75)10 = (11010, 110)2 (0, 11010110).25
0101
110101100000
Remarque :
Les ordinateurs utilisent cette reprsentation avec 32 bits pour la mantisse et 8 bits pour
lexposant. En gnral, on utilise la reprsentation inverse, avec le bit le plus gauche
= 1, soit une mantisse normalise 0, 5 M < 1
2.4
2.4.1
Arithmtique binaire
Addition
Laddition en binaire se fait avec les mmes rgles quen dcimal : on commence
additionner les bits de poids faibles puis on a des retenues lorsque la somme de deux bits
de mme poids dpasse la valeur de lunit la plus grande (dans le cas du binaire : 1).
Cette retenue est reporte sur le bit de poids plus fort suivant.
La table daddition binaire est la suivante :
15
A
0
0
1
1
B
0
1
0
1
+
+
+
+
=
=
=
=
C
0
1
1
0
retenue
0
0
0
1
(carry)
Exemple :
Addition des nombres de 4 bits :
+
=
0
1
1
0
0
1
1
1
0
1
0
1
(+3)
(-6)
-3
+
=
+
=
0
0
1
1
1
1
1
0
0
1
1
1
,
,
,
1
0
0
1
1
0
7,75
5,25
-3,00
+
=
2.4.2
Soustraction
A
0
0
1
1
B
0
1
0
1
1
1
1
,
,
,
0
1
1
C
0
1
1
0
=
=
=
=
retenue
0
1
0
0
(borrow)
Exemple :
1
1
0
0
0
1
0
5
3,5
1,5
0
0
1
0
1
0
0
1
1
1
0
1
1
0
1
3
12
-9
Remarque :
On peut utiliser le complment 2 de la valeur soustraire puis on additionne. Cela se
passe de cette manire dans les calculateurs.
16
Exemple :
72:
7:
2:
-2 :
0
0
1
0
0
1
1
0
1
1
1
1
1
0
0
0
1
0
0
1
0
1
1
1
1
1
0
1
0
1
2.4.3
Multiplication
x
x
x
x
B
0
1
0
1
C
0
0
0
1
=
=
=
=
La multiplication se fait en formant un produit partiel pour chaque digit du multiplieur (seul les bits non nuls donneront un rsultat non nul). Lorsque le bit du multiplieur est nul, le produit partiel est nul, lorsquil vaut un, le produit partiel est constitu
du multiplicande dcal du nombre de positions gal au poids du bit du multiplieur.
Exemple :
0
0
0
0
0
0
1
0
1
1
0
0
0
0
0
0
1
0
1
=
1
1
0
0
=
=
0
multiplicande
multiplieur
5
2
10
Remarque :
La multiplication binaire par 2N , se rsume un dcalage de N bits vers la gauche. On
introduira donc droite N zro.
Exemple :
8 4 sur 8 bits :
0
16 4 sur 8 bits :
1
2.4.4
Division
17
A
0
0
1
1
B
0
1
0
1
/
/
/
/
C
impossible
0
impossible
1
=
=
=
=
0
1
0
-
0
0
1
1
0
1
1
1
0
0
-
0
1
1
1
1
1
0
0
1
1
0
0
0
1
0
-
0
1
1
1
0
1
0
1
1
1
0
1
0
0
1
1
1
1
0
1
1
0
Remarque :
La division binaire par 2N , se rsume un dcalage de N bits vers la droite. En arithmtique signe, il faut penser recopier gauche le bit de signe autant de fois que
ncessaire.
Exemple :
8/4 sur 8 bits :
0
= 0
= 1
18
Chapitre 3
Les
codes
numriques
3.1
3.1.1
3.1.2
19
3.1.3
=
=
(010001001)2
(001011111)DCB
0
1
2
3
4
Aiken
4 2
0
0
0
0
0
1
0
1
1
0
dcimal
1
0
1
0
1
0
5
6
7
8
9
2
1
1
1
1
1
Aiken
4 2
0 1
1 0
1 0
1 1
1 1
1
1
0
1
0
1
Ce code est utilis dans certains calculateurs pour effectuer des soustractions par
additions de la forme complmentaire.
3.1.4
Cest un code compos dun groupe de n bits (en gnral 5) dont un seul parmi n
progresse la fois, et dun groupe de m bits (1 2) assurant la distinction entre n > 5 et
n 5.
Exemple :
dcimal
0
1
2
3
4
S
0
0
0
0
0
O
1
1
1
1
1
4
0
0
0
0
1
3
0
0
0
1
0
2
0
0
1
0
0
1
0
1
0
0
0
0
1
0
0
0
0
dcimal
5
6
7
8
9
S
1
1
1
1
1
O
0
0
0
0
0
4
1
1
1
1
1
3
0
0
0
1
0
2
0
0
1
0
0
1
0
1
0
0
0
0
1
0
0
0
0
20
3.2
3.2.1
On prend chaque chiffre dcimal +3, puis on convertit en binaire. On a parfois recours ce code en raison de la facilit avec laquelle on peut faire certains calculs arithmtiques.
Exemple :
(48)10
3.2.2
4
+3
7
0111
8
+3
11
1011
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
Gray
0 0
0 0
0 1
0 1
1 1
1 1
1 0
1 0
1 0
1 0
1 1
1 1
0 1
0 1
0 0
0 0
0 0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
Ce code est utilis dans les tableaux de Karnaugh (c.f. section ?? page ??), dans des
circuits dentre/sortie, et dans certains convertisseurs analogique/numrique.
Il ne convient pas pour larithmtique binaire.
3.3
21
3.3.1
Codes biquinaires
3.3.2
3.3.3
0
0
0
0
0
0
1
1
1
1
2 parmi 5
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
0 0 0
0 0 1
0 1 0
1 0 0
1
1
0
1
0
0
1
0
0
0
Dans ces codes, on ajoute un e.b. de sorte que lensemble des bits transmettre (ou
le mot) ait un nombre pair (parit paire) ou impaire (parit impaire) de 1 .
Exemple :
0101 0 0101
0111 1 0111
Remarque :
Dans lapplication de la mthode de la parit, lmetteur et le rcepteur se mettent daccord lavance sur la parit surveiller (paire ou impaire).
Remarque :
Pour dtecter la place dun e.b. faux, il faut coder dans 2 dimensions selon les lignes et
les colonnes.
22
Exemple :
0
1
0
1
0
1
0
0
1
0
0
0
0
1
1
0
1
1
0
0
1
0
1
1
1
Transmission
0
1
0
1
0
1
0
0
1
0
0
0
0
1
1
0
0
1
0
0
1
0
1
1
1
Ce code dtecte les erreurs simples condition que le.b. de parit ne soit pas erron.
3.3.4
Code de Hamming
Ce code est utilis dans les transmissions de donnes. Il localise et corrige les chiffres
erronns (en ajoutant des e.b. supplmentaires aux e.b. de linformation).
Le nombre binaire dinformation effective est : N = ABCD = 4
Le nombre binaire dinformation transmise est : N = abcdef g = 7
avec a =
b=
c=
d=
e=
f=
g=
3.4
ABC D
AC D
A
BC D
B
C
D
Ils servent coder des chiffres, des lettres, des signes de ponctuations et des caractres spciaux (26 caractres minuscules, 26 caractres majuscules, 7 signes, 20 40
caractres spciaux comme +,|,6=,%,...)
3.4.1
Cest le plus rpandu. On le retrouve pratiquement dans tous les ordinateurs et leurs
organes priphriques, pour leurs dialogues et la reprsentation des textes en mmoire.
Chaque symbole (caractre dimprimerie) est cod par 7 e.b. (un 8me e.b. peut servir
de parit) : 27 = 128 combinaisons diffrentes.
23
24
Deuxime partie
La logique combinatoire
25
Chapitre 4
Fonctions et
oprateurs
logiques
4.1
Augustus De Morgan
27 juin 1806, Madura, Indes
18 mars 1871, Londres, R.-U.
Introduction
Technologie pneumatique :
1 prsence de pression
0 abscence de pression
27
Niv. log. 0
Faux
Ouvert
Arrt
Bas
Non
Niv. log. 1
Vrai
Ferm
Marche
Haut
Oui
Logique ngative :
niveau haut tat logique 0 (0
V)
niveau bas tat logique 1 (+5
V)
La logique binaire base sur lalgbre de Boole permet de dcrire dans un modle
mathmatique les manipulations et traitement des informations binaires, et danalyser
les sytmes numriques.
4.2
28
Exemple :
Relais : cest un interrupteur oprant de faon lectromagntique ; lorsquun courant
appropri passe dans le charbon, une force magntique dplace les armatures imposant louverture ou la fermeture des contacts. Il est prsent dans sa position non
alimentee (au repos).
Ils peuvent tre ferms ou ouverts au repos.
Charbon
4.3
T = (A+B).C
Les fonctions logiques sont conues partir dun groupe doprateurs lmentaires
appels portes .
Chaque oprateur est reprsent par un symbole et sa fonction est dfinie par une
table de vrit.
4.3.1
NON (NOT)
A
0
1
4.3.2
A
1
0
ET (AND)
&
A
0
0
1
1
B
0
1
0
1
X
0
0
0
1
Proprits du ET :
x.1 = x
x.0 = 0
x.x = 0
x.x = x
lment neutre : 1
lment absorbant : 0
4.3.3
OU (OR)
29
A
0
0
1
1
B
0
1
0
1
X
0
1
1
1
Proprits du OU :
x+1=1
x+0=x
x+x=1
x+x=x
lment neutre : 0
lment absorbant : 1
4.3.4
NON-OU (NOR)
S=A+B
4.3.5
NON-ET (NAND)
S=A.B
&
4.3.6
OU exclusif (XOR)
S=AB
4.3.7
4.4
Tout circuit logique peut tre dcrit par des fonctions logiques et/ou une table de
vrit, et tre ralis partir des oprateurs logiques lmentaires.
4.4.1
Table de vrit
La table de vrit nous fait connatre la raction dun circuit logique aux diverses
combinaisons de niveaux logiques appliques ses entres.
30
Exemple :
A
0
1
B
0
..
.
1
C
0
1
X
?
..
.
?
Y
?
..
.
?
A
B
C
X
Y
Exemple :
Donner
la table de vrit dun circuit 3 entres A,B,C et 2 sorties X,Y tel que :
X=1 si les 3 entres ont le mme niveau
Y=1 si A=B
4.4.2
Logigramme
X=A.B+C
Remarque :
Notation : Par convention, une entre ou une sortie doprateur logique active un
niveau haut sera note a, b, sel, etc.
Une entre ou une sortie doprateur logique active un niveau bas sera note c,
d, MEM, etc.
4.5
31
consquences :
1. une porte NON-OU est une porte ET avec ses entres inverses :
2. une porte NON-ET est une porte OU avec ses entres inverses :
4.5.1
a+b
a
NON :
4.5.2
b
a+a
ET :
OU :
a+b
NON :
a.a
OU :
ET :
a
b
a.b
Exemple :
Raliser la fonction X=AB+CD laide du CI (circuit intgr) suivant :
14
13
12
11
10
VCC
7400 :
1
A
B
AB
C
D
CD
32
&
&
&
&
11
Remarque :
la mme approche peut etre faite pour les portes OU exclusif ;
les oprateurs NAND, NOR, OU exclusif, ainsi que le groupe doprateurs (ET,
OU, NON) sont appels des oprateurs complets puisquils peuvent raliser
seuls toutes les oprations logiques.
4.5.3
4.6
4.6.1
4.6.2
(thorme dallgement)
(absorption)
Deux termes sont adjacents quand ils ne diffrent lun de lautre que par une seule
variable. ABC et ABC sont adjacents. Un digramme de Karnaugh est une table dimplication logique dispose de telle manire que deux termes logiquement adjacents soient
galement adjacents gomtriquement.
Le diagramme de Karnaugh est un outil graphique, mthodique. Il permet dobtenir
une solution optimale la simplification logique.
A Forme du diagramme de Karnaugh
Comme la table de vrit, il met en vidence le rapport entre les entres et les sorties
(chaque ligne de la table de vrit correspond une case du diagramme de Karnaugh).
33
Exemple :
X
A
0
0
1
1
0
1
0
1
1
0
0
1
X
B
0
Exemple :
X
B
00
01
11
10
3 entres :
Exemple :
X
CD
AB
00
01
11
10
00
01
B
11
A
4 entres :
10
Remarque :
Les tableaux de Karnaugh se prsentent comme des cylindres ferms dans les deux
sens.
Mthode de simplification
1. dessiner la table de Karnaugh correspondant la fonction ;
2. on entame les 1 isols ;
3. on runit les octets de 1 adjacents ;
4. on runit les quartes de 1 adjacents ;
5. on runit les doublets de 1 adjacents pour runir tous les 1 du tableaux ;
6. effectuer laddition logique e tous les termes rsultants des runions, sachant que :
un octet de 1 permet dliminer les 3 variables qui se trouvent sous les deux
formes (complment et non complment) ;
un quartet de 1 permet dliminer les 2 variables qui se trouvent sous les deux
formes (complment et non complment) ;
un doublet de 1 permet dliminer la variable qui se trouve sous les deux formes
(complment et non complment) ;
34
CD
AB
CD
00
01
11
10
AB
00
01
11
10
AB
CDE
000
00
00
00
01
01
01
11
11
11
10
10
10
001
011
010
110
111
101
100
E
X
C
D
B
A
X
DE
DE
00
AB
01
11
10
00
AB
00
00
01
01
11
11
10
10
01
11
10
X
ABC
001
011
010
110
111
101
100
001
011
010
X
DE
AB
DEF
000
000
DE
00
01
11
10
AB
00
00
01
01
11
11
10
10
00
01
11
10
110
111
101
100
F
X
F
E
D
Remarque :
il peut exister des tats indiffrents (nots X). Ces tats correspondent des
combinaisons dentre impossibles. On les remplacera par 1 ou 0 de faon
avoir la simplification la plus optimale ;
on peut utiliser une meme case plusieurs fois, puisque x + x + x + + x = x.
4.6.3
Mthodes algorithmiques
35
36
Chapitre 5
Les
circuits
combinatoires
5.1
Charles Babbage
26 dc. 1791, Teignmouth, R.-U.
1871, London, R.-U.
Circuit combinatoire : circuit dont les sorties dpendent uniquement de la combinaison des tats des entres linstant de lobservation.
5.1.1
A
Codeur (encodeur)
Circuit M=2N entres et N sorties qui code en binaire le rang de la seule entre
active.
V
A0
S0
A1
S1
A2
S2
A m-1
n-1
37
reprsentation
en sortie sur N
bits
Exemple :
Codeur dcimal-DCB : 10 entres, 4 sorties
0
1
2
3
4
5
6
7
8
9
A9
1
1
1
1
1
1
1
1
1
0
A8
1
1
1
1
1
1
1
1
0
1
A7
1
1
1
1
1
1
1
0
1
1
A6
1
1
1
1
1
1
0
1
1
1
A5
1
1
1
1
1
0
1
1
1
1
A4
1
1
1
1
0
1
1
1
1
1
A3
1
1
1
0
1
1
1
1
1
1
A2
1
1
0
1
1
1
1
1
1
1
A1
1
0
1
1
1
1
1
1
1
1
S
S
A0
0
1
1
1
1
1
1
1
1
1
S3
0
0
0
0
0
0
0
0
1
1
S2
0
0
0
0
1
1
1
1
0
0
S1
0
0
1
1
0
0
1
1
0
0
2
3
S0
0
1
0
1
0
1
0
1
0
1
reprsentation DCB
9
Remarque :
Les codeurs de priorits sont une version modifie du codeur : quand deux entres sont
actives, cest lentre correspondant au nombre le plus haut qui est choisi.
Dcodeur
Le dcodeur est un circuit qui tablit la correspondance entre un code dentre sur N
bits et M lignes de sortie (M 2N ).
38
Pour chacune des combinaisons dentre, une seule ligne de sortie est valide.
Exemple :
Dcodeur DCB-dcimal : 4 entres, 10 sorties.
Remarque :
La plupart des dcodeurs sont dots dune ou plusieurs entres de validation qui comandent son fonctionnement.
s0
s1
s2
s3
Q
V
s
e0
e1
e2
Q
V
s4
s5
s6
s7
39
C Transcodeurs (convertisseurs)
Circuit p entres et k sorties qui convertit un nombre crit dans un code C1 en un
nombre crit dans un code C2.
Exemple :
Code binaire code Gray
Code DCB code affichage chiffre (dcodeur 7 segments)
5.1.2
Multiplexeursdmultiplexeurs
A Multiplexeurs (MUX)
Circuit 2n entres dinformations, n entres de slection, et une sortie. Il permet
laiguillage de lune de ces entres vers la sortie.
Exemple :
MUX 2 entres de donnes
sel
E0
E1
E1
X
X
MUX
E0
X
X
sel
0
1
out
E0
E1
S=sel.E0 + sel.E1
out
Remarque :
La table de vrit devient rapidement trs importante ( partir de 4 entres). On exprime
alors la fonction de sortie directement
Exemple :
MUX 4 entres ( 2 entres de slection a1 a0 ) S=a1 .a0 .E0 + a1 .a0 .E1 +
1. Conversion paralllesrie
On place successivement les valeurs
00, 01, 10, 11 sur a1 a0 .
1
1
0
1
S=1011
a1 a0
0
0
1
1
40
0
1
0
1
Ralis par
un compteur
2. Gnrateur de fonctions
Toute fonction logique peut tre ralise partir des MUX. Les entres de slection (commande) sont alors les variables de
la fonction.
Source info 1
Ex: clavier
Source info 2
Ex: lecteur de
disquettes
n bits
n bits
MUX
aiguillage
slection
3. Slection de mots
Le MUX est ralis partir de n MUX
2 entres travaillant avec la mme commande de slection.
n bits
destination
Remarque :
Intrt : pas besoin de simplifier la fonction avant de la raliser.
Exemple :
F = ABC + ABC
Utilisation de MUX 8 vers 1.
S = ABCE0 + ABCE1 + + ABCE4 +
Dmultiplexeurs (DEMUX)
Exemple :
Transmission avec multiplexage/dmultiplexage.
source 0
rcept. 0
MUX
metteur
voie de transmission
source n
5.1.3
rcepteur
DEMUX
rcept. n
Le comparateur
41
A Comparateur de 2 e.b.
ai
0
0
1
1
B
bi
0
1
0
1
Ei
1
0
0
1
Si
0
0
1
0
Ii
0
1
0
0
Ei =
Si =
Ii =
Di =
ai
ai
ai
ai
=bi
>bi
<bi
6=bi
=ab
= a.b
= a.b
= ab
Comparateur de 2 nombres
5.1.4
Utilise dans pratiquement tous les systmes informatiques, elle ralise des oprations arithmtiques (addition, soustraction, etc.) et logiques (ET, OU, etc.). Cest un circuit programmable : les relations entre les donnes en sortie et les donnes en entre sont
modifiables.
5.2
5.2.1
Prsentation
Introduction
La ralisation pratique dun systme logique dit cbl consiste utiliser les composants CI disponibles sur le march. Cela oblige le concepteur dcomposer un systme
donn en blocs fonctionnels proposs par les constructeurs et optimiser son choix.
42
Toute fonction logique de n variables peut se mettre sous la forme dune somme
de produits. Cela implique que toute fonction logique peut tre ralise par lutilisation
dune structure comportant deux ensembles fonctionnels :
un ensemble doprateurs ET organiss sous forme de matrice permet de gnrer
les produits des variables dentre ;
un ensemble doprateurs OU permet de sommer les produits.
a) PROM (Programmable Read-Only Memory) ou PLE (Programmable Logic Element)
b) PAL (Programmable Array Logic)
c) FPLA (Field Programmable Logic Array)
5.2.3
Les PROMs et PALs se programment assez facilement avec des programmateurs universels standards dans lesquels est incorpor un module spcifique pour
chaque constructeur ;
les FPLAs ncessitent des programmateurs plus sophistiqus cause des doubles
matrices programmer.
43
44
Chapitre 6
Fonctions
et oprateurs
arithmtiques
45
46
Troisime partie
47
Chapitre 7
Les
bascules
Alan Mathison Turing
23 juin 1912, Londres, R.-U.
8 juin 1954, R.-U.
7.1
Introduction
Circuit squentiel : circuit dont ltat des sorties dpend non seulement des entres
mais galement de ltat antrieur des sorties. Ces circuits doivent donc tre capables de
mmoriser.
Exemple :
M =0
L=0
A=0
M =1
2
L=1
A=0
M =0
L=1
A=0
M =0
4
L=0
A=1
5
M =0
L=0
A=0
Dans un tel systme, une mme combinaison des variables dentre ne correspond
pas toujours la mme valeur la sortie (3 et 5). La fonctionnalit dpend de lordre des
oprations (ordre de droulement des squence) systme squentiel.
Les fonctions squentielles de base sont :
mmorisation ;
comptage ;
dcalage.
Les circuits squentiels fondamentaux sont :
bascules (3 types) ;
49
7.2. Bascule RS
compteurs ;
registres ;
RAM (Random Access Memory).
Ces circuits peuvent travailler soit en mode synchrone, soit en mode asynchrone :
mode asynchrone tout moment, les signaux dentre peuvent provoquer le changement dtat des sorties (aprs un certain retard quon appelle temps de rponse . Ces systmes sont difficiles concevoir et dpanner.
mode synchrone Le moment exact o les sorties peut changer dtat est command
par un signal dhorloge (train dondes carres ou rectangulaires). Les changements
dtat seffectuent tous pendant une transition appele front (montant ou descendant).
La majorit des systmes numriques squentiels sont synchrones mme si certaines
parties peuvent tre asynchrone (ex. : reset).
Les avantages principaux du mode synchrone sont :
prparer les entres sans perturber les sorties ;
protger des parasites survenant en entre.
Les bascules que lon peut considrer comme des mmoires lmentaires, sont les
briques de base des circuits squentiels.
Ce sont les circuits de mmorisation les plus rpandus dans les systmes numriques
en raison de leur rapidit de fonctionnement, de la facilit dcriture et de lecture dinformation, et de la grande simplicit de leur interconnexion avec des portes logiques.
On trouve deux grandes familles de bascules :
bascules de mmorisation : elles possdent les commandes de mise zro, mise
un, mmorisation ;
bascules de comptage : elles possdent en outre une commande de changement
dtat.
7.2
Bascule RS
La bascule RS est le circuit squentiel le plus simple. Son rle consiste mmoriser
une information fugitive.
Symbole
R : reset
S : set
50
Diagramme temporel
Quand une impulsion est applique 1 entre pour
imposer un certain tat la bascule, celle-ci demeure dans
cet tat, mme aprs que limpulsion ait disparu. Q garde
son tat lorsque S passe de 1 0 et lorsque R passe de 1
0.
Table de vrit
S
0
0
0
0
1
1
1
1
R
0
0
1
1
0
0
1
1
Q+
0
1
0
0
1
1
X
X
Qt
0
1
0
1
0
1
0
1
S
0
0
1
1
R
0
1
0
1
Q+
Q
0
1
X
mmorisation
mise 0
mise 1
interdit
Tableau de Karnaugh
S
Q
Q
R
0
1
0
0
X
X
1
1
51
7.2. Bascule RS
S=0
si Q = 0 G = 1 et Q = 0
S=0
si Q = 1 G = 0 et Q = 1
memorisation
52
7.3
Bascule RS synchrone
Symbole
Ralisation
Table de vrit
S
X
0
0
1
1
R
X
0
1
0
1
QN+1
QN
QN
1
0
X
La sortie est indice est vaut QN avant le front de lhorloge et QN+1 aprs le front de
lhorloge.
S et R ninfluencent pas Q sauf pendant les quelques nanosecondes durant lesquelles
CLK passe du niveau bas au niveau haut (pour les circuits actifs sur front montant).
Exemple :
7.4
Bascule JK
53
7.4. Bascule JK
Symbole
Ralisation
Table de vrit
J
X
0
1
0
1
K
X
0
0
1
1
QN+1
QN
QN
1
0
QN
mmorisation
forage 1
forage 0
commutation
Remarque :
Pour que le basculement fonctionne, il faut avoir H trs troite, autrement il y a
rebasculement.
J
0
1
1
1
1
0
0
0
54
7.5
Bascule D synchrone
Symbole
Table de vrit
H
DN
1
0
QN+1
1
0
Ralisation
7.6
Symbole
Fonctionnement
quand CLK=0 lentre D na aucun effet (mmorise) ;
quand CLK=1 Q suit les changements de D la bascule est transparente.
Remarque :
Notez labsence du symbole . sur lentre CLK.
55
7.7. Bascule T
7.7
Bascule T
Symbole
Table de vrit
T
0
1
QN+1
QN
QN
Cette bascule est utilisable uniquement en mode synchrone. Elle sobtient par
exemple partir dune bascule JK.
7.8
La plupart des bascules synchrones possdent des entres prioritaires. Elles agissent
indpendamment de lhorloge et des entres synchrones des bascules. Elles servent
forcer, tout moment, la mise 1 ou 0 de la bascule, quelles que soient les conditions
dentre.
Exemple :
Preset
1
0
1
0
Clear
1
1
0
0
Q
fonctionnement normal
1
0
ambigu, interdit
Les entres asynchrones peuvent tre vraies ltat bas (cas le plus frquent) ou
ltat haut.
En gnral, on applique juste une impulsion ces entres pour faire une initialisation.
Dsignations synonymes :
Clear
RAZ
Reset
DC Clear
Preset
RAU
Set
DC Set
Remarque :
Les entres synchrones sont des niveaux de tension continue
56
7.9
7.9.1
Mmoire
7.9.2
7.9.3
Synchronisation
Exemple :
Solution :
57
7.9.4
Solution :
7.9.5
Division de frquence
La division de frquence par 2 (et donc 2N ) peut tre ralise facilement laide des
diffrents registres.
Bascule D
DN =QN+1 .
On veut QN+1 =QN DN = QN
Bascule JK
Bascule RS
58
Chapitre 8
Registres : stockage
et transfert de
donnes
Registre : ensemble de n bascules synchronises permettant de stocker momentanment une information sur n bits.
8.1
Dfinition
59
8.2
Tous les bits du mot traiter sont crits (entre criture E=1), ou lus, (entre lecture
L=1), simultanment.
8.3
60
8.4
Lorsque lentre est stocke, chaque bit apparat simultanment sur les lignes de
sortie.
Le registre dcalage est utilis comme convertisseur srie-parallle. Il est ncessaire la rception lors dune transmission srie.
8.5
61
62
Chapitre 9
Les
compteurs
Claude Elwood Shannon
30 avr. 1916, Gaylord, E.-U.
24 fv. 2001, Medford, E.-U.
9.1
9.1.1
63
D
0
0
0
0
0
0
..
.
1
0
..
.
C
0
0
0
0
1
1
..
.
1
0
..
.
B
0
0
1
1
0
0
..
.
1
0
..
.
A
0
1
0
1
0
1
..
.
1
0
..
.
chaque bascule divise par deux la frquence dhorloge qui alimente son entre
finitale
CLK : fD =
.
16
Application : avec ce genre de circuit, on peut diviser la frquence initiale par nimporte quelle puissance de 2.
d) Modulo
cest le nombre dtat occups par le compteur pendant un cycle complet ;
le modulo maximal dun compteur n bits (n bascules) est 2n ;
ex. : compteur 4 bits 16 tats distincts modulo 16.
9.1.2
a) Mthode
64
Pour 2N-1 < N < 2N , on ralise un compteur modulo 2n (avec n bascules), puis on
raccourcit le cycle en jouant sur les entres RAZ des bascules.
Exemple :
Compteur asynchrone modulo 6 : 22 < 6 < 23 on ralise un compteur modulo 3
avec 3 bascules, et on ramne le compteur 000 ds que Q2 Q1 Q0 = 110.
Q2
0
0
0
0
1
1
1
Q1
0
0
1
1
0
0
1
Q0
0
1
0
1
0
1
0
Q2 Q1 Q0 = 110 est un tat temporaire. Il existe mais pendant une dure trs courte.
Cest un tat indsirable que lon nomme parfois glitch.
c) Chronogramme
Remarque :
Les sorties Q2 et Q1 ne sont pas des ondes carres.
9.1.3
1re mthode
65
On ralise un compteur de mme modulo, puis on transcode ses sorties pour obtenir
le cycle demand.
Exemple :
Cycle 2, 5, 6, 8, 4, 10
N
0
1
2
3
4
5
Q2
0
0
0
0
1
1
Q1
0
0
1
1
0
0
Q0
0
1
0
1
0
1
Q03
0
0
0
1
0
1
Q02
0
1
1
0
1
0
Q01
1
0
1
0
0
1
Q00
0
1
0
0
0
0
2
5
6
8
4
10
2me mthode
Utilisation des entres RAZ et EAU.
Exemple :
Cycle 0, 1, 2, 3, 5, 6, 8, 9, 11, 12, 15 : on ralise un compteur modulo 16 et on agit
sur les RAU pour sauter les tapes.
9.1.4
Exemple de CI
Circuit interne
MR Master Reset.
66
9.1.5
Dcompteurs asynchrones
Il suffit de piloter chaque entre CLK des bascules au moyen de la sortie complmente de la bascule prcdente.
Exemple :
Dcompteur modulo 8
Chronogramme :
9.1.6
Chaque bascule introduit un retard de tp (tp =25ns). Comme les retards sadditionnent,
la nime bascule, on a un retard de ntp .
utilisation limite en frquence, particulirement lorsque le nombre de bits est
lev.
les sorties ne changent pas dtat en mme temps, ce qui implique un problme
dinterface avec des circuits rapides (temps de lecture infrieur au retard entre plusieurs
bits).
9.2
9.2.1
67
Exemple :
Ralisation dun compteur modulo 8 ( cycle complet) laide de bascules T
Table dexcitation
Q+
Q+
T2 T1 T0
Q2 Q1 Q0 Q+
2
1
0
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
1
0
0
1
1
0
0
1
0
1
1
1
0
0
1
1
1
1
0
1
1
1
0
0
1
1
1
1
0
0
0
0
1
1
On constate que : T0 = 1 et T1 =Q0 et T2 =Q1 Q0
9.2.2
Circuit
74160
74161
74162
74163
Comptage
synchr. DCB
synchr. bin.
synchr. DCB
synchr. bin.
Chargement
synchrone
synchrone
synchrone
synchrone
RAZ
asynchrone
asynchrone
synchrone
synchrone
68
Remarque :
Toutes les commandes agissant sur le comptage sont regroupes sur la figure cidessous :
9.2.3
A
Applications
Compteur de frquence
Circuit qui mesure et affiche la frquence dun signal impulsionnel (mesure de frquence inconnue).
69
contenu
t2 t1
Remarque :
Le compteur est un montage en cascade de compteurs DCB, chacun ayant une
unit dcodeur/afficheur (affichage dcimal).
La prcision de cette mthode est fonction de lintervalle dchantillonnage.
70
Horloge numrique
Chapitre 10
Mthodes
dtude des
circuits squentiels
De nombreux outils permettent danalyser le fonctionnement et/ou de prvoir lvolution dun systme squentiel :
1 ) Mthodes descriptives :
a) les tables dtat : elles donnent ltat futur des sorties pour les lments de m+
moire inclus dans les systmes et ltat des sorties : A B S S ;
b) les diagrammes des temps (chronogrammes) : ils dcrivent la succession des signaux dentre, des tats des lments de mmoire. Ils reprsentent la succession
des tats logiques en fonction du temps.
2 ) Les diagrammes dtats ou graphes : ce sont des reprsentations formelles avec
nuds et flches pour reprsenter les tats stables et les transitions. Le graphe donne
une image gomtrique dune table de vrit.
71