Vous êtes sur la page 1sur 103

Électronique Numérique

M. Moussaoui

Pr M. MOUSSAOUI, 1
ENSA, Tanger
Chapitre I

Portes logiques et algèbre


Booléenne

Pr M. MOUSSAOUI, 2
ENSA, Tanger
Définitions
1. Les états logiques
• Une variable booléenne est une grandeur qui peut, à des moments
différents, avoir la valeur 1 ou 0.
• Les variables booléennes servent souvent à représenter un état d’un
système
EX: une lampe est soit à ’1’ (pour allumée) ou soit à ’0’ (pour éteinte).
2. Les variables logiques
• Une variable logique est une grandeur qui ne peut prendre que les
deux états logiques. Ils s'excluent mutuellement. Nous les symboliserons
par 0 ou 1.
3. Les fonctions logiques
• Une fonction logique est une variable logique dont la valeur dépend
d'autres variables.

En algèbre booléenne, il n'y a pas de fraction, de


partie décimale, de nombre négatif, de racine
carrée, de racine cubique, de logarithmes, de
nombre imaginaire...
Pr M. MOUSSAOUI, 3
ENSA, Tanger
La table de vérité

• Les circuits logiques comprennent souvent plusieurs entrées pour une seule
sortie. On appelle table de vérité le tableau donnant la valeur de la sortie pour
toutes les combinaisons possibles en entrée.

B A X C B A X D C B A X
0 0 ? 0 0 0 ? 0 0 0 0 ?
0 1 ? 0 0 1 ? 0 0 0 1 ?
0 0 1 0 ?
1 0 ? 0 1 0 ?
0 0 1 1 ?
1 1 ? 0 1 1 ? 0 1 0 0 ?
1 0 0 ? 0 1 0 1 ?
0 1 1 0 ?
1 0 1 ?
0 1 1 1 ?
1 1 0 ? 1 0 0 0 ?
1 1 1 ? 1 0 0 1 ?
1 0 1 0 ?
1 0 1 1 ?
Table de vérité: deux entrées, Trois entrées,
1 1 0 0 ?
quatre entrées
1 1 0 1 ?
1 1 1 0 ?
Pr M. MOUSSAOUI, 1 1 1 1 ? 4
ENSA, Tanger
Les fonctions logiques
élémentaires

Pr M. MOUSSAOUI, 5
ENSA, Tanger
Le "ou" logique (OR)

• L'opération est représentée par un + (on note x = A+B). Le signe + indique un


OU logique. La fonction de sortie est active si A OU B est actif.
• ne pas confondre l’opérateur logique OU avec l’opérateur arithmétique
d’addition (+).
• De manière générale, la fonction de sortie d’une porte OU à n entrées est
active (niveau 1) si une seule entrée est active (niveau 1). La fonction de
sortie est inactive (niveau 0) si toutes les entrées sont inactives (niveau 0).

A B X
0 0 0
0 1 1 notation usuelle
(ancienne notation US)
1 0 1
1 1 1
la table de vérité notation normalisée IEEE
(ancienne notation européenne)
Pr M. MOUSSAOUI, 6
ENSA, Tanger
Le "et" logique (AND)

• L'opération est représentée par un signe multiplié (x ou.) ce qui se note x = A. B.


Le signe · signifie l'opération booléenne ET
• De manière générale, la fonction de sortie d’une porte ET à n entrées est active
(niveau 1) uniquement lorsque toutes les entrées sont actives (niveau 1). La
sortie d’une porte ET est inactive (niveau 0) si une seule des entrées est inactive
(niveau 0).

A B X
0 0 0
0 1 0 notation usuelle
1 0 0
1 1 1

la table de vérité
notation normalisée IEEE

Pr M. MOUSSAOUI, 7
ENSA, Tanger
L'inverseur logique (NOT)

• Cette opération est notée comme suit: X =A


• La sortie est le complément de l'entrée.
• Un tel circuit n'a toujours qu'une entrée, et sa sortie prend le niveau logique
opposé du niveau logique de l'entrée.

B X
0 1 notation usuelle

1 0

la table de vérité

notation normalisée IEEE

Pr M. MOUSSAOUI, 8
ENSA, Tanger
L'opération "non ou" (NOR)

• La porte NON-OU a un fonctionnement analogue à une porte OU suivie d'un


INVERSEUR. L'expression de sortie d'une porte NON-OU est :

X = A+ B
• De manière générale, la fonction de sortie d’une porte NON-OU à n entrées est
active (niveau 1) uniquement lorsque toutes les entrées sont inactives (niveau
0). La sortie d’une porte NON-OU est inactive (niveau 0) si une seule des
entrées est active (niveau 1).

A B X
0 0 1
0 1 0 notation usuelle
1 0 0
1 1 0

la table de vérité
Pr M. MOUSSAOUI, notation normalisée IEEE
9
ENSA, Tanger
L'opération "non ou" (NOR)

• nous pouvons montrer que la porte NOR est équivalent à

X = A + B = A.B

Pr M. MOUSSAOUI, 10
ENSA, Tanger
L'opération "non et" (NAND)

• La porte NON-ET a un fonctionnement analogue à une porte ET suivie d'un


INVERSEUR.
• De manière générale, la fonction de sortie d’une porte NON-ET à n entrées est
active (niveau 1) si une seule des entrées est inactive (niveau 0). La sortie
d’une porte NON-ET est inactive (niveau 0) uniquement lorsque toutes les
entrées sont actives (niveau 1
• L'expression de sortie d'une porte NON-ET est

X = A.B
notation usuelle
A B X
0 0 1
0 1 1
1 0 1
1 1 0 notation normalisée IEEE
la table de vérité
Pr M. MOUSSAOUI, 11
ENSA, Tanger
L'opération "non et" (NAND)

• nous pouvons montrer que la porte NAND est équivalent à :

X = A.B = A + B

• Nous verrons par la suite que la structure interne de cette porte est
très simple ce qui fait que structurellement, les autres portes sont
réalisées à partir de structures NAND.

Pr M. MOUSSAOUI, 12
ENSA, Tanger
L'opération "ou exclusif" (XOR)

• La sortie d'une porte OU exclusif est au niveau haut seulement lorsque les deux
entrées sont à des niveaux logiques différents. Une porte OU exclusif n'a
toujours que deux entrées. On veut dire par là qu'il n'existe pas de portes OU
exclusif à trois ou quatre entrées.

• Cette opération est notée X = A ⊕ B = A.B + A.B


A B X
0 0 0
notation usuelle
0 1 1
1 0 1
1 1 0

la table de vérité
notation normalisée IEEE
Pr M. MOUSSAOUI, 13
ENSA, Tanger
L'opération ET inclusif (XNOR)

• Le circuit ET inclusif a un fonctionnement exactement opposé à celui du OU


exclusif. La sortie d'une porte ET inclusif est au niveau haut seulement lorsque
les deux entrées sont à des nivaux logiques identiques.
• Cette opération est notée

X = A ⊕ B = A.B + A.B

A B X
0 0 1
0 1 0
notation usuelle
1 0 0
1 1 1

la table de vérité
Pr M. MOUSSAOUI, notation normalisée IEEE
14
ENSA, Tanger
L'opération ET inclusif (XNOR)

• De manière générale, la fonction de sortie d’une porte ET inclusif


indique l’égalité entre les deux signaux d’entrées. La sortie est active
(niveau 1) si l’état logique des entrées est identique.
• Le fonctionnement de cette porte correspond à un comparateur un
bit.
• L’opérateur ET inclusif a une propriété particulière. L’inversion de la
sortie peut être reportée sur l’une ou l’autre des entrées, soit :

X = A ⊕B = A ⊕B + A ⊕ B

• Nous pourrons démontrer cette propriété avec l’algèbre de Boole.

Pr M. MOUSSAOUI, 15
ENSA, Tanger
Algèbre de BOOLE

Pr M. MOUSSAOUI, 16
ENSA, Tanger
Propriétés des fonctions NON, ET, et OU

• Commutativité des fonctions ET et OU :


– AB = BA
– A+ B = B + A
• Associativité des fonctions ET et OU :
– A(BC)=(AB)C = ABC
– A+(B+C)=(A + B)+ C = A + B + C
• Eléments neutres pour les fonctions ET et OU
– A.1=1.A=A
– A+0=0+A=A
• Eléments absorbants pour les fonctions ET et OU
– A.0=0.A=0
– A+1=1+A=1
• Propriété d’idempotence des fonctions ET et OU
– A.A= A
– A+A=A

Pr M. MOUSSAOUI, 17
ENSA, Tanger
Propriétés des fonctions NON, ET, et OU

• Propriétés de l’inversion logique


A=A
– Ā.A= 0
– Ā+A=1
• Distributivité de ET par rapport à OU
– A(B +C)= AB+ AC
– (A+ B )C= AC+ BC
• Distributivité de OU par rapport à ET
– A+BC =(A+B)(A+C)
– AB+C=(A+C)(B+C)
• Autres relations utiles se déduisant des précédentes (relations de simplification)
– A+AB=A
– A(A+B)=A
– A+ĀB=A+B
– A(Ā+B)=AB

Pr M. MOUSSAOUI, 18
ENSA, Tanger
Propriétés des fonctions NON, ET, et OU

• Théorème de De Morgan
– Les théorèmes de De Morgan se révèlent d'une grande utilité pour
simplifier des expressions comprenant des sommes ou des produits de
variables complémentés.
– Voici ces deux théorèmes:

A + B = A.B
A.B = A + .B
• Ce théorème peut se généraliser à plus de deux variables.

Pr M. MOUSSAOUI, 19
ENSA, Tanger
Quelques propriétés des fonctions NON ET et
NON OU
• Les propriétés des fonctions NON ET et NON OU se déduisent des propriétés
des fonctions élémentaires NON, ET, et OU.

Pr M. MOUSSAOUI, 20
ENSA, Tanger
Propriétés de la fonction OU exclusif

• A B=B A (commutativité)
• A (B C)= (A B)C= A B C (associativité)
• A 0=A A 1=Ā
• A A=0 A Ā=1
• A A’=Ā Ā’
• Utilisations courantes de la fonction OU exclusif
– Détection de deux éléments binaires différents
A B =1 A≠B

Pr M. MOUSSAOUI, 21
ENSA, Tanger
Opérateurs complets

• Un opérateur logique est dit complet s’il permet de réaliser les trois
fonctions de base de l’algèbre de Boole et, par conséquent, toutes
les fonctions logiques. Par exemple, l’opérateur NON ET est complet.
Il en est de même pour l’opérateur NON OU.
• En effet,

• En revanche, les opérateurs OU exclusif et ET inclusif, ne sont pas


complets.

Pr M. MOUSSAOUI, 22
ENSA, Tanger
Simplification des fonctions logiques

• Dès qu'on dispose de l'expression d'un circuit logique, il peut être possible de
la minimiser pour obtenir une équation comptant moins de termes ou moins
de variables par terme.
• Cette nouvelle équation peut alors servir de modèle pour construire un circuit
entièrement équivalent au circuit original mais qui requiert moins de portes.

(a)

(b)
Pr M. MOUSSAOUI, 23
ENSA, Tanger
Simplification algébrique

• Il n'existe pas de méthode générale pour simplifier une fonction


logique. Néanmoins, deux étapes interviennent souvent dans la
simplification.
– Applications successives des théorèmes de De Morgan en vue d'obtenir
une somme de produit
– Trouver des variables communes pour la mise en facteur de ces dernières.
• Exemples:
( )
Z = A.B.C + A.B A.C
Z = A.B.C + A.B .(A + C )
Z = A.B.C + A.B (A + C )
Z = A.B.C + A.B .A + A.B .C
Z = A.B.C + A.B + A.B .C
( )
Z = A.C B + B + A.B
Z = A.C(1) + A.B
Pr M. MOUSSAOUI, Z = A.C + A.B 24
ENSA, Tanger
Simplification algébrique

• Simplifier
( )
X = A + C .(B + D )

• Réaliser la fonction X= A+B+C


avec une porte NAND et un inverseur logique.

Pr M. MOUSSAOUI, 25
ENSA, Tanger
Méthode de Karnaugh

• Voici la procédure générale qui aboutit à l'expression de la sortie à


partir d'une table de vérité :

1. Pour chaque cas de la table qui donne 1 en sortie, on écrit le produit


logique (terme ET) qui lui correspond.
2. On doit retrouver toutes les variables d'entrée dans chaque terme ET
soit sous forme directe soit sous forme complémentée. Dans un cas
particulier, si variable est 0, alors son symbole est complémenté dans le
terme ET correspondant.
3. On somme logiquement (opérateur OU) ensuite tous les produits
logiques constitués, ce qui donne l'expression définitive de la sortie.

Pr M. MOUSSAOUI, 26
ENSA, Tanger
Méthode de Karnaugh (exemple)

No C B A X Equation minterme
1 0 0 0 0
2 0 0 1 0
3 0 1 0 1 C BA
4 0 1 1 1 C BA
5 1 0 0 0
6 1 0 1 0
7 1 1 0 0
8 1 1 1 1 CBA

L'expression complète s'obtient en effectuant des OU logique de ces trois


mintermes, ce qui nous :

X = C BA + C BA + CBA
Pr M. MOUSSAOUI, 27
ENSA, Tanger
La méthode des tables de
Karnaugh

Pr M. MOUSSAOUI, 28
ENSA, Tanger
Introduction

• La table de Karnaugh est un outil graphique qui permet d’obtenir le schéma


optimal correspondant au circuit logique combinatoire.
• les tables de Karnaugh ils ne sont plus d'une grande utilité quand le nombre
de variables dépasse six.

• Théorème d'adjacence
– Le concept nécessaire à la compréhension des tables de Karnaugh est
l'adjacence logique. Deux mots binaires sont dits adjacents s'ils ne
diffèrent que par la complémentarité d'une, et seulement une, variable. Si
deux mots sont adjacents sont sommés, ils peuvent être fusionnés et la
variable qui diffère est éliminée.
– Par exemple, les mots ABC et AB C sont adjacents puisqu'ils ne diffèrent
que par la complémentarité de la variable C. Le théorème stipule donc
que

ABC + AB C = AB

Pr M. MOUSSAOUI, 29
ENSA, Tanger
La construction de la table de Karnaugh

• La table de Karnaugh a été construite de façon à faire ressortir l'adjacence


logique de façon visuelle.
• La construction de la table de Karnaugh garanti qu’il n’y a qu’une seule variable
qui change entre deux cases voisines

B A X B
0 0 1 A 0 1
BA
0 1 0 0 1 0
1 0 0 1 0 1
1 1 1 BA

table de Karnaugh pour deux variables, ainsi que la table de


vérité correspondante.

Pr M. MOUSSAOUI, 30
ENSA, Tanger
La construction de la table de Karnaugh

C B A X
0 0 0 1 CBA
0 0 1 1 C BA CB
0 1 0 1 CBA A 00 01 11 10
0 1 1 0 0 1 1 1 0
1 0 0 0 1 1 0 0 0
1 0 1 0
1 1 0 1 CB A
1 1 1 0

table de Karnaugh pour trois variables, ainsi que la table de


vérité correspondante.

Pr M. MOUSSAOUI, 31
ENSA, Tanger
La construction de la table de Karnaugh

D C B A X
0 0 0 0 0
0 0 0 1 1 D C BA
0 0 1 0 0 DC
0 0 1 1 0 BA 00 01 11 10
0 1 0 0 0
0 1 0 1 1 DCBA 00 0 1 0 0
0 1 1 0 0 01 0 1 0 0
0 1 1 1 0
1 0 0 0 0 11 0 1 1 0
1 0 0 1 0
1 0 1 0 0 10 0 0 0 0
1 0 1 1 0
1 1 0 0 0
1 1 0 1 1 DC B A
1 1 1 0 0
1 1 1 1 1 DCBA

table de Karnaugh pour quatre variables, ainsi que la table de


vérité correspondante.
Pr M. MOUSSAOUI, 32
ENSA, Tanger
REUNION

• Il est possible de simplifier l'expression de sortie X en combinant selon des règles


précises les cellules de la table de Karnaugh qui contiennent des 1. On donne à
ce processus de combinaison le nom de réunion.

• Réunion de doublets (de paires)


– pour tout doublet de 1 voisins verticalement ou horizontalement. La ligne du
haut est considérée comme adjacente à la ligne du bas, idem pour la
colonne de gauche avec la colonne de droite

CB
A 00 01 11 10
0 0 1 0 0
1 0 1 0 0 X = CB
Exemple de Réunion de doublet
réunion de deux 1 provoque l'élimination d'une variable
Pr M. MOUSSAOUI, 33
ENSA, Tanger
Réunion de quartets (groupes de quatre)
DC
BA 00 01 11 10
00 0 0 0 0 CB
A 00 01 11 10
01 0 0 0 0 0 0 1 1
0
11 1 1 1 1 X = BA 1 0 0 1 1 X=C
10 0 0 0 0

DC DC
BA 00 01 11 10 BA 00 01 11 10
00 0 0 0 0 00 1 0 0 1
01 0 0 0 0
01 0 1 1 0
X = CA 11 0 0 0 0
X = CA
11 0 1 1 0

0 0 0 0 10 1 0 0 1
10

réunion de quatre 1, l'élimination de deux variables


Pr M. MOUSSAOUI, 34
ENSA, Tanger
Réunion d'octets (groupes de huit)

DC DC
BA 00 01 11 10 BA 00 01 11 10
00 0 0 0 0 00 1 0 0 1
01 1 1 1 1 01 1 0 0 1
11 1 1 1 1 X=A 11 1 0 0 1
X=C
10 0 0 0 0 1 0 0 1
10

une réunion de huit 1, l'élimination de trois variables

Pr M. MOUSSAOUI, 35
ENSA, Tanger
Le processus de simplification au complet

• Voici les étapes à suivre pour simplifier une expression


booléenne en recourant à la méthode des tables de
Karnaugh:
– Dessinez la table de Karnaugh et placez des 1 dans les carrés
correspondant aux lignes de la table de vérité dont la sortie est 1.
Mettez des 0 dans les autres carrés.
– Etudiez la table de Karnaugh et repérez tous les groupes possibles.
Trouvez les plus grands.
– Commencez ensuite par encercler les 1, dit isolés, qui ne font
parties que d'un seul groupe. Cela signifie que pour ces 1, il
n'existe qu'une seul possibilité de groupement.
– Continuer ensuite à prendre les groupes les plus grands qui inclue
des 1 (au minimum un seul) qui ne font pas partie d'un autre
groupe.
– Vous devez prendre tous les 1 de la table de Karnaugh. Il est
possible d'utiliser plusieurs fois le même 1.
– Effectuez des OU logique entre tous les termes résultant des
réunions.

Pr M. MOUSSAOUI, 36
ENSA, Tanger
Exemple

• On considère la fonction logique donnée par la table de vérité suivante:

• sans aucune simplification, on voit que:

X = A B C D + A B C D + A B C D + A B CD + ABC D + ABCD
Pr M. MOUSSAOUI, 37
ENSA, Tanger
Exemple

• En utilisant la méthode de Karnaugh

X = B D + AC
Pr M. MOUSSAOUI, 38
ENSA, Tanger
Exercice

• On donne la table de vérité suivante, simplifier par la méthode de Karnaugh

Pr M. MOUSSAOUI, 39
ENSA, Tanger
Chapitre II

Arithmétique Binaire

Pr M. MOUSSAOUI, 40
ENSA, Tanger
Représentation numérique de l’information

• De manière générale tout nombre N exprimé dans une base b peut se décomposer
sous la forme polynomiale suivante

– avec
– S est le signe du nombre
– ai est le symbole de rang i, ai N et 0 ≤ai< b
– an est le symbole de poids le plus fort (MSB : Most Significant Bit si b = 2), et a−m est le
symbole de poids le plus faible (LSB : Least Significant Bit si b = 2)
• Le nombre N(b) s’exprime en numérotation de position par Sanan−1…a0 , a−1…a−m. Les
symboles anan−1…a0 et a−1…a−m représentent respectivement la partie entière et la
partie fractionnaire de N.

Pr M. MOUSSAOUI, 41
ENSA, Tanger
Conversions entre bases de numération

• Les bases de numération les plus utilisées sont la base décimale (b = 10), la base
binaire (b = 2), et les bases dérivées de la base binaire : base octale (b = 8) et base
hexadécimale (b = 16).
• La numération binaire utilise les 2 bits 0 et 1, la numération octale utilise 8 chiffres :
0, 1, 2, 3, 4, 5, 6, 7, et la numération hexadécimale utilise 16 symboles : 0, 1, 2, ..., 9,
A, B, C, D, E, F (les symboles A à F ont pour équivalents décimaux les nombres 10 à
15).
• Les conversions les plus utilisées sont les suivantes
– base b vers base 10
– base 10 vers base b
– base 2 vers base 2^n (8 ou 16)
– base 2^n (8 ou 16) vers base 2

Pr M. MOUSSAOUI, 42
ENSA, Tanger
Base b vers base 10

• Pour convertir un nombre d’une base b vers la base décimale, on utilise la méthode dite des
additions qui consiste à utiliser la représentation du nombre sous forme polynomiale (équation
1).
• Exemple 1 :
conversion du nombre binaire entier N(2) = 1101 0011(2) en base 10.

• Exemple 2 :
conversion du nombre binaire fractionnaire N(2) = 110011,1001(2) en base 10

• Exemple 3 : conversion du nombre octal entier N(8) = 4513(8) en base 10

• Exemple 4 : conversion du nombre hexadécimal fractionnaire N(16) =1B20,8(16) en base 10

Pr M. MOUSSAOUI, 43
ENSA, Tanger
Base 10 vers base b

• Pour effectuer une conversion d’un entier décimal dans une autre base on applique la méthode
des divisions successives : on effectue des divisions successives du nombre par cette base, les
restes successifs forment alors le nombre converti.
• A titre d’exemple, dans le cas d’une conversion d’un nombre décimal en son équivalent binaire,
on réalisera des divisions successives par 2. Les restes de ces divisions formeront le nombre
converti dans la base 2.
• Exemple 1 : conversion de N(10) = 52 en base 2

Pr M. MOUSSAOUI, 44
ENSA, Tanger
Base 10 vers base b

• Exemple 2: conversion de N(10) = 90 en base 8

Pr M. MOUSSAOUI, 45
ENSA, Tanger
Nombres fractionnaires

• Pour convertir un nombre fractionnaire de la base 10 vers une autre base, il faut procéder en deux
étapes. La partie entière du nombre est convertie comme indiqué précédemment ; la partie
fractionnaire du nombre est convertie par multiplications successives : on multiplie
successivement la partie fractionnaire par la base cible, en retenant les parties entières qui
apparaissent au fur et à mesure.

• Exemple 1 : conversion de N(10) = 12,925 en base 2


– partie entière : 12(10) = 1100(2)
– partie fractionnaire :

– Finalement 12,925(10) = 1100,111K(2)

• Exemple 2 : conversion de N(10) = 0,45 en base 8

Pr M. MOUSSAOUI, 46
ENSA, Tanger
Problème du maintien de la résolution lors d’un
changement de base
• Soit (anan−1…a0,a−1…a−m)(10) et (apap−1…a0,a−1…a−k)(b) les numérotations de position
d’un même nombre N exprimé respectivement en base 10 et en base b. La résolution

est conservée lors du passage de la base 10 à la base b si et seulement si


b^(−k)≤ 10^(−m), c’est-à-dire si klogb≥mlog10, soit

• Exemple 1 : pour conserver la résolution lors du passage de 0,925(10) en base 2, il


faut garder

soit 10 bits après la virgule.

• Exemple 2 : pour conserver la résolution lors de la conversion de 0,45(10) en base 8,


il faut garder

Pr M. MOUSSAOUI, 47
ENSA, Tanger
Base 2 vers base 2^n

• L’utilisation des bases 2^n (8 et 16) permet de réduire le nombre de symboles à


écrire tout en conservant la possibilité de conversion instantanée en binaire.
• Pour convertir un nombre de la base 2 vers la base 2^n, il suffit de regrouper les bits
par groupes de n (3 pour la base octale et 4 pour la base hexadécimale), et de
remplacer chacun de ces groupes par le symbole correspondant dans la base
d’arrivée.
• Par exemple un nombre exprimé en binaire sur 12 bits :

• en regroupant les bits par 4, on obtient

• Pour la partie entière, le regroupement part du bit de poids le plus faible, et pour la
partie fractionnaire, du bit de poids le plus fort (de la virgule). Lorsqu’un groupe est
incomplet, on le complète avec des 0.

Pr M. MOUSSAOUI, 48
ENSA, Tanger
Base 2 vers base 2^n

• Exemple 1: conversion de N(2) = 1100111010101 en base 8 puis 16

• Exemple 2: conversion de N(2) = 110100110,101101 en base 8 puis 16

Pr M. MOUSSAOUI, 49
ENSA, Tanger
Base 2^n vers base 2

• Pour la conversion inverse, il suffit de développer chaque symbole de la


représentation dans la base 2^n sur n bits.

Pr M. MOUSSAOUI, 50
ENSA, Tanger
Représentation binaire des nombres signés

• Les systèmes numériques doivent être capables de traiter des nombres positifs et négatifs.
L’utilisation d’une représentation signée suppose l’utilisation d’un format (nombre de bits) fixé au
préalable.
• Représentation en complément à 2
– Le complément à 2 est le mode de représentation le plus utilisé en arithmétique binaire et
donc dans les ordinateurs pour coder les nombres entiers.
– Dans cette représentation, les nombres positifs se représentent par leur valeur binaire
naturelle. Par exemple +6 est représenté par 0000 0110 sur un format de 8 bits.
• La représentation des nombres négatifs s’obtient comme suit :
– On part de la représentation binaire naturelle de l’opposé arithmétique du nombre à coder
(nombre positif),
– On calcule son complément à 1 (CA1) ou complément restreint. Celui-ci est obtenu en
inversant tous ses bits,
– On en déduit son complément à 2 (CA2) ou complément vrai en ajoutant 1 au niveau du
LSB.

Pr M. MOUSSAOUI, 51
ENSA, Tanger
Représentation binaire des nombres signés

• Exemple: représentation de -5 en CA2 sur un format de 8 bits

• La représentation en complément à 2 présente les caractéristiques


suivantes :
• Le principe d’obtention de l’opposé d’un nombre négatif est le même que
celui permettant d’obtenir l’opposé d’un nombre positif,
• Le nombre 0 a une représentation unique,
• Un format sur n bits permet de coder en CA2 les nombres N vérifiant

Pr M. MOUSSAOUI, 52
ENSA, Tanger
Représentation binaire des nombres signés

– Exemple, pour n = 4,

– Le bit de poids fort (MSB) est représentatif


du bit de signe, mais il est traité comme les
autres bits dans les opérations
arithmétiques : si MSB = 0 le nombre est
positif, si MSB = 1 le nombre est négatif.
– Le nombre +2^(n−1) n’est pas représenté.
En effet, dans le cas où n = 4, le calcul du
CA2 de 1000
– donne -(-8) = 0111 + 1 = 1000 = -8. Ce qui
est arithmétiquement incorrect, car 0 est le
seul entier à être son propre opposé.

Pr M. MOUSSAOUI, 53
ENSA, Tanger
Extension d’un nombre codé en CA2

• L’extension d’un nombre codé sur n bits à un format sur n+k bits est réalisé comme
suit :
– Si le nombre est positif, on complète les k bits de poids forts par des 0. Par exemple,

– Si le nombre est négatif, on complète les k bits de poids forts avec des 1. Par
exemple,

Pr M. MOUSSAOUI, 54
ENSA, Tanger
Opérations arithmétiques

• Addition
– on additionne symbole par symbole en partant des poids faibles, et en propageant
éventuellement une retenue.
– Si le format des nombres est fixe, le résultat de l’addition peut donner lieu à un dépassement
de capacité.

• Soustraction
– La soustraction, en arithmétique binaire, est le plus souvent appliquée sur des nombres
signés. Dans ce cas, cette opération se ramène dans tous les cas à une addition.
– Dans le cas où les nombres sont codés en complément à 2, l’addition de 2 nombres
exprimés sur n bits fournit toujours un résultat correct, sauf dans le cas où le résultat n’est
pas représentable sur les n bits.
• Deux indicateurs renseigne sur la validité des résultats obtenus : la retenue (carry C)
et le débordement (overflow OVF).
– L’indicateur C signale la présence d’une retenue au niveau des poids forts;
– l’indicateur OVF indique que le résultat de l’opération n’est pas représentable dans le
système du complément à 2 sur le format défini au départ.

Pr M. MOUSSAOUI, 55
ENSA, Tanger
Opérations arithmétiques

• Pour que le résultat d’une opération sur n bits soit correct dans la méthode du
complément à 2, il faut que les retenues de rang n et de rang n+1 soient identiques.

Pr M. MOUSSAOUI, 56
ENSA, Tanger
Multiplication des nombres non signés

• Lorsque les nombres ne sont pas signés, le principe est le même qu’en décimal et fait intervenir
des produits partiels de bits, des additions et des décalages. A titre d’exemple, la multiplication de
2 nombres de 4 bits non signés, A et B, se décompose comme suit :

Pr M. MOUSSAOUI, 57
ENSA, Tanger
Modules et familles
électroniques

Pr M. MOUSSAOUI, 58
ENSA, Tanger
Modules et éléments logiques

• Les modules logiques sont les puces (chips) dans lesquelles les circuits électroniques sont
réalisés
• Un module comporte souvent plusieurs éléments logiques.
• Il existe quatre catégories des modules logiques . Selon la densité d’intégration (nombre de porte
ou de transistors internes par circuits ou par mm²).

Type de circuits nature nb portes/circuits nb portes/nb broches


SSI Small Scale Integration 1 à 10 <1

MSI Medium Scale Integration 10 à 100 5 à quelques dizaines

LSI Large Scale Integration 100 à 100000 25 à 1000

VLSI Very Large Scale Intégration >100000 plusieurs milliers

Pr M. MOUSSAOUI, 59
ENSA, Tanger
Opérateurs logiques

Pr M. MOUSSAOUI, 60
ENSA, Tanger
Opérateurs logiques TTL

Pr M. MOUSSAOUI, 61
ENSA, Tanger
Familles logiques

– Une famille logique est un ensemble de modules électroniques accomplissant les


fonctions logiques de base.
– La fonction logique ne dépend pas de la famille logique ou du grade du module,
de sorte qu'un 54LS08 et un 74HC08 accomplissent exactement la même
fonction logique.
– La notation usuelle des modules logiques est toujours de la forme suivante:
GGGFFFMMM où:

De nos jours, la forte majorité des circuits logiques toutes catégories


confondues sont fabriqués en CMOS (Complementary MOS) qui est très
similaire à la technologie HC.
Pr M. MOUSSAOUI, 62
ENSA, Tanger
Familles logiques
• Les temps de commutation et les puissances consommées sont donnés dans les tableaux
suivants pour une porte :

Pr M. MOUSSAOUI, 63
ENSA, Tanger
Caractéristiques des portes logiques

• chaque niveau logique correspond plutôt à une plage de tension, comme par
exemple [0V,2.5V] pour le niveau 0 et [2.5V, 5V] pour le niveau haut.
• Temps de propagation: Pour simplifier, nous allons raisonner à partir de l'exemple
d'un inverseur logique en comparant l'évolution du niveau de tension en entrée à son
évolution en sortie.
– tpHL est le retard, lors du passage de la sortie du niveau haut (1) au niveau bas (0).
– tpLH est le retard, lors du passage de la sortie du niveau bas (0) au niveau haut (1).
• Ces retards sont comptés entre des instants pour lesquels on considère que les
niveaux de tension correspondent à une transition de niveau logique.

Pr M. MOUSSAOUI, 64
ENSA, Tanger
Fonctions et circuits
combinatoires

Pr M. MOUSSAOUI, 65
ENSA, Tanger
Définitions

• Nous avons besoin d’étudier les principales fonctions standards


combinatoires.
• Ces fonctions sont nommées aussi fonctions MSI pour "Medium Scale
Integration". Il s’agit de fonction plus complexe que les simples portes
logiques. Ces fonctions ont étés très rapidement intégrées dans des circuits
des famille TTL ou CMOS. Ces fonctions présentaient l'avantage d'être
moins onéreuses sous la forme d'un circuit. Les fonctions les plus
couramment utilisées ont été intégrées.
• Voici une liste des principales fonctions standards combinatoires :
– Le multiplexage (MUX) 2->1, 4->1, 8->1 et 16->1
– Le décodage (X/Y) 1->2, 1->4, 1->8
– L'encodeur de priorité
– La comparaison (COMP) <,=,>
– Les opérations arithmétiques (addition, soustraction, ...)
– Le transcodage de nombres : BIN->BCD, BCD->BIN, BCD->7SEG, etc.
• Nous allons commencer par étudier chaque fonction standard. Nous
donnerons des exemples de circuits et les symboles CEI correspondant.

Pr M. MOUSSAOUI, 66
ENSA, Tanger
Les opérateurs arithmétiques

Pr M. MOUSSAOUI, 67
ENSA, Tanger
Addition de deux bits

• Le demi-additionneur binaire prend en entrée 2 éléments binaires Ak et Bk , et


délivre en sortie leur somme Sk et une retenue Ck suivant la table de vérité du
tableau
• Le comportement du circuit est régi par les équations Sk=Ak Bk et Ck = Ak .Bk .
L’opérateur d’addition arithmétique binaire est donc le OU exclusif.

Pr M. MOUSSAOUI, 68
ENSA, Tanger
Additionneur complet

• Pour additionner deux nombres binaires à plusieurs bits, une technique consiste à
additionner successivement les bits de même poids avec la retenue de l’addition
précédente. L’opérateur de base, appelé additionneur complet, doit alors prendre
en compte une retenue entrante Ck −1.

Pr M. MOUSSAOUI, 69
ENSA, Tanger
Additionneur complet
• Les équations logiques correspondantes peuvent s’écrire :

• L’additionneur complet peut, par exemple, être réalisé à partir de deux demi-
additionneurs et d’un opérateur OU.

Pr M. MOUSSAOUI, 70
ENSA, Tanger
Addition de deux nombres binaires

• La solution la plus naturelle pour additionner deux nombres binaires A et B de n bits


s’écrivant en numération de position An−1An−2…Ak…A1A0 et Bn−1Bn−2…Bk…B1B0
consiste à associer en cascade n étages d’additionneurs complets.

Le temps de calcul du résultat est donc directement proportionnel à la taille des nombres
manipulés et donc au nombre d’étages du dispositif, soit n.

Pr M. MOUSSAOUI, 71
ENSA, Tanger
Additionneur à retenue anticipée (carry look-
ahead adder)
• Le principe de l’additionneur à retenue anticipée consiste à calculer toutes les
retenues en parallèle.
• L’équation logique de la retenue sortante de l’additionneur complet peut s’écrire :

• Le tableau permet d’analyser l’obtention de la retenue sortante à partir des termes


Pk et Gk

Pr M. MOUSSAOUI, 72
ENSA, Tanger
Additionneur à retenue anticipée (carry look-
ahead adder)

• On observe que :
– Lignes 1 et 2 : la retenue sortante Ck est à 0,
– Lignes 3 à 6 : la retenue entrante Ck −1 est propagée vers la
sortie, Ck=Ck−1. Ces 4 lignes de la table de vérité sont
caractérisées par la relationPk=Ak Bk=1. Pk est ici appelé
terme de propagation de retenue.
– Lignes 7 à 8 : une retenue sortante à 1 est délivrée en sortie.
Ces 2 lignes sont caractérisées par la relation Gk=Ak.Bk=1. Gk
est appelé terme de génération de retenue. C’est encore
l’expression de la retenue Rk en sortie d’un demi-additionneur
• Dans le cas de l’addition de 2 nombres A et B de n bits, le bit de retenue de
rang k est donc donné par la relation Ck=Gk+Ck−1Pk.

Pr M. MOUSSAOUI, 73
ENSA, Tanger
Additionneur à retenue anticipée (carry look-
ahead adder)
• Le principe des additionneurs à retenue anticipée consiste à calculer :
– Les couples (Pk,Gk) à l’aide de demi-additionneurs, pour 0 ≤ k ≤ n − 1,

– les retenues Ck, pour 0 ≤ k ≤ n − 1, avec Ck=Gk+Ck−1Pk, directement à partir des


différents termes de propagation et de génération, et de la retenue entrante du
premier étage C−1 : C0=G0+C−1P0, C1 =G1 +C0P1 =G1 +G0P1 +C−1P0P1, etc.

– les bits de somme Sk=Pk Ck−1 , pour 0 ≤ k ≤ n − 1.

Pr M. MOUSSAOUI, 74
ENSA, Tanger
Additionneur à retenue anticipée (carry look-
ahead adder)

Pr M. MOUSSAOUI, 75
ENSA, Tanger
Les opérateurs de
comparaison

Pr M. MOUSSAOUI, 76
ENSA, Tanger
Les opérateurs de comparaison

• On désigne par opérateur de comparaison ou comparateur un opérateur capable


de détecter l’égalité ou l’inégalité de 2 nombres (comparateur simple) et
éventuellement d’indiquer le plus grand ou le plus petit (comparateur complet). Le
tableau donne le résultat de la comparaison de 2 éléments binaires.

• Les équations logiques correspondantes sont les suivantes:

Pr M. MOUSSAOUI, 77
ENSA, Tanger
Les opérateurs de comparaison

• Dans le cas plus général de nombres binaires, deux nombres A et B, A=An−1…Ai…A0


et B=Bn−1…Bi…B0, sont égaux si tous les bits de même rang, Ai et Bi , sont égaux.
• L’équation de fonctionnement du circuit comparateur simple est alors la suivante :

• soit encore :

Pr M. MOUSSAOUI, 78
ENSA, Tanger
Les opérateurs de comparaison

• Cette détection peut être réalisée à l’aide d’opérateurs OU exclusif et d’une


fonction NOR

Dans le cas d’une comparaison complète de


deux nombres binaires A et B, les sorties A < B
et A > B sont obtenues en effectuant une
comparaison complète des bits de même rang,
Ai et Bi , de façon prioritaire à partir des bits de
poids forts.
Par exemple, si An>Bn alors
A > B , et si An<Bn alors A < B .
Mais si An=Bn, il est nécessaire de comparer les
bits de rang n − 1 pour décider, et ainsi de suite

Pr M. MOUSSAOUI, 79
ENSA, Tanger
Exemple de comparateurs

• Le circuit standard de référence XX 85 compare 2 mots de 4 bits A et B.


• Outre les entrées de données recevant les deux mots à comparer, il
possède également trois entrées A>Bin , A=Bin et A<Bin , permettant de
cascader les comparateurs pour pouvoir comparer des nombres de plus de
4 bits.
• Si le comparateur est utilisé seul, les entrées A>Bin , A=Bin et A<Bin
doivent être connectées respectivement à 0, 1, et 0

Pr M. MOUSSAOUI, 80
ENSA, Tanger
Exemple de comparateurs

Pr M. MOUSSAOUI, 81
ENSA, Tanger
Les opérateurs de transcodage

Pr M. MOUSSAOUI, 82
ENSA, Tanger
Les opérateurs de transcodage

• Définition
– On désigne par opérateur de transcodage un opérateur qui traduit une information dans un
code donné (codeur ou encodeur) ou bien qui, au contraire, permet d’extraire une ou des
informations à partir d’un code donné (décodeur) ou bien encore réalise la conversion d’un
code vers un autre (convertisseur de code ou transcodeur).
• Les codeurs
– Une seule entrée du codeur doit normalement être activée à la fois. Dans le cas
où le code en sortie est le code binaire pur, le circuit correspondant possède N
entrées et n sorties, avec

2n−1 < N ≤ 2n

Pr M. MOUSSAOUI, 83
ENSA, Tanger
Exemples de codeurs

• Exemple 1 : codeur décimal vers binaire (10 entrées vers 4 sorties)


– Ce codeur reçoit un chiffre décimal sur une des dix entrées et génère l’équivalent binaire sur
les sorties A0 à A3 . Une seule entrée doit être active à la fois.
– Cet opérateur, qui n’existe pas sous forme de circuit intégré standard, peut facilement être
réalisé à partir de portes élémentaires.

Equations logiques :

figure: codeur décimal vers binaire

Pr M. MOUSSAOUI, 84
tableau: table de vérité réduite du codeur 10 vers 4
ENSA, Tanger
Exemples de codeurs

• Exemple 2 : codeur binaire 8 vers 3


– Ce codeur reçoit une information codée sur une de ses huit entrées et génère l’équivalent
binaire sur les sorties A0 à A2 . Une seule entrée doit être active à la fois.

Equations logiques :

figure: codeur 8 vers 3 tableau: table de vérité réduite du codeur 8 vers 3


– Remarques: dans une application, plusieurs entrées peuvent être actives simultanément il
faut utiliser un codeur prioritaire.

Pr M. MOUSSAOUI, 85
ENSA, Tanger
Codeur prioritaire

• Ce type de codeur fixe un ordre de priorité entre les entrées. Dans le cas d’un encodage en
binaire pur, le codeur prioritaire donne en général la priorité à l’entrée de poids le plus élevé. Par
exemple, si les entrées 2, 8 et 9 sont activées simultanément, le codage de sortie correspondra à
l’entrée 9. Ce circuit permet de détecter le rang du premier bit positionné à 1 dans un mot
d’entrée.
• Exemple : encodeur prioritaire 4 vers 2
– l’entrée E3 correspond à l’entrée la plus prioritaire, et l’entrée E0 correspond à l’entrée la
moins prioritaire

tableau: table de vérité de l’encodeur prioritaire 4 vers 2

figure: encodeur prioritaire 4 vers 2

– Après simplification, nous obtenons les équations suivantes :

Pr M. MOUSSAOUI, 86
ENSA, Tanger
Les décodeurs

• Un décodeur est un opérateur à n entrées et N sorties avec N ≤ 2^n . Une


sortie du décodeur est activée lorsqu’une configuration particulière du code
est affichée en entrée. Suivant le nombre de sorties, le décodeur peut
décoder toutes les configurations possibles du code en entrée ou une partie
seulement. Un décodeur à n entrées, permettant de décoder toutes les
configurations du code binaire pur sur n bits, possède 2^n sorties. Une
seule sortie est activée à la fois.

• Certains décodeurs possèdent une ou plusieurs entrées de validation.


• Par exemple, pour une validation active au niveau bas, si l’entrée de
validation V vaut 0, alors le décodage est autorisé ; dans le cas contraire (V
= 1), les sorties sont inhibées et restent inactives.

Pr M. MOUSSAOUI, 87
ENSA, Tanger
Les principaux types de décodeurs

Pr M. MOUSSAOUI, 88
ENSA, Tanger
Les décodeurs binaires
– Ce type d’opérateur permet d’associer une sortie parmi 2^n avec une information d’entrée
codée sur n bits.

figure: décodeur binaire « n vers 2^n » ou « 1 parmi 2^n »

– Exemple 1 : décodeur 2 vers 4 Dans cet exemple, on a choisi d’associer la


valeur "0" lorsque la sortie est décodée (sorties
actives à 0). Les équations de fonctionnement
de ce circuit sont les suivantes :

Pr M. MOUSSAOUI, 89
ENSA, Tanger
Les décodeurs binaires
• Exemple 2 : décodeur 3 vers 8
• Contrairement à l’exemple précédent, on associe la valeur logique "1" lorsque le rang
de la sortie active correspond à la valeur binaire présentée en entrée (sorties actives
à 1). La table de vérité comporte 8 sorties qui correspondent aux mintermes des
variables d’entrée
Les sorties du décodeur sont
données par les relations
suivantes

tableau: table de vérité du décodeur 3 vers 8

Pr M. MOUSSAOUI, 90
ENSA, Tanger
Les décodeurs binaires

• Une réalisation possible du décodeur 3 vers 8 est immédiate :

figure: réalisation d’un décodeur 3 vers 8

Pr M. MOUSSAOUI, 91
ENSA, Tanger
Le décodeur BCD

• Le code BCD est utilisé pour coder les dix chiffres décimaux. Ce code à 4
bits laisse donc inutilisées 6 combinaisons sur les 16 possibles. Lorsqu’une
combinaison, comprise entre 0 et 9, est appliquée sur les entrées ABCD (A
est le bit de poids fort), la sortie correspondante est validée. Les sorties
restent au repos (niveau 1 par exemple) dans le cas où une combinaison
comprise entre 10 et 15 est appliquée sur les entrées.

Pr M. MOUSSAOUI, 92
ENSA, Tanger
Le décodeur BCD

• Table de vérité:

Représentation symbolique usuelle :

Pr M. MOUSSAOUI, 93
ENSA, Tanger
Les transcodeurs

• Ces opérateurs permettent de convertir un nombre écrit dans un code C1


vers un code C2
• Exemple 1 : le transcodeur BCD/7 segments
– Le transcodeur BCD/7 segments permet de commander un afficheur
alphanumérique possédant 7 segments (des diodes électroluminescentes, par
exemple). Cet afficheur permet la visualisation des chiffres 0 à 9 codés en
binaire naturel sur 4 bits D, C, B, et A, où A représente le bit de poids le plus
faible.

Pr M. MOUSSAOUI, 94
ENSA, Tanger
Les transcodeurs

• Les équations logiques du transcodeur de la figure s’établissent sans difficultés à


l’aide de 7 tableaux de Karnaugh :

• Ces transcodeurs existent sous la forme de circuits standard proposés par les
fabricants sous les références XX 46 à XX 49.

Pr M. MOUSSAOUI, 95
ENSA, Tanger
Les transcodeurs

• Exemple 2 : les convertisseurs Gray/binaire


• Le code de Gray ou code binaire réfléchi est largement utilisé dans les systèmes
numériques
• En effet, un seul bit change entre deux positions successives, et les risques
d’informations parasites lors des transitions sont éliminés.
• Les équations logiques d’un convertisseur de code Gray/binaire ou binaire/Gray
s’établissent sans problème à l'aide de la méthode de Karnaugh à partir de la table
de vérité suivante :

Pr M. MOUSSAOUI, 96
ENSA, Tanger
Les transcodeurs

Pour des mots codés sur n bits, on obtient :

Pr M. MOUSSAOUI, 97
ENSA, Tanger
Les opérateurs d’aiguillage

Pr M. MOUSSAOUI, 98
ENSA, Tanger
Les multiplexeurs
• Ce sont des opérateurs à N = 2^n entrées d’information ou de données,
E0,E1,…,EN−2,EN−1, n entrées de sélection ou d’adressage An−1,An−2,...,A0, et
une sortie S. L’affichage d’une adresse permet de sélectionner une entrée de
données parmi N, pour l’aiguiller vers la sortie S.

La fonction logique réalisée par le


multiplexeur est régie par l’équation
suivante :

• où mi est le i-ème minterme des variables logiques An−1,An−2,…,A0. Par exemple,

Pr M. MOUSSAOUI, 99
ENSA, Tanger
Les multiplexeurs

• La représentation symbolique usuelle et l’équation de sortie d’un


multiplexeur 4 vers 1 sont donnés par la figure

• En général, les opérateurs de multiplexage disposent d’une entrée


supplémentaire de validation V qui permet de valider ou d’inhiber la sortie
S.

Pr M. MOUSSAOUI, 100
ENSA, Tanger
Les démultiplexeurs

• Ces opérateurs, comme leur nom l’indique, réalisent la fonction inverse des
multiplexeurs. Ils possèdent une entrée d’information ou de données, n entrées de
sélection, et N = 2^n sorties.
• L’affichage d’une adresse sur les entrées de sélection permet de sélectionner la
sortie vers laquelle l’entrée sera aiguillée. Le démultiplexeur peut, tout comme le
multiplexeur, être doté d’une entrée de validation des sorties.

• Exemples de démultiplexeurs
• En pratique, les fabricants de circuits intégrés standard proposent dans leurs
catalogues des circuits pouvant être utilisés en tant que décodeurs ou en tant que
multiplexeurs (cf. références XX 137, XX 138, XX 139).

Pr M. MOUSSAOUI, 101
ENSA, Tanger
Exemples de démultiplexeurs
• la table de vérité du tableau et le schéma illustrent le fonctionnement d’un
décodeur/démultiplexeur 1 vers 4. Les circuits intégrés XX 139 comportent deux
décodeurs/démultiplexeurs de ce type.

Lorsque ce circuit est utilisé en décodage, l’entrée G , active à 0, est utilisée pour valider ou non les
sorties. Dans ce mode de fonctionnement, les sorties sont également actives à la valeur logique 0.
En mode démultiplexage, A et B sont les entrées d’adresse et G joue le rôle d’entrée d’information.

Pr M. MOUSSAOUI, 102
ENSA, Tanger
Applications des démultiplexeurs

• Une des applications les plus classiques du démultiplexeur est la


conversion d’une information présente en série en une information de type
parallèle.

Pr M. MOUSSAOUI, 103
ENSA, Tanger

Vous aimerez peut-être aussi