Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
------------------
------------------
----------------------
-----------------------
----------------------
PARCOURS : TS STIC
1
FICHE D’ELEMENTS CONSTITUTIFS D’UNITE D’ENSEIGNEMENT
Programme :
Chapitre 1: Numération ……………………..…………………………………….….(… H)
Chapitre 2: Logique combinatoire …………………………………………………....(….H)
Chapitre 3: Logique séquentielle - les bascules ………………………………………(… H)
Chapitre 4: Logique séquentielle - les compteurs …………………………………….(… H)
Chapitre 5: Logique séquentielle - les registres ………………………………………(… H)
Référence bibliographique :
Support de cours d’Electronique Numérique, Edition 2016, Cycle TS.
Unité Pédagogique :
UP Electronique, DFR GEE
Responsable EC : KOFFI Manlandon
Contacts : (N° Bureau, Cel et Email)
Autres Enseignants de l’EC : ADAMA Koné – N’ZI Edié Camille - KOUADIO Amani –
SOUMAHORO Amadou, KONE Brahiman
2
Chapitre I : Numération
I) Système de numération
1.1) Définition
On appelle base le nombre de symboles élémentaires servant à l’écriture des nombres
dans cette base.
Par exemple :
- la base 10, possède 10 symboles élémentaires. Se sont : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
- base 2, possède 2 symboles élémentaires. Se sont : 0,1
FORME POLYNOMIALE
On peut décomposer tout nombre en fonction des puissances entières de la base
A = a3 b3 + a2 b2 + a1 b1 + a0 b (détaillée)
A = a3 a2 a1 a0 = (A)b (simplifiée)
ai ∈ N , b ∈ N (où b = base du système de numération et ai = éléments de la base).
où i ∈ 0, b 1
b 1
Forme détaillée A = aib
i 0
i
On appelle :
Rang d’un chiffre : la puissance i de b ; a3 est de rang 3
Chiffre de poids fort : chiffre de gauche (a3)
Chiffre de poids faible : chiffre de droite (a0)
On fait le calcul des valeurs décimales des b i que l’on multiplie par le coefficient a i.
La somme de ces différents produits nous donne la valeur décimale de A.
Exemple :
A7 = (64235)7 Ecriture simplifiée.
A7 = 6.74 + 4.73 + 2.72 + 3.71 + 5.70
3
4 est de rang 3, par contre 5 est de rang 0.
6 est le poids fort de A7 et 5 est le poids faible de A7.
La base b= 7, possède 7 symboles élémentaires ai avec ai 𝜖 {0, 1, 2, 3, 4, 5, 6}. On a :
A 10 = 6.74 + 4.73 + 2.72 + 3.71 + 5.70 = (15902)10
Sachant que les restes sont 0 et 1 suivant que le dividende est pair ou impair on peut opérer
plus simplement :
1 3 6 12 25
1 1 0 0 1
En plaçant de droite à gauche 1 sous les dividendes impairs et 0 sous les pairs.
4
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 10
9 11
Base 10 Base 8
En aucun cas le chiffre 8 (la base exprimée en décimal) ne peut apparaitre dans un nombre
exprimé en octal.
Dans un nombre exprimé en octal, chaque chiffre a un poids fonction de la base, c’est-à-dire
une puissance de 8.
Exemple : 7 3 5 2 (8)
80
81
82
83
La conversion s’effectue avec des divisions successives par la base (ici 8).
451 8
51
3 56 8
0 7
45110=7038
Exemple :
5
7038 → 3 x 80=3 x 1 = 3
+ 0 x 81 =0 x 8 = 0
+ 7 x 82 = 7x 64 = 448
45110
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 A
11 B
12 C
13 D
14 E
15 F
16 10
Base 10 Base 16
6
Exemple : convertir 6846(10) en base 16
6846 16
44
126 427 16
14 107 26 16
11 10 1
Attention, en hexadécimal les chiffres 10, 11,14, n’existences pas il faut les remplacés
respectivement par A, B et E.
6846(10) =1 A B E16
F x 160 = 15 x 1 = 15
+ E X 161 = 14 x 16 = 224
11259375
7
1.4) Méthode de conversion
1.4.1) Conversion par divisions successive
Pour convertir un nombre N en base 10 , (N)10 , dans une base b quelconque
(N)b. On a :
q1 = q2 b + r2
……………….
qn – 2 = qn-1 b + rn-1
qn – 1 = 0xb + rn
qn – 2 = rn b + rn -1
qn -3 = (rn b + rn -1) b + rn – 2
q1 = rn bn – 1 + rn – 1 bn-3 + …….. + r2
q0 = rn bn – 1 + rn – 1 bn – 2 + …….. + r2 b + r1
=> N = q 0 b + r 0 = r n b n + r n – 1 b n – 1 + …+ r 2 b 2 + …r 1 b + r 0
N = ∑𝑛𝑖=0 𝑟𝑖 𝑏𝑖
Exercice :
Donner les équivalents des nombres suivant dans les base proposées :
(N)10 = 189520 => (N)16 = ………..
(N)10 = 23 => (N)2 = ……….
(N)10 = 24 => (N)8 = ……….
8
1.4.2) Conversion par groupement de bits
Comme nous l’avons vu précédemment, tous les calculs à l’intérieur d’un ordinateur
s’exécutent à partir de nombres exprimés en binaire. Mais afin de manipuler des nombre de
façon plus commode, nous travaillerons soit en octal, soit en hexadécimal.
Cela dépend de la manière dont fonctionne le calculateur.
Si les bits binaires sont groupés par 3, on utilisera le système octal (un groupe de plusieurs
bits est appelé BYTE).
Avec un byte de 3 bits, nous pouvons exprimer une valeur octale de 0 à 7.
Si les bits sont groupés par 4 (un byte de 4 bits est aussi appelé QUARTET), on utilisera alors
le système hexadécimal.
Avec un byte de 4 bits (quartet), nous pouvons exprimer une valeur hexadécimale de 0 à F.
Prenons un exemple :
Soit la valeur 4095 à convertir en octal et hexadécimal.
Calculons sa conversion en binaire. Nous trouvons :
4095(10) =1111 1111 11112
- Si, à partir du bit de droite (c’est-à-dire à partir du poids le plus faible) nous groupons les
bits par 3, cela donne :
409510 → 111 111 111 111
Chaque byte de 3 bits peut être converti en octal :
1112 → 78
409510 = 77778
- Si, à partir du bit de droite nous groupons les bits par groupe de 4,cela donne :
409510 = 1111 1111 1111
Chaque quartet peut être converti en hexadécimal :
11112 =F16
Soit,
409510 =FFF16
9
Exercice
Soit à convertir le nombre décimal 237 en octal, puis binaire, puis en hexadécimal :
237 8
77
5 29 8
5 3
23710 = 3558
Chaque digit octal peut être converti en binaire sur 3 bits. Cela donne :
3558 = 011 101 1012
Si maintenant, à partir du binaire, nous groupons par groupe de 4bits, nous obtiendrons la
conversion en hexadécimal
0 1110 11012
Les bits de poids élevés non présents seront mis à zéro.
11012 = D16
11102 = E16
3557 = OED16 + 23710
(Si nous avons effectué directement la conversion de 23710 en hexadécimal, il aurait fallu
passer par les divisions successives par 16)
237 16
77 14
13
23710 = ED16
Exercice :
Soit à convertir le nombre E1816 en OCTAL.
-Première solution : on convertit E1816 en décimal, puis cette valeur obtenue passe en octal.
-Deuxième solution : on exprime chaque digit hexadécimal par sa valeur correspondante en
binaire sur 4 bits :
E1816 = 1110 0001 1000
Puis on groupe par 3 bits (toujours à partir de la droite) et on exprime chaque groupe en octal.
111 000 011 000
10
7 0 3 0
Donc : E1816 = 70308
Vérification :
E1816 = 14 x 162
+ 1 x 161
+ 8 x 160
360810
70308 = 7 x 83
+ 3 x 81
360810
Exemple :
Soit à convertir le nombre 0,63510 en octal :
- partie entière 0 donc résultat 0 pour l’octal,
- partie fractionnaire,635 → multiplications successives par 8.
0,635 × 8 = 5,080 premier digit 5
0,080 × 8 = 0,64 2éme 0
0,64 × 8 = 5,12 3éme 5
0,12 × 8 = 0,96 4éme 0
11
0,96 × 8 = 7,68 5éme 7
0,68 × 8 = 5,44 6éme 5
Résultat final
0,63510=0,5050758
Plus la base est petite, plus le nombre de multiplications a effectué doit être grand de façon à
obtenir un résultat précis.
12
0,68 × 2 = 1,36
0,36 × 2= 0,72
0,72 × 2= 1,44
Donc, 0,1210 = 0,0001111012
Vérification : (1 × 2-4 ) + (1 × 2-5) + (1 × 2-6) + (1 × 2-7) + (1)
→ 0,1191410 résultat plus précis mais encore imparfait.
La conversion par groupement de bits se fait de façon similaire mais pour les chiffres après la
virgule, on part de la gauche.
Exemple :
Convertir en hexadécimal le nombre 75,278
758 = 111 101
0,278 = 0,010111
Soit :
0011 1101,0101 1100
75,278 = 3D, 5C16
13
Pour éviter toute indétermination, chaque information doit être codée d’une manière unique
(c’est-à-dire compréhension entre interlocuteurs).
Sécurité
Forme utilisable par un ordinateur
Bits 1 0 1 0
Pondération 23 22 21 20
Code 1248
La façon la plus simple de représenter les 10 premiers chiffres décimaux par 4 variables
binaires est de prendre les dix premières combinaisons des variables du système binaire
naturel.
N 8421
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
14
N = nombre
Les pondérations sont 8 4 2 1
Application du code 1248 au DCB (Décimal Codé Binaire)
En DCB, chaque chiffre décimal est codé en 1248 et les valeurs ainsi obtenues sont
juxtaposées.
N 2421
0 0000
1 0001
2 0010
3 0011
4 0100
5 1011
6 1100
7 1101
8 1110
9 1111
Ce code est auto-complémentaire. Ainsi, le complément à 9 de X s’obtient en complémentant
à 1 les bits de la valeur X : complément à 9 de 3 => 9-3=6.
3 s’écrit 0011 . Son complement à 1 est 1100 ; ce qui donne 6 en code Aïken
15
D’autres codes existent et sont souvent utilisés en Telecom : 1245 et 1224
N 5421 4221
0 0000 0000
1 0001 0001
2 0010 0010
3 0011 0011
4 0100 1000
5 1000 1001
6 1001 1010
7 1010 1011
8 1011 1110
9 1100 1111
N 4221
0 0000
1 0001
2 0010
3 0011
4 0110
5 1001
6 1100
7 1101
8 1110
9 1111
N 8421 exc.3
0 0000 0011
1 0001 0100
2 0010 0101
3 0011 0110
<= Propriété d’auto complémentarité
4 0100 0111
5 0101 1000
6 0110 1001
7 0111 1010
8 1000 1011
9 1001 1100 16
Ce code est auto-complémentaire.
EXERCICE :
Soit le code 842̅1̅. Les deux bits de droite sont négatifs et valent respectivement -2 et -1.
a) Donnez la valeur du décimal 5 dans ce code.
b) Montrez que ce code est auto-complémentaire.
c) Ce code peut-il se déduire du code excédent 3 ?
RESOLUTION
a) 5=8-2-1 alors (5)10 1011
b) Ecriture de N (0 à 9) dans le code 842̅1̅
N 842̅1̅
0 0000
1 0111 <= Ce code est auto-complémentaire car il vérifie
2 0110 la propriété d’auto complémentarité.
3 0101
4 0100
5 1011
6 1010
7 1001
8 1000
9 1111
17
Code Cyclique
Un code est cyclique si et seulement si la dernière combinaison est adjacente à la première.
Remarque :
Un code peut être cyclique sans être continu et vice-versa.
Le code binaire réfléchi ou code GRAY est un code continu cyclique.
1 bit
0
2 bits 1
A
3 bits
A 0 0 0
0 0 1
0 1 0
0 1 1
B 1 0 0
1 0 1
1 1 0
1 1 1
18
4 bits
1 1 0 1
+ 1 1 0 1
Somme modulo 2 1 0 1 1 Ne pas tenir compte
19
Correspondance décimale Code Binaire
GRAY Naturelle
G3 G2 G1 G0
0 0000 0000
1 0001 0001
2 0011 0010
3 0010 0011
4 0110 0100
5 0111 0101
6 0101 0110
7 0100 0111
8 1100 1000
9 1101 1001
10 1111 1010
11 1110 1011
12 1010 1100
13 1011 1101
14 1001 1110
15 1000 1111
Exemple : 0 0000
1 0001
2 0011
3 0010
4 0110
5 0111
6 0101
7 0100
8 1100
9 1101
10 1111
11 1110
20
12 1010
13 1011
14 1001
15 1000 etc.
2.4.2) Parité
On peut rajout er aux 4 bits, un bit positionné de telle façon que le nombre total de bits a 1
soit en nombre impair.
21
On peut alors détecter, si un simple bit change, que le nombre de bits a 1 sur les cinq bits es
en quantité paire
Par contre si deux bits changent on ne peut pas détecter d’erreurs.
- Ce code détecte 1 erreur car si un bit change il n’y a plus deux bits a 1.
- deux erreurs peuvent être détecté si on a deux passages a 1 ou deux passages a 0 .cependant
il ne détecte pas 1 passage à 0 et un passage a 1.
Le code de Hamming permet de détecter et de corriger des erreurs d’un mot binaire de 4 bits.
Pour l’utilisation d’un code de Hamming de distance 3 ,on rajoute aux 4 bits d’information
,3bits qui sont fonction des 4 bits .
Ce code qui ne corrige qu’une erreur transmet 7bits pour 4bits d’information.
Position de bits 1 2 3 4 5 6 7
Noms de bits C1 c2 b4 c4 b3 b2 b1
0 1 0 1
Mot pointeur P4 p2 p1
Bit de parité C4 c2 c1
Le nombre binaire présent dans le mot p4 p2 p1 est la position du bit faux dans le mot
transmis .si 0 est trouvé cela veut qu’il n’y a aucune erreur.
Exemple : soit le mot transmis précédemment
0 100 101
Supposons qu’une erreur arrive sur le bit de position 6
On a alors le mot faux suivant 0 100 111
23
Position 1 2 3 4 5 6 7
Mot reçu 0 1 0 0 1 1 1
Nom du mot C1 c2 b4 c4 b3 b2 b1
=> p4 p2 p1 = 110 = 6(10) et c’est dans le bit de position six qui est faux. Donc ce bit de
position doit être changé pour avoir le bon mot. => Correction 0100101(ce qui était bien le
bit transmis).
Ce code de Hamming de distance 3 ne corrige qu’une erreur .Si deux bits sont erronés dans le
mot binaire on pourra les détecter mais pas les corriger (aucun des deux).
Le code hexadécimal est la représentation d’un nombre en base 16 . Son utilisation est très
rependue car il est très facile de passer du binaire au code hexadécimal (24=16)
Exemple : 0010 1010 => (2A)H
Le code EBCDIC est utilisé par quelques constructeurs (dont IBM) .c’est le deuxième code utilisé
pour représenter les caractères alphanumériques.
24
2.7) Arithmétique dans une base quelconque
2.7.1) Définitions
Bit
On appelle bit les symboles élémentaires de la base 2 c.-à-d. 0 et 1
Mot
C’est une suite de n bits.
Exemple : 100011001
Le 1er bit est le bit de poids le plus fort ou MSB (Most Significant Bit) et le dernier bit est le
bit de poids le plus faible ou LSB (Least Significant Bit).
Les tailles usuelles des mots sont : 4 bits (quartet), 8 bits (octet), 16 bits (mot), 32 bits (long
mot).
1111
+ 1111
= 11110
bit d’overflow
25
En électronique numérique lorsqu’on effectue une opération de soustraction, le système est
peu pratique à câbler d’où la transformation de la soustraction en addition.
Utilisation d’autres méthodes
* Méthode du Complément Restreint (CR)
* Méthode du Complément Logique (CL)
* Méthode du Complément à 1 (CP1) ; 0 → 1 et 1 → 0.
Ou
* Méthode du Complément Vrai (CV) = CR+1
* Méthode du Complément Arithmétique (CA) = CL+1
* Méthode du Complément à 2 (CP2) = CP1+1
26
2.7.6) Multiplication
PRINCIPE
0x0= 0 1x0=0
0x1=0 1 x1 = 1
Exemple :
110
x 10,1
110
+ 110 . .
1111,0
CAS PARTICULIER
La multiplication par une puissance de 2 revient à déplacer la virgule de n rang vers la droite.
L’opération est en fait un décalage à gauche :
3
Exemple : { 00010100 𝑋 2 => 1010 0000
20 𝑋 8 => 160
NB : Comme les nombres traités ont une taille limitée, un décalage trop important fait perdre
des bits significatifs. Le résultat est alors faux :
4
Exemple : { 00010100 𝑋 2 => 0100 0000
20 𝑋 16 => 64
27
2.7.7) Division
PRINCIPE
- Les conditions d’arrêt du calcul sont les mêmes qu’en décimal : obtention d’un nombre
exact ou précision désirée atteinte.
Exemples :
1 0 0 1 1 1 0
- 1 1 0 1, 1 Résultat exact
0 0 1 1 0
- 1 1 0
0 0 0
1 0 1 1 1
- 1 1 1, 1 0 1 . . .
0 1 0 0
- 1 1 Résultat approché
0 0 1 0 0
- 1 1
0 0 1
En effet, chacun des membres a été multiplié par une même puissance de 2 ( ici 22).
CAS PARTICULIER
La division par une puissance n de 2 revient à déplacer la virgule de n rangs vers la gauche.
L’opération est en fait un décalage à droite :
2
Exemple : { 00010100 ∶ 2 => 0000 0101
20 ∶ 4 => 5
28
NB : Là encore, un décalage trop important conduit à un résultat faux :
3
Exemple : { 00010100 ∶ 2 => 0000 0010
20 ∶ 8 => 2
« 2 » est la partie entière du résultat.
+5=5+ +|+5|
-5 =5- +|−5|
Exemple :
Base 2 +5 = 0101
-5 1101
+0 = 0000
-0 1000
addition câblés
Conséquences:2 operateurs {
Soustraction câblés
X=a3 a2 a1 a0
Exemple 1) : base 10
n=1
Exemple 2) :
CL(27) = 102-1-27=72
= 99-27=Nmax – 27 = 72
Nmax = 99
X=x3 x2 x1 x0
CV(X) = bn-x
𝐶𝑉(𝑁) = 𝐶𝑅(𝑁) + 1
{ 𝐶𝐴(𝑁) = 𝐶𝐿(𝑁) + 1
𝐶𝑝2 = 𝐶𝑝1
Exemple x = 10100111
CR(x) = 01011000
+ 1
01011001 = CV(x)
CONCLUSION
X –Y = X + (-Y)
X- Y = X + CV(Y)
30
2.7.9) Représentations des « Réels »
a) Virgile flottante
𝑏 = 𝑏𝑎𝑠𝑒
X = m.be { 𝑒 = 𝑒𝑥𝑝𝑜𝑠𝑎𝑛𝑡
𝑚 = 𝑚𝑎𝑛𝑡𝑖𝑠𝑠𝑒
Si m = m3 m2 m1 m0
Alors
X = m3 m2 m1 m0.be
Exemple :
1) Pour b = 10
2) Pour b = 16
X2 = AB,58 = AB58.16-2
X2 = 0,AB58.162
X = (± m ; e) de manière générale
b) Arithmétique flottante
- Multiplication
X = (mx ; ex)
Y = (mY ; eY)
mx et mY sont normalisées
1
< mx < 1
𝑏
𝑏 −1 < my < 1
31
P = X.Y = (mx ; ex) x (mY ; eY)
P = mx bex . my bey
𝑚𝑦=𝑚𝑋.𝑚𝑌
P={𝑒
𝑃=𝑒𝑋 + 𝑒𝑌
1
Résultat valuable si < mp < 1
𝑏
Normalisation du résultat
1 𝑚𝑋 = 𝑏 −1
𝑚𝑝 = 𝑏2 si {
𝑚𝑌 = 𝑏 −1
1
P = mpbep = 𝑏2 𝑏 𝑒𝑋+𝑒𝑋
1 𝑏
P = mpbep = 𝑏2x 𝑏 𝑏 𝑒𝑋+𝑒𝑋
1
P = mpbep = 𝑏 𝑒 𝑒𝑋+𝑒𝑌−1
- Quotient
x/y=(mx;ex)/(my ;ey)
𝑚 1
𝑚𝑞 = 𝑚 𝑞 𝑠𝑖 𝑚𝑞 ∈ [𝑏 ; 1[
Q{ 𝑞
𝑒𝑞 = 𝑒𝑋 − 𝑒𝑌
1
≤ 𝑚𝑌 < 1
𝑏
1 1
Si mX = et mY = 𝑏 alors mq = 1
𝑏
1
Q= x b x 𝑏 𝑒𝑋−𝑒𝑌
𝑏
1
Q= . 𝑏 𝑒𝑋−𝑒𝑌+1
𝑏
32
- Addition/ Soustraction flottante
X = mx.bex
Y = my. bey
S = X+ Y
1er Cas ex = ey
2e Cas eX > eY
ex – ey = n
ey – ex = – n
=> ms ≥ 1
𝑚𝑞 = (𝑚𝑋 + 𝑚𝑌 ). 𝑏 𝑛
S= {
𝑒𝑋 = 𝑒𝑋 − 𝑛
33
Exercice d’application
1) Multiplication
𝑋 = (0.3184 , 2)
(A) {
𝑌 = (0.2512 , 2)
𝑋. 𝑌 = (−0.4836 , 3)(0.5123 , 3)
(B) {
𝑋. 𝑌 = (0.247748 , 6) 𝑛𝑜𝑟𝑚𝑎𝑙𝑖𝑠é𝑒
2) Division
𝑋 = (0.3333 , 2)
(𝐴) {
𝑌 = (0.4251 , 1)
= (0.7840 , 1)
𝑋 = (0.4251 , 3)
(𝐵) {
𝑌 = (0.2465 , 2)
3) Addition
𝑋 = (0.4322 , 3)
(𝐴) {
𝑌 = (−0.3611 , 3)
S=X+Y
𝑋 = (0.2844 , 3)
(𝐵) {
𝑌 = (0.4162 , 1)
𝑋 = (0.6123 , 4)
(𝐶) {
𝑌 = (0.5243 , 1)
34
c) Virgule flottante dans l’ordinateur IBM
IBM
𝑂𝑐𝑡𝑒𝑡𝑠
Mot = 4.{ = 4 x 8 = 32 bits
𝑏𝑦𝑡𝑒𝑠
31 0
S C M
S = Signe de la mantisse
C = Caractéristique
M = mantisse
0 𝑠𝑖 𝑀 ≥ 0 𝐵𝑎𝑠𝑒 = 16 𝑚𝑜𝑢𝑟 𝑀
Signe { {
1 𝑠𝑖 𝑀 < 0 𝐵𝑎𝑠𝑒 = 2 𝑝𝑜𝑢𝑟 𝐶
M = m3 m2 m1 m0
C = binaire + exposant
1 mot = 32 bits
𝑏𝑎𝑠𝑒 = 16 𝑝𝑜𝑢𝑟 𝑀
C = 64 + e {
𝑏𝑎𝑠𝑒 = 2 𝑝𝑜𝑢𝑟 𝐶
S signe de la mantisse
0 𝑠𝑖 𝑀 ≥ 0
S={
1 𝑠𝑖 𝑀 < 1
Caractéristique C ≥ 0 inscrit sur 7 bits
0 ≤ C ≤ 27-1
0 ≤ 64 + e ≤ 127
- 64 ≤ e ≤ + 63
35
m sur 24 bits
m en hexadécimale = 4 bits
Application
Résultat
(1)10 = (1)16
1
x 16 = 0,1 x 16
16
m = 0,1 C = 64 e=1
C = 26 + 20
31 0
0 1000001 0001 0000 0000 0000 0000 0000
36
Chapitre 2: Logique combinatoire
COMMUTATIVITE
∀𝑥, 𝑦 ∊ 𝐸 𝑥+𝑦 =𝑦+𝑥
∀𝑥, 𝑦 ∊ 𝐸 𝑥⋅𝑦 =𝑦⋅𝑥
ASSOCIATIVITE
∀𝑥, 𝑦, 𝑧 ∊ 𝐸 𝑥 + (𝑦 + 𝑧) = (𝑥 + 𝑦) + 𝑧
DISTRIBUTIVITE
∀𝑥, 𝑦, 𝑧 ∊ 𝐸 𝑥 ⋅ (𝑦 + 𝑧) = 𝑥 ⋅ 𝑦 + 𝑥 ⋅ 𝑧 (1ère distributivité)
∀𝑥, 𝑦, 𝑧 ∊ 𝐸 𝑥 + 𝑦 ⋅ 𝑧 = (𝑥 + 𝑦) ⋅ (𝑥 + 𝑧) (2ème distributivité)
IDEMPOTENCE
∀𝑥 ∊ 𝐸‚ 𝑜𝑛 𝑎 𝑥 + 𝑥 = 𝑥 𝑒𝑡 𝑥 ⋅ 𝑥 = 𝑥
ELEMENTS ABSORBANTS
∀𝑥 ∊ 𝐸‚ ∃1 ∊ 𝐸‚ 𝑥 + 1 = 1
∃0 ∊ 𝐸‚ 𝑥 ⋅ 0 = 0
37
ABSORPTION
∀𝑥‚ 𝑦 ∊ 𝐸‚ 𝑥 + 𝑥 ⋅ 𝑦 = 𝑥 𝒊𝒎𝒑𝒍𝒊𝒒𝒖𝒆 𝒒𝒖𝒆: 𝑥. (1 + 𝑦) = 𝑥
∀𝑥‚ 𝑦 ∊ 𝐸‚ 𝑥 ⋅ (𝑥 + 𝑦) = 𝑥 𝒊𝒎𝒑𝒍𝒊𝒒𝒖𝒆 𝒒𝒖𝒆: 𝑥. 𝑥 + 𝑥. 𝑦 = 𝑥 + 𝑥. 𝑦 = 𝑥
(𝑥 + 𝑦) ⋅ (𝑥 + 𝑧) = 𝑥. 𝑥 + 𝑥. 𝑧 + 𝑥. 𝑦 + 𝑦. 𝑧
(𝑥 + 𝑦) ⋅ (𝑥 + 𝑧) = 𝑥. (1 + 𝑦 + 𝑧) + 𝑦. 𝑧 = 𝑥 + 𝑦. 𝑧
𝑿 ̅
𝑿
1
0
Logigramme
Table de Vérité
𝑿 𝒀 𝑿 𝑨𝑵𝑫 𝒀
0 0 0
0 1 0
1 0 0
1 1 1
Logigramme
𝑋 𝐴𝑁𝐷 𝑌 ≡ 𝑋. 𝑌
X.Y = 0 si et seulement si une au moins des variables d’entrée vaut 0.
38
Opérateur OR (OU inclusif)
Table de Vérité
𝑿 𝒀 𝑿 𝑶𝑹 𝒀
0 0 0
0 1 1
1 0 1
1 1 1
Logigramme
𝑋 𝑂𝑅 𝑌 ≡ 𝑋 + 𝑌
Equivalence
Table de Vérité
𝑿 𝒀 𝑿 ⊕ 𝒀
0 0 0
0 1 1
1 0 1
1 1 0
Logigramme
39
Logigramme à base de portes logiques divers
𝐷(𝑋, 𝑌) = 𝑋 ⊕ 𝑌 = 𝑋. 𝑌 + 𝑌. 𝑋 (𝑐 ′ 𝑒𝑠𝑡 𝑙𝑎 𝑠𝑜𝑚𝑚𝑒 𝑚𝑜𝑑𝑢𝑙𝑜 2 𝑖𝑒 𝑎𝑑𝑑𝑖𝑡𝑖𝑜𝑛 𝑠𝑎𝑛𝑠 𝑟𝑒𝑡𝑒𝑛𝑢𝑒)
Fonction Coïncidence
Table de Vérité
𝑿 𝒀 𝑿𝛩𝒀
0 0 1
0 1 0
1 0 0
1 1 1
Logigramme
𝐶(𝑋, 𝑌) = 𝑋𝛩𝑌 = 𝑋. 𝑌 + 𝑋. 𝑌
𝐷(𝑋, 𝑌) 𝑒𝑡 𝐶(𝑋, 𝑌)𝑠𝑜𝑛𝑡 𝑐𝑜𝑚𝑝𝑙é𝑚𝑒𝑛𝑡𝑎𝑖𝑟𝑒𝑠
40
Fonction NAND (NOT AND)
Table de Vérité
𝑿 𝒀 𝑿. 𝒀
0 0 1
0 1 1
1 0 1
1 1 0
Logigramme
Table de Vérité
𝑿 𝒀 𝑿+𝒀
0 0 1
0 1 0
1 0 0
1 1 0
Logigramme
41
Fonctions Inhibiteurs
̅
𝑋 ↑ 𝑌 = 𝑋 ⋅ 𝑌̅ → 𝑌 𝑖𝑛ℎ𝑖𝑏𝑒 𝑋 → {0 ∶ 𝑋𝑌 = 𝑋 𝑑𝑜𝑛𝑐 𝑌 𝑎𝑢𝑡𝑜𝑟𝑖𝑠𝑒 𝑋
1 ∶ 𝑋𝑌̅ = 0 𝑑𝑜𝑛𝑐 𝑌 𝑖𝑛ℎ𝑖𝑏𝑒 𝑋
Y ↑ 𝑋 = 𝑌 ⋅ 𝑋̅ → 𝑋 𝑖𝑛ℎ𝑖𝑏𝑒 𝑌
Table de Vérité
𝑿 𝒀 𝑿. 𝒀
0 0 0
0 1 0
1 0 1
1 1 0
Logigramme
42
LC3.2) Développement d’une fonction booléenne par rapport aux
maxtermes de ses variables
𝑓(𝑥1 , 𝑥2 , … , 𝑥𝑖 , … , 𝑥𝑛 ) = 𝑥̅𝑖 𝑓(𝑥1 , 𝑥2 , … ,0, … , 𝑥𝑛 ) + 𝑥𝑖 𝑓(𝑥1 , 𝑥2 , … ,1, … , 𝑥𝑛 )
Si 𝑥𝑖 = 1 𝑎𝑙𝑜𝑟𝑠 𝑥̅𝑖 = 0
𝑓(𝑥1 , 𝑥2 , … , 𝑥𝑖 , … , 𝑥𝑛 ) = 0 ∗ 𝑓(𝑥1 , 𝑥2 , … ,0, … , 𝑥𝑛 ) + 1 ∗ 𝑓(𝑥1 , 𝑥2 , … ,1, … , 𝑥𝑛 )
= 𝑓(𝑥1 , 𝑥2 , … ,1, … , 𝑥𝑛 )
Si 𝑥𝑖 = 0 𝑎𝑙𝑜𝑟𝑠 𝑥̅𝑖 = 1 (𝑚ê𝑚𝑒 𝑑é𝑐𝑜𝑚𝑝𝑜𝑠𝑖𝑡𝑖𝑜𝑛)
X Y I
0 0 1
0 1 1
1 0 0
1 1 1
43
𝑛 𝐶𝑖 = 0 ⇒ 𝐶𝑖 𝑚𝑖 = 0 ⇒ 𝑙𝑒 𝑚𝑖𝑛𝑡𝑒𝑟𝑚𝑒 𝑑𝑖𝑠𝑝𝑎𝑟𝑎î𝑡
𝐼 = ∑2𝑖=0−1 𝐶𝑖 𝑚𝑖 {
𝐶𝑖 = 1 ⇒ 𝐶𝑖 𝑚𝑖 = 𝑚𝑖 ⇒ 𝑙𝑒 𝑚𝑖𝑛𝑡𝑒𝑟𝑚𝑒 𝑎𝑝𝑝𝑎𝑟𝑎î𝑡
(On ne garde que les mintermes pour lesquels Ci = 1)
Table de Vérité
A B C MAJ
0 0 0 0 23 −1
0 0 1 0 𝑀𝐴𝐽 = ∑ 𝐶𝑖 𝑚𝑖
𝑖=0
0 1 0 0
0 1 1 1 On ne garde que les mintermes pour lesquels Ci = 1
1 0 0 0 𝑀𝐴𝐽 = 𝑎̅𝑏𝑐 + 𝑎𝑏̅𝑐 + 𝑎𝑏𝑐̅ + 𝑎𝑏𝑐
1 0 1 1
1 1 0 1
1 1 1 1
Cas de 2 variables
𝑓(𝑥, 𝑦) = [𝑥̅ + 𝑓(1, 𝑦)] ∗ [𝑥 + 𝑓(0, 𝑦)]
𝑓(0, 𝑦) = [𝑦̅ + 𝑓(0,1)] ∗ [𝑦 + 𝑓(0,0)]
𝑓(1, 𝑦) = [𝑦̅ + 𝑓(1,1)] ∗ [𝑦 + 𝑓(1,0)]
44
LC3.5) Développement d’une fonction booléenne en fonction des
maxtermes de ses variables
2𝑛 −1
Fonction quelconque I
X Y I
0 0 1
0 1 1
1 0 0
1 1 1
Résumé
𝑛 0 => 0. 𝑚𝑖 = 0 𝑙𝑒 𝑚𝑖𝑛𝑡𝑒𝑟𝑚𝑒 𝑑𝑖𝑠𝑝𝑎𝑟𝑎𝑖𝑡
a) 𝑓 = ∑2𝑖=0−1 𝐶𝑖 𝑚𝑖 𝐶𝑖 = {
1 => 1. 𝑚𝑖 𝑙𝑒 𝑚𝑖𝑛𝑡𝑒𝑟𝑚𝑒 𝑎𝑝𝑝𝑎𝑟𝑎𝑖𝑡
On ne garde que les mintermes pour lesquels 𝐶𝑖 = 1
𝑛
b) 𝑓 = ∏2𝑖=0−1(𝐶𝑖 + 𝑀𝑖 )
0 → 0 + 𝑀𝑖 = 𝑀𝑖 𝑙𝑒 𝑚𝑎𝑥𝑡𝑒𝑟𝑚𝑒 𝑎𝑝𝑝𝑎𝑟𝑎𝑖𝑡
𝐶𝑖 = {
1 → 1 + 𝑀𝑖 = 1 𝑙𝑒 𝑚𝑎𝑥𝑡𝑒𝑟𝑚𝑒 𝑑𝑖𝑠𝑝𝑎𝑟𝑎𝑖𝑡
On ne garde que les maxtermes pour lesquels 𝐶𝑖 = 0
45
LC4.1) La Table de Vérité (TV)
Elle suffit pour définir entièrement une fonction. Elle présente des inconvénients quand le
nombre de variables atteint 5.
Exemple : Fonction V = majorité de bits à 1
Table de Vérité
A B C V
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
𝑉 = ∑ 𝐶𝑖 𝑚𝑖
𝑖=0
46
*** Forme ΠΣ (𝑃𝑖, 𝑆𝑖𝑔𝑚𝑎)
Poids
22 21 20
A B C V Pondération suivant les puissances de 2
valeur
décimale
0 0 0 0 0
𝑉 = 𝑅(3, 5, 6, 7) = Σ(3, 5, 6, 7)
1 0 0 1 0
2 0 1 0 0
3 0 1 1 1 Combinaison 3
4 1 0 0 0
5 1 0 1 1 Combinaison 5
6 1 1 0 1 Combinaison 6
7 1 1 1 1 Combinaison 7
Cette représentation numérique est canonique par définition (TV). Il est indispensable de s’en
tenir toujours à un ordre de pondération croissant de variables ou de préciser l’ordre choisi.
↓ ↓ ↓ ↓ ↓
↓ ↓ ↓ ↓ ↓
13 9 4 1 15
𝑭 = 𝑹(𝟏, 𝟒, 𝟗, 𝟏𝟑, 𝟏)
On écrit sous chaque forme les combinaisons binaires correspondants puis ont attribue les
poids 8 4 2 1 respectivement à A B C et D.
47
LC4.3) Représentation Numérique Binaire par Image Caractéristique
On appelle image caractéristique ou vecteur caractéristique, la suite des valeurs 0 et 1 prises
par cette fonction pour toutes les combinaisons des variables données dans l’ordre du code
binaire naturel : c’est en fait le résultat de la TV écrit en ligne.
÷ 𝑉 = 0001 0111
(𝑠𝑒 𝑙𝑖𝑡 𝐼𝑚𝑎𝑔𝑒 𝐶𝑎𝑟𝑎𝑐𝑡é𝑟𝑖𝑠𝑡𝑖𝑞𝑢𝑒 𝑑𝑒 𝑉)
INCONVENIENTS : Aucun moyen d’affirmer que le résultat obtenu est le plus simple
possible.
Exemple : 𝐹1 = (𝐴 + 𝐶)(𝐴 + 𝐵 + 𝐶) = 𝐴 + 𝐶
𝐹2 = 𝐴𝐶 + 𝐴̅𝐵 + 𝐵𝐶 = 𝐴𝐶 + 𝐴̅𝐵 + 𝐵𝐶(𝐴 + 𝐴̅) = 𝐴𝐶(1 + 𝐵) + 𝐴̅𝐵(1 + 𝐶) = 𝐴𝐶 + 𝐴̅𝐵
00 → 0
01 → 1
11 → 3
10 → 2
48
TK à 3 Variables
TK à 4 Variables
TK à 5 variables
NB : Range valeur décimale
49
Après avoir effectués tous les regroupements les plus simples possibles, il faut choisir les plus
indispensables c’est-à-dire ceux sans lesquels la fonction simplifiée n’est pas entièrement
définie et en effectuer la réunion. Il faut que tous les mintermes pour lesquels la fonction vaut
1 figure ou soient inclus dans les termes de la forme simplifiée : on dit que tous les sommets
sont couverts (tous les 1 doivent être pris).
TD COURS
Propriétés Matricielles du Tableau de Karnaugh
𝐺 = 𝐴̅ + 𝐶̅
On peut poser {𝐻 = 𝐴̅ + 𝐵̅ = ̅̅̅̅
𝐴𝐵
𝐾 =𝐵+𝐷 ̅
REPONSE :
𝐹̅ = 𝐺. [𝐻. 𝐾
̅+𝐻
̅ . 𝐾] = 𝐺. [𝐻⨁𝐾]
̅ + 𝐴𝐶 + 𝐴̅𝐵
𝐹 = 𝐵̅ 𝐷
Remplissage du Tableau de Karnaugh à 5 Variables
𝐹 = 𝐴̅𝐵𝐶𝐷
̅ 𝐸 + 𝐴𝐵̅ 𝐶̅ 𝐷
̅ 𝐸 + 𝐴𝐵𝐶̅ 𝐷𝐸 + 𝐴̅𝐵𝐶𝐷𝐸̅ + 𝐴̅𝐵̅ 𝐶̅ 𝐷
̅ 𝐸 + 𝐴𝐵𝐶𝐷𝐸̅ + 𝐴𝐵𝐶𝐷𝐸
Simplification avec le Tableau de Karnaugh
𝐹1 = 𝐴𝐵𝐶 + 𝐴𝐶̅ + 𝐴̅𝐵̅ 𝐶̅ 𝐷
̅ + 𝐴𝐵𝐶̅ + 𝐴̅𝐶
𝐹2 = 𝑅(0, 3, 4, 5, 6, 8, 10, 11, 13)
50
̅̅̅
𝐴𝐵 + {𝐴𝐵 𝐷
𝐹1 = 𝐴𝐶̅ + 𝐴̅𝐶 + { 𝐵̅ 𝐶̅ 𝐷
̅
̅̅̅
𝐵𝐶 + {𝐴𝐵 𝐷
𝐵 𝐶̅ 𝐷
̅ ̅
𝐴𝐵̅ 𝐷 ̅ + 𝐴̅𝐶̅ 𝐷
𝐹2 = 𝐵𝐶̅ 𝐷 + 𝐴̅𝐵𝐷
̅ + 𝐵̅ 𝐶𝐷 + {
̅ + { 𝐴𝐵̅ 𝐶
𝐵̅ 𝐶̅ 𝐷
𝐴𝐵̅ 𝐷
̅
51
LC6) Application de la méthode de karnaugh
Fonction
Exemple
F1 = AB + 𝐵̅C + 𝐴̅C𝐷
̅ + C𝐷
̅
F1 est de la forme SP
̅ /C) / (𝑨
F1= [(A/B) / (𝑩 ̅ /C/𝑫
̅ ) / (C/𝑫
̅ )]
52
̅C̅ + CDE
F2 = A + B ̅ /(B
̅ = [A ̅/C̅)/(C/D/E
̅)]
̅B
F3 = AB + A ̅/B
̅ + CD = [(A/B)/(A ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅)/(C/D)] = {[((A/B)/(A ̅/B̅)]/(C/D)}
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅/(C/D)] = {[(A/B)/(A
F3 = X + CD = [X ̅ /B
̅)]/(C/D)}
𝐹4 = 𝐵̅ . (𝐶 + 𝐷). (𝐴 + 𝐶̅ + 𝐷
̅ ) = {𝐵 ↓ (𝐶 ↓ 𝐷) ↓ (𝐴 ↓ 𝐶̅ ↓ 𝐷
̅ )}
54
Réponse
Ec Eb Esu Esel Sc Sb Ssu Ssel I
𝑆𝑠𝑢 = 𝐸𝐶 𝐸̅𝑏 𝐸𝑠𝑢 𝐸̅𝑠𝑒𝑙
0 0 0 0 - - - - -
0 0 0 1 0 0 0 0 1 𝑆𝑠𝑒𝑙 = 𝐸𝑏 𝐸̅𝑐 𝐸𝑠𝑒𝑙 𝐸̅𝑠𝑢
0 0 1 0 0 0 0 0 1 𝑆𝑐 = 𝐸𝑐 𝐸̅𝑏 𝐸̅𝑠𝑒𝑙
0 0 1 1 0 0 0 0 1
𝑆𝑏 = 𝐸𝑏 𝐸̅𝑐 𝐸̅𝑠𝑢
0 1 0 0 0 1 0 0 0
0 1 0 1 0 1 0 1 0 𝐼 = 𝐸𝑐 𝐸𝑏 + 𝐸̅𝑐 𝐸𝑠𝑢 + 𝐸̅𝑏 𝐸𝑠𝑒𝑙
0 1 1 0 0 0 0 0 1
0 1 1 1 0 0 0 0 1
1 0 0 0 1 0 0 0 0
1 0 0 1 0 0 0 0 1
1 0 1 0 1 0 1 0 0
1 0 1 1 0 0 0 0 1
1 1 0 0 0 0 0 0 1
1 1 0 1 0 0 0 0 1
1 1 1 0 0 0 0 0 1
1 1 1 1 0 0 0 0 1
Le DCB est la manière de coder les 10 premiers digits (de 0 à 9) sur 4 bits.
Un regroupement de 2n élimine n variables
Comme le code gray peut aller jusqu’à 16 (4 variables) alors à partir de
R(10, 11, 12, 13, 14, 15) on aura R𝜙(10, 11, 12, 13, 14, 15)
Ainsi F = R(0, 1, 2, 3, 4, 5, 6, 7, 8, 9) + R𝜙(10, 11, 12, 13, 14, 15)
55
GRAY DCB
G3 G2 G1 G0 b3 b2 b1 b0
0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 1
0 0 1 1 0 0 1 0
0 0 1 0 0 0 1 1
0 1 1 0 0 1 0 0
0 1 1 1 0 1 0 1
0 1 0 1 0 1 1 0
0 1 0 0 0 1 1 1
1 1 0 0 1 0 0 0
1 1 0 1 1 0 0 1
Cin A B R Cout
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
𝑅 = 𝐶𝑖𝑛 ⊕ 𝐴 ⊕ 𝐵 = ̅̅̅̅
𝐶𝑖𝑛 𝐴̅𝐵 + ̅̅̅̅
𝐶𝑖𝑛 𝐴𝐵̅ + 𝐶𝑖𝑛 𝐴̅𝐵̅ + 𝐶𝑖𝑛 𝐴𝐵
̅̅̅̅
𝑅 = {(𝐶 ̅ ̅̅̅̅ ̅ ̅ ̅
𝑖𝑛 /𝐴/𝐵)/(𝐶𝑖𝑛 /𝐴/𝐵 )/(𝐶𝑖𝑛 /𝐴/𝐵 )/(𝐶𝑖𝑛 /𝐴/𝐵)}
56
EXERCICE : Un Soustracteur Binaire
57
EXERCICE :
58
LC8) Les circuits d’aiguillages et de transformation de code
LC8.1) Décodage
Un aiguilleur d’information
Un convertisseur de code
Comme « aiguilleur d’information » : il transmet l’information présente sur une entrée vers
une sortie choisie dans un groupe de N sorties(a). Dans ce type de fonction le décodeur est
aussi appelé démultiplexeur.
Comme « convertisseur » il transforme un décodeur comporte :
N entrées d’adresses
Une ou plusieurs entrées d’informations
2n sorties
Quand l’adresse prend la valeur i, la sortie de rang i est active.
59
LC8.1.2) Réalisation d’un décodeur simple
Soit à réaliser un décodeur 1 parmi 4(ou décodeur 2 vers 4), sortie active à l’état haut.
Le circuit dispose d’une entrée de validation V active à l’état bas.
TV
V E1 E2 S0 S1 S2 S3
0 0 1 0 0 0
0 0 1 0 1 0 0
1 0 0 0 1 0
1 1 0 0 0 1
1 X X 0 0 0 0
Equations Symbole
S0=𝑉̅ ̅̅̅
𝐸1 ̅̅̅
𝐸0
S1=𝑉̅ ̅̅̅
𝐸1 𝐸0
S2=𝑉̅ 𝐸1 ̅̅̅
𝐸0
S3=𝑉̅ 𝐸1 𝐸0
Logigramme
60
Réalisation d’un décodeur parmi 8
Réalisons avec des décodeurs (boitiers) 1 parmi 4 donc 2 boitiers, le décodeur 1 parmi 8.
2 𝑏𝑜𝑖𝑡𝑖𝑒𝑟𝑠 1 𝑝𝑎𝑟𝑚𝑖 4
{3 𝑒𝑛𝑡𝑟é𝑒𝑠 𝑑 𝑎𝑑𝑟𝑒𝑠𝑠𝑒𝑠, 𝑙𝑎 𝑡𝑟𝑜𝑖𝑠𝑖𝑒𝑚𝑒 𝑒𝑛𝑡𝑟é𝑒 𝑠𝑒𝑟𝑎 𝑙 ′ 𝑒𝑛𝑡𝑟é𝑒 𝑑𝑒
′
Table de fonctionnement
C B A 𝑌0 𝑌1 𝑌2 𝑌3 𝑌4 𝑌5 𝑌6 𝑌7
0 0 0 1 0 0 0 0 0 0 0
0 1 0 1 0 0 0 0 0 0
1 0 0 0 1 0 0 0 0 0
1 1 0 0 0 1 0 0 0 0
1 0 0 0 0 0 0 1 0 0 0
0 1 0 0 0 0 0 1 0 0
1 0 0 0 0 0 0 0 1 0
1 1 0 0 0 0 0 0 0 1
DEC 1/8
Schéma du montage
61
Pas d’entrée de validation il existe toujours une sortie parmi les 8 qui est valide cela
peut être un inconvenient
Soit vers v1 entrée de validation du boitier 1
Soit vers v2 entrée de validation du boitier 2
A l’aide de l’entrée C on sélectionnera l’un ou l’autre des 2 boitiers
S C V1 V2 Commentaire
0 0 1 1 Aucun boitier n’est sélectionné tant que S=0
0 1 1 1
1 1 0 0 1 Sélection de B1
1 1 1 0 Sélection de B2
Alors ona :
V1 =S.C
̅̅̅̅̅
V2 =𝑆. 𝐶
62
𝐵3 𝐸1 𝐸0 or 𝑉𝐵3 =𝑆2 𝐵0 𝑉𝐵3 =𝑆2 𝐵0
̅̅̅̅
Y9 = 𝑉 ̅̅̅ ̅ ̅̅̅̅
𝑆2 𝐵0=𝑆̅ ̅̅̅
𝐸2 𝐸3
LC8.2) Multiplexage
Un multiplexeur aiguille une information choisie dans un groupe de N entrées et la dirige vers
une seule sortie. Un Mux comporte 2n entrées d’informations, n entrées d’adresses et une
sortie. Quand l’adresse prend la valeur i, la sortie prend l’état de l’entée de rang i.
63
Table de fonctionnement
S C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
0 X X X 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0
0 0 1 0 1 0 0 0 0 0 0
1 0 0 0 1 0 0 0 0 0
1 1 1 0 0 0 1 0 0 0 0
0 0 0 0 0 0 1 0 0 0
0 1 0 0 0 0 0 1 0 0
1 1 0 0 0 0 0 0 0 1 0
1 1 0 0 0 0 0 0 0 1
64
LC8.2.2) Réalisation d’un multiplexeur 4 voies (avec une entrée de validation V
active à l’état bas)
Réaliser un Mux 4 vers 1
Disposant d’une entrée de validation V active niveau bas
Et une sortie non complémentée
V 𝐴1 𝐴0 S
1 X X 0
0 0 𝐸0
0 0 1 𝐸1
1 0 𝐸2
1 1 𝐸3
̅̅̅1 ̅̅̅
Equation: S=𝑉̅ [(𝐴 ̅̅̅1 𝐴0 )𝐸1 + (𝐴
𝐴0 )𝐸0 + (𝐴 ̅̅̅0 𝐴1 )𝐸2 + (𝐴0 𝐴1 )𝐸3 ]
Logigramme
Symbole logique
65
Pratique
1. Réalisation d’un multiplexeur 16 vers 1 à l’aide d’un multiplexeur 4 vers 1.
Le circuit à réaliser fera intervenir nécessairement 4 boitiers de Mx 4 vers 1 pour fournir 16
entrées puis un décodeur (74138 par exemple) devra servir pour la sélection alternative de
chacun des boitiers.
2. Réalisation d’un multiplexeur du type 32 vers 1 nécessite une adresse de 5 bits X, Y,
Z, T et U.
Les poids faibles Z,T et U vont réaliser 4 Mx partiels de type 8 vers 1(74LS151) donnant 4
informations. Les poids forts X, Y font un second Mx de type 4 vers & à partir des
informations𝑔0 , 𝑔1 , 𝑔2 𝑒𝑡 𝑔3 .
(Utiliser 4 boitiers 74LS151)
3. Avec le LS74151 réaliser la fonction suivante :
F=𝑍̅𝑌̅𝑋 + 𝑍̅𝑌𝑋̅ + 𝑍̅ 𝑌𝑋 + 𝑍𝑌𝑋̅
66
Le circuit à réaliser fera nécessairement intervenir 4 boitiers de Mx 4 voies pour
fournir 16 entrées.
Puis un décodeur (74138 par exemple) devra servir pour la sélection alternative de
chacun des boitiers.
Réalisation de la fonction
F=𝑍̅𝑌̅𝑋 + 𝑍̅𝑌𝑋̅ + 𝑍̅𝑌𝑋 + 𝑍𝑌𝑋̅
𝐶=𝑍
{𝐵 = 𝑌 𝐹 = 𝐶̅ 𝐵̅ 𝐴 + 𝐶̅ 𝐵𝐴̅ + 𝐶̅ 𝐵𝐴 + 𝐶𝐵𝐴̅
𝐴=𝑋
On aura :
𝑆̅ = (𝐶̅ 𝐵̅ 𝐴)𝐸
̅̅̅1 + (𝐶̅ 𝐵𝐴̅)̅̅̅
𝐸2 + (𝐶̅ 𝐵𝐴)𝐸
̅̅̅3 + (𝐶𝐵𝐴̅) ̅̅̅
𝐸6
Ainsi F=𝑆̅ si ̅̅̅
𝐸1 = ̅̅̅
𝐸2=̅̅̅̅
𝐸3 = ̅̅̅
𝐸6 = 1
𝐸1 = 𝐸2 = 𝐸3 = 𝐸6 = 0
C'est-à-dire {
𝐸0 = 𝐸4 = 𝐸5 = 𝐸7 = 1
67
LC8.3) Démultiplexeur
Un démultiplexeur réalise la fonction inverse du multiplexeur. Elle a une entée unique et n
entrées d’adresses.
Son rôle est de relier l’unique entrée à une seule sortie parmi les 2n sorties telles que le
numéro de la sortie connectée à l’unique entrée est la valeur décimale du code binaire pur
admis sur les n entrées d’adresses. Il possède éventuellement une entrée de validation du
circuit.
68
Démultiplexeur 1 vers 2n
̅̅̅1 ̅̅̅
S0= Cs(𝐴 𝐴2 )E
̅̅̅1 𝐴0 )E
S1= Cs(𝐴
̅̅̅0 𝐴1 )E
S0= Cs(𝐴
S0= Cs(𝐴1 𝐴0 )E
69
Symbole
70
Remarque:
Expression de sortie d’un démultiplexeur
Si= Ki E avec Ki le minterme d’adresse dont l’expression binaire vaut l’indice i.
Exemple : i=5, K5= C𝐵̅A donc S5= (C𝐵̅A)E
D’une manière générale, les DEMUX sont réalisés à l’aide de décodeurs car leurs
fonctionnements sont analogues.
Le DEMUX apparait comme un décodeur à entrée conditionnelle (ie au lieu que la sortie
sélectionnée prenne la valeur logique 1 par exemple) elle prend plutôt la valeur se trouvant
sur l’entrée conditionnelle.
(En CI tous les décodeurs sont en même temps des DEMUX).
Exemple : 74138 décodeur−démultiplexeur 3 vers 8.
Mode décodeur
71
Mode démultiplexeur
Ou
Codeurs
Codeur 2n vers n
72
Réalisation d’un codeur 4 vers 2
Table de vérité
𝐸3 𝐸2 𝐸1 𝐸0 𝑆1 𝑆0
0 0 0 1 0 0
0 0 1 0 0 1
0 1 0 0 1 0
1 0 0 0 1 1
̅̅̅1 𝐸
𝑆1 = 𝐸 ̅̅̅0
T.K équations de 𝑆1 et 𝑆2 {
𝑆2 = ̅̅̅
𝐸2 ̅̅̅
𝐸0
73
𝑆1
𝐸1 𝐸0 00 01 11 10
𝐸3 𝐸2
00 X 0 X 0
01 1 X X X
11 X X X X
10 1 X X X
𝑆1 = ̅̅̅
𝐸1 𝐸̅̅̅0
𝑆0
11 10
𝐸3 𝐸2 𝐸1 𝐸0 00 01
00 X 0 X 1
0 X X X
01
X X X X
11
1 X X X
10
̅̅̅2 𝐸
𝑆0 = 𝐸 ̅̅̅0
74
Pour éviter certaines ambiguïtés dans l’utilisation du circuit on doit définir une priorité
d’une entrée par rapport aux autres quand plusieurs entrées sont validées à la fois : ce type de
circuit est appelé codeur de priorité ou encodeur.
Très généralement pour un encodeur lorsque plusieurs entrées sont actives. La priorité
est donnée à l’entrée de numéro supérieur.
TV: logigramme
𝑆1 = 𝐸3 + 𝐸2
̅̅̅2 𝐸1
𝑆2 = 𝐸3 + 𝐸
75
Lorsqu’aucune entrée n’est active on a 𝑆1 𝑆0 =00
Tout se passe comme si l’entrée 𝐸0 était activée.
Pour éviter cette ambiguïté soit :
- les circuits codeurs disposent très souvent d’une sortie additionnelle C 0 /carry permettant
d’après son niveau logique de distinguer ces 2 cas de figure soit
Remarque :
L’étude est effectuée pour seulement une entrée valide à la fois
Analyse du fonctionnement du montage si plusieurs entrées sont valides
Pour 𝐸3 𝐸2 𝐸1 𝐸0 = 1100
Dans le logigramme on a 𝑆1 𝑆0 =10. Ce code est normalement destiné à la combinaison
𝐸3 𝐸2 𝐸1 𝐸0 = 0100
Pour 𝐸3 𝐸2 𝐸1 𝐸0 = 0011
Code normalement destiné à 𝐸3 𝐸2 𝐸1 𝐸0 = 0001
⟹il ressort de cette analyse une certaine ambigüité dans l’utilisation du circuit.
76