Logique booléenne
Nous allons franchir un grand pas aujourd'hui car nous allons découvrir la logique digitale. Qu'on le veuille ou non aujourd'hui, la majorité de l'électronique que nous utilisons au quotidien est digitale et nos émetteurs récepteurs, ultimes refuges de l'analogique sont déjà contrôlés par des microprocesseurs et sont tous dotés de traitement numérique de la chaîne BF. | ||||||||||||||||||||||||||||||||||
Nous
parlions jusqu'à présent d'électronique analogique, nous allons parler désormais
d'électronique numérique. Quelle est la différence ? |
||||||||||||||||||||||||||||||||||
On pourrait prétendre que l'électronique digitale est contre nature puisque toutes les grandeurs physiques de notre monde sont analogiques. On entend par analogique qu'elles sont continues, elles varient dans le temps mais sans discontinuité. Pour prendre un exemple parlant, la température au cours d'une journée évolue graduellement. Quand le soleil se lève la température augmente, de manière continue, on ne passe pas de 12°C à 25°C en une µs. | Dans l'électronique numérique, en revanche ceci ne sera pas possible, nous ne pourrons manipuler que des signaux qui prennent deux valeurs finies et bien connues. Ces valeurs symboliseront des états, comme l'état haut ou l'état bas, la porte ouverte ou fermée, le jour ou la nuit. Il y aura une forte discontinuité en ces deux valeurs. | |||||||||||||||||||||||||||||||||
Petit
retour sur la numération : |
||||||||||||||||||||||||||||||||||
Depuis votre plus tendre enfance vous êtes habitué à compter en base 10. Naturellement vous trouvez cela extraordinairement pratique et vous vous en accommodez très bien. | Le principe est
simple, on dispose de 10 symboles (0,1,2,3,4,5,6,7,8,9), si l'on dépasse le 9, il
suffit de rajouter un 1 devant le chiffre précédent, ceci nous indique une dizaine
supplémentaire. |
|||||||||||||||||||||||||||||||||
Le
seul "petit" problème c'est que dans nos systèmes logiques basés sur
l'électricité, nous ne disposons pas de 10 symboles mais de deux, la présence ou
l'absence de tension que l'on symbolise par 1 ou 0. |
Nous allons donc être contraints de changer notre principe de numérotation et de compter non plus en base 10 mais en base 2. | |||||||||||||||||||||||||||||||||
Principe de la numération binaire : |
||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Vous
avez dans le tableau ci-dessus la correspondance entre les puissance de 2 et leurs
valeurs en base 10. Le tableau s'arrête à 25, il n'y a
naturellement pas de limite. Supposons que nous ayons la valeur suivante en base 2: 101001, quelle est sa valeur en base 10 ? |
||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Nous reprenons notre tableau et posons la valeur en binaire Quand il y a une valeur "0", l'équivalent décimal est ignoré, quand on trouve une valeur "1", l'équivalent décimal est pris en compte. Il ne rester plus qu'à additionner les valeurs décimales. Dans notre exemple : 101001 en base 2 = 41 en base 10. |
||||||||||||||||||||||||||||||||||
Conversion
de décimal vers binaire : |
||||||||||||||||||||||||||||||||||
Cette
fois nous partons d'un nombre en base 10 que nous voulons convertir en binaire. Nous allons utiliser la méthode des divisions successives. Principe |
||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Exemple : | ||||||||||||||||||||||||||||||||||
soit le
nombre 78 en base 10 à transformer en base 2, on pose : |
||||||||||||||||||||||||||||||||||
Le
résultat est 1001110. Notez bien qu'il faut prendre en compte le dernier résultat (en l'occurrence dans cet exemple le résultat de la dernière division) et que pour afficher le résultat, on remonte de la dernière division vers la première. |
|
|||||||||||||||||||||||||||||||||
Numération
hexadécimale : |
||||||||||||||||||||||||||||||||||
Incontournable, le
code hexadécimal comporte 16 symbole qui sont
|
||||||||||||||||||||||||||||||||||
Le
résultat est 4E (14 = E) |
|
|||||||||||||||||||||||||||||||||
La
logique booléenne : |
||||||||||||||||||||||||||||||||||
Mieux
qu'une longue et fastidieuse explication, reportons nous à un exemple |
||||||||||||||||||||||||||||||||||
Voici un schéma
assez simple. Il représente un ampoule électrique alimentée par une batterie par
l'intermédiaire d'un contact k. Ce contact peut être soit ouvert, soit fermé, on dira qu'il prend pour valeur 0 (ouvert) ou 1 (fermé) . |
||||||||||||||||||||||||||||||||||
Sans être devin, il est évident que si k=1 l'ampoule éclaire et si k = 0, l'ampoule ne brille pas. On peut en déduire un tableau qui va synthétiser cela et nous donner l'état de la sortie en fonction de l'état de l'entrée. Il s'appellera table de vérité. | ||||||||||||||||||||||||||||||||||
k est
la variable, 0 si ouvert et 1 si fermé S sera l'état de l'ampoule, 1 si elle éclaire, 0 si elle n'éclaire pas. C'est un exemple volontairement simpliste. |
|
|||||||||||||||||||||||||||||||||
Les
opérations et opérateurs logiques: |
||||||||||||||||||||||||||||||||||
L'électronique moderne met à notre disposition des composants permettant d'effectuer des opérations booléennes. Ces composants se présentent sous la forme de circuits intégrés contenant plusieurs opérateurs logiques. Nous verrons dans une autre section les particularités technologiques de ces composants, en attendant pensez que nous utilisons des circuits dits "TTL" alimentés en 5V continu. Quand nous appliquons des tensions aux entrées, nous le faisons à travers des résistances, ceci n'est pas répété à chaque fois de manière à ne pas alourdir l'exposé. Passons en revue les éléments de base. | ||||||||||||||||||||||||||||||||||
Porte INVERSEUR |
||||||||||||||||||||||||||||||||||
Si vous appliquez une tension de 5 V à l'entrée "e", la sortie basculera à 0V. Inversement, mettez l'entrée à la masse, la sortie basculera à +5V. |
|
|||||||||||||||||||||||||||||||||
Porte ET ou AND |
![]() |
|||||||||||||||||||||||||||||||||
Nous avons deux entrées, notées e1 et e2 et une seule sortie. Pour vous faciliter la compréhension, imaginez un schéma avec une lampe et 2 interrupteurs placés en série. Quand l'un d'eux ou tous les deux sont ouverts, la lampe est éteinte. Il faut que les 2 interrupteurs soient fermés pour provoquer l'éclairage. |
|
|||||||||||||||||||||||||||||||||
Porte OU ou OR |
![]() |
|||||||||||||||||||||||||||||||||
Nous avons deux entrées, notées e1 et e2 et une seule sortie. Dans ce cas les interrupteurs sont en parallèle. La lampe est éteinte uniquement quand les 2 interrupteurs sont ouverts |
|
|||||||||||||||||||||||||||||||||
Porte NON ET ou NAND (une des plus employées) |
![]() |
|||||||||||||||||||||||||||||||||
C'est le complément du ET. Remarquez qu'en faisant suivre une porte ET par une porte INVERSEUR,, vous obtenez une NAND. Ceci se manifeste au niveau du symbole, c'est une porte ET suivie d'un rond en sortie. |
|
|||||||||||||||||||||||||||||||||
Porte NON OU ou NOR |
![]() |
|||||||||||||||||||||||||||||||||
Confrontez la porte OR et NOR. Même remarque que pour la porte ET et NAND, tant au point de vue électrique que symbolique. |
|
|||||||||||||||||||||||||||||||||
Porte OU EXCLUSIF ou XOR |
![]() |
|||||||||||||||||||||||||||||||||
La condition ici est d'avoir un 1 présent sur une entrée et un 0 sur l'autre pour obtenir un 1 en sortie. Le cas ou les deux entrées sont à 1 est rejeté et la sortie est à 0 |
|
|||||||||||||||||||||||||||||||||
Porte NON OU EXCLUSIF ou XNOR |
![]() |
|||||||||||||||||||||||||||||||||
C'est une XOR complémentée. |
|
|||||||||||||||||||||||||||||||||
Examinons
ce que cela donne sur un oscilloscope quelque peu idéalisé. Nous allons brancher nos
trois voies sur les deux entrées et la sortie ce qui nous permettra d'observer les
variations d'état de la sortie en fonction de l'état des entrées et du temps. |
||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Le résultat vous apparaît ici. Si vous comparez aux tables de vérités des portes décrites ci-dessus, vous trouverez que ce chronogramme correspond à une porte OU EXCLUSIF. | ||||||||||||||||||||||||||||||||||
Quelques
éléments supplémentaires : |
||||||||||||||||||||||||||||||||||
Nous
allons voir maintenant quelques propriétés des opérations logiques et les
fondements de l'algèbre de Boole, ceci uniquement pour votre culture personnelle. |
||||||||||||||||||||||||||||||||||
Propriétés du ET - également appelé PRODUIT logique et notée
"." |
||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Propriétés du OU - également appelé SOMME logique et notée
"+" |
||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||
Quelques
théorèmes de l'algèbre de Boole: |
||||||||||||||||||||||||||||||||||
Notation : vous trouverez souvent une variable surmontée d'une barre (ce que j'ai traduit par /A dans le texte), il s'agit du complément de A. Si l'on se réfère à des contacts de relais par exemple, A signifiera contact NO (normalement ouvert) donc contact Travail, /A sera un contatc NC (normalement fermé - C pour closed) donc un contact repos. A./A = 0 A + /A = 1 |
||||||||||||||||||||||||||||||||||
A + AB = A | ||||||||||||||||||||||||||||||||||
A + /AB = A + B | ||||||||||||||||||||||||||||||||||
A (B + C) = AB + AC | ||||||||||||||||||||||||||||||||||
A (A + B) = A +AB = A | ||||||||||||||||||||||||||||||||||
A + BC = (A + B) (A + C) | ||||||||||||||||||||||||||||||||||
Universalité
de l'opérateur NAND : |
||||||||||||||||||||||||||||||||||
La
nature fait bien les choses, nous allons voir qu'il est possible de réaliser n'importe
quel opérateur logiQue exclusivement à partir de portes NAND. |
||||||||||||||||||||||||||||||||||
INVERSEUR |
Il suffit de connecter ensemble les deux entrées. | |||||||||||||||||||||||||||||||||
ET (NAND) |
Un Et est un NAND complémenté, il suffit d'ajouter un inverseur supplémentaire pour revenir à l'état initial | |||||||||||||||||||||||||||||||||
OU (OR) |
Pour 1 ou 0 sur les deux entrées, la porte OR fournit le complément du NAND. | |||||||||||||||||||||||||||||||||
NOR |
Il suffit d'inverser la sortie en utilisant un NAND monté en inverseur. | |||||||||||||||||||||||||||||||||
Vous
devez vous demander ce que nous pouvons bien faire de ces composants... Grâce à eux, nous allons réaliser les oscillateurs, des systèmes testant des entrées et des sorties, du comptage, des échantillonnages, des transmissions numériques etc. |
||||||||||||||||||||||||||||||||||
Fin de ce chapitre introduisant l'électronique digitale. Dans le prochain, nous nous intéresserons aux familles technologiques. |
Retour vers la page d'accueil du traité |
Retour vers la page d'accueil du site F6CRP |
Conception-réalisation : Denis Auquebon F6CRP |