Circuit logique Circuit logique
II
Définition 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 Chaque variable de la fonction est matérialisée par un conducteur et sa valeur sera définie à partir par un conducteur et sa valeur sera définie à partir
de sa tension.
de sa tension.
Entrées
{
}
SortiesCircuit logique Circuit logique
• • Les entrées et sorties 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.
Circuit logique 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.
Circuit logique 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 f
g
circuit combinatoire circuit combinatoire
II
Introduction 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
circuit combinatoire circuit combinatoire
I
Diagramme temporel
• permet de suivre l ’évolution du circuit au cours du temps
1
E x
0 0
S f(x)
1 TP
0 t1 t2 t
circuit combinatoire 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
Quelques circuits combinatoires
II
Les portes : (base) Les portes : (base)
Elles réalisent les opérations de l’algèbre de Boole
A
B Y A
B Y
AND (ET) OR (OU)
NOT ( NON ) (XOR) OU exclusif
A
B Y
A Y
Quelques circuits combinatoires
• • Réalisations du XOR avec les portes AND et OR Réalisations du XOR avec les portes AND et OR
A
B A
B
A
B A
B
Quelques circuits combinatoires
A
B Y
A
B Y
Y=A.B A
B
A Y=A
A
B Y=A+B
NAND ( NON ET ) NOR ( NON OU )
Réalisation des fonctions NON, OU et ET
en utilisant uniquement des portes NOR
Quelques circuits combinatoires
• • Porte à Trois Porte à Trois Etats 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.
A Y
C A Y sortie
1 0 0 faible impédance 1 1 1 faible impédance
Quelques circuits combinatoires
• • Le multiplexeur : ( Le multiplexeur : ( Mux Mux ) circuit 1 parmi 2 )
n– 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 E2 E(m-1)
s
a0 a1 ... a(n-1)
Quelques circuits combinatoires
• • Le décodeur : 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
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
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 }
Quelques circuits combinatoires
•• Le comparateur : 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 )
Quelques circuits combinatoires
II
Réalisation du comparateur 3 bits Réalisation du comparateur 3 bits
A2 A1 A0 B0 B1 B2
S
Quelques circuits combinatoires
• • Le semi Le semi - - additionneur : additionneur :
Soient A et B deux nombres de 1 bit.
A B S R
0 0 1 1
0 1 0 1
0 1 1 0
0 0 0 1
123 OU 123
ET
Quelques circuits combinatoires
II
Réalisation du semi Réalisation du semi - - additionneur additionneur
A
B S
R
Quelques circuits combinatoires
II
Additionneur complet: Additionneur complet:
• • on considère la retenue on considère la retenue
A B Re S Rs
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
0 1 1 0 1 0 0 1
0 0 0 1 0 1 1 1
Quelques circuits combinatoires
S=A.B .R e + A.B . R e + A .B . R e + A .B .R e
S=R e.(A.B + A .B ) + R e .(A .B + A .B ) S=R e.( A ⊕ B) + R e.(A⊕B )
S =R e⊕(A⊕B )
Rs=A.B.Re + A.B.Re + A.B.Re + A.B.Re
Rs=Re.(A.B + A.B) + A.B(Re + Re) Rs=Re.(A⊕B) + A.B =1
A B Re
Réalisation d’un circuit combinatoire 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).
Réalisation d’un circuit combinatoire Réalisation d’un circuit combinatoire
II
Méthode par algèbre de Boole 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
Réalisation d’un circuit combinatoire 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
Réalisation d’un circuit combinatoire Réalisation d’un circuit combinatoire
• composition des fonctions :
exemples : outil permettant la réalisation des opération : X+Y, 2X+Y, X+2Y f(e)
⇔ E f g
S=f(g(e))E
g(e)
Réalisation d’un circuit combinatoire Réalisation d’un circuit combinatoire
I
la sélection :
• ♦alternative à deux branches
f(E)
choix S
E g(E)
cond
Sélection entre deux choix:
f et g
f(E)
choix S
E g(E)
cond
Réalisation d’un circuit combinatoire Réalisation d’un circuit combinatoire
f
C g
S
avec des adaptateurs trois états Avec des portes
f g
S
Réalisation d’un circuit combinatoire 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.
Réalisation d’un circuit combinatoire 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
Réalisation d’un circuit combinatoire 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.
solution de taille n
solution de taille n
module d’extension