You are on page 1of 17

22

CHAP 2 TABLE DE VRIT - ALGBRE DE BOOLE


rappel du chap. 1:
-on emploie un systme binaire limit 2 tats 0,1
-problme: tant donn une relation entre/sortie binaire, faire le design du hardware qui
implante cette relation.
- 2 cas 1 - Cas : sorties dpendent seulement des tats prsents aux entres
2 - Cas : sorties dpendent de "l'histoire" des entres
Ce sont les circuits squentiels e.g diagramme d'tat ou state diagram
dcrits par une table d'entre sortie (chap. 6,7)
2 ides du chap 2 :
1) une fois un problme [entres prsentes sorties] dfinit par 1 table on peut avoir une
solution en "ANDING ENSEMBLE" une combinaison d'entre et ORING ensemble toutes les
sorties de ces portes et :
C'est ce qu'on appelle une somme de produits.
2) La sortie d'un circuit OU-ET (somme de produits) peut tre reprsente par une quation en
algbre de Boole. De plus, en appliquant les thormes de l'algbre de Boole on peut rduire le
nombre de portes.
2.1 Combinaison d'entres
Logique combinatoire - car on "combine" des entres
N jets d' une
pice de monnaie

;

2
N
possibilits
mme chose en binaire en notant
que videmment (101)
2
est diffrent de (110)
2
donc N entres binaires 2
N
tats possibles
23
ex :8 entres2
8
=256 combinaisons
4 entres
2
4
= 16
combinaisons
2 entres 2
2
= 4 combinaisons
(avec e
1
et e
0
, voir exemple ci-contre)

e
i
e
o
0 0
1 0
1 1
2entres
}
'







2.2 Tables de vrit (tdv)
Une table de vrit dfinit les relations entre(s)/sortie(s) en faisant la liste de toutes les
possibilits, 1 ligne la fois dans la table.
Une tdv contient 2
N
lignes, N= nombre d'entres.
On peut avoir plus d'une sortie.
Ex : si N entres et M sorties (N+M) colonnes dans la table tdv
Exemple: de table de vrit (1 entre 2
1
=2
lignes)
entre | sortie
a b c d e f g
0 1 1 1 1 1 1 0
1 0 1 1 0 0 0 0
Entre = 0 affiche 0
Entre = 1 affiche 1
dcodeur 7 segments pour 0 et 1 sur
VOM (Volt-O-Meter)
a
f b
g
e c
d
On peut avoir aussi un dcodeur pour tous les chiffres 0...9 (ex : circuit TTL 7448 - BCD)
Taille des tables de vrit
La plus petite:
celle de l'inverseur/tampon, (1 entre 2' 2 cas, 2 lignes Maximum: pas de limite!
Ex : Table de multiplication de 2 chiffres 5 de 8 bits 2
8
x 2
8
= 2
16
= 65356
65536 lignes dans la table: 2
m+n
= 2
8+8
24
2.3 Primitives Hardware
Premire approche, trouver des circuits tous faits ex: TTL, circuits de mmoire (dans lequel on
implante la table de vrit. Cest une approche coteuse, on verra des approches
conomiques/minimales plus tard.
-Primitives Hardware lmentaires: portes simples eg. 74xx sries,
Type de botiers :
Low power - 74LSxx
High speed 74HLSxx
Barre sur le symbole inversion
Les portes NAND et NOR incorporent un inverseur donc sont des building blocs trs utiles.
Pour les problmes complexes, on peut combiner plusieurs de ces parties ensemble.
2.4 Mthode pour rsoudre une table de vrit
Voici une mthode robuste, sure mais non optimale :
Pour chaque sortie 1 en d'une table de vrit, raliser le produit
des entres correspondantes (MINTERM)
Faire somme (ou-or) de tous les produits intermdiaires.
Minterm : Un minterm est un produit de variables qui donne un 1 dans la tdv pour les valeurs
spcifies des variables (i.e. pour un rang donn).
Formation dun Minterm : La variable apparat non complmente si elle correspond un 1 dans
la tdv. La variable est complmente si elle correspond un 0 dans la tdv.
25
Il y a 2
N
combinaisons possibles pour N entres (donc 2
N
Minterms).
Ex: si on a la table dfinie par : m(3,5,7)
A B C SORTIE
ABC
BC A
C B A
5
3
7
1
0
1
0
1
1
1
1
1
1
1
1
alors
s ABC + ABC ABC
est un circuit de type somme de produit (SOP)

'



toues les autres lignes}0
Solution correcte, mais non minimale.
Sans rduction subsquente la solution fait rfrence une SOP CANONIQUE
Ex: Prenons la tdv d'un ou exclusif :
A B S
liste des
minterms
termes

consi-
drer
0
1
2
3
0
0
1
1
0
1
0
1
0 B A
1 AB
1 AB
0 AB
trouver la SOP canonique
s AB+ BA
m(1, 2)

'



Il y a ici 2 tages de portes (dlais) aprs les entres (directes et complmentes).
Ex : comparateur de deux nombres binaires de 2 bits. On veut la solution de type SOP canonique
+ schma complet.
soit la tdv:
26
A>B A=B
a
1
a
o
b
1
b
o
sortie
S
1
S
2
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
0
0
1
0
0
0
1
1
0
0
1
1
1
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
S1=a
1
a
o
b
1
b
o
+ a
1
a
o
b
1
b
o
+ a
1
a
o
b
1
b
o
+ a
1
a
o
b
1
b
o
+ a
1
a
o
b
1
b
o
+ a
1
a
o
b
1
b
o
S2=
a
1
a
o
b
1
b
o
+ a
1
a
o
b
1
b
o
+ a
1
a
o
b
1
b
o
+ a
1
a
o
b
1
b
o
Notation de cette tdv, pour A = B
m (0,5,10,15)
A la page suivante on donne le schma complet pour le cas S
1
(A>B)
27
On voit quaprs l'tage d'entre, il y a 2 tages de porte pour la sortie.
2.5 Algbre boolen
-Nous allons maintenant voir d'autres mthodes pour minimiser l'utilisation du hardware et en
particulier lalgbre boolen.
Lalgbre: permet de rsoudre des quations pour trouver des inconnues qui sont reprsentes
par des variables.
28
ex: Lquation dune parabole :
rel nombre algbre graphe
algbre vrit de table une avec liens
sortie - dpendante variable :
entre te indpendan variable :
2

+ +
y
x
c bx ax y
En algbre boolen, on travaillera seulement sur 2 nombres seulement : 0 et 1
Faux Vrai
(False) (True)
et avec les oprations suivants AND, OR, INVERSE
Rgles (postulats de Huntington, 1904)
-Fermeture: A+B {0,1)
A.B {0,1)
.
-Associativit : A+(B+C) = (A+B)+C A.(B.C.)=(A.B).C
-Commutativit A+ B = B+A A.B = B.A
-Distributivit A.(B+C) = A.B+A.C. A+(B.C.) = (A+B). (A+C)
- Identits pour 0,1
0+A=A et 0.A=0 1.A=A et 1+A=1
complment:
A+ A 1 A. A 1
En changeant + par
.
on peut reproduire les 2 colonnes, c'est la dualit
Les variables boolennes ont 2 valeurs possibles 0,1
Une expression boolenne est une combinaison de variables boolennes. e.g. SOP
Thormes utiles
X = X
X+X =1 X. X=0
X+1=1 X.0=0
X+0=X X.1=X
X+X=X X.X=X
ou et
Tous ces thormes peuvent se prouver au moyen de rgles simples.
La distributivit a 2 formes
R(Q+ P) RQ+ RP
R +(Q.P) (R+ Q).(R + P)
29
2 + (3.5) 2 +15 17
et (2 + 3). (2+ 5) = 5.7 = 35

;

Note pas valide pour les nombres rels mais corrects pour les nombres binaires.
0(1.0) = (0+1).(0+0)
0 = 0
Peut se dmontrer en testant tous les cas avec une table de vrit cest ce quon appelle une
preuve par induction.
Thormes Boolens-bass sur la distributivit
Y Y X Y X Y Y X Y X
OU majuscules du vit distributi Y X X X
Y X Y X X absorption Y X Y X X
X X
Y X a on et X le sortons
X Y X X A X Y X X
+
+ +
+ +

)
2 ) .( ) (
. ) .
1
1
1
( ). + ( CE ADJACEN = . + .

.( +


= .
) + ( :
) + ( BSORPTION = . +
43 42 1
L'abjacence est un thorme trs utile pour rduire les expressions.
Lois de Morgan
Ces lois permettent de convertir les oprations NAND et NOR , ce qui est trs utile pour les
simplifications :
1 A + B+ C+ .... A.B.C...
2 A. B.C. A + B+ C...
Ou exclusif
A B A. B+ A.B (A + B). (A.B)
et en remplaant les "et" par des "ou" on obtient :
sortons le Y(X + X Y Y qfd ) . ( ) 1 =
30
On peut aussi avoir :
Le ou exclusif est commutatif et associatif et aussi:
A A 0
A A 1
La porte ou exclusif est utile pour rsoudre certains problmes logiques, par contre comme elle
est une combinaison de primitives, son usage n'est pas trs rpandu.
Ex : Systme d'alarme qui sonne si seulement une des 2 portes est ouverte, mais pas les 2
31
(A+B) AB ( )ce qui est l'quivalent de A B avec porte Ou exclusif. Cest une solution + simple
et plus rapide (1 porte vs 3 portes, 1 dlai vs 2 dlais).
On peut gnraliser les portes ou-exclusif plusieurs entres.
Ex : 3 entres
??
S C (A B)
est 1 seulement
si un nombre impair d' entres est actif

'

A B C (A B)
A B ( ) C
0 0 0 0 0
1 0 0 1 0 1
1 0 1 0 1 1
0 1 1 1 0
1 1 0 0 1 1
1 1 0 1 1 0
3 1
1
1
1
0
1
0
0
0
1
Dans l'exemple si contre, on a 1 en sortie
avec un nombre impair dentres 1 et
notamment avec 1, 3 entres 1.
Une porte ou exclusif 2 entres est en fait un comparateur.
XOR -> sortie active seulement si les entres sont diffrentes
XNOR -> sortie active seulement si les entres sont gales
On peut s'en servir pour vrifier la parit d'un chane de bits (ici pour tester la parit impaire).
32
Ex : Design dun circuit de test de parit impaire avec un maximum de 3 dlais de porte et dont
lentre est une chane de 8 bits.
sortie=1
si nb impair de bit
Autre approche possible avec la mthode
SOP: 2
8
=128 termes dans la table (et a
exige des porte ET 8 entres)
On peut aussi se servir des portes XOR pour modifier la polarit d'un signal.
A ctrl
0 0 0
0 1 1
1 0 1
1 1 0
ACtrl
A
A
si ctrl =0
si ctrl =1

'

C'est utile dans certaines
applications.
2.6 Utilisation de portes NON-ET dans les design SOP (Sum-of-Products)
On a dj vu l'utilisation de l'approche ET-OU pour encadrer les tdv, de m avec les XOR pour
certaines applications.
On peut aussi employer des NAND
s
(NON-ET)
33
Employons les symboles
OR AND, alors une forme canonique de
SOP s' expriment OUT = m
i
termes intermdiaire qui donnent out =1
m
i
= mintermes
OUT mi mi mi
Donc la forme de droite reprsente une double NON-ET ( 2 couches). L'avantage c'est qu'on a
plus qu'un seul type de porte NAND au lieu de AND + OR. a ne simplifie pas l'expression (on
garde la forme canonique si on en avait une au dpart).
Ex : On a la table suivante
A B C S
0 0 0 0
ABC
0 0 1 1
0 1 0 0
ABC
0 1 1 1
ABC
1 0 0 1
1 0 1 0
ABC
1 1 0 1
1 1 1 0
La forme canonique de cette tdv est
S ABC+ ABC + ABC+ ABC
Simplifions la:

S AC
{
B+ B
1
1 2 3



_
,
+ AC
{
B+ B
1
1 2 3



_
,
S AC + AC = (AC)
Ce qui peut se rcrire:
S AC + AC AC AC
{ }
Circuit ET-OU

34
Circuits NAND
Circuit 74LS00
En conclusion: On peut remplacer, sans affecter la sortie, tous les ET et tous les OU d'un design
SOP 2 niveaux par des NANDs.
2.7 Chercher les zros, design avec des NORS
On va maintenant s'attarder aux "0" dans les tdv. On fera le design de produits de somme (POS =
Product-of-Sum). On aura des circuits de type : OR- ET
circuit
POS est la version en logique ngative d'un SOP.
Cest utile pour des tables de vrit avec peu de 0, beaucoup de 1.
Maxterm (dfinition) : Cest une somme qui donne 0 dans la tdv pour les valeurs spcifies des
variables.
Maxterm (ralisation) : Cest une somme de variables.
Les variables apparaissent non complmentes si 0 dans la tdv.
Les variables apparaissent complmentes si 1 dans la tdv.
Rappel: Une porte OU N entres possde une tdv avec 1 seul zro.
OU
A B S
0 0 0
0
1 seul zro
M
o
A+B
1 0 1 1
2 1 0 1
3 1 1 1
On a toujours des mintermeset des MAXTERMES dans un tdv :
Mi produit et mi somme, 1 = index dans la table
35
Exemple :
m
1
AB et M1 A + B
minterms maxterme en
en lettre minuscule lettre majuscule {Chaque ligne de la tdv est associe 1 minterme et 1
. Maxterne
MINTERME: COMBINAISON QUI DONNE 1 (PRODUIT)
MAXTERME: COMBINAISON QUI DONNE 0 (SOMME)
ex m
2
AB et M
2
A + B
EX: SOIT LA TDV SUIVANTE
A B C S
0 0 0 1
0 0 1
0 M
1
A + B+ C
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0
0 M
6
+A + B C
1 1 1 1
Comment combiner ces 2 termes pour la trouver la fonction S? On veut un zro en S lorsque
n'importe lequel de ces termes max sont obtenus et justement, un ET produit un 0 si n'importe
quel argument est nul [x.0 = 0] donc :
( )( ) C B A C B A M M S + + + + . .
6 1

C'est une quation de type POS = Produit de Somme
36
2.8 Lois de De Morgan applique en circuits POS
On a vu S M
i
M=Maxterme qui synthtise
les 0.
On peut appliquer le raisonnement vu prcdemment :
S M
i
M
i
M
i
NOR
ABC A + B+ C
donc :
ABC A + B+ C
On a donc deux choix selon la tdv
- peu de 1 design SOP avec NAND
.m
i
.(m
i
)

'

-peu de 0 design POS avec NOR
.M
i
.M
i

'


'





Ex :
A B C S
0 0 0 0M
o
A + B+ C
Ici peu de 0 0 1 1
0 design
0 1 0 1
avec
NOR
s
0 1 1 1
1 0 0 1
1 0 1 1
1 1 1
0M
7
A + B+ C
1 1 1
0
7
A+ B+ C
Design final
donc S = (M
o
.M
7
) ( A+ B + C) .(A + B+ C) avec NOR
s seulement
Cette expression pourrait tre
simplifie ventuellement.
Et avec la relation prcdente :
( ) ( )
s.
NOR en solution la est c' C B A C B A M M M M S
o o
+ + + + + +
7 7
.
37
2.9 Implicants
-Un terme qui ne peut tre simplifi davantage sauf en altrant la tdv est appell un impliquant
principal (prime implicant).
-Un impliquant: n'importe quel produit d'une expression SOP.
-Un impliqu principal est une somme de complments qui ne peuvent tre simplifis davantage.
Ex : Soit la relation suivante :
S= AC+BC+AB
-Puisqu'on ne peut simplifier ces termes, ils sont tous des impliquants principaux essentiels (ils
doivent tre l pour fournir la bonne rponse!)
-La somme d'un ensemble complet d'impliquants principaux est l'expression SOP minimise d'une
tdv.
2.10 Optimisation des design numrique
Mthodes vues : - SOP canonique (pas simplifi)
- thormes boolens pour simplifier
- POS canonique, solution en NANDs et en NORs
- XOR (certains cas)
-On a aucune mthode qui garantisse une ralisation avec un nombre minimum de porte.
-Cest un problme difficile, on verra au chapitre 3 des mthodes pour des rsultats surs.
-Il y aura toujours un compromis entre : le nombre de portes total, le nombre de variables dans
les termes d'entres, les dlais de propagation.
Dautres critres considrer:
modularit
nombre de portes diffrentes
consommation lectrique
bruit (tolrance au)
synchronisation
2.11 Synchronisation dans les circuits combinatoires
-Les dlais de propagation peuvent causer des problmes, ce sont des considrations importantes,
autant que la simplification.
-Les glitches ou alas sont causs par les dlais de propagation diffrents selon les parcours:
certains signaux sont prts avant d'autres ce qui cause des valeurs de sorties intermdiaires.
DANGER
38