Définir et étudier quelques portes logiques. Visualiser leur état binaire en sortie.
Les portes logiques sont des circuits intégrés ( C.I. ) permettant de réaliser des fonctions logiques fondamentales ; ils en contiennent généralement 4 exemplaires identiques. Elles sont présentes par milliers dans les ordinateurs et permettent d'obtenir une rapidité de calcul impressionnante.
Les circuits intégrés que nous allons utiliser ont 14 broches ( 2 ´ 7 ) :
Chaque porte a, en général, deux entrées et une sortie.
Nous utiliserons des circuits de technologie CMOS (Complementary Metal Oxide Semiconductor ), mais, il existe également des circuits de technologie TTL ( Total Transistor Logic ).
Il existe plusieurs types de portes comme nous le verrons par la suite.
Exemples de brochage :
La porte 4069 ( 6 inverseurs ) |
Brochage de la série 4000 ( sauf 4069 ) |
Suivant la famille logique utilisée, les tensions d'alimentation , d'entrées et de sorties varient.
Une variable logique (dite booléenne) est une grandeur binaire: elle peut donc prendre deux valeurs « 0 » ou « 1 ».
Sur le plan électrique, pour représenter chacune d’entre elles, il faut utiliser deux tensions.
Dans la pratique les grandeurs électriques
correspondant aux grandeurs binaires sont des tensions en général continues.
Il faut dans ce cas associer à une variable logique E un signal électrique e en convenant de deux frontières e1 et e2.
Les niveaux e1 et e2,
très importants en pratique, dépendent de la technologie du circuit ( TTL
ou CMOS ) et de sa tension d'alimentation VCC. La technologie
CMOS permet une meilleure tolérance en tension d’alimentation (entre 3 V et
18 V), alors que la technologie TTL impose une tension d’alimentation de
5 V.
Par exemple avec une porte CMOS alimentée par VCC = 9 V : les domaines de niveau logique Bas et Haut sont obtenus à partir des tensions e1 =2,7 V et e2 = 4,9 V.
Une variable logique (dite booléenne) peut donc prendre deux valeurs « 0 » ou « 1 ». Elle peut être utilisée pour représenter une proposition ou l'état d'un objet.
Exemple : elle sera égale à " 1 " pour une DEL allumée (ou tout autre dispositif), "0" si elle est éteinte.
L'algèbre de BOOLE est l'algèbre qui régit les opérations sur des variables logiques (0 ou 1)
Exemples :
![]() |
L est allumée si I1 ET I2 sont fermés. L est allumée si Il OU I2 (ou les deux) sont fermés.
On peut définir deux variables logiques a et b qui représentent les états des interrupteurs Il et I2
a est à : « 0 » Si Il est ouvert, b est à : « 0 » Si I2 est ouvert.
« 1 » Si I1 est fermé. « 1 » Si I2 est fermé.
On peut définir une fonction logique S (sortie) qui représente l'état de la lampe L :
On peut alors définir une table de vérité qui permet de connaître la valeur de la fonction logique S en fonction des diverses combinaisons des valeurs des variables a et b. Les valeurs des variables sont placées dans l'ordre binaire naturel. La table de vérité traduira le fonctionnement du système.
Exemples :
Circuit SERIE
|
Circuit PARALLELE
|
Les fonctions logiques que nous étudierons sont :: ET, OU, NON, NON-ET, NON-OU, OU EXCLUSIF.
Pour les étudier et trouver leur tables de vérité, vous essayerez une à une les différentes portes.
Alimenter la platine fournie avec une tension de 5 V.
Pour visualiser l’état de sortie, plusieurs méthodes peuvent être utilisées:
VOLTMETRE DEL :
On mesure Us (Cette méthode est peu pratique) Us = 0 s = Us = V s = |
Us = 0 : led ............................. s = Us = V : led ............................. s = |
Pour être à l’état haut, une entrée sera mise à e = 5 V
Pour être à l’état bas, une entrée sera mise à e = 0 V
Remplir le tableau suivant ( table de vérité ):
E1 |
E2 |
S |
0 |
0 |
|
0 |
1 |
|
1 |
0 |
|
1 |
1 |
Application :
relier les deux entrées.
Etablir alors la table de vérité:
E |
S |
Nous avons alors réalisé un . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lors de l’étude précédente, nous avons appliqué des tensions de 0 ou 5Vsur les entrées. Nous allons maintenant rechercher les domaines de tensions que l’on peut appliquer en entrée sur une porte NON pour obtenir un état haut ou un état bas
Dans ce but, la tension appliquée à l’entrée d’une porte NON étant triangulaire, nous allons étudier l’évolution de ue et us en fonction du temps puis rechercher le tracé de la caractéristique de transfert de la porte us= f(ue).
- Ordinateur + Généris
- Multimètre numérique
- Porte NON + Alimentation
- GBF
a) Réglages préliminaires
q Régler le GBF à 100 Hz environ en utilisant une tension u triangulaire
q Visualiser la tension sur Généris en mode acquisition continue après avoir fait les réglages nécessaires (visualiser deux périodes).
q Régler la tension de sortie du GBF de façon à avoir une tension crête à crête proche de 5 V.
q Introduire un décalage d’offset de façon que u ³0 ( la porte logique n’est pas conçue pour supporter des tensions négatives ).
b) Réaliser le montage suivant :
![]() |
c) Enregistrement de ue = f( t ) et us = f '( t ).
q Alimenter la porte logique avec une tension de 4,9 V ( Electronic 2 ) puis réaliser le montage représenté précédemment, la tension ue étant fournie par le GBF.
q Réaliser le montage précédent, permettant de visualiser les tensions ue et us de la porte à étudier sur les entrées analogiques Directe1 et directe 2.
q Paramétrer le logiciel de façon à acquérir les tensions ue sur la voie directe 1 et us sur la voie directe 2 pendant une durée correspondant à la visualisation de deux périodes (ou un peu plus).
q Réaliser l’acquisition et sauvegarder dans votre répertoire sous le nom « P_LOGIC »
d) Caractéristique de transfert
A partir des courbes précédentes, faire afficher la caractéristique de transfert us = f (ue) dans une autre fenêtre. Disposer les deux fenêtres en mosaïque. Récupérer les courbes dans le compte-rendu. Imprimer.
1) Expliquer ce qu’est le décalage d’offset.
2) Indiquer le paramétrage du logiciel.
3) Interpréter la courbe représentant us en fonction du temps en donnant le seuil de basculement.
4) Interpréter la caractéristique de transfert et montrer que les résultats obtenus sont en accord avec ceux du paragraphe précédent.
Utiliser la platine précédente pour tester les différentes portes fournies ( 4011 , 4070 , 4071, 4081, 4001). Pour ces portes le montage est le même car elles ont le même brochage .IL SUFFIT DE CHANGER LE C.I. APRES AVOIR éteint LE GENERATEUR.
En explorant l'ensemble des combinaisons ( E1 , E2 ) et l’état de la sortie S, nous allons établir expérimentalement le résultat de la fonction logique S = f ( E1,E2 ) .
Consigner les résultats dans un tableau pour obtenir la table de vérité de la fonction logique considérée.
Rappel :
Autres portes :
Vérifier les tables de vérité à l’aide de la simulation.
Définir à l’aide d’une phrase conditionnelle chacune des portes précédentes.
Un micro-ordinateur utilise le binaire pour faire ses calculs. Le but du TP est d’étudier la méthode qu’il emploie.
Un ordinateur ne peut réaliser que quelques opérations de base : l’addition, la soustraction, à l’aide de portes logiques ( et, ou, ... ), mais chaque opération dure très peu de temps ( < 1 ns ).
si on lui demande d’additionner 12 + 10, l’ordinateur doit convertir ces nombres en binaire.
Application : convertir
en binaire les décimaux 12, 10 et 22. Poser en binaire l’addition correspondant
à l’addition décimale
12 + 10 = 22.
Finalement cela revient à faire des additions élémentaires où apparaissent des chiffres qui sont le résultat de la somme s et éventuellement des chiffres de retenue r .
En déduire les règles utilisées pour faire l’addition en base 2 :
a |
b |
Somme |
Retenue |
||
0 |
+ |
0 |
= |
||
0 |
+ |
1 |
= |
||
1 |
+ |
0 |
= |
||
1 |
+ |
1 |
= |
Il faut disposer d’un module permettant de réaliser l’addition de 2 chiffres de 1 bit figurés par les variables logiques a et b correspondant aux entrées E1 et E2 ci-dessous. Le résultat de l’addition est la variable logique s obtenue à la sortie S, une éventuelle retenue étant figurée par la variable logique r, obtenue à la borne R
On peut alors associer une table de vérité et donc une fonction logique pour chacune des 2 sorties :
|
Quelle fonction logique lie s à a et b ? ................ |
|
Quelle fonction logique lie r à a et b ? ................. |
Conclusion : après avoir comparé chacune de ces tables de vérité à celles des portes étudiées précédemment, en déduire les portes qu’il faut associer pour réaliser le module précédent.Le montage ci-dessous ( à compléter) est proposé
.
Préciser le rôle de chacune des portes dans le montage .
Simuler ce montage et vérifier les tables de vérité
Ce montage constitue un demi-additionneur. Est-il suffisant pour réaliser toutes les additions de 2 binaires?
Envisageons maintenant d’additionner 108 + 106
Vérifier les conversions en binaire des décimaux 108, 106 et 214, données ci-dessous.
Vérifier l’addition binaire correspondant à l’addition décimale 108 + 106 = 214
Afin de pouvoir prendre en compte la retenue, lorsque c’est nécessaire, il faut un module à 3 entrées appelé additionneur.
On considère le montage suivant constitué de deux demi-additionneurs et d’une porte ou exclusif::
![]() |
Simuler ce montage sur Crocodile Clips en le disposant verticalement sur la partie droite de l’écran en occupant moins d’un quart de celui-ci( les 3 entrées sont des boutons logiques ; les 2 sorties sont des voyants logiques ; demander l’affichage des variables logiques).
Compléter la table de vérité du module additionneur :
Rn-1 |
a |
b |
S |
Rn |
0 |
0 |
0 |
||
0 |
0 |
1 |
||
0 |
1 |
0 |
||
0 |
1 |
1 |
||
1 |
0 |
0 |
||
1 |
0 |
1 |
||
1 |
1 |
0 |
||
1 |
1 |
1 |
Pour le moment, avec ce module additionneur, vous ne vous ne pouvez additionner que 2 nombres de 1 bit !
Comment faire pour additionner des nombres à plusieurs bits ?
Le principe est simple :
pour additionner 2 nombres binaires à n bits, il suffit de mettre en cascade n additionneurs ...
Pour des nombres à 2 bits, il faut mettre en cascade 2 additionneurs selon le principe suivant :
![]() |
ïCeci est l’écriture de l’addition,
ce qui donne l’association ð dont le résultat est donc : r1s1s0 ici 11 + 10 = 101 |
![]() |
Simuler ce montage. Vous pouvez maintenant procéder en utilisant le copier-coller. Il suffit alors de chaîner les deux modules suivant le principe ci-dessus.
Tester le montage en réalisant des additions.
Compléter le montage pour réaliser ensuite une addition sur 3 puis 4 bits.
Tester le montage.
Utiliser l’additionneur du commerce fourni (addition sur 4 bits) et vérifier qu’il effectue bien l’addition de deux nombres de 4 bits chacun.
En regroupant les additionneurs, après avoir complété le montage, réaliser des additions sur 8 bits (en vérifiant le résultat !) puis éventuellement sur 16 bits.
Noter ici les choses nouvelles apprises dans cette séance