R A D P
Ministère de l’enseignement supérieur et de la Recherche scientifique
C entre U niversitaire N our B achir E l B ayadh I nstitut des S ciences
D épartement de T echnologie
P olycopié P édagogique
Intitulé
L ogique combinatoire et séquentielle
Présenté par :
DrARDJANI Fatima Maître de conférence classe "B"
DrBELKHEIR Mohammed Maître de conférence classe "B"
Année Universitaire : 2020/2021
L
e cours "Logique combinatoire et séquentielle" est principalement destiné aux étudiants de laDeuxième année Licence "Génie électrique " avec ses trois spécialités " Electronique ", " Electrotechnique " et " Télécommu- nications". Il permet à l’apprenant de saisir les notions de base sur la conception des applications combinatoires et séquentielles. A l’issue de ce cours, l’apprenant acquerra les différents outils utilisés pour concevoir et réaliser des circuits et applications logiques combinatoires et séquentielles qui lui serviront par la suite dans son domaine de spécialité (commande de processus, systèmes de communication, contrôle industriel, etc.), à sa- voir la table de vérité, le tableau de Karnaugh et les différentes mémoires comme les bascules, les compteurs, les registres.Avant de rentrer dans le vif du sujet, l’apprenant abordera à travers le premier chapitre les bases du système binaire et du codage ainsi que les opérations logiques et la simplification en utilisant l’algèbre de boule.
Ensuite étape par étape, à travers le contenu des chapitres qui suivent, l’apprenant approfondira ses conséquences jusqu’à ce qu’il sera capable de réaliser des circuits combinatoires et séquentielles relatifs à son do- maine de spécialité.
Prérequis :
Aucun prérequis n’est indispensable pour suivre le présent cours.
L’apprenant entamera préalablement les notions de base qui lui serviront de maitriser la conception et la réalisation des circuits logiques combina- toires et séquentiels.
O bjectifs de l ’ enseignement :
A l’issue de ce cours, l’étudiant aura atteint les objectifs suivants : 1. Apprendre l’algèbre de Boole et la simplification des fonctions lo-
giques.
2. Savoir les circuits logiques élémentaires (portes logiques, bascules).
3. Différencier entre les circuits logiques combinatoires et séquentiels usuels.
4. Réaliser des circuits logiques combinatoires et séquentiels relatifs à son domaine de spécialité.
Table des matières v
Liste des figures vii
Liste des tableaux viii
Introduction générale 1
Partie I : Système de numération et simplification des
fonctions logiques 4
1 Systèmes de numération et Codage de l’information 5
1.1 Codes pondérés . . . 7
1.1.1 Système binaire . . . 7
1.1.2 Système octal . . . 8
1.1.3 Système hexadécimal. . . 9
1.1.4 Système BCD . . . 10
1.1.5 Binaire signé et non signé . . . 11
1.1.6 Changement de base ou conversion . . . 11
1.2 Codes non pondérés . . . 11
1.2.1 Code GRAY . . . 12
1.2.2 Code ASCII . . . 12
1.2.3 Codes détecteurs et correcteurs d’erreurs . . . 13
1.3 Opérations arithmétiques dans le code binaire . . . 16
1.3.1 Addition . . . 16
1.3.2 Soustraction . . . 16
1.3.3 Multiplication. . . 16
1.3.4 Division . . . 17
2 Algèbre de Boole et Simplification des fonctions lo- giques 18 2.1 Variables et fonctions logiques (OR, AND, NOR, NAND, XOR) . . . 19
2.1.1 Variables et fonctions logiques . . . 19
2.1.2 Portes logiques . . . 19
2.2 Lois de l’algèbre deBoole. . . 22
2.2.1 Théorème de Morgan . . . 22
2.2.2 Loi d’absorption . . . 22
2.2.3 Loi d’allègement . . . 23
2.3 Représentation des fonctions logiques . . . 23
2.3.1 Tables de vérité . . . 23
2.4.1 Méthode algébrique . . . 25
2.4.2 Méthode de Karnaugh.. . . 26
PartieII : LogiqueCombinatoire 29 3 Circuits combinatoires 30 3.1 CIRCUIT ARITHMETIQUE . . . 31
3.1.1 Additionneur . . . 31
3.1.2 Soustracteur . . . 33
3.1.3 Comparateur . . . 34
3.2 Codeur . . . 35
3.3 Décodeur . . . 36
3.4 Multiplexeur . . . 37
3.5 Démultiplexeur . . . 38
PartieIII : LogiqueSéquentielle 41 4 Les bascules 42 4.1 Introduction . . . 43
4.2 SystèmeSynchrone/ Asynchrone . . . 44
4.3 Bascules . . . 45
4.3.1 BasculesRS . . . 45
4.3.2 Synchronisation de la bascule RS (RS-T ou RS-H). . . 46
4.3.3 Bascule JK synchrone. . . 47
4.3.4 Bascule D . . . 48
4.3.5 Bascule T . . . 49
4.3.6 Bascule Maitre-Esclave . . . 50
4.4 Application des bascules . . . 51
5 Les compteurs 52 5.1 Classification des compteurs . . . 53
5.2 Réalisation de compteurs binaires asynchrones mo- dulo(n) . . . 53
5.2.1 Compteurs asynchrones à cycle complet . . . 53
5.2.2 Compteurs asynchrones à états (cycles) incomplets . . . . 54
5.3 Réalisation de compteurs binaires synchrones . . . 55
5.3.1 Compteurs synchrones à cycle complet . . . 56
5.3.2 Compteurs synchrones à cycle Incomplet . . . 57
5.4 Compteurs à séquences régulières/irrégulières . . . . 58
5.5 Compteurs programmables . . . 60
6 Les registres 62 6.1 Définition. . . 63
6.2 Registre à décalage. . . 63
6.2.1 Registre à décalage à droite . . . 63
6.2.2 Registre à décalage à gauche . . . 64
Conclusion générale 66
Bibliographie 67
1.1 Codage de l’information . . . 6
1.2 Bloc logique élémentaire avec k=n-m bits de correction . . . 14
1.3 Exemple de code de Hamming . . . 15
2.1 Symbole de la porte logique ET (AND) . . . 20
2.2 Symbole de la porte logique OU (OR) . . . 20
2.3 Symbole électrique de la porte logique NON (NOT) . . . 21
2.4 Symbole électrique de la porte OU-exclusif (XOR) . . . 21
2.5 Symbole électrique de la porte NON-ET (NAND) . . . 22
2.6 Symbole de la porte NON-OU (NOR) . . . 22
3.1 Schéma d’un additionneur (4bits) . . . 31
3.2 Schéma d’un demi-Additionneur (2bits) . . . 31
3.3 Fonction logique et circuit d’un demi additionneur2bits . . 31
3.4 Schéma d’un additionneur complet (2bits) . . . 32
3.5 Circuit logique d’un additionneur complet (2bits) . . . 32
3.6 Circuit logique d’un demi-soustracteur (2bits) . . . 33
3.7 Circuit logique d’un soustracteur complet (2bits) . . . 34
3.8 Schéma d’un comparateur . . . 34
3.9 Circuit logique d’un comparateur . . . 35
3.10 Circuit logique d’un codeur décimal-BCD . . . 36
3.11 Schéma d’un multiplexeur . . . 37
3.12 Circuit logique d’un Multiplexeur4vers1 . . . 38
3.13 Schéma d’un démultiplixeur . . . 39
3.14 Circuit d’un Démultiplexeur1vers4. . . 40
4.1 Structure d’un système combinatoire . . . 43
4.2 Structure simplifiée d’un système séquentiel . . . 44
4.3 Schéma de la bascule RS . . . 45
4.4 Table de Karnaugh de la bascule RS . . . 46
4.5 Bascule SR synchronisée par front d’horloge . . . 46
4.6 Diagramme temporel de la Bascule SR synchronisée par front montant . . . 47
4.7 Bascule JK synchrone . . . 47
4.8 Table de Karnaugh de la bascule JK . . . 48
4.9 Diagramme temporel de la Bascule JK synchronisée par front montant . . . 48
4.10 Schéma du circuit de la bascule D à partir de la bascule RS 49 4.11 Diagramme temporel de la Bascule D synchronisée par front montant . . . 49 4.12 Schéma du circuit de la bascule T à partir de la bascule JK . 50
4.15 Bascule JK Maitre-Esclave . . . 51
5.1 Caractéristiques principales des compteurs . . . 53
5.2 Circuit logique d’un compteur asynchrone modulo4 . . . . 54
5.3 Diagramme temporel pour un compteur asynchrone mo- dulo4 . . . 54
5.4 Circuit logique d’un compteur asynchrone modulo9 . . . . 55
5.5 Circuit logique d’un compteur modulo8synchrone complet 56 5.6 Circuit logique d’un compteur modulo5synchrone Incomplet 58 5.7 Schéma d’un compteur à séquences irréguliers . . . 59
5.8 Diagramme temporel pour un compteur asynchrone pro- gressif et régulier modulo6 . . . 60
5.9 Circuit intégré74HC163(compteur programmable) . . . 60
6.1 Circuit logique d’un registre à décalage à droite à04 bits à base des bascules D . . . 64
6.2 Circuit logique d’un registre à décalage à gauche à04bits à base des bascules JK . . . 65
L iste des tableaux
1.1 Conversion du décimal au code GRAY . . . 121.2 Conversion du décimal au code ASCII . . . 13
1.3 Exemple du code de"parité paire ou impaire" . . . 14
2.1 Table de vérité de la fonction produit (AND) . . . 19
2.2 Table de vérité de la fonction somme (OU (OR)) . . . 20
2.3 Table de vérité de la fonction NON (NOT) . . . 20
2.4 Table de vérité de la fonction OU-exclusif (XOR) . . . 21
2.5 Table de vérité de la fonction NAND . . . 21
2.6 Table de vérité de la fonction NON-OU (NOR) . . . 22
2.7 Fonction logique complètement définie . . . 23
2.8 Fonction logique incomplète (partiellement définie) . . . 23
2.9 Mintermesmiet maxtermesMAd’une fonction à3variables A, B et C . . . 24
2.10 Mintermesmi d’une fonction à3variables A, B et C . . . . 24
2.11 Maxtermes MA d’une fonction à2variables A et B . . . 25
3.1 Table de vérité d’un additionneur complet (2bits) . . . 32
3.2 Table de vérité d’un Demi-soustracteur (2bits) . . . 33
3.3 Table de vérité d’un Soustracteur complet (2bits) . . . 33
3.4 Table de vérité d’un comparateur . . . 34
3.5 Table de vérité d’un Codeur décimal-BCD . . . 35
4.1 Table des états de la bascule RS . . . 45
4.2 Table de transitions "excitation" de la bascule RS . . . 46
4.3 Table des états de la bascule JK . . . 47
4.4 Table de transitions "excitation" de la bascule JK . . . 48
4.5 Table de vérité de la bascule D à partir de la bascule RS . . 49
4.6 Table de vérité de la bascule T à partir de la bascule JK . . . 50
5.1 Table des états d’un compteur asynchrone modulo4 . . . . 54
5.2 Table des états d’un compteur asynchrone modulo9 . . . . 55
5.3 Table d’excitation de la bascule JK . . . 56
5.4 Table des états d’un compteur modulo8synchrone complet 56 5.5 Table d’excitation de la bascule T . . . 57
5.6 Table des états d’un compteur modulo5synchrone Incomplet 57 5.7 Table d’excitation de la bascule JK . . . 58
5.8 Table des états d’un compteurs à séquences irréguliers . . . 58
5.9 Table des états d’un compteur asynchrone progressif et ré- gulier modulo6 . . . 59
6.1 Table des états d’un registre à décalage à droite à 04 bits à base des bascules D . . . 64
6.2 Table des états d’un registre à décalage à gauche à04bits à base des bascules JK . . . 65
La logique combinatoire et séquentielle demeure l’élément de base de la réalisation des circuits numériques dans différents domaines indus- triels. On peut dénombrer le domaine informatique où l’ordinateur est composé d’une multitude de circuits (processeur, mémoires, registres), essentiellement basés sur les circuits séquentiels (bascules). D’autres domaines reposent sur ces types de circuits tels que la robotique, l’élec- tronique, les processus industriels, les circuits de commandes, etc. Cet teomni présence rend inévitable l’étude des circuits logiques dans le cur- sus des étudiants de la spécialité génie-électrique.
Un circuit logique est un réseau de composants qui traitent des don- nées à valeurs discrètes et donne des résultats à valeurs discrètes. Il peut être représenté comme une boite noire dans laquelle on indique essentiel- lement : les entrées, les sorties, la fonction, les spécifications électriques et mécaniques du circuit.
Les circuits combinatoires sont des circuits dits sans états, où les va- leurs de sorties ne dépendent que celles des entrées à un instant donné.
Ces circuits sont généralement asynchrones et n’attendent pas un signal d’activation pour produire les signaux de sorties. Ils sont essentiellement composés de portes logiques dans la constitution de base est le transistor.
On peut dénombrer plusieurs circuits combinatoires, à l’exemple des : additionneurs, multiplexeurs, comparateurs, etc.
En outre, les circuits séquentiels sont principalement constitués de bas- cules dont la sorite dépend des entrées et de l’état du circuit à un instant donné. L’état du système est représenté par un ensemble de variables qui correspondent au plus petit ensemble de variables indépendantes. On dit alors que le système comporte une mémoire. Cette succession d’états du système forme ce qu’on appelle une séquence, d’où le mot : " séquentiel".
Ces circuits peuvent être asynchrones ou synchrones, commandés par des signaux d’horloge.
Deux questions prépondérantes doivent avoir une réponse durant l’étude des circuits logiques tels qu’ils soient : combinatoires ou séquen- tiels. A savoir :
- Comment déterminer la fonction logique d’un circuit en connaissant son schéma électrique ? ce qu’on appelle " l’analyse des circuits"
- Comment déterminer le circuit logique, à travers une fonction don- née ? Ce qu’on appelle " la conception ou la synthèse des circuits".
Ces deux notions s’articulent sur la connaissance et la maitrise de plu- sieurs outils logiques qui font les parties essentielles de ce module. Ces outils sont : l’algèbre de boole, la table de vérité ainsi que la simplification via le tableau de Karnaugh.Avant d’entamer ces notions, l’étudiant devra avoir été inculqué sur les différents opérations relatives aux systèmes de numération (binaire, octal, décimal et hexadécimal) ainsi que le codage de l’information binaire.
D’où l’objectif de la première partie de ce cours.
Le fonctionnement des circuits logiques combinatoires et séquentiels peut être représenté à l’aide de plusieurs outils : les chronogrammes, les diagrammes d’états, les tables de transition, le Grafcet et d’autres outils disponibles.
Afin d’atteindre les objectifs visés par ce module, le cours est divisés en six (06) principaux chapitres :
1. Systèmes de numération et Codage de l’information : Ce chapitre sert de base pour les autres chapitres. Il permet à l’étudiant de saisir les différentes formes de représentation de l’information, les principaux mé- canismes de codage et de décodage ainsi que les opérations arithmétique dans la logique binaire.
2. Algèbre de Boole et Simplification des fonctions logiques : L’algèbre de Boole représente la base de la logique. La formulation de la table de vérité d’une fonction logique et les différentes méthodes de simplification des fonctions s’articule essentiellement sur la connaissance de l’algèbre de Boole. Aussi, une partie est consacrée à la connaissance des différentes portes logiques implémentées dans les circuits combinatoires et séquen- tiels.
3. Circuits combinatoires : Dans ce chapitre, l’étudiant aura à étudier les circuits combinatoires usuels, tels que les circuits arithmétiques, les codeurs/décodeurs, les multiplexeurs.
4. Les bascules : Les bascules représentent la base des circuits sé- quentiels. Ces dispositifs à mémoires servent à concevoir divers circuits séquentiels. L’étudiant apprendra le fonctionnement des différentes bas- cules existantes, comprendra leur fonctionnement et pourra discerner les principales différences ainsi que l’utilisation de chaque bascule dans la réalisation des circuits séquentiels.
5. Les compteurs : Les compteurs sont des circuits séquentiels prin- cipaux utilisés dans le comptage des cycles d’horloge. L’étudiant aura à comprendre le fonctionnement de base des compteurs, les différents compteurs existants ainsi que leurs domaines d’utilisation.
6. Les registres : Ce sont des circuits principalement utilisés dans les calculateurs. Ils servent de mémoires tampons qui permettent de sau- vegarder les informations en vue d’une utilisation ultérieure. L’étudiant apprendra le fonctionnement des différents registres existants dans la littérature et leurs utilisations.
Les informations contenues dans les six chapitres formant ce cours, permettent à l’étudiant d’atteindre graduellement les objectifs fixés au préalable, qui sont l’analyse et la synthèse des circuits logiques combina- toires et séquentiels.
numération et simplification
des fonctions logiques
1
C odage de l ’ information
Sommaire
1.1 Codes pondérés . . . . 7
1.1.1 Système binaire . . . . 7
1.1.2 Système octal . . . . 8
1.1.3 Système hexadécimal . . . . 9
1.1.4 Système BCD . . . . 10
1.1.5 Binaire signé et non signé . . . . 11
1.1.6 Changement de base ou conversion . . . . 11
1.2 Codes non pondérés. . . . 11
1.2.1 Code GRAY . . . . 12
1.2.2 Code ASCII . . . . 12
1.2.3 Codes détecteurs et correcteurs d’erreurs . . . . 13
1.3 Opérations arithmétiques dans le code binaire. . . . 16
1.3.1 Addition . . . . 16
1.3.2 Soustraction . . . . 16
1.3.3 Multiplication . . . . 16
1.3.4 Division . . . . 17
I
ntroductionL’ordinateur traite des informations qui sont constituées de sym- boles, Ces symboles sont exprimés sous forme de chiffres (0,...,9), de lettres(A,...,Z) et de caractères spéciaux (+,-,*,...).
Du fait de sa structure électronique, l’ordinateur peut coder facilement deux valeurs différentes par une tension électrique : une valeur pour une tension haute et une autre valeur pour une tension basse. De ce fait l’ordi- nateur ne peut utiliser que deux valeurs 0et 1. Cette unité d’information qui peut valoir 0 ou 1 est appelée "bit(Binary digit)". Alors, un symbole est représenté par un ensemble de bits.
Le codage d’une information par l’ordinateur consiste à lui donner une représentation en binaire (une suite de bits).
Plusieurs code ont été conçus pour réalisé cette opération decodage, on distingue :
Figure 1.1–Codage de l’information
— Les codes pondérés (binaire, hexadécimal, DCB, binaire signé et non signé, ...),
— Les codes non pondérés (code de Gray, codes détecteurs et correc- teurs d’erreurs, code ascii, ...).
Le système de numérotation utilisé par l’être humain est le système décimal.
Ce système est à base10(b =10), et les symboles utilisé par ce système sont : (0,1,2,3,4,5,6,7,8,9).
Définition1
SoitQun nombre exprimé dans une baseb. Le nombreQsera présenté comme suit :
Q= (qnqn−1...q0)b (1.1) tel que :
— b: base du système
— qi : symbole du système,i=0, ...,navecqi< b Exemple
Q1 = (259)10 est un nombre exprimé en valeur décimale.
Définition2
SoitQun nombre exprimé dans une baseb, comme suit : Q= (qnqn−1...q0)b
— On appelle le rang du chiffre qn sa position n dans le nombre à partir de la droite.
— On appellepoidsdu chiffreqnle nombrebn tel quebest la base et n le rang du chiffre.
Exemple
Q1 = (259)10 : lerang du chiffre "9" sa position "0", lerang du chiffre
"5" sa position "1", lerangdu chiffre "2" sa position "2".
1 . 1 C odes pondérés
Un code est dit pondéré si la position de chaque symbole dans chaque mot correspond à un poids fixe : par exemple 1, 10, 100, 1000... pour la numérotation décimale, et1,2,4,8... pour la numérotation binaire.
1.1.1 Système binaire
C’est le système utilisé en électronique pour la représentation des in- formations au niveau machine. Ce système utilise deux chiffres : 0et1 (0 représente la tension-5volt et le1représente la tension+5volt).
Le système binaire est défini par deux éléments :
— La base du système (b =2)
— Les symboles du système (0,1) Exemple
Q2 = (11110011)2est un nombre exprimé en binaire.
Q2 = (100)2 :poidsdu chiffre "1" le nombre "21 =2" tel que "2" est la base et "1" le rang du chiffre.
Passage du système décimal au système binaire
SoitQun nombre représenté dans le système décimal. Pour passer au système binaire, il suffit d’effectuer des division successives sur la base 2 jusqu’à l’obtention d’un résultat nul.
Exemple
On a le nombreQ= (9)10
On écrit alors tous les restes à la suite, le premier reste obtenu étant le dernier chiffre.
On obtient :Q= (1001)2
Passage du système binaire au système décimal
Le passage au système décimal est le plus simple. Il suffit de calculer la valeur du polynôme.
SoitQ= (qnqn−1...q0)b
Alors la représentation du nombre Q en valeur décimale est la sui- vante :
(Q)10 =qn∗bn+qn−1∗bn−1+...+q0∗b0
Exemple
On a le nombre Q = (10110)2 Dans la première étape on doit définir le rang de chaque bit et cela en les numérotant de droite à gauche.
Donc il suffit de calculer la valeur du polynôme : (Q)10 =q4∗24+q3∗23+...+q0∗20
(Q)10 =1∗24+0∗23+1∗22+1∗21+0∗20 (Q)10 =1∗16+0∗8+1∗4+1∗2+0∗0 (Q)10 =22
1.1.2 Système octal
Le système octal est défini par deux éléments :
— La base du système (b =8)
— Les symboles du système(0,1,2,3,4,5,6,7) Exemple
P= (257)8est un nombre présenté en octal.
P= (958)8le nombre n’est pas représenté en octal, le premier et le troi- sième nombre n’appartiennent pas à l’ensemble des symboles du système octal (0,1,2,3,4,5,6,7)
Passage du système décimal au système octal
SoitQun nombre représenté dans le système décimal. Pour passer au système octal, il suffit d’effectuer des divisions successives sur la base 8 jusqu’à l’obtention d’un résultat nul.
Exemple
On a le nombreQ= (257)10
On écrit alors tous les restes à la suite, le premier reste obtenu étant le dernier chiffre.
On obtient :Q= (401)8
Passage du système octal au système décimal
Le passage au système décimal est le plus simple. Il suffit de calculer la valeur du polynôme.
SoitQ= (qnqn−1...q0)8
Alors la représentation du nombre Q en valeur décimale est la sui- vante :
(Q)10 =qn∗8n+qn−1∗8n−1+...+q0∗80 Exemple
On a le nombreQ = (401)8 Dans la première étape on doit définir le rang de chaque chiffre et cela en les numérotant de droite à gauche.
Donc il suffit de calculer la valeur du polynôme : (Q)10 =q2∗82+...+q0∗80
(Q)10 =4∗82+0∗81+1∗80 (Q)10 =4∗64+0∗8+1∗1 (Q)10 =257
1.1.3 Système hexadécimal
Le système hexadécimal est défini par deux éléments :
— La base du système (b =16)
— Les symboles du système(0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) Exemple
P= (E57A)16 est un nombre présenté en hexadécimal.
P= (569GE)16le nombre n’est pas représenté en hexadécimal, le qua- trième nombre n’appartient pas à l’ensemble des symboles du système hexadécimal(0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F)
Passage du système décimal au système hexadécimal
SoitQun nombre représenté dans le système décimal. Pour passer au système hexadécimal, il suffit d’effectuer des division successives sur la base 16 jusqu’à l’obtention d’un résultat nul.
Exemple
On a le nombreQ= (257)10
On écrit alors tous les restes à la suite, le premier reste obtenu étant le dernier chiffre.
On obtient :Q= (101)16
Passage du système hexadécimal au système décimal
Le passage au système décimal est le plus simple. Il suffit de calculer la valeur du polynôme.
SoitQ= (qnqn−1...q0)16
Alors la représentation du nombre Q en valeur décimale est la sui- vante :
(Q)10 =qn∗16n+qn−1∗16n−1+...+q0∗160 Exemple
On à le nombreQ= (101)16 Dans la première étape on doit définir le rang de chaque chiffre et cela en les numérotant de droite à gauche.
Donc il suffit de calculer la valeur du polynôme : (Q)10 =1∗162+0∗161+1∗160
(Q)10 =1∗256+0∗16+1∗1 (Q)10 =257
1.1.4 Système BCD
Le système BCD (Binary Coded Decimal) permet d’exprimer un nombre décimal en binaire. A chaque chiffre décimal, on fait correspondre un groupe de 4 bits comme pour la base hexadécimale. Mais ici, il n’y a pas de valeur supérieure à 9.
Exemple
1.1.5 Binaire signé et non signé
La représentation des nombres binaires signés se fait par la méthode suivante :
Si le nombre est représenté surn bits alors on prend le bit extrême à gauche pour désigner son signe c’est à dire "0 pour un nombre positif"
et "1 pour un nombre négatif" et les bites restants représentent la valeur absolue du nombre.
Exemple
1.1.6 Changement de base ou conversion
Pour faire la conversion d’un nombre d’une base quelconque B1 vers une autre base B2 il faut passer par la base 10. Mais si la base B1 et B2 s’écrivent respectivement sous la forme d’une puissance de2on peut pas- ser par la base2(binaire) :
Base tétrale (base4) : 4=22 chaque chiffre tétral se convertit tout seul sur2bits.
Base octale (base8) : 8 = 23 chaque chiffre octal se convertit tout seul sur3bits.
Base hexadécimale (base 16) : 16 = 24 chaque chiffre hexadécimal se convertit tout seul sur 4bits.
Exemple
1 . 2 C odes non pondérés
Parmi les codes les plus rencontrés,on cite le code DCB, le code GRAY, les codes détecteurs et correcteurs d’erreurs, le code ASCII...
1.2.1 Code GRAY
Son intérêt réside dans des applications d’incrémentation où un seul bit change d’état à chaque incrémentation.
Tableau1.1–Conversion du décimal au code GRAY
1.2.2 Code ASCII
Le code ASCII (American Standard Code for information inter-change) est un code alphanumérique, devenu une norme internationale. Il utilise7 bits. Ce qui permet de générer 27 =128 caractères. Ce code représente les lettres alphanumériques majuscules et minuscules, les chiffres décimaux, des signes de ponctuation et des caractères de commande.
Chaque code est défini par 3 bits d’ordre supérieur q6q5q4 et 4 bits d’ordre inférieur q3q2q1q0. Le tableau 2.2 de la page(N◦ = 13) représente la conversion du décimal au code ASCII.
Code ASCII
Décimal Q0 Q1 Q2 Q3 Q4 Q5 Q6
0 0 1 1 0 0 0 0
1 0 1 1 0 0 0 1
2 0 1 1 0 0 1 0
3 0 1 1 0 0 1 1
...
A 1 0 0 1 0 0 1
B 1 0 0 0 0 1 0
C 1 0 0 1 0 1 1
...
Tableau1.2–Conversion du décimal au code ASCII
1.2.3 Codes détecteurs et correcteurs d’erreurs
Plusieurs codes permettent de détecter ou de corriger des erreurs, parmi ces codes, on distingue deux types :
- Les codes détecteurs d’erreurs - Les codes correcteurs d’erreurs Codes détecteurs d’erreurs
Le code détecteur d’erreur le plus utilisé est le code de"parité paire ou impaire". On donne à un bit dit de parité la valeur0ou1de façon à ce que le nombre de1dans l’information à coder impaire ou paire.
- Bit de parité impaire "BPImpaire" égale a 0 si le nombre de 1 dans l’information à coder est impaire.
- Bit de parité impaire égale a1si le nombre de1dans l’information à coder est paire.
Exemple
Code ASCII
Décimal Q0 Q1 Q2 Q3 Q4 Q5 Q6 Bp Impaire Bp Paire
0 0 1 1 0 0 0 0 1 0
1 0 1 1 0 0 0 1 0 1
2 0 1 1 0 0 1 0 0 1
3 0 1 1 0 0 1 1 1 0
...
A 1 0 0 1 0 0 1 0 1
B 1 0 0 0 0 1 0 1 0
C 1 0 0 1 0 1 1 1 0
...
Tableau1.3–Exemple du code de "parité paire ou impaire"
Codes correcteurs d’erreurs
Le code correcteur d’erreur le plus utilisé est le code de Hamming.
Hamming
Le code de Hamming permet de corriger une seul erreur dans un bloc.
On fixe un entier k et on code chaque bloc dem= 2k−k−1 bits par un bloc dem=2k−1 bits obtenu en ajoutant à certaines positions dans un bloc de m bits (dits bits d’information) un ensemble de k bits de correction (voir Figure2.2).
Figure 1.2–Bloc logique élémentaire avec k=n-m bits de correction
Les bits de correction sont les bits de numéro égal à une puissance de2 Les bits d’information qui servent au calcul d’un bit de contrôle de numéro X sont ceux tel que X apparaît dans la décomposition en puis- sance de2de leur numéro.
Exemple
X=0111
7=1+2+4donc7apparaît dans le calcul de1, de2et de4 1calculé de telle façon que (1,3,5,7,9,11,...) parité paire 2calculé de telle façon que (2,3,6,7,10,11,...) parité paire
4 calculé de telle façon que (4, 5, 6, 7, 12,...) parité paire Pour les bits
Figure 1.3–Exemple de code de Hamming
de correction, on utilise une matrice de parité H qui est représentée ci- dessous pour k=3.
La colonne d’indice i de H est la représentation en binaire de i. Les n−mbits de correction sont choisis de telle façon que si le bloc a est écrit comme un vecteur colonne, on aura
Ha =0
où les opérations sont faites en binaire avec la règle 1+1 = 0 (c’est le corps noté Z/2 des entiers modulo2). Les bits de correction sont ceux situés aux indices puissance de2. On aura par exemple la session de trans- mission suivante :
Le message a = [1110] est codé par le bloc b = [0010110] obtenu en ajoutant trois bits de correctionb1,b2,b4définis par les équations
(1.2) Le deuxième bit a été modifié par une erreur et on reçoit le bloc c= b+e avec e = [0100000]. Elle est corrigée au décodage de la façon suivante : On calcule le vecteur s = Hc. On obtient ainsi le vecteur He qui est la deuxième colonne de H et on change donc le deuxième bit decde1en0. Le code de Hamming permet de corriger une erreur car toutes les colonnes de la matrice H sont différentes et que deux blocs codés diffèrent au moins sur trois bits. Il ne permet pas de corriger ni même de détecter deux erreurs. En effet, si deux erreurs se produisent aux indices i et j, le résulat est le même que si une erreur s’était produite (dans un autre bloc) à l’indice k tel que la colonne k de la matrice H soit la somme binaire de colonnes i et j.
1 . 3 O pérations arithmétiques dans le code binaire
Le système binaire permet d’effectuer quatre opérations arithmétiques, à savoir l’addition, la soustraction, la multiplication et la division.
1.3.1 Addition
l’addition binaire se base sur les quatre règles suivantes : 0+0=0
0+1=1 1+0=1
1+1=0avec une retenue r=1. Exemple
1.3.2 Soustraction
La soustraction binaire repose sur quatre règles : 0-0=0
0-1=1avec une retenue r=1. 1-0=1
1-1=0 Exemple
1.3.3 Multiplication
La multiplication binaire se base sur les quatre règles suivantes : 0*0=0
0*1=0 1*0=0 1*1=1
Exemple 1.3.4 Division
La division binaire repose sur les quatre règles suivantes : 0/0cas indéterminés
1/0cas indéterminés 0/1=0
1/1=1 Exemple
2
S implification des fonctions logiques
Sommaire
2.1 Variables et fonctions logiques (OR, AND, NOR, NAND, XOR) . . . . 19 2.1.1 Variables et fonctions logiques . . . . 19 2.1.2 Portes logiques . . . . 19 2.2 Lois de l’algèbre deBoole . . . . 22 2.2.1 Théorème de Morgan . . . . 22 2.2.2 Loi d’absorption . . . . 22 2.2.3 Loi d’allègement . . . . 23 2.3 Représentation des fonctions logiques . . . . 23 2.3.1 Tables de vérité . . . . 23 2.3.2 Formes canoniques . . . . 24 2.4 Simplification des fonctions logiques . . . . 25 2.4.1 Méthode algébrique . . . . 25 2.4.2 Méthode de Karnaugh. . . . 26
I
ntroductionCe chapitre a pour but d’étudier les différentes règles et théorèmes relatifs à l’algèbre de Boole ainsi que les fonctions logiques de base. La re- présentation des fonctions logiques à travers la table de vérité ainsi que les différentes formes canoniques seront établées afin qu’on puisse procéder à la simplification des équations logiques via la méthode algébrique ainsi que le tableau de Karnaugh.
2 . 1 V ariables et fonctions logiques (OR, AND, NOR, NAND, XOR)
2.1.1 Variables et fonctions logiques Variable logique
Une variable logique est une grandeur qui ne peut prendre que deux états logiques.
Nous les symbolisons par0ou1. Exemples
Une lampe possède également2états possibles de fonctionnement qui sont : éteinte (0logique) ou allumée (1logique).
Fonction logique
Une fonction logique est une variable logique dont la valeur dépend d’autres variables,
— Le fonctionnement d’un système logique est décrit par une ou plu- sieurs propositions logiques simples qui présentent le caractère bi- naire "VRAI" ou "FAUX".
— Une fonction logique qui prend les valeurs0 ou1peut être consi- dérée comme une variable binaire pour une autre fonction logique.
— Pour décrire le fonctionnement d’un système en cherchant l’état de la sortie pour toutes les combinaisons possibles des entrées, on utilisera " La table de vérité ".
2.1.2 Portes logiques
Les portes logiques sont des circuits électroniques dont les fonctions de transfert (relations entre les entrées et les sorties) matérialisent les opé- rations de base appliquées à des variables électriques.
Produit logique (AND)
Considérons deux variables logiques A et B.
Le produit logique des variables A et B, représentée par (A.B). est dé- finie par la table de vérité suivante :
A B A.B (A ET B)
0 0 0
0 1 0
1 0 0
1 1 1
Tableau2.1–Table de vérité de la fonction produit (AND)
La porte logique ET (AND) est représentée par le symbole logique suivant :
Figure 2.1–Symbole de la porte logique ET (AND)
2- Somme logique (OU (OR))
Considérons deux variables logiques A et B.
La somme logique des variables A et B, représentée par (A+B). est définie par la table de vérité suivante :
A B A+B (A OU B)
0 0 0
0 1 1
1 0 1
1 1 1
Tableau2.2–Table de vérité de la fonction somme (OU (OR))
La porte logique OU (OR) est représentée par le symbole logique sui- vant :
Figure 2.2–Symbole de la porte logique OU (OR)
3- Porte NON (NOT)
Considérons deux variables logiques A et B.
C’est une porte à une seule entrée, elle matérialise l’operateur inver- seur. est définie par la table de vérité suivante :
A Non(A)
0 1
1 0
Tableau2.3–Table de vérité de la fonction NON (NOT)
La porte logique NON (NOT) est représentée par le symbole logique suivant :
Figure 2.3–Symbole électrique de la porte logique NON (NOT)
4- Porte OU-exclusif (XOR)
Considérons deux variables logiques A et B.
La porte OU-exclusif (XOR) des variables A et B, représentée par (ALB), est définie par la table de vérité suivante :
A B ALB(A XOR B)
0 0 0
0 1 1
1 0 1
1 1 0
Tableau2.4–Table de vérité de la fonction OU-exclusif (XOR)
La porte OU-exclusif (XOR) est représentée par le symbole logique suivant :
Figure 2.4–Symbole électrique de la porte OU-exclusif (XOR)
5- Porte NON-ET (NAND)
Considérons deux variables logiques A et B.
La porte NON-ET (NAND) des variables A et B, représentée par (A.B).
est définie par la table de vérité suivante :
A B A.B(A NON-ET B)
0 0 1
0 1 1
1 0 1
1 1 0
Tableau2.5–Table de vérité de la fonction NAND
La porte NON-ET (NAND) est représentée par le symbole logique sui- vant :
Figure 2.5–Symbole électrique de la porte NON-ET (NAND)
5- Porte NON-OU (NOR)
Considérons deux variables logiques A et B.
La porte NON-OU (NOR) des variables A et B, représentée par (A+B). est définie par la table de vérité suivante :
A B A+B(A NOR B)
0 0 1
0 1 0
1 0 0
1 1 0
Tableau2.6–Table de vérité de la fonction NON-OU (NOR)
La porte NON-OU (NOR) estreprésentée par le symbole logique sui- vant :
Figure 2.6–Symbole de la porte NON-OU (NOR)
2 . 2 L ois de l ’ algèbre de B oole
Pour effectuer tout calcul Booléen, on utilise, en plus des propriétés de l’algèbre de Boole , un ensemble de théorèmes :
2.2.1 Théorème de Morgan
Considérons deux variables logiques A et B.
A+B= A.B A.B= A+B
Ce théorème peut être généralisé à plusieurs variables A+B+. . .+Z= A.B. . . . .Z
A.B. . . . .Z= A+B+. . .+Z A et B et Z des variables logiques.
2.2.2 Loi d’absorption A+AB= A A.(A+B) =A
2.2.3 Loi d’allègement
A+AB= A+B A.(A+B) = A.B
2 . 3 R eprésentation des fonctions logiques
Une fonction logique est une combinaison de variables binaires reliées par les opérateurs ET, OU et NON. Elle peut être représentée par une écriturealgébriqueou unetable de véritéou untableau de KARNAUGH.
2.3.1 Tables de vérité
Une fonction logique peut être représentée par une table de vérité qui donne les valeurs que peut prendre la fonction pour chaque combinaison de variables d’entrées.
Fonction logique complètement définie
Une fonction de n variables binaires est complètement définie si sa valeur est connue pour chacune des 2n combinaisons possibles des va- riables. La table de vérité d’une telle fonction comportera donc 2n lignes.
Un exemple de table de vérité d’une fonction Fde deux variablesA,Best donné ci-dessous :
A B F
0 0 1
0 1 0
1 0 0
1 1 1
Tableau2.7–Fonction logique complètement définie
Fonction logique incomplète (partiellement définie)
Dans ce cas la valeur de la fonction n’est pas déterminée pour toutes les combinaisons des variables. Une valeur indéterminée est notée X ou dans la table de vérité. Pour les cas indéterminés, on peut imposer une valeur 0 ou 1 à cette fonction, dans le but de faciliter sa synthèse. Un exemple d’une telle fonction est donné ci-après :
A B F
0 0 1
0 1 0
1 0 Ø
1 1 Ø
Tableau2.8–Fonction logique incomplète (partiellement définie)
2.3.2 Formes canoniques
Les formes canoniques sont basées sur les mintermes et le maxtermes des fonctions logiques. Un minterme est le produit logique des variables de la même ligne de la table de vérité. Un maxterme s’obtient en faisant la somme logique des variables sous forme inversée de la même ligne de la table de vérité.
Exemple
Les mintermesmi et les maxtermesMAd’une fonction à3variables A, B et C sont :
Exemples des mintermesmi A B C Exemples des maxtermes MA mi0= A.B.C→ 0 0 0 ← MA0 = A+B+C
0 0 1
mi2= A.B.C→ 0 1 0
0 1 1 ← MA3 = A+B+C
1 0 0
1 0 1
mi6= A.B.C→ 1 1 0
1 1 1 ← MA7 = A+B+C Tableau2.9–Mintermes miet maxtermes MA d’une fonction à3variables A, B et C
Première forme canonique (somme des produits)
Pour obtenir la première forme canonique, à chaque 1 de la variable de sortie, on fait correspondre le produit des variables d’entrée de la même ligne sous forme vraie. Par la suite, on fait la somme des différents produits (mintermes).
Exemple
Soit la fonction F(A,B,C) définie par la table de vérité suivante : Mintermesmi A B C F
0 0 0 0
0 0 1 0
0 1 0 0
mi2 = A.B.C→ 0 1 1 1
1 0 0 0
mi0 = A.B.C→ 1 0 1 1 mi6 = A.B.C→ 1 1 0 1 mi0 = A.B.C→ 1 1 1 1
Tableau2.10–Mintermes mid’une fonction à3variables A, B et C
F(A,B,C) =mi3+mi5+mi6+mi7= A.B.C+A.B.C+A.B.C+A.B.C
Deuxième forme canonique (produit des sommes)
Pour obtenir la deuxième forme canonique, à chaque 0de la variable d’entrée de la même ligne sous forme inversée.
Par la suite, on fait le produit des différentes sommes (maxtermes).
Exemple
Soit la fonction F(A,B) définie par la table de vérité suivante : A B F Maxtermes MA
0 0 0 ← MA0= A+B
0 1 1
1 0 1
1 1 0 ← MA3= A+B Tableau2.11–Maxtermes MA d’une fonction à2variables A et B
F(A,B) = MA0.MA3 = (A+B).(A+B)
2 . 4 S implification des fonctions logiques
2.4.1 Méthode algébrique
Soit à démontrer les équations logiques suivantes par la méthode de simplification algébrique :
A.B+A.B = A . . .(1) A+A.B = A . . .(2) A+A.B = A+B . . .(3) Dèmonstration de la première relation :
(1)⇒A.B+A.B = A.(B+B)
= A.1 carB+B=1
= Apuisque A.1= A Dèmonstration de la deuxième relation :
(2)⇒ A+A.B = A.(1+B)
= A.1 car1+B=1
= Apuisque A.1= A Dèmonstration de la troisième relation :
(3)⇒ A+A.B = A+A.B+A.Bcar d’après (2) A= A+A.B
= A+B.(A+A)
= A+B.1
= A+B
2.4.2 Méthode de Karnaugh.
Tables de Karnaugh.
Une Tables de Karnaugh, est une grille comportant un nombres de cases vides égales au nombre de combinaisons des variables de la fonction booléenne qu’on se propose de simplifier.
Pour une fonction à une variable, la table comprendra une seule case qui peut prendre la valeur0ou1.
Tables de Karnaugh pour une fonction à n variables
Le tableau de KARNAUGH comporte 2n cases ou combinaisons.
L’ordre des variables n’est pas important mais il fait que respecter la règle suivante :
Les monômes repérant les lignes et les colonnes sont attribués de telle manière que 2 monômes consécutifs ne diffèrent que de l’état d’une va- riable. Il en résulte que 2 cases consécutives en ligne ou en colonne re- pèrent des combinaisons adjacentes, on utilise donc le code GRAY.
Exemple
Soit une fonction à n variables d’entrées et soient p et q tel que : p+q=n⇒
p=q=n/2, dans le cas n pair ;
|p−q|=1, si n est impair.
n=2
A\B 0 1
0 0 1
10 1 0
⇔
A\B 0 1
0 A.B A.B
1 A.B A.B
n=3
Soit
AB\C 0 1
00 0 0
01 0 1
11 0 1
10 0 1
ou bien
A\BC 00 11 10 01
0 0 0 1 0
1 0 1 1 1
n=5
AB\CDE 000 001 011 010 110 111 101 100
00 0 1 3 2 6 7 5 4
01 8 9 11 10 14 15 13 12
00 24 25 27 26 30 31 29 28
01 16 17 19 18 22 23 21 20
Méthode de simplification par la table de Karnaugh Les étapes de simplification à suivre sont :
1. Chercher à grouper tous les "1" (les "0" pour les maxtermes) pour former des boucles de1,2,4,8,...etc. (2n avec n =0, 1, 2, 3, ... , même si une ou plusieurs cases doivent faire partie de2ou plusieurs boucles ;
2. Tant que le nombre de cases regroupées est grand, l’expression sera plus simplifiée ;
3. Les groupements ne doivent contenir que des cases adjacentes ; 4.L’expression simplifiée comporte autant de termes qu’il ya de grou- pements.
Exemple1
Soit à simplifier par la table de Karnaugh la fonction F(A,B,C) définie par la table de vérité suivante :
A B C F
0 0 0 0
0 0 1 1
0 1 0 1
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1
Correspondant au tableau de Karnaugh suivant :
G1 =B.C,G2= A.BetG3= B.C
F(A,B,C) =G1+G2+G3 =B.C+A.B+B.C Exemple2
Soit à simplifier par la table de Karnaugh la fonction F(A,B,C) définie par :
F(A,B,C,D) = A.B.C.D+A.B.C.D+A.B.C.D+A.B.C.D+A.B.C.D+ A.B.C.D
G1= B.Cet G2 =B.D
F(A,B,C) =G1+G2 =B.C+B.D
C ombinatoire
3
Sommaire
3.1 CIRCUIT ARITHMETIQUE . . . . 31 3.1.1 Additionneur . . . . 31 3.1.2 Soustracteur . . . . 33 3.1.3 Comparateur . . . . 34 3.2 Codeur . . . . 35 3.3 Décodeur . . . . 36 3.4 Multiplexeur . . . . 37 3.5 Démultiplexeur . . . . 38
C
e chapitre passe en revue les principaux circuits combinatoires avec pour chacun d’eux, une description générale, la liste des circuits in- tégrés existants, les modalités de mise en cascade, les applications et leur utilisation éventuelle pour la réalisation d’une fonction combinatoire quel- conque.3 . 1 CIRCUIT ARITHMETIQUE
3.1.1 Additionneur
Un additionneur est un circuit capable de faire la somme de deux nombres binaires Aet B. Une addition met en œuvre deux sorties :
La somme, généralement notéeS,
La retenue, généralement notéeR(ouC: carry).
Comme en décimal, nous devons tenir compte de la retenue éventuelle, résultat d’un calcul précèdent. La figure suivante montre la décomposition de l’addition de deux nombres binaires de4bits.
Figure 3.1–Schéma d’un additionneur (4bits)
Demi-Additionneur (2bits)
C’est un additionneur 2 bits sans tenir compte de la retenue précé- dente.
Figure 3.2–Schéma d’un demi-Additionneur (2bits)
Figure 3.3–Fonction logique et circuit d’un demi additionneur2bits
Additionneur complet (2bits)
Il possède trois entréesA,Bet Ri−1 et trois sortiesSetRi :Ri−1 repré- sente la retenue de rangn−1 etRi celle de rang n.
Figure 3.4–Schéma d’un additionneur complet (2bits)
L’analyse du fonctionnement de ce dernier est illustrée par la table de vérité suivante :
A B Ri−1 S Ri
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
Tableau3.1–Table de vérité d’un additionneur complet (2bits)
Les équations logiques des sortiesSet Ri : S= A.B.Ri−1 +A.B.Ri−1+ A.B.Ri−1+ A.B.Ri−1 Ri = A.B.Ri−1+A.B.Ri−1+A.B.Ri−1+A.B.Ri−1
Aprés Simplification :
S= AMBMRi−1 (3.1)
Ri = (AMB).Ri−1+A.B (3.2) Le circuit de l’additionneur complet (2 bits) est illustré par la figure suivante :
Figure 3.5–Circuit logique d’un additionneur complet (2bits)
3.1.2 Soustracteur Demi-soustracteur
Le soustracteur binaire portant sur un bit unique mène aux 4 cas est représenté par la table de vérité suivante :
A B D(Différence) R(Retenue)
0 0 0 0
0 1 1 1
1 0 1 0
1 1 0 0
Tableau3.2–Table de vérité d’un Demi-soustracteur (2bits) Les équations logiques sont :
D= A.B+A.B= AMB (3.3)
R= A.B (3.4)
Le circuit du demi-soustracteur (2 bits) est illustré par la figure sui- vante :
Figure 3.6–Circuit logique d’un demi-soustracteur (2bits)
Soustracteur complet
L’analyse du fonctionnement du Soustracteur complet est illustrée par la table de vérité suivante :
A B Ri−1 D Ri
0 0 0 0 0
0 0 1 1 1
0 1 0 1 1
0 1 1 0 1
1 0 0 1 0
1 0 1 0 0
1 1 0 0 0
1 1 1 1 1
Tableau3.3–Table de vérité d’un Soustracteur complet (2bits)
Les équations logiques des sortiesDetRi : D= A.B.Ri−1 +A.B.Ri−1+ A.B.Ri−1+ A.B.Ri−1 Ri = A.B.Ri−1+A.B.Ri−1+A.B.Ri−1+A.B.Ri−1
Aprés Simplification :
D= AMBMRi−1 (3.5)
Ri = (AMB).Ri−1+A.B (3.6) Le circuit du soustracteur complet (2bits) est illustré par la figure sui- vante :
Figure 3.7–Circuit logique d’un soustracteur complet (2bits)
3.1.3 Comparateur
La représentation du comparateur entre2nombres A et B est donnée par le schéma suivant :
Figure 3.8–Schéma d’un comparateur
La table de vérité du comparateur est la suivante :
A B E S I
0 0 1 0 0
0 1 0 0 1
1 0 0 1 0
1 1 1 0 0
Tableau3.4–Table de vérité d’un comparateur
Les équations logiques des sortiesE, I etS:
E= A.B+A.B (3.7)
S= A.B (3.8)
I = A.B (3.9)
Le circuit du comparateur est illustré par la figure suivante :
Figure 3.9–Circuit logique d’un comparateur
3 . 2 C odeur
Un codeur(ou encodeur) reçoit un niveau valide à l’une des entrées, représentant par exemple un chiffre, une lettre, etc. Il le convertit en une sortie codée (par exemple en binaire ou en BCD).
Exemple :Codeur décimal-BCD
Il permet de traduire un nombre écrit en décimal, en son équivalent binaire. La table de vérité est la suivante :
Décimale BCD
N0 B3 B2 B1 B0
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
Tableau3.5–Table de vérité d’un Codeur décimal-BCD
Les expressions logiques sont :
B3= 8+9 (3.10)
B2=4+5+6+7 (3.11)
B1=2+3+6+7 (3.12)
B0=1+3+5+7+9 (3.13) Le circuit du codeur est illustré par la figure suivante :
Figure 3.10–Circuit logique d’un codeur décimal-BCD
3 . 3 D écodeur
Un décodeur est un circuit logique réalisant la fonction inverse du codeur.
Exemple :Décodeur décimal-BCD
Il permet de traduire un nombre écrit en BCD, en son équivalent déci- mal. La table de vérité est la suivante (où les cases vides correspondent à des0) :
N0 B3 B2 B1 B0 S0 S1 S2 S3 S4 S5 S6 S7 S8 S9
0 0 0 0 0 1
1 0 0 0 1 0 1
2 0 0 1 0 0 1
3 0 0 1 1 0 1
4 0 1 0 0 0 1
5 0 1 0 1 0 1
6 0 1 1 0 0 1
7 0 1 1 1 0 1
8 1 0 0 0 0 1
9 1 0 0 1 0 1
Tableau3.6–Table de vérité d’un Décodeur décimal-BCD
3 . 4 M ultiplexeur
C’est un circuit combinatoire permettant de réaliser un aiguillage de l’une des entrées en une sortie unique,dont le représentation est donnée par le schéma suivant :
Figure 3.11–Schéma d’un multiplexeur
Pour N = 2n entrées (avec n entier positif) correspond n éléments binaire de commande(sélection).
Exemple :Multiplexeur4vers1
C’est un multiplexeur à 4 (22) entrées (E0,E1,E2etE3), qui nécessite 2 entrées de commande (C0 etC1)et une seule sortie(S).
Son fonctionnement est donné par la table de vérité simplifiée sui- vante :
C0 C1 S
0 0 E0
0 1 E1
1 0 E2
1 1 E3
Tableau3.7–Table de vérité d’un Multiplexeur4vers1
Son équation logique est :
S=C0.C1.E0+C0.C1.E1+C0.C1.E2+C0.C1.E3 (3.14)
Figure 3.12–Circuit logique d’un Multiplexeur4vers1
3 . 5 D émultiplexeur
Le démultiplexeur réalise l’opération inverse de celle du multiplexeur.
Il comporte une seule entrée d’information(ou de données) E, n entrées de commandeCi aveci=0, 1, ...,n(appelées aussi entrées d’adresse ou de sélection)et N=2n sorties(S0,S1, ...,SN).
Le schéma représentatif du démultiplexeur est illustré par la Figure4.12: