Logique Combinatoire
Logique Combinatoire
Logiques :
Générateur/Détecteur de parité
Multiplexeur et Démultiplexeur
Encodeur et Décodeur
Convertisseur de code
Comparateur
Aritmétiques :
Additionneur
Aritmétiques et logiques
Unité arithmético-logique
FONCTIONS COMBINATOIRES
Définition
Un circuit combinatoire consiste en :
- variables d'entrée,
- portes logiques et
- variables de sortie
circuit
entrée logique sortie
combinaison
PROCÉDÉ DE CONCEPTION
1. ÉNONCÉ DU PROBLÈME
4. TABLE DE VÉRITÉ
5. FONCTION DE BOOLE
6. DIAGRAMME LOGIQUE
SOMMATEUR MOYEN
2. VARIABLES D'ENTRÉE 2
VARIABLES DE SORTIE 2
x, y
VARIABLES DE SORTIE : C, S
4. TABLEAU DE VÉRITÉ
x y C S
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 0
5. FONCTIONS BOOLE
a. S = xy' + x'yC = xy
b. S = (x+y)(x'+y') C = xy
c. S = (C + x'y')'C = (x' + y')'
d. S = x y C = xy
6. DIAGRAMMES LOGIQUES
X
Y
S
X
Y
X
Y C
SOMMATEUR COMPLET
2. VARIABLES D'ENTRÉE 3
VARIABLES DE SORTIE 2
3. VARIABLES D'ENTRÉE : x
VARIABLES DE SORTIE : C, S
4. TABLE DE VÉRITÉ
x y z C S
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 1
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
5. FONCTIONS BOOLE
6. DIAGRAMMES LOGIQUES
SOUSTRACTEUR MOYEN
2. VARIABLES D'ENTRÉE 2
VARIABLES DE SORTIE 2
3. VARIABLES D'ENTRÉE : x, y
VARIABLES DE SORTIE C, D
4. TABLE DE VÉRITÉ
x y C D
0 0 0 0
0 1 1 1
1 0 0 1
1 1 0 0
6. DIAGRAMMES LOGIQUES
SUSTRACTOR COMPLETO
2. VARIABLES D'ENTRÉE 3
VARIABLES DE SORTIE 2
3. VARIABLES D'ENTRÉE : x, y, z
SORTIE DES VARIABLES
4. TABLEAU DE VÉRITÉ
x y z C S
0 0 0 0 0
0 0 1 1 1
0 1 0 1 1
0 1 1 1 0
1 0 0 0 1
1 0 1 0 0
1 1 0 0 0
1 1 1 1 1
5. FONCTIONS BOOLE.
6. DIAGRAMMES LOGIQUES.
CIRCUITS COMBINATIONNELS
Un circuit combinatoire est un système qui contient des opérations booléennes de base.
(ET, OU, NON), certaines entrées et un ensemble de sorties, comme chaque sortie
correspond à une fonction logique individuelle, un circuit combinatoire souvent
implémente plusieurs fonctions booléennes différentes, il est très important de se rappeler cela
Fait, chaque sortie représente une fonction booléenne différente.
Un exemple courant d'un circuit combinatoire est le décodeur à sept segments
segments, il s'agit d'un circuit qui accepte quatre entrées et détermine lequel des
sept segments doivent s'illuminer pour représenter l'entrée respective, conformément
Conformément à ce qui a été dit dans le paragraphe précédent, sept fonctions de sortie doivent être mises en œuvre.
différentes, une pour chaque segment. Les quatre entrées pour chacune d'elles
Les fonctions booléennes sont les quatre bits d'un nombre binaire dans la plage de 0 à 9.
Soit D le bit de haut ordre de ce nombre et A le bit de bas ordre, chaque fonction logique
il doit produire un un (pour le segment allumé) pour une entrée donnée si tel
un segment particulier doit être éclairé, par exemple, le segment e doit
s'illuminer pour les valeurs 0000, 0010, 0110 et 1000. Dans le tableau suivant, on peut
voir quels segments doivent s'illuminer en fonction de la valeur d'entrée, gardez à l'esprit
que seuls des valeurs dans la plage de 0 à 9 sont représentées, les décodeurs pour
Les affichages à sept segments commerciaux ont la capacité d'afficher des valeurs
aditionnelles qui correspondent aux lettres A à F pour les représentations
hexadécimales, cependant la mécanique pour éclairer les segments respectifs est
similaire à celle représentée ici pour les valeurs numériques.
0 a b c d e f
1 b c
2 a b d e g
3 a b c d g
4 b c f g
5 un c d f g
6 c d e f g
7 a b c
8 a b c d e f g
9 a b c f g
CIRCUITS SÉQUENTIELS
Un problème avec la logique séquentielle est son absence de "mémoire". En théorie, toutes les
Les fonctions de sortie dans un circuit combinatoire dépendent de l'état actuel des
valeurs d'entrée, tout changement dans les valeurs d'entrée se reflète (après
un intervalle de temps appelé retard de propagation) dans les sorties.
Malheureusement, les ordinateurs nécessitent la capacité de "se souvenir" de
résultat de calculs passés. C'est le domaine de la logique séquentielle. Une cellule
La mémoire est un circuit électronique qui se souvient d'une valeur d'entrée après que
Cette valeur a disparu. L'unité de mémoire la plus basique est le flip-flop.
Set/Reset. Bien que se souvenir d'un simple bit soit important, la plupart des systèmes
de calculateur nécessitent de mémoriser un groupe de bits, cela se réalise en combinant plusieurs flip-
flop en parallèle, une connexion de ce type s'appelle un registre. À partir de
ici il est possible d'implémenter différents circuits comme des registres de décalage et
compteurs, ces derniers sont également connus sous le nom de circuits d'horloge. Avec les
Les éléments mentionnés permettent de construire un microprocesseur complet.
Dans cette leçon, nous avons fait un aperçu très basique des éléments qui forment le
base des systèmes de calcul modernes, dans la section dédiée à la conception
électronique nous étudierons en profondeur les concepts ici présentés, mais pour
ceux qui sont plus intéressés par l'aspect programmatique peuvent dire que
Avec les éléments vus dans cette leçon, il est possible de mettre en œuvre des machines à états.
Cependant, la morale de cette leçon est très importante : tout algorithme qui
nous pouvons implémenter dans un logiciel, nous pouvons également l'implémenter directement dans
matériel. Cela suggère que la logique booléenne est la base computationnelle dans les
systèmes informatiques modernes actuels. Tout programme que vous écrivez,
indépendamment du langage utilisé, qu'il soit de haut ou de bas niveau, on peut
spécifier comme une séquence d'équations booléennes.
Un fait tout aussi intéressant est le point de vue opposé, il est possible de mettre en œuvre
n'importe quelle fonction matérielle directement dans le logiciel, actuellement c'est la
fonction principale du langage assembleur et d'autres capables de travailler
directement dans le matériel, comme le C et le C++. Les conséquences de ce phénomène
à peine sont-elles exploitées, on peut inférer l'existence d'un avenir très prometteur pour
le professionnel de la programmation, en particulier ceux dédiés aux systèmes
systèmes embarqués, les microcontrôleurs et les professionnels
dédiés à la Programmation Orientée Objet. Pour réussir dans ces domaines
de la recherche, il est essentiel de comprendre les fonctions booléennes et la manière
de les mettre en œuvre dans un logiciel. Même si vous ne souhaitez pas travailler sur du matériel,
Il est important de connaître les fonctions booléennes car de nombreux langages de haut niveau
ils traitent des expressions booléennes, comme c'est le cas des énoncés if-then ou des
boucles while.
On dit que ces vannes sont "universelles" car avec chacune des deux
en famille, nous pouvons accomplir toutes les fonctions logiques.
Dans le tableau ci-dessous, les opérateurs logiques sont présentés en fonction de seulement
portes NOR et uniquement des portes NAND.
NAND NOR
SOMMATEURS DE BASE
Somateurs. Ces opérations sont réalisées à l'aide d'un circuit logique (composé de
portes logiques) appelé semi-additionneur
Permet d'additionner deux bits sans tenir compte des reports provenant de l'addition de
bits précédents.
Un semisumador admet deux chiffres binaires en entrée et génère deux chiffres.
binaires en leurs sorties : un bit de somme et un bit de retenue, vu précédemment.
SOMMATEUR COMPLET
VOIR RÉFÉRENCE