Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Chapitre 1 Et 2

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 41

1ere année du cycle ingénieur

Département ITSI
Filières : GM

Électronique Numérique

2024/2025

1
INTRODUCTION

Un nombre croissant d'appareils électroniques et de machines, tels que les téléviseurs, les
voitures, les machines à laver et bien d'autres, intègre de l'électronique numérique dans leur
fonctionnement.

On parle d'électronique numérique lorsqu’on travaille avec des signaux binaires (vrai/faux
ou 0/1), par opposition à l'électronique analogique qui traite des signaux (tension/courant) dans
une plage déterminée. Dans la plupart des applications, ces deux types de traitement coexistent.
Par exemple, dans un ordinateur, les données stockées sur le disque dur sont numériques, mais
les signaux électriques qui les transportent à travers les circuits sont analogiques. Ces signaux
sont ensuite convertis en valeurs binaires pour être traités par le processeur.

L’évolution technologique des équipements électroniques s’est accompagnée de la


miniaturisation et de l’augmentation de la complexité des circuits numériques. Ce document
traite les principes de base de l’électronique numérique et permet de comprendre les techniques
de conception des circuits numériques. Il aborde la logique combinatoire et séquentielle, et
détaille le principe des portes logiques, composants de base des circuits qui mettent en œuvre
les opérations de l’Algèbre de Boole, appliquées aux données codées en binaire.

2
Chapitre 1 :

SYSTEMES DE NUMERATION
ET CODES

3
Introduction
Habituellement, on utilise le système décimal pour représenter les nombres, mais il est
possible d’utiliser d’autres systèmes de numération.

Nous nous intéressons dans ce chapitre aux systèmes de numération fréquemment rencontrés
en technologie numérique. Il s'agit des systèmes binaire, octal, décimal et hexadécimal. Avant
de décrire ces systèmes, nous allons donner quelques propriétés générales. Ensuite, nous
définissons la notion de base d'un système de numération, le principe d’écriture d’un nombre
dans un système de base b donnée, ainsi que les règles opératoires du système binaire.

I- Les systèmes de numération


I- 1 Propriétés générales
a) Définitions
-Système de numérotation : est un ensemble de symboles et de règles permettant la
rereprésentation, de n’importe quel élément d’un ensemble, d’un nombre.
-Base d’un système : est la référence qui permet l’écriture d’un nombre.
-La base est le nombre qui sert à définir un système de numération.
-La base du système décimal est 10 alors que celle du système octal est 8.

b) Forme polynomiale
L’équivalent décimal de (N)b, d’un nombre N entier écrit dans une base b, s’obtient par
application directe de la forme polynomiale suivante :
i=n−1
(N )b =  ai b i avec 0  a i  b −1
i=0

- b : base (binaire, b=2, octal, b=8, hexadécimale, b=16 ou H, décimal, b=10).


- ai : symboles ou coefficients
- (N )b = a n-1bn-1 + ........ + a0 b0 = (a n-1 an-2.......a1 a0)b (𝑁)𝑏 = 𝑎𝑛−1𝑏𝑛−1 … . +𝑎0𝑏0 = ( 𝑎 n-1…… 𝑎 0)b.
- Chaque symbole ai peut prendre une valeur entre 0 et (b-1). Le chiffre ai présente un poids égal à
bi.
- La notation ()b indique que le nombre est écrit en base b. En décimal, on ne note pas d’indice.
Remarque :
On commence toujours par les cœfficients dans le sens de la droite → gauche :

4
I-2 Système de numération binaire
La numération en base deux (ou numération binaire) utilise deux symboles 0 et 1. Cette
base est très commode pour distinguer les deux états logiques fondamentaux. On écrit:

Où : an (le plus à gauche) est le bit le plus significatif (MSB = Most Significant Bit)

a0 (le plus à droite) est le bit le moins significatif (LSB = Low Significant Bit)

Exemple :

(11001)2 = 1. 24 + 1. 23 + 0. 22 + 0 . 21 + 1. 20 = (25)10

(101, 11)2 = 1. 22 + 0. 21 + 1. 20 + 1. 2-1 + 1. 2-2 = (5.75)10

Remarque :

- Les puissances successives de 2 (1, 2, 4, 8, 16, 32, …) sont appelées poids binaires.

- Un code à n chiffres en base 2 distingue 2n états ou combinaisons.

I-3 Numération Décimal


C’est le système de numération usuel dans la vie quotidienne, puisque b=10, il dispose
de 10 symboles: 0,1,2, … , et 9.

Exemple :

Nombre entière :

(1596)10 = 1 x 103 + 5 x 102 + 9 x 101 + 6 x 100

(4941)10 4. 103 + 9. 102 + 4. 101 + 1. 100

Nombre fractionnaire : 32,125 = 3. 101 + 2. 100 + 1. 10-1 + 2. 10-2 + 5. 10-3


I-4 Numération octal
Le système octal utilise 8 symboles (chiffres) seulement : 0, 1, 2, 3, 4, 5, 6, 7

5
C’est un système très peu utilisé de nos jours. Il servait au codage des nombres dans les
ordinateurs de première génération, abandonnée au profit de l'Hexadécimal.
Exemple :

(372)8 = 3. 82 + 7 . 81 + 2. 80 = (250)10

(24.6)8 = 2 . 81 + 4. 80 + 6 . 8-1 = (20,75)10

I-5 Numération hexadécimal


Le développement des systèmes micro programmés (mini- et micro-
ordinateurs) a favorisé l’utilisation de ce code. Il comporte 16
symboles, caractères : 0, 1, 2, 3, 4, 5, 6,7, 8, 9, A, B, C, D, E, F.
Exemple :

I-6 Changements de base – Conversions


a) Conversion Décimal vers Binaire

La conversion d’un nombre décimal en nombre binaire s’effectue en deux étapes. La


première, pour la partie entière et la seconde, pour la partie fractionnaire.
Pour la partie entière, on effectue une suite de divisions successives du nombre N10 par la
base2, les restes obtenus constituant à chaque rang le caractère ai du nombre N2.
Exemple : Transformer( 44)10 en binaire

(44)10 = (101100)2

6
Et on effectue une suite de multiplications successives de N10 par 2 pour la partie
fractionnaire.
Exemple: Convertir (0.84375)10 en binaire

Remarque : Cette conversion peut ne pas s'arrêter. Il faut donc se limiter à un format en
respectant la précision souhaitée.

Exemple :

b) Conversion Décimale vers Octal

Il est possible de convertir un nombre décimal entier en son équivalent octal en employant la
méthode de la répétition de divisions, la même qu'on a utilisée pour la conversion décimal-binaire,
mais cette fois-ci en divisant par 8 plutôt que par 2.

7
Exemple : (106356,34375)10

La conversion de la partie entière a donné : (317564)8


La conversion de la partie fractionnaire a donné : (0,26)8 et
Finalement : (106356,34375)10 = (317564,26)8

c) Conversion Binaire vers Octal

On passe facilement du binaire à l'octal en groupant les bits par blocs de trois en allant vers la
gauche puis on fait correspondre à chaque bloc son équivalent décimal.

L’équivalent binaire d’un nombre octal s’obtient en faisant correspondre à chaque chiffre
octal son équivalent binaire sur un bloc de 3 bits.

Exemple : (100111010)2

(100111010)2 = (472)8
Parfois, il arrivera que le nombre binaire ne forme pas un nombre juste de groupes de trois.
Dans ce cas, on pourra ajouter un ou deux zéros à gauche du bit de poids le plus fort pour former
le dernier triplet.

Voici une illustration de ceci avec le nombre binaire 11010110


(11010110)2 = (326)8
d) Conversion octal binaire

Le principal avantage du système de numération octal réside dans la facilité avec laquelle il
est possible de passer d'un nombre octal à un nombre binaire. Cette conversion s'effectue en
transformant chaque chiffre du nombre octal en son équivalent binaire de trois chiffres. Voyez
dans le tableau ci-dessous les huit symboles octaux exprimés en binaire.

8
Au moyen de ce tableau, tout nombre octal est converti en binaire par la transformation de
chacun des chiffres.

Exemple : (472)8

Donc le nombre octal 4728 est équivalent au nombre binaire 100111010.


e) Conversion Binaire vers Héxadécimal

Le nombre binaire est divisé en groupes de quatre bits, puis on substitue à chaque groupe
son chiffre hexadécimal équivalent. Au besoin, on ajoute des zéros à gauche pour obtenir un
dernier groupe de 4 bits.

Exemple : (1101 1000 0111)2

(1101 1000 0111)2 = (D87)16

f) Conversion Héxadécimal vers Binaire

Comme le système de numération octal, le système de numération hexadécimal se veut une


façon abrégée de représenter les nombres binaires. La conversion d'un nombre hexadécimal en
un nombre binaire ne pose vraiment pas de difficulté, puisque chaque chiffre hexadécimal est
remplacé par son équivalent binaire de 4 bits.

Exemple : (9F2)16=(100111110010)8

9
g) Conversion Décimale vers Héxadécimal

La même règle est utilisée que celle pour la conversion décimale binaire. Ici, B = 16.
Exemple : (423)10

(423)10 = (1A7)16
h) Conversion Hexadécimal vers Décimal

Un nombre hexadécimal peut être converti en son équivalent décimal en exploitant le fait
qu'à chaque position d'un chiffre hexadécimal est attribué un poids; dans ce cas-ci le nombre
16 élevé à une certaine puissance. Le chiffre de poids le plus faible a un poids de 160 = 1, le
chiffre immédiatement à gauche a un poids de 161= 16, l'autre chiffre immédiatement à gauche,
un poids de 162 = 256, et ainsi de suite.

Exemple :

II- Représentation des nombres


II-1 Représentation des entiers relatifs en binaire
Nous devons définir une convention pour représenter le signe en binaire. La plupart des
ordinateurs traitent aussi bien les nombres négatifs que des nombres positifs. Il existe trois
conventions pour exprimer les nombres signés dans le système binaire :

- Représentation de la valeur et du signe indépendamment (binaire signé),

- Représentation en complément à 1,

- Représentation en complément à 2.

10
a) Représentation par bit de signe

En écrivant un nombre sous la forme N2 = (s an-1……….a1 a0 )2 alors s représente le signe et


an-1 ................. a0 la valeur absolue. Le bit d'ordre n est alors réservé au signe.

Le bit réservé au signe est toujours le bit le plus à gauche mais il ne correspond plus
au MSB.Par convention, le 0 représente le + et le 1 le -.

Exemple :

b) Représentation en complément à 1

Le complément à 1 d'un nombre binaire s'obtient en changeant chaque 0 par un 1 et chaque


1 par un 0. Autrement dit, en complémentant chaque bit du nombre. Voici une illustration de
cette marche à suivre:

1 0 1 1 0 1 nombre binaire initial

0 1 0 0 1 0 complément de chaque bit pour obtenir le complément à 1.

On dit que le complément à 1 de 101101 est 010010.

Le complément à 1 d’un nombre est donc l’inversion de chaque bit à l’aide de la fonction
logique NON. Nous pouvons donc exprimer le complément à 1 par l’équation ci-dessous.

CA1 (N) = (2n – 1 )10 - N10 avec n nombre de bits

Exemple : (-23)10 s’écrit (1 0010111) en binaire signé son complément à 1 est (1 1101000)

c) Représentation en complément à 2

Le complément à 2 d'un nombre binaire s'obtient simplement en prenant le complément à 1


de ce nombre et en ajoutant 1 au bit de son rang de poids le plus faible. Le complément à 2 d’un
nombre est donc l’inversion de chaque bit, puis l’addition de 1.

11
Exemple : (101101)2 = (45)10

On dit que 010011 est le complément à 2 de 101101.

Voici donc comment on écrit des nombres binaires signés en utilisant la notation en
complément à 2 :

➢ Si le nombre est positif, sa grandeur est la grandeur binaire exacte et son bit de signe
est un 0 devant le bit de poids le plus fort
➢ Si le nombre est négatif, sa grandeur est le complément à 2 de la grandeur exacte et
son bit de signe est un 1 à gauche du bit de poids le plus fort. C'est ce qu'on peut dans
l’exemple ci-dessous pour (45)10

La complémentation à 2 d'un nombre signé transforme un nombre positif en un nombre


négatif et vice versa. La notation en complément à 2 est employée pour exprimer les nombres
binaires signés parce que, comme nous le verrons, on parvient grâce à elle à soustraire en
effectuant en réalité une addition. Cela n'est pas négligeable dans le cas des ordinateurs, puisque
avec les mêmes circuits, nous parvenons à soustraire et à additionner. Dans de nombreuses
situations, le nombre de bits est fixé par la longueur des registres qui contiennent les nombres
binaires, d'où la nécessité d'ajouter des 0 pour avoir le nombre de bits requis.

III- Arithmétique binaire


III-1 Addition Binaire
L'addition de deux nombres binaires est parfaitement analogue à l'addition de deux nombres
décimaux. En fait, l'addition binaire est plus simple puisqu'il y a moins de cas à apprendre. Les

12
mêmes règles s'appliquent à l'addition binaire. Cependant, il n'y a que quatre cas, qui peuvent
survenir lorsqu'on additionne deux nombres binaires et cela quel que soit le rang. Ces quatre
cas sont:

➢ 0+0=0
➢ 1+0=1
➢ 1 + 1 = 10 = 0 + report de 1 sur le rang de gauche
➢ 1 + 1 + 1 = 11 = 1 + report de 1 sur le rang de gauche

Le dernier cas ne se produit que lorsque, pour un certain rang, on additionne deux 1 plus un
report de 1 provenant du rang de droite. Voici quelques exemples d'additions de deux nombres
binaires:

III-2 Soustraction binaire


La table de soustraction sur 2 bits est la suivante :

0-0=0

1-0=1

1-1=0

0 - 1 = 1 avec une retenue de 1

La retenue est retranchée du bit de rang supérieur à gauche Comme en système décimal, le
résultat est obtenu en soustrayant le nombre le plus petit en valeur absolue du nombre le plus
grand et le signe du résultat est le signe du nombre le plus grand en valeur absolue.

Exemple :

13
III-3 Multiplication binaire
On multiplie les nombres binaires de la même façon qu'on multiplie les nombres décimaux.
En réalité, le processus est plus simple car les chiffres du multiplicateur sont toujours 0 ou 1,
de sorte qu'on multiplie toujours par 0 ou par 1.

La procédure est semblable à celle utilisée en décimal.

Cas des nombres signés :


Si les nombres sont tous les deux négatifs, ce sont leurs compléments à 2 qui sont
pris encompte avant la multiplication et le produit est en notation exacte.
Si l’un des nombres est négatif, on prend son complément à 2 avant la multiplication, le
résultatest le complément à 2 du produit cherché.

Exemple 1 :(+3)10 x (+3)10 Exemple 2 :(-3)10 x (+3)10 Exemple 3 :(-3)10 x (-3) 10

III-4 Division binaire


La division d'un nombre binaire (le dividende) par un autre (le diviseur) est identique à la
division de deux nombres décimaux. En réalité, la division en binaire est plus simple puisque
pour déterminer combien de fois lediviseur entre dans le dividende, il n'y a que 2 possibilités 0
ou 1.

14
Exemple 1:

Exemple 2 Exemple 3: Exemple 4

IV- Notion de codage


L’action de faire correspondre à des nombres, des lettres ou des mots, un groupe spécial de
symboles, s’appelle : Codage et le groupe de ces symboles s’appelle un code. En général, il
s’agit des transformations suivantes :

Quand on fait par exemple correspondre à un nombre décimal son équivalent binaire : il s’agit
d’un codage binaire pur. Nous allons aborder par la suite un certain nombre de codes
qui possèdent chacun des particularités et qui correspondent à une application précise,
comme :

- Codes arithmétiques qui permettent de faire les calculs : code BCD, code XS3
- Codes alphanumériques : Code ASCII
- Codes de transmission : codes détecteurs d'erreur

15
Ces codes peuvent être pondérés ou non. Dans un code pondéré, chaque position du chiffre
a un poids comme le cas du binaire naturel, par contre, on ne peut affecter aucun poids aux bits
des codes non pondérés.

IV-1 Codes Décimaux


Les codes décimaux sont utilisés pour la représentation des chiffres du système décimal
(symboles 0 à 9) ; ceci pour éviter une procédure complexe de conversion. Ces codes
contiennent par conséquent dix mots-code. Pour représenter un nombre (c’est à dire une
succession de chiffres) avec un code décimal, on utilise une chaîne d’éléments binaires
regroupés par quatre. Chaque groupe de 4 bits représente un chiffre.

a) Binaire codé décimal (ou code BCD)

Le code BCD (Binary coded decimal) ou DCB (Décimal Codé Binaire) est un code
pondéré et les poids sont : 1, 2, 4 et 8.

C’est une représentation plus simple et très utile dans certaines applications, comme par
exemple l’affichage en décimal du contenu des compteurs (Afficheurs 7 segments) mais elle
nécessite plus de bits.

La figure suivante monte une table de Comparaison entre le binaire sur 4 bits et le code DCB :

16
Pour coder un nombre décimal en BCD, chacun de ses chiffres est codé en binaire sur 4
bits.

Exemple :

(1708)10 = (0001011100001000)2

b) Le code majoré de 3 (excédent 3)

Le code à excès de trois (Excess 3 noté XS 3) s’obtient en ajoutant 3 à chaque mot-code


du code BCD. Tout comme le BCD, le code à excès de 3 est un code décimal. Cependant il
n’est pas pondéré. On fait appel au code XS-3 en raison de la simplification qu'il apporte à
certains calculs arithmétiques. En effet, il a été créé pour permettre la réalisation simple des
opérationsde soustraction.

Table de Codage:
Ce code donne un effet miroir complémentaire entre 4 et 5:
Code auto-complémentaire.

17
c) Le code AIKEN

Ce code regroupe les deux propriétés des codes BCD et XS 3: c’est un code décimal
pondéré.Les poids des éléments binaires sont 2 4 2 1. La différence entre le code Aïken et le
code BCDest le poids du premier bit à gauche : il vaut 8 en BCD et 2 en code Aïken. Le code
Aiken est fréquemment utilisé dans les automatismes industriels.

Table de Codage:

Exemple :

Ce code possède aussi la propriété d’auto-complémentarité.

Exemple avec le chiffre 8 : le complément à 1 de 1110 (mot-code du 8) est 0001 (mot-code


du 1)

IV-2 Code binaire réfléchi (ou code Gray)


C'est un code à distance minimale car on passe d'une ligne à la suivante en ne changeant
qu'un seul bit. Pour mieux mettre en évidence la propriété utile du code de Gray, on peut revoir
le binaire naturel. Il se trouve dans la séquence du binaire naturel de nombreux cas où plusieurs
bits changent d’état en même temps, comme par exemple:

0 0 1 de cette ligne à la suivante, 2 bits changent d’état :


010

0 1 1 de cette ligne à la suivante, les 3 bits changent d’état :

100

18
Cependant dans certains dispositifs, il est impossible de faire basculer deux bits
simultanément.La solution est alors le code de Gray. Ce code est surtout utilisé pour des capteurs
de positions.Il est aussi très utile dans la simplification des fonctions binaires par la méthode de
Karnaugh qui sera étudiée par la suite (Chapitre 2).

Ce code suit une règle de constitution basée sur le processus des codes réfléchis. La table
decodage suivante donne les codes Gray de 0 jusqu’à 15.

a) Conversion Binaire → Gray


Pour passer du binaire naturel au code binaire réfléchi, on peut utiliser la méthode de
l’addition décalée sans retenue. Les étapes de conversion sont comme suivant :

➢ Le bit de gauche du code Gray est le même que le bit de gauche du nombre binaire.
➢ Ajouter le MSB du nombre binaire à son voisin immédiat et reporter la somme
ennégligeant une retenue éventuelle sur la ligne inférieure correspondante au code
Gray.
➢ Continuer l’addition des bits à leur voisin de droite et reporter les sommes ainsi
obtenues jusqu’à atteindre le LSB.

➢ Le nombre en code Gray comportera toujours le même nombre de bits que le


binaire original.
Exemple : Convertir le binaire 10110

19
b) Règle de conversion Gray → binaire
Pour passer du binaire naturel au code binaire réfléchi, on suit les étapes de conversion:

➢ Le bit de gauche du nombre binaire est le même que le bit de gauche du code Gray.
➢ Ajouter le MSB du nombre binaire obtenu au voisin de droite immédiat du code Gray.
➢ Continuer les additions jusqu’à atteindre le LSB.

IV-3 Codes détecteurs d’erreurs


Quel que soit la qualité des supports de communication et les performances des
techniques de transmission utilisées, des perturbations vont se produire entraînant des
erreurs sur les données transmises. Dans ces conditions, la suite binaire reçue ne sera pas
identique à la suite émise. Ces erreurs doivent être détectées quand elles apparaissent au
moment de la transmission des données. On cite par la suite certains codes utilisés pour la
détection des erreurs de transmission.

a) Code p parmi n
Dans ce code, à chaque nombre correspond n bits, dont p valent 1 et (n-p) valent 0. Si
lors d’une communication, il y a réception d’un nombre de 1 différent de p, cela signifie
qu’il y a eu une erreur de transmission. Il existe plusieurs codes « 2 parmi 5 », les plus
utilisés sont:l e code « 8 4 2 1 0 » et le code « 7 4 2 1 0 », illustrés sur la table de conversion
suivante :

20
Les codes sont pondérés sauf pour le chiffre 0 dont leurs équivalents ne respectent pas les
poids84210 ou 74210

Remarque :
Contrairement à d’autres codes détecteurs/correcteurs, les codes « 2 parmi 5 » permettent
dedétecter une erreur, mais ne permettent pas de la corriger. De plus, si lors de la transmission,
2 bits de valeurs différentes changent simultanément d’état, aucune erreur ne pourra être
détectée à la réception.

b) Code de parité
Pour la détection des erreurs de transmission, une méthode simple s’appuie sur l’introduction
d’un bit de parité. Le bit de parité est un bit supplémentaire qui est transmis avec un mot
numérique (groupe de bits). Selon le nombre de bits dont la valeur est à 1, le premier bit à
gauche qui est le bit de parité, reçoit la valeur 0 ou 1. On parle de la parité paire ou impaire.

En parité paire, le bit de parité reçoit une valeur telle que le nombre total de bits à 1 soit pair

En parité impaire, le bit de parité reçoit une valeur telle que le nombre total de bits à
1 soitimpair

Remarque :
➢ Les codes à parité simple se contentent d'ajouter un bit de parité pour la détection
d'erreur

➢ Le récepteur d’un mot binaire se charge de vérifier si la parité est respectée. Si la


parité n'est pas respectée, le récepteur peut en déduire la présence d'une erreur.
L'erreur peut être dû à un bit de parité erroné ou un bit du message erroné.

21
IV-4 Codes alphanumériques : Code ASCII
La mémoire de l'ordinateur conserve toutes les données sous forme numérique. Il n'existe
pas de méthode pour stocker directement les caractères. Chaque caractère possède donc son
équivalent en code numérique : c’est le code ASCII ; qui est la contraction de « American
Standard Code for Information Interchange », traduit en français par « Code Americain
Standard pour l'Echange d'Informations ». C’est un code qui n’a aucune propriété arithmétique
mais qui sert à représenter des lettres, des chiffres, des signes typographiques.

Le code ASCII est employé dans la transmission d'informations alphanumériques entre un


ordinateur et des dispositifs d'entrée/sortie externes (clavier, imprimante, écran, etc..). C’est
uncode à 7 bits permettant le codage de 128 caractères parmi lesquels, tous les caractères
alphanumériques utilisés en anglais.

Comme la plupart des ordinateurs traitent les bits par paquets de 8, le huitième bit est,
soit inutilisé, soit utilisé comme bit de parité pour le contrôle.

Le code ASCII a été mis au point pour la langue anglaise, il ne contient donc pas de caractères
accentués, ni de caractères spécifiques à une langue. Pour coder ce type de caractère, le code
ASCII a donc été étendu à 8 bits (un octet) pour pouvoir coder plus de caractères : Il s’agit alors
du Code ASCII étendu.

Le code ASCII étendu n'est pas unique et dépend fortement de la plateforme utilisée.

Remarque :

Il existe d’autres codes alphanumériques tel que le code EBCDIC (Extended Binary-
Coded Decimal Interchange Code), développé par IBM, qui permet de coder des caractères
sur 8 bits.Ce code n'a pas eu le succès qu'a connu le code ASCII malgré qu’il est largement
répandu sur les machines IBM.

22
Table ASCII (liste partielle)

23
Chapitre 2 :

Algèbre de BOOLE et Fonctions Booléennes

24
INTRODUCTION
Pour étudier les fonctions logiques on utilise une algèbre qui a été inventée au XIXème siècle
par un philosophe mathématicien anglais : Georges Boole. Dans ce chapitre nous nous
proposons de présenter les fonctions logiques de base ainsi que leurs représentations
graphiques. Nous rappellerons également les lois fondamentales de l’algèbre de Boole
nécessaires à l'étude des circuits électroniques.

I. Définitions

I.1. Algèbre de Boole

C'est l'algèbre des variables qui ne


peuvent prendre que deux valeurs, 0
ou 1. Ces variables sont appelées
variables logiques. En pratique, on
associe aux deux états d'une variable
logique deux niveaux de tension :

V(0) = 0 et V(1) = 5 V pour les états 0


et 1 respectivement.

I.2. Variable booléenne ou logique

C'est une grandeur qui ne peut prendre que deux valeurs 0 ou 1. Fonction booléenne ou logique

I.3. Fonction booléenne ou logique

On appelle fonction logique une manipulation de variables logiques à l’aide des opérateurs
de base. Cette fonction se note : f(a0,a1,……, an). Pour la définir, il faut préciser sa valeur pour
toutes les combinaisons possibles. Cela peut se faire de plusieurs façons :

➢ Par la donnée d'une figure illustrant le fonctionnement d'un système.


➢ Par une définition écrite ou cahier des charges : la lampe L s'allume lorsque les
interrupteurs K1 et K2 sont fermés tous les deux. Elle est éteinte dans tous les autres
cas.

➢ Par une définition écrite ou cahier des charges : la lampe L s'allume lorsque les
interrupteurs K1 et K2 sont fermés tous les deux. Elle est éteinte dans tous les autres
cas.

25
➢ Par la donnée de la table de vérité (TV)

On peut représenter toute fonction logique f à n variables sous forme d’une table de vérité à 2n
lignes et (n+1) colonnes. Les lignes représentent les combinaisons possibles des variables qui
apparaissent dans l’ordre binaire naturel.

Exemple :

La table de vérité relative à une fonction logique à deux variables L(K1,K2) se compose de 3
colonnes et de 4 lignes.

Le doublet des deux variables (K1,K2) peut Déc K1 K2 L


2
prendre 2 valeurs distinctes. Dans le cas 0 0 0 L(0,0)
général de n variables, il y aura 2n 1 0 1 L(0,1)
2 1 0 L(1,0)
configurations possibles.
3 1 1 L(1,1)
Les variables K1 et K2 sont dites les
entrées du système, L est dite la sortie du
système.

II. Opérateurs logiques

II-1 Opérateur NON ( négation )

➢ NON : est un opérateur unaire ( une seule variable) qui à pour rôle d’inverser
la valeur d’une variable .
➢ F(A)= Non A = 𝐴̅
A 𝐴̅
0 1
II-2 Opérateur ET ( AND ) 1 0

Le ET est un opérateur binaire (deux variables) , a pour rôle de réaliser le Produit


logique entre deux variables booléennes. Le « ET » fait la conjonction entre deux
variables.

26
• Modèle électrique

Le ET est défini par : F(X, Y) = X .Y . Sa table de vérité est la suivante :

II-3 Opérateur OU ( OR )

Le OU est un opérateur binaire ( deux variables), a pour rôle de réaliser la somme


logique entre deux variables logiques. Le OU fait la disjonction entre deux variables.

• Modèle électrique

Le OU est défini par F(X , Y) = X + Y (A ne pas confondre avec la somme arithmétique )

Les opérateurs ET/ OU peuvent réaliser le produit /Somme de plusieurs variables logiques
(A,B , C )

II -4 Priorité des opérateurs

27
Pour évaluer une fonction logique, on commence par évaluer les sous expressions
entre lesparenthèses, puis le NON , le ET, et le OU

III. LOIS FONDAMENTALES DE l’ALGEBRE DE BOOLE

III-1 Théorèmes généraux

• Opérateur NON :

• Opérateur ET :

• Opérateur OU :

Relations de Distributivité :

28
A .( B C) = ( A .B) ( A .C) Distributivité du ET sur le OU

A ( B.C) = (A B).(A C) Distributivité du OU sur le ET

Les relations suivantes découlent des théorèmes de l’A.B, citées précédemment. Elles sont bien
utiles dans le traitement des fonctions algébriques.

III-2 Dualité de l’algèbre de Boole

Le principe de dualité peut être exprimé ainsi : Toute expression logique reste vraie si on
remplace le ET par le OU, le OU par le ET , le 1 par 0 , le 0 par 1, comme par exemple :

III-3 Théorème de DE-MORGANE

La somme logique complémentée de deux variables est égale au produit des compléments
des deux variables :

Le produit logique complémenté de deux variables est égale au somme logique des
compléments des deux variables :

Ces deux relations peuvent être généralisées à plusieurs variables et on obtient le théorème
de Morgan à N variables. Ce théorème permet d’interchanger l’opérateur + et ·, et l’opérateur
de complément.

29
III-4 AUTRES OPERATEURS LOGIQUES

En plus des opérateurs de base le ET, OU et NON, trois autres opérateurs logiques sont
fréquemment utilisés : le NAND (NON-ET), le NOR (NON-OU) et le XOR (OU Exclusif).

- NAND :

- NOR :

- XOR :

On peut exprimer le XOR de différentes manières :

- Propriétés des opérateurs NAND et NOR

Remarque:

• En utilisant les NAND et les NOR, on peut exprimer n’importe qu’elle expression logique.
Pour cela, Il suffit d’exprimer les opérateurs de base ( NON , ET , OU ) avec des NAND et
des NOR.

• Les NAND et NOR sont des opérateurs universels

30
Les relations suivantes donnent les expressions des trois opérateurs de base (NON, ET et OU)
en fonction de l’opérateur NOR :

IV CONCEPTION DES CIRCUITS LOGIQUES


IV-1 Portes logiques

Toute fonction logique peut être réalisée à l’aide d’un nombre de circuits logiques de base
appelées portes. La porte logique est un circuit électronique élémentaire qui réalise la fonction
d’un opérateur logique de base. On peut définir une porte logique par son symbole où deux
représentations peuvent être utilisées. Ces portes électroniques sont construites à partir de
plusieurs transistors en circuits intégrés.

• Les portes ET , OU , NAND , NOR peuvent avoir plus que deux entrées

31
• Il n’existe pas de OU exclusif à plus de deux entrées.

Porte logique en circuit intégré :

Exemple de Portes logiques NOT : Le circuit intégré de référence 74LS04

• Ce circuit comporte 14 broches (pin ou pattes).


• L’alimentation en tension est faite entre les pattes 7 et 14; respectivement pour la masse
(GND) et 5V (VCC).
• Il contient 6 portes logiques NOT indépendantes ayant 2 entrées chacune. Les entrées
de chacune de ces portes NOT sont identifiées par la broche A et B, tandis que la sortie
est représenté par Y.
IV-2 Schéma d’un circuit logique ( Logigramme)

C’est la traduction de la fonction logique en un schéma électronique. Le principe consiste à


remplacer chaque opérateur logique par la porte logique qui lui correspond.

Exemple: Ci-dessous une fonction F, dépendant de trois variables A, B et C et son logigramme:

IV-3 Circuits logiques avec NAND uniquement

Les circuits logiques sont souvent implantés avec des portes NAND et NOR plutôt que des
portes AND et OR. Les portes NAND et NOR nécessitent moins de transistors pour

32
l’implémentation, donc prennent moins de superficie sur les circuits intégrés, et donc sont
moins chers.

V En effet, dans la pratique on est toujours amené à réaliser des fonctions avec une seule
sorte de portes logiques telle que NAND : La méthode consiste à complémenter 2 fois
la fonction et à utiliser le théorème de de MORGAN avec une seule des
complémentations. Comme exemple, on prend la fonction suivante : F = AB +CD

V- REPRESENTATION DES FONCTIONS LOGIQUES

Les fonctions logiques directement issues des mathématiques (algèbre de Boole) sont les
outils de base de l'électronique numérique. Elles sont mises en œuvre en électronique sous
forme de portes logiques.

V-1 Détermination de la fonction logique

Si une fonction logique possède n variables logiques (2n combinaisons); la fonction possède
2n valeurs. Les 2n combinaisons sont représentées dans la table de vérité. La lecture de la
fonction peut s’effectuer sur les états « O » et on parle des MAXTERMES ou sur les états « 1»
et on parle des MINTERMES.

Exemple: Ci-après, la table de vérité d’une fonction F qui dépend de trois variables d’entrées
A, B et C.

33
La lecture sur les états « 1 » donne la forme suivante :

C’est la forme canonique disjonctive (somme de produits), C’est aussi la somme des min
termes ou une disjonction de conjonctions.

La lecture sur les états « 0 » donne la forme suivante :

C’est la forme canonique conjonctive (produit de sommes). C’est aussi le produit des max
termes ou une Conjonction de disjonctions

Les deux formes canoniques (conjonctive et disjonctive) sont équivalentes.

Remarque : La forme canonique d’une fonction est la forme ou chaque terme de la fonction
comporte toutes les variables d’entrées. On peut toujours ramener n’importe quelle fonction
logique à l’une des formes canoniques. Cela est possible en utilisant les règles de l’algèbre de
Boole :

➢ Multiplier un terme avec une expression qui vaut 1


➢ Additionner à un terme avec une expression qui vaut 0
➢ Ensuite faire la distribution.

L’exemple suivant montre cette transformation :

VI SIMPLIFICATION DES FONCTIONS LOGIQUES

L’objectif de la simplification des fonctions logiques est de réduire le nombre de termes dans
une fonction et le nombre de variables dans un terme. Cela est dans le but de réduire le nombre
de portes logiques utilisées et alors obtenir une réalisation matérielle plus facile à construire et
moins couteuse. Plusieurs méthodes existent pour la simplification, les plus utilisées sont :

- La méthode algébrique

34
- La méthode graphique par tableau de KARNAUGH
VI-1 Méthode algébrique

Pour obtenir une expression plus simple d’une fonction algébrique par cette méthode, il faut
utiliser :

- Les théorèmes et les propriétés de l’algèbre de Boole.

- La multiplication par 1 (X+𝑋̅).

- L’addition d’un terme nul (X𝑋̅).

En fait il n’y a pas une démarche bien spécifique, mais il faut bien appliquer les règles de
simplification comme il est illustré par la suite :

• Regrouper des termes à l’aide des règles de l’algèbre de Boole :

• Ajouter un terme déjà existant à une expression :

• Il est possible de supprimer un terme déjà inclus dans la réunion des autres termes :

Remarque : Il est préférable de simplifier la forme canonique ayant le nombre de termes


minimum. La simplification peut ne pas être unique.

35
VI-2 Simplification par la table de Karnaugh (T.K.)
a) Définitions

La méthode de Karnaugh se base sur la règle des termes adjacents. Ces termes ne différent
que par l’état d’une seule variable, comme par exemple les min-termes suivants :

Elle s’applique aux fonctions logiques de 2,3,4,5 et 6 Variables.


La simplification par cette méthode consiste à regrouper dans un tableau, appelé tableau (ou
table) de karnaugh tous les termes qui sont adjacents. Ce tableau comporte 2n cases ( n est le
nombre de variables).

Dans un tableau de karnaugh , chaque case possède un certain nombre de cases adjacentes :

36
Pour remplir la T.K. d’une fonction logique, on utilise sa table de vérité ou sa forme
canonique.

• Passage de la forme canonique à la TK

Le passage de la table de vérité à la TK se fait comme suit :

- Pour chaque combinaison qui représente un min-terme lui correspond une case dans le
tableau qui doit être mise à 1.
- Pour chaque combinaison qui représente un max- terme lui correspond une case dans le
tableau qui doit être mise à 0.
- Lorsqu’on remplit le tableau, on doit soit travailler sur les mintermes ou sur les
maxtermes. Dans ce qui suit, on va se contenter de travailler sur les min-termes.

Exemple :

• Passage de la forme canonique à la TK

Si la fonction logique est donnée sous la forme canonique ( disjonctive ou conjonctive), on


fait correspondre pour chaque terme une seule case qui doit être mise à 1 ou 0.

Exemple: F1 est une fonction canonique disjonctive ( Somme des mintermes )

37
b) Principe de la simplification

L’idée de base est de faire des regroupements des cases adjacentes qui comportent des 1 (le
cas des mintermes). Pour simplifier, il faut bien suivre les étapes suivantes :

➢ Remplir le tableau à partir de la table de vérité ou à partir de la forme canonique.


➢ Faire des regroupements maximums de 16,8,4,2 cases (à éliminer ceux inclus dans
les autres)
➢ La case de « 1 » qui peut rester isolée constitue un seul regroupement
➢ Dans un regroupement qui contient un seul terme, on ne peut rien éliminer.
➢ Dans un regroupement qui contient 2 ou 4 ou 8 ou 16 termes, on peut éliminer une
ou 2 ou 3 ou 4 variables, respectivement.
• Exemples de regroupements possibles :

38
• Exemples de regroupements non possibles :

Le terme simplifié de chaque groupement est écrit en éliminant la ou les variables d’entrée
qui changent d’état. L’expression logique finale simplifiée est alors la somme de tous ces
termes.

- Exemple de 3 variables :

- Exemple de 4 variables:

39
VII FONCTIONS INCOMPLETEMENT DEFINIES

Ce sont des fonctions booléennes pour lesquelles il n'y a pas de valeurs associées à certains
termes produits. Ceux-ci ne sont jamais "sélectionnés". L'état d'entrée où la sortie n'est pas
définie est un état impossible ou interdit. La valeur associée à une sortie indéfinie peut être
indifféremment 0 ou 1 et pour ces cas, il faut mettre  ou X dans la T.V et la T.K. Concernant
la simplification par la T.K, on tient compte des considérations suivantes :

- Dans des regroupements de la TK, On peut prendre les X, comme étant des « 1 » si
on lit la fonction sur 1 ou des « 0 » dans le cas inverse.

- Il ne faut pas former un regroupement qui contient que des X.

Exemple :
L'afficheur 7 segments est un exemple particulier de fonction booléenne incomplètement
spécifiée. Les 10 chiffres décimaux sont affichés à l'aide de 7 segments, notés de a à g, qui
peuvent être à 0 (éteint) ou 1 (allumé). Le codage des 10 chiffres décimaux nécessite 4 bits,
que l'on peut noter e3 à e0.

La Table suivante donne les 7 fonctions booléennes traduisant l'allumage des 7 segments
a à g en fonction des bits e3 à e0:

40
La table de Karnaugh correspondante à la fonction logique a est comme suit :

Après les groupements des cases adjacentes en tenant compte des cases contenant des X, la
fonction logique simplifiée est la suivante :

41

Vous aimerez peut-être aussi