Вы находитесь на странице: 1из 30

Circuit logique

I Définition
• Un circuit logique est un dispositif électronique
permettant la réalisation d’une fonction logique
• Chaque variable de la fonction est matérialisée
par un conducteur et sa valeur sera définie à partir
de sa tension.
 

{ }
 

Entrées   Sorties

masse

A. Dipanda - circuits combinatoires 1


Circuit logique

• Les entrées et sorties


– Circuit logique↔ f(x1, x2, x3 ,..., xn ) → (y1, y2, y3 ,..., ym )
entrées sorties

– Les entrées sont les conducteurs qui vont permettre de


présenter les opérandes.

– Les sorties sont les conducteurs qui vont permettre de


consulter le résultat.

A. Dipanda - circuits combinatoires 2


Circuit logique

I les conducteurs sont appelés des broches ; il


en existe 4 types :

• entrées “ normales ” : forçées par l’utilisateur


• sorties “ normales ” : forçées par le circuit
• sorties 3 états : (peuvent être laissées libres dans
certains cas) on les utilise quand on travaille avec
les bus, circuit à validation.
• les collecteurs ouverts : libres ou forçés à 0

A. Dipanda - circuits combinatoires 3


Circuit logique

I Assemblages de circuits logiques


règles ou principes à respecter :
– compatibilité des tensions entre les entrées et les sorties
– à un instant donné, on ne peut forçer une entrée que
d’une seule façon

A. Dipanda - circuits combinatoires 4


circuit combinatoire

I Introduction
• un circuit combinatoire réalise sur ses sorties une
fonction de ses entrées : s=f(e)
• Un circuit combinatoire n’a pas de mémoire
interne.
• il y a toujours un moment de latence entre le
moment où on envoie quelque chose en entrée et
le moment où on récupère quelque chose en
sortie ; cet intervalle de temps est connu et
s’appelle le “ délai de propagation ” , noté tp.

A. Dipanda - circuits combinatoires 5


circuit combinatoire

I Diagramme temporel
• permet de suivre l ’évolution du circuit au cours du
temps
t1 t2 t
0

1
E x
0

0
S f(x)
1 TP

A. Dipanda - circuits combinatoires 6


circuit combinatoire

Assemblages de circuits combinatoires


On peut faire un assemblage de circuits combinatoires, en
mettant bout à bout plusieurs circuits combinatoires, et
en évitant les boucles (une entrée d’un circuit étant une
de ses sorties ou une sortie d’un circuit « postérieur »)
E0 S0

E1
E2 f g S1
h
S2
E3

A. Dipanda - circuits combinatoires 7


Quelques circuits combinatoires

I Les portes : (base)


Elles réalisent les opérations de l’algèbre de Boole
AND (ET) OR (OU)
A A
Y Y
B B

NOT ( NON ) (XOR) OU exclusif


A
A Y Y
B

A. Dipanda - circuits combinatoires 8


Quelques circuits combinatoires

• Réalisations du XOR avec les portes AND et OR

A A
B B

A A
B B

A. Dipanda - circuits combinatoires 9


Quelques circuits combinatoires

NAND ( NON ET ) NOR ( NON OU )

A A
Y Y
B B

Réalisation des fonctions NON, OU et ET


en utilisant uniquement des portes NOR
A Y=A A
Y=A.B
A
Y=A+B B
B
A. Dipanda - circuits combinatoires 10
Quelques circuits combinatoires

• Porte à Trois Etats


La porte "3 états", ou tri-state", n'est pas une porte logique
au sens strict. Elle est principalement utilisée pour connecter
une sortie sur une ligne commune à plusieurs circuits (un bus
par exemple). Elle remplace généralement une porte ET.

C A Y sortie
A Y 1 0 0 faible impédance
1 1 1 faible impédance
C 0 X 0 haute impédance

A. Dipanda - circuits combinatoires 11


Quelques circuits combinatoires

• Le multiplexeur : (Mux) circuit 1 parmi 2n


– Il est composé de 2n entrées, 1 sortie, et n lignes de
sélection (lignes de commande, lignes d’adresse)
– Il permet de faire la liaison entre 1 entrée parmi m=2n et
la sortie en fonction des n lignes de sélection.

E0
E1
s
E2

E(m-1)
a0 a1 ... a(n-1)
A. Dipanda - circuits combinatoires 12
Quelques circuits combinatoires

• Le décodeur :
– Il a n lignes d’entrée (lignes d’adresse) et 2n lignes de
sortie.
– En fonction des lignes d’adresse, on va activer l’une des
2n lignes.
– On peut avoir une entrée supplémentaire a, on obtient
donc un décodeur à validation.
a0 S0
a1 S1
S2
an-1
Sm-1
a

A. Dipanda - circuits combinatoires 13


Quelques circuits combinatoires

• Exemple d ’utilisation du décodeur : décodage


d’adresse
– une mémoire de 32 mots (4 boîtiers de 8 mots chacun) ;
– pour 1 mot mémoire, on a une adresse de 5 bits répartis
de la manière suivante :
– 2 bits d’adresse boîtier,
– 3 bits adresse mot dans la boîtier.

a0
a1

a2, a3, a4

A. Dipanda - circuits combinatoires 14


Quelques circuits combinatoires

• le décodeur comme un démultiplexeur. On a


besoin d’un décodeur à validation.

a0 S0
a1 S1

an Sk
Sm
d

Sk={ si k=a alors Sk=d


sinon, Sk=0 }

A. Dipanda - circuits combinatoires 15


Quelques circuits combinatoires

• Le comparateur :
– Il permet de faire la comparaison de deux mots de n bits.
– Cas simple :
1 si A=B
0 si A≠B
On a l’égalité des deux mots si tous les bits sont égaux
– Ai=Bi ⇒ Ai⊕Bi =0
– Ai≠Bi ⇒ Ai⊕Bi =1
On utilise ces deux relations pour construire le comparateur.
– A=B⇒∀i Ai=Bi ⇒∑ Ai⊕Bi =0
– A=B⇔NON (∑Ai⊕Bi )

A. Dipanda - circuits combinatoires 16


Quelques circuits combinatoires

I Réalisation du comparateur 3 bits

A2 A1 A0 B0 B1 B2

A. Dipanda - circuits combinatoires 17


Quelques circuits combinatoires

• Le semi-additionneur :
Soient A et B deux nombres de 1 bit.

A B S R
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

123 123
OU ET
A. Dipanda - circuits combinatoires 18
Quelques circuits combinatoires

I Réalisation du semi-additionneur

A S
B

A. Dipanda - circuits combinatoires 19


Quelques circuits combinatoires

I Additionneur complet:
• on considère la retenue

A B Re S Rs
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

A. Dipanda - circuits combinatoires 20


Quelques circuits combinatoires

S= A . B .R e + A .B . R e + A . B . R e + Rs= A .B.Re + A. B .Re + A.B. Re +


A .B .R e A.B.Re
S = R e.( A . B + A .B ) + R e .( A .B + A . B ) Rs=Re.( A .B + A. B ) + A.B( Re + Re)
S = R e.( A ⊕ B ) + R e.(A ⊕ B ) =1
S = R e⊕ (A ⊕ B ) Rs=Re.(A⊕B) + A.B

A B Re

S Re
A. Dipanda - circuits combinatoires 21
Réalisation d’un circuit combinatoire

I La réalisation d’un circuit combinatoire passe


par deux phases :
• Recherche d’une solution correcte (analyse)

• Simplification de la solution trouvée


(-> circuit plus efficace).

A. Dipanda - circuits combinatoires 22


Réalisation d’un circuit combinatoire

I Méthode par algèbre de Boole


– L’analyse aboutit à l’établissement d’une table de vérité
donnant l’équation logique. Il s’agit par la suite
d’optimiser cette équation soit:
– en utilisant les règles de simplification
– en utilisant les tableaux de Karnaugh
– on risque d’avoir des grands circuit car on n’utilise que
des portes et, ou, & non.
– on ne trouve pas de circuit particulier
– avec plus de 5 entrées, la table de vérité devient
inexploitable.

A. Dipanda - circuits combinatoires 23


Réalisation d’un circuit combinatoire

I Décomposition en sous fonctions


• dissociation des sorties :
f(e) f(e)
E ⇔ E f
g(e) g g(e)

Exemple 2 : somme de deux nombres :

A S

B R

A. Dipanda - circuits combinatoires 24


Réalisation d’un circuit combinatoire

• composition des fonctions :

f(e)
⇔ E f g S=f(g(e))

E
g(e)

exemples : outil permettant la réalisation des opération : X+Y, 2X+Y, X+2Y

E DEC ADD S

A. Dipanda - circuits combinatoires 25


Réalisation d’un circuit combinatoire

I la sélection :
• ♦alternative à deux branches

f(E)

Sélection entre
choix S
E deux
g(E)choix:
f et g
cond
cond

A. Dipanda - circuits combinatoires 26


Réalisation d’un circuit combinatoire

avec des adaptateurs trois états Avec des portes


f
f S
S
g g

C
C

A. Dipanda - circuits combinatoires 27


Réalisation d’un circuit combinatoire

I la récurrence :
quand on peut définir une fonction d’ordre n par la
fonction d’ordre n-1.
En = f(E0, E1, E2, ..., En-1)
• Pour chercher la solution d’ordre n, on commence
par résoudre le problème à l’ordre n-1
• Le problème est de pouvoir trouver la bonne
valeur pour le problème de taille 0 ; en général,
c’est une constante.

A. Dipanda - circuits combinatoires 28


Réalisation d’un circuit combinatoire

– pour faire un additionneur 2 bits, on se sert de 2


additionneurs 1 bit.
– comparaison de deux nombre X et Y (X>Y)
» 1 si le couple(Xn, Yn)=(1, 0) Xn et Yn étant les
bits de poids fort.
» 0 si le couple(Xn, Yn)=(0, 1)
» sinon, supn
solution
de taille n
module

solution d’extension
de taille 1

A. Dipanda - circuits combinatoires 29


Réalisation d’un circuit combinatoire

• la dichotomie :
on veut résoudre un problème de taille 2n en sachant
résoudre le problème de taille n.
Exemple : faire un additionneur 4 bits à partir de deux
additonneut 2 bits.

E0...En-1 solution
de taille n
module

d’extension
s
solution
En...E2n-1 de taille n

A. Dipanda - circuits combinatoires 30