Vous êtes sur la page 1sur 42

Logique Combinatoire

F. Touchard Polytech Marseille INFO3 2017-18 Cours d' Architecture Logique combinatoire
Introduction
● famille de circuits logiques pour lesquels la sortie dépend
uniquement des états des entrées
➢ par opposition à la logique séquentielle où le temps va
intervenir)
● aspect logique et fonctionnel uniquement
➢ pas d'aspect matériel

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 2


Plan du cours
● les circuits arithmétiques
➢ addition
➢ soustraction
➢ comparaison
➢ contrôle de parité
● encodeurs/décodeurs
● multiplexeur/démultiplexeurs

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 3


Addition
● demi-additionneur
➢ addition de 2 bits en base 2
0 + 0 = 00
0 + 1 = 01 deux bits pour coder le résultat de l'addition
1 + 0 = 01
1 + 1 = 10
➢ il faut éventuellement tenir compte de la retenue (carry)
➢ addition d'un nombre codé sur 4 bits :

a3 a2 a1 a0 nombre A
+ b3 b2 b1 b0 nombre B
s3 s2 s1 s0 résultat S
r3 r2 r1 r0 retenue C

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 4


Addition
➢ circuit demi-additionneur (half-adder)
A B
A B C S
0 0 0 0
0 1 0 1
HA 1 0 0 1
1 1 1 0

C S S = A B+A B
C = A .B A S
B
S = A ⊕B
C = A⋅B C

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 5


Addition
● additionneur
➢ 3 entrées :
● les 2 bits des nombres à ajouter A et B
● la retenue de l'étage précédent R
➢ 2 sorties :
● le résultat de l'addition S
● la retenue C

A B R

FA

S C

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 6


Addition
➢ table de vérité
A B R S C
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1

S = A BR + A B R + A BR + A BR
C = A BR + A BR + A B R + ABR

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 7


Addition
➢ tableau de Karnaugh pour simplifier C

AB
R 00 01 11 10

0 1
1 1 1 1

C = AB + AR + BR
ensuite , pour simplifier S :
C = AB + A R + BR
AC = ABR
BC = A BR
R C = A BR
S = A BR + A B R + A BR + ABR
= (A + B + R)C + ABR

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 8


Addition
➢ exemple d'implémentation d'un additionneur 1 bit

S = (A +B+R)C+ ABR

→ TD
C = AB + AR + BR

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 9


Addition
● addition en parallèle
➢ l'addition de nombres comportant plusieurs bits peut se
faire en série (bit après bit)

➢ ou (presque) en parallèle (tous les bits simultanément)



→ TD
TD
F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 10
Addition
➢ implémentation possible d'un additionneur parallèle
(Philips 74F283)

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 11


Soustraction
● demi-soustracteur
➢ table de vérité
S = A−B A B C S
C : retenue 0 0 0 0
0 1 1 1
1 0 0 1
1 1 0 0

S = A .B + A .B = A ⊕B A S
C = A .B B

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 12


Soustraction rappel : codage en complément à 2
● additionneur-soustracteur
➢ un nombre codé sur n bits peut prendre toutes les valeurs
comprises entre 0 et 2n
➢ le complémentaire d'un mot de n bits est obtenu en prenant
le complément de chacun des n bits

A +A = 2n−1

−A = A+1−2n
● 2n ≡ 0 (pour une variable codée sur n bits)


−A = A+1
n
➢ A−B = A+B+1+2 (pour des variables codées sur n bits)
= A+B+1

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 13


Soustraction
➢ un seul dispositif pour l'addition et la soustraction :
code opération O :
0 : addition
1 : soustraction

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 14


Comparaison
● A=B, A>B, A<B
● table de vérité
A B C=(A>B) D=(A<B) E=(A=B)
0 0
0 1
1 0
1 1

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 15


Comparaison
● A=B, A>B, A<B
● table de vérité
A B C=(A>B) D=(A<B) E=(A=B)
0 0 0 0 1
0 1
1 0
1 1

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 16


Comparaison
● A=B, A>B, A<B
● table de vérité
A B C=(A>B) D=(A<B) E=(A=B)
0 0 0 0 1
0 1 0 1 0
1 0
1 1

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 17


Comparaison
● A=B, A>B, A<B
● table de vérité
A B C=(A>B) D=(A<B) E=(A=B)
0 0 0 0 1
0 1 0 1 0
1 0 1 0 0
1 1 0 0 1

● on en déduit
C = A .B
D = A.B
E = A .B + A .B
= C + D
= A ⊕B = A⊕B = A⊕B

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 18


Contrôle de parité
● la parité d'un mot binaire est définie comme la parité de la
somme des n bits qui le composent

A B parité
0 0 0
0 1 1
1 0 1
1 1 0
● le OU EXCLUSIF donne la parité d'un sous-ensemble de
2 bits

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 19


Contrôle de parité
● principe du contrôle de parité :
➢ partant d'un mot de n bits
➢ le mot de n+1 bits formé en adjoignant au mot de n bits son
bit de parité est toujours de parité nulle

● si P' est maintenue à 0, P donne la parité du mot de 4 bits

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 20


Contrôle de parité
● utilisation du contrôle de parité pour valider la
transmission de données

➢ P2 doit être nul pour valider la transmission

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 21


Décodage
● l'opération de décodage permet d'identifier un objet parmi
N à partir d'un code l'identifiant de façon unique
● exemple :
➢ N=2n leds numérotées de 0 à N-1
➢ il faut n bits pour représenter le numéro de chaque led
➢ un décodeur va prendre en entrée les n bits permettant
d'identifier une instruction et en sortie va allumer (mettre à
un niveau 1) la ligne correspondant à la led sélectionnée

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 22


Décodage
● exemple : 8 leds codées sur 3 bits

0 L0
1 L1
A2 2 L2
3 L3
A1
4 L4
A0 L5
5
6 L6
L7
7

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 23


Décodage
● exemple : 8 leds codées sur 3 bits

0 1
1 0
0 2 0
3 0
0
4 0
0 5 0
6 0
7 0

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 24


Décodage
● exemple : 8 leds codées sur 3 bits

0 0
1 1
0 2 0
3 0
0
4 0
1 5 0
6 0
7 0

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 25


Décodage
● exemple : 8 leds codées sur 3 bits

0 0
1 0
0 2 1
3 0
1
4 0
0 5 0
6 0
7 0

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 26


Décodage
● exemple : 8 leds codées sur 3 bits

0 0
1 0
1 2 0
3 0
1
4 0
0 5 0
6 1
7 0

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 27


Décodage
● exemple : 8 leds codées sur 3 bits

0 0
1 0
1 2 0
3 0
1
4 0
1 5 0
6 0
7 1

➢ utilisé dans les unités de contrôle des CPU

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 28


Décodage
● table de vérité
E A2 A1 A0 L0 L1 L2 L3 L4 L5 L6 L7 Produit
0 0 0 0 1 0 0 0 0 0 0 0 A 2 A1 A 0 E
0 0 0 1 0 1 0 0 0 0 0 0 A 2 A1 A 0 E
0 0 1 0 0 0 1 0 0 0 0 0 A 2 A1 A 0 E
0 0 1 1 0 0 0 1 0 0 0 0 A2 A1 A 0 E
0 1 0 0 0 0 0 0 1 0 0 0 A2 A1 A0 E
0 1 0 1 0 0 0 0 0 1 0 0 A2 A1 A0 E
0 1 1 0 0 0 0 0 0 0 1 0 A2 A1 A 0 E
0 1 1 1 0 0 0 0 0 0 0 1 A 2 A1 A 0 E
1 0 0 0 0 0 0 0 0 0 0 0 A 2 A1 A 0 E

1 0 0 1 0 0 0 0 0 0 0 0 A 2 A1 A 0 E
1 0 1 0 0 0 0 0 0 0 0 0 A 2 A1 A 0 E

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 29


Décodage
● Représentation BCD
➢ la représentation Binary Coded Decimal (décimale
codée binaire) remplace chacun des chiffres décimaux par 4
chiffres binaires
Cette représentation conserve la structure décimale (unités,
dizaines, centaines, etc...)
➢ chaque chiffre est codé décimal BCD
sur 4 bits selon la table 0 0000
suivante 1 0001
● le chiffre 294 sera codé : 2 0010
0010 1001 0100 3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 30


Décodage
● implémentation correspondante

E A2 A1 A0

L0

L1

L2

L7

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 31


Multiplexage
● pour transmettre sur une seule ligne des informations en
provenance de plusieurs sources possibles à destination
de plusieurs cibles
➢ analogie mécanique

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 32


Démultiplexeur
● Démultiplexeur
➢ circuit avec une entrée et N sorties, mettant en relation
l'entrée avec une seule des sorties
➢ sélection de la sortie à l'aide de lignes d'adressage
● très proche d'un décodeur
➢ exemple
● 1 ligne d'entrée portant les données D
● 4 lignes de sortie Y0, Y1, Y2, Y3
● 2 lignes d'adressage A et B
● validation de l'adressage par un strobe E (Enable) à 0

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 33


Démultiplexeur
● table de correspondance

E A1 A0 Y0 Y1 Y2 Y3 Produit
0 0 0 D 0 0 0 A BED

0 0 1 0 D 0 0 A BED

0 1 0 0 0 D 0 A BED

0 1 1 0 0 0 D A BED

1 0 0 0 0 0 0
1 0 1 0 0 0 0
1 1 0 0 0 0 0
1 1 1 0 0 0 0

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 34


Démultiplexeur
➢ implémentation correspondante

D
Y0
E

Y1

Y2

Y3

A0 A1

● il se fabrique des démultiplexeurs avec 2, 4 ou 16 lignes de


sortie
F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 35
Multiplexeur
● multiplexeur
➢ réalise l'opération inverse : sélectionne une entrée parmi N
et transmet l'information à une sortie unique
➢ exemple :
● 4 entrées (2 lignes d'adressage et 1 strobe)
X0
E A1 A0 Y
0 0 0 X0 X1
0 0 1 X1 Y
X2
0 1 0 X2
0 1 1 X3 X3
1 0 0 0
1 0 1 0
1 1 0 0
1 1 1 0 E A1 A0

Y = A 1 A 0 E X 0 +A 1 A 0 E X 1 +A 1 A 0 E X 2 +A 1 A 0 E X 3
F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 36
Multiplexeur
➢ mise en cascade de plusieurs multiplexeurs

A3 A4

A0 A1 A2

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 37


Multiplexeur
● Réalisation d'une fonction logique
➢ exemple d'une fonction F de 4 variables définie par sa table
de vérité :
x y z t F Multiplexeur

0 0 0 0 1 X0

0 0 0 1 0 X1

0 0 1 0 1 X2

0 0 1 1 0 X3

0 1 0 0 0 X4

0 1 0 1 1 X5

0 1 1 0 0 X6

0 1 1 1 0 X7

1 0 0 0 1 X8

1 0 0 1 1 X9

1 0 1 0 1 X10

X11
1 0 1 1 1

1 1 0 0 0 X12

1 1 0 1 1 X13

1 1 1 0 0 X14

1 1 1 1 0 X15

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 38


Multiplexeur
● Réalisation d'une fonction logique
➢ exemple d'une fonction F de 4 variables définie par sa table
de vérité :
x y z t F Multiplexeur
0 0 0 0 1 X0

0 0 0 1 0 X1

0 0 1 0 1 X2 1  X0
0 0 1 1 0 X3  X1
0 1 0 0 0 X4


0 1 0 1 1 X5 

0 1 1 0 0 X6 
 F
0 1 1 1 0 X7

1 0 0 0 1 X8 

1 0 0 1 1 X9 
1 0 1 0 1 X10 

1 0 1 1 1 X11  X15
1 1 0 0 0 X12

1 1 0 1 1 X13

1 1 1 0 0 X14 x y z t
1 1 1 1 0 X15

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 39


Encodage
● opération inverse du décodage
➢ N = 2n lignes en entrée
➢ n lignes en sortie
➢ lorsque une des lignes est activée en entrée, l'encodeur
fournit en sortie un mot de n bits correspondant au
codage de l'information identifiée par la ligne d'entrée
➢ exemple d'une conversion décimal-BCD
● 10 entrées (de 0 à 9)
● 4 sorties (codes BCD)

W0
W1 Y0
W2
W3 Y1
W4
W5 Y2
W6
W7 Y3
W8
W9

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 40


Encodage
➢ table de vérité
W0 W1 W2 W3 W4 W5 W6 W7 W8 W9 Y3 Y2 Y1 Y0
1 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0 0 1
0 0 1 0 0 0 0 0 0 0 0 0 1 0
0 0 0 1 0 0 0 0 0 0 0 0 1 1
0 0 0 0 1 0 0 0 0 0 0 1 0 0
0 0 0 0 0 1 0 0 0 0 0 1 0 1
0 0 0 0 0 0 1 0 0 0 0 1 1 0
0 0 0 0 0 0 0 1 0 0 0 1 1 1
0 0 0 0 0 0 0 0 1 1 0 0 0
0 0 0 0 0 0 0 0 0 1 1 0 0 1

➢ expressions logiques
Y0 = W1 + W3 + W5 + W7 + W9
Y1 = W2 + W3 + W6 + W7
Y2 = W4 + W5 + W6 + W7
Y3 = W8 + W9
F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 41
à suivre...

Logique séquentielle

F. Touchard Polytech Marseille INFO3 2017-18 Cours d'Architecture Logique Combinatoire 42