Beruflich Dokumente
Kultur Dokumente
RESEAUX
ET
I.U.T. de VELIZY TELECOMUNICATIONS
Logique et circuits
combinatoires chapitres 2
et 3
Emmanuelle Peuch
INTRODUCTION
Un circuit logique est dit combinatoire si l'état de ses sorties est fonction
uniquement de l'état présent de ses entrées. Ainsi, à chaque combinaison des
entrées correspond une seule combinaison des sorties.
Dans cette partie nous allons tout d'abord présenter les opérateurs
combinatoires de base (opérateurs logiques de base). Puis nous ferons un
rappel sur l'algèbre de Boole, ce qui nous permettra ensuite d'aborder une
méthode de synthèse d'un système logique combinatoire.
3.2.1 Première méthode : écriture à partir de la table de vérité __ Erreur ! Signet non
défini.
3.2.2 Deuxième méthode : utilisation des tableaux de Karnaugh ________________9
ET logique :
0 &
0
La sortie est à l'état haut quand les entrées sont simultanément à l'état haut.
OU logique :
0 >=1
0
La sortie est à l’état haut quand l’une au moins des entrées est à l’état haut, et
à l’état bas quand les entrées sont simultanément à l’état bas.
IUT Vélizy – R&T / Emmanuelle Peuch 4
Chapitre 2
0 &
0
0 >=1
0
0 =1
0
2 Algèbre de Boole
Régles
générales
Lois Lois de De
Commutativité Associativité Distributivité
spéciales Morgan
A(BC) = (AB)C
A.B = B.A A(B+C) = A.B+AC. A+A.B = A A + B = A.B
= A.B.C
A+(B+C) = (A+B)+C
A+B = B+A A+(B.C)=(A+B).(A+C) A(A+B) = A A.B = A + B
= A+B+C
Régles
particulières
Mise en Synthèse
Cahier des Table de
équation (avec (réalisation
charges vérité
optimisation) électronique)
C B A R S
0 0 0
0 0 1
0 1 0
IUT Vélizy – R&T / Emmanuelle Peuch 7
Chapitre 2
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
Pour chacun de ces cas (sortie à 1), on écrit le produit (ET logique) de
toutes les variables d’entrée :
Remarque : lorsque les états ‘0’ sont moins nombreux que les états ‘1’,
il est avantageux d’écrire le complément de la somme
logique des lignes où la variable de sortie prend la valeur 0.
Exercice
Mise en équation des sorties R et S et simplification des équations logiques
obtenues
Equation de S :
Equation de R :
Construction du tableau :
Les cases représentant l’état des variables d’entrée doivent être
adjacentes, c'est-à-dire que le passage d’une case à l’autre se fait par
changement d’une seule variable à la fois.
BC 00 01 11 10
A
0
Dans les cases on n’inscrit que la valeur 1 (cases où la sortie prend l’état
1).
Soit ici S =
BC 00 01 11 10
A S=
0 1 1
1 1 1
BC 00 01 11 10
S=
A
0 1 1
1 1 1
BC 00 01 11 10
A S=
0
1 1 1 1 1
00 01 11
BC 10
A S=
0 1 1
1 1 1
BC 00 01 11 10
A S=
0
1 1
BC 00 01 11 10
A S=
0 1 1
1 1 1 1
BC 00 01 11 10
A S=
0 1 1
1 1 1 1 1
BC 00 01 11 10
A S = B.C + A.C + A.B
0 1 1 1
1 1 1 1
OU ALORS
BC 00 01 11 10
A S = A.C + A.B + B.C
0 1 1 1
1 1 1 1
Quand certaines combinaisons des variables sont sans effets sur la valeur
de la fonction de sortie S, on dit que ce sont des états indifférents. On les
note par une croix ou par un – dans le diagramme de Karnaugh et on les
utilise partiellement ou totalement pour simplifier S :
BC 00 01 11 10
A S = B + A.C
0 1 -
1 1 - 1
Exercice
Mise en équation des sorties R et S et simplification des équations logiques
obtenues par la méthode des tableaux de Karnaugh
C B A R S
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 1 1
1 0 0 1 0
1 0 1 1 1
1 1 0 1 1
1 1 1 1 1
BC 00 01 11 10
A
0 1
S=
1 1 1 1
R = A+B+C
S = A.C + B.C + A.B
A B C
ANNEXE
Unité en
Volts
Unité en ns
1 Introduction _________________________________________ 19
2 Etude de l’additionneur 1 bit ____________________________ 19
3 Description VHDL d’un additionneur de deux mots de 3 bits ____ 24
1 Description générale___________________________________ 25
1 Description générale___________________________________ 36
2 Description VHDL _____________________________________ 38
1 Introduction
Un circuit arithmétique est un dispositif qui peut réaliser des additions, des
soustractions, des multiplications,…. sur des nombres binaires.
L’addition de deux mots de 1 bit est effectuée par un circuit appelé demi
additionneur. Sa table de vérité est donnée ci-dessous :
A S (somme) B A S R
0 0 0 0
B R (Retenue) 0 1 1 0
1 0 1 0
1 1 0 1
Demi additionneur
1 bit: vue externe
S=A⊕B VHDL
A 0 =1
0 S (somme)
B 0
0 &
0
R (Retenue)
0
Si nous additionnons deux mots de plusieurs bits, il faut alors tenir compte
de la retenue de la précédente addition de 1 bit. Le circuit a donc trois
entrées, deux sorties, et est appelé additionneur 1 bit (additionneur
complet mono bit):
Ai S i (somme) Ri Bi Ai Si R i+1
0 0 0 0 0
Bi R i+1 0 0 1 1 0
(Retenue) 0 1 0 1 0
Ri 0 1 1 0 1
1 0 0 1 0
Additionneur 1 bit: 1 0 1 0 1
vue externe 1 1 0 0 1
1 1 1 1 1
Si = Ri ⊕ Ai ⊕ Bi
Vue interne
Ai 0 =1 S1
0
0 0 =1
0
S i (somme)
0
Bi
0 &
0
S2 0 &
S3 >=1
Ri 0
0
0 0
0
0 R i+1
(Retenue)
Figure 1
Nous allons utiliser des nœuds intermédiaires S1, S2 et S3 qui sont appelés
des signaux en VHDL (objet du langage VHDL).
entity add is
Port (Ai,Bi,Ri: in std_logic;
S,R: out std_logic );
end add;
Cf TD et TP
1 Description générale
Multiplexeur :
NB : dans le symbole ci-dessus, les entrées et sorties sont représentées par des flèches
épaisses afin d’indiquer qu’il peut y avoir plus d’un conducteur.
Doc.
Extrait de la documentation technique du décodeur 74HC151 (Texas
technique Instrument)
2 Description VHDL
Multiplexeur
4 entrées/1 sortie
Multiplexeur
S1S0
Sortie
Entrée de ... YD C1 C0 Y
données S4S3 0 0 S0
0 1 S1
1 0 S2
1 1 S3
C10
C C
C21 ENB
Entrée des
adresses
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity MUL_4_1 is
Port ( E0 : in std_logic;
E1 : in std_logic;
E2 : in std_logic;
E3 : in std_logic;
sel : in std_logic_vector(1 downto 0);
S : out std_logic);
end MUL_4_1;
begin
S <= E0 when sel = "00" else
E1 when sel = "01" else
E2 when sel = "10" else
E3 ;
end version1;
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity MUL_4_1 is
Port ( E0 : in std_logic;
E1 : in std_logic;
E2 : in std_logic;
E3 : in std_logic;
sel : in std_logic_vector(1 downto 0);
S : out std_logic);
end MUL_4_1;
begin
with sel select
S <= E0 when "00",
E1 when "01",
E2 when "10",
E3 when others;
end version2;
Décodeur
S1 D1
Un décodeur possède n entrées
S2 D8 d’adresse : il y a donc 2n
combinaisons possibles donc 2n
S3 8 sorties : une seule sorties actives à 0 en générale.
sortie est active à la fois Pour chaque combinaison des voies
d’entrée, une seule sortie est activée.
ENB
3 entrées (soit 8 Entrées de
codes d'entrées) validation
Doc.
Extrait de la documentation technique du décodeur - démultiplexeur
technique 74HC138 (Texas Instrument)
Symbole logique :
Table de vérité :
Table de vérité d’un démultiplexeur 1 voie vers 8 voies : il faut donc trois
lignes d’adresse (entrées SELECT) pour valider une sortie parmi les huit.
Doc.
Extrait de la documentation technique du décodeur 74LS42 (Texas
technique Instrument)
Disposition des 7 segments Segments qui doivent être allumés pour former chacun des chiffres.
Chaque segment est formé d’un matériau qui émet de la lumière quand il
est traversé par un courant. Les matériaux les plus utilisés sont les
diodes électroluminescentes (LED).
Exemple : ci-dessus, on voir que pour former le chiffre 6 il faut allumer les
segments e, f, g, c et d et les segments a et b doivent être
éteints.
Doc.
Extrait de la documentation technique du décodeur 74HC4511 (Texas
technique Instrument)
4 Description VHDL
Cf TD et TP
1 Description générale
Codeur
E0
Un encodeur a un certain nombre de
E1
A0 voies d’entrée, dont une seule est active
A1 à la fois.
A2
E7 A une voie d’entrée correspond une
3 sorties (codage seule représentation de sortie sur N
sur trois bits) bits (ici, sur trois bits).
ENB
8 entrées: une seule Entrées de
est active à la fois validation
Ici, dans notre exemple, nous avons un codeur octal/binaire (huit entrées/3
sorties).
Table de vérité :
2 Description VHDL
Cf TD et TP