board

TP2-ARCH-01 : Les portes logiques#

Objectifs pédagogiques#

  • Connaître les portes logiques

  • être capable de penser, dessiner et tester des circuits logiques simples

Couches d’abstractions architecturales#

Un ordinateur moderne fonctionne en binaire. Il ne connaît que deux valeurs définies : 1 pour vrai et 0 pour faux. Physiquement, les deux valeurs 0 (False), 1 (ou True) sont représentées par deux tensions électriques différentes : V0 et V1.

abstraction

Ce TP se concentre sur des couches de plus bas niveau : à celui des circuits électroniques

Circuit électronique de test#

Lorsqu’on se situe dans les couches les plus basses de l’architecture d’un ordinateur, il est tout à fait possible de tester ses réalisations à l’aide d’un breadboard (une platine d’experimentation). C’est un outil qui permet de créer des prototypes de circuits électroniques et de les tester : il ne nécessite aucune soudure. Sur ce breadboard, on connecte les différents composants électroniques à l’aide de câbles de connexion. Une simple pile électrique fourni l’énergie.

breadboard

Outil à disposition#

Ce TP sera effectué sur le logiciel de simulation logic. Les premiers exercices vous permettent de prendre en main le logiciel.

Il est toujours possible de sauvegarder son travail sous la forme d’un fichier json. Ce fichier peut ensuite être rechargé dans le même logiciel de simulation.

Définition : une porte logique#

Une porte logique est un composant électronique qui réalise des opérations logiques (algèbre de Boole). Une porte logique est désignée par l’opération logique qu’elle accomplit.

Elle possède une ou des entrées et des sorties et on les classe en fonction du nombre d’entrées.

Physiquement, une porte logique est un semi-conducteur piloté par une horloge.

Table de vérité#

Chaque porte logique est associée à une table de vérité. En fonction de l’entrée ou des entrées, on calcule la sortie avec l’opération logique qu’elle accomplit.

Par exemple : la fonction OR possède la table de vérité suivante :

a

b

a OR b

0

0

0

0

1

1

1

0

1

1

1

1

Portes à une entrée#

NOT#

Symbole :#

not

Table de vérité#

a

NOT a

0

1

1

0

BUFFER#

Symbole :#

buffer

Table de vérité#

a

BUFFER a

0

0

1

1

Portes à deux entrées#

AND#

Symbole :#

and

Table de vérité#

a

b

a AND b

0

0

0

0

1

0

1

0

0

1

1

1

NAND#

Symbole :#

nand

Table de vérité#

a

b

a NAND b

0

0

1

0

1

1

1

0

1

1

1

0

OR#

Symbole :#

or

Table de vérité#

a

b

a OR b

0

0

0

0

1

1

1

0

1

1

1

1

NOR#

Symbole :#

nor

Table de vérité#

a

b

a NOR b

0

0

1

0

1

0

1

0

0

1

1

0

XOR#

Symbole :#

xor

Table de vérité#

a

b

a XOR b

0

0

0

0

1

1

1

0

1

1

1

0

XNOR#

Symbole :#

xnor

Table de vérité#

a

b

a XNOR b

0

0

1

0

1

0

1

0

0

1

1

1

Exercice 1 : Prise en main de l’outil#

  • Observez l’ensemble des éléments à disposition :

    • entrées et sorties

    • segments et afficheurs

    • horloge

    • portes logiques

    • composants logiques

  • Vérifiez la table de vérité d’une porte AND en créant :

    • deux entrées

    • une sortie

    • des câbles de transmission

  • Modifiez à l’aide du menu contextuel (clic droit) la vitesse de transmission du signal dans le fil

chiens

Exercice 2 : Un sélecteur de chiens#

La famille Dupont a décidé d’accueillir un chien à la maison et se rend dans un refuge SPA afin d’en choisir un.

Chaque chien a des caractéristiques propres. Afin de ne pas perdre trop de temps au refuge, la famille Dupont a décidé d’amener un petit circuit électronique qui sera capable d’identifier immédiatement si un chien convient à ses exigences, en fonction de ses caractéristiques.

Réfléchissez à la manière de construire ce circuit électronique.

Ex 2.1 : Petit et gentil#

Toute la famille est d’accord : le chien devra être petit et gentil .

  • Ecrivez la table de vérité du circuit que vous voulez implémenter

  • A l’aide du simulateur, développez un circuit qui répond à cette question.

    • deux entrées : gentil et petit

    • une sortie : OK

Ex 2.2 : Et s’il bave tout le temps ?#

La famille Dupont est unanimement d’accord, si le chien bave tout le temps c’est rédhibitoire et le chien ne peut pas être accepté.

  • Ecrivez la table de vérité du circuit que vous voulez implémenter

  • Sur le circuit 2.2, ajoutez :

    • une entrée : bave tout le temps

  • vérifiez la validité du circuit

Truc : vous devrez utiliser une seconde porte logique à une seule entrée

Ex 2.3 : Papa, Maman, … j’veux un Labrador !!#

La petite dernière de la famille Dupont aime particulièrement les Labrador. Or les Labrador ne sont pas des petits chiens. La famille se met d’accord pour une exception : le chien doit être petit sauf si c’est un Labrador.

  • Ecrivez la table de vérité du circuit que vous voulez implémenter (16 entrées !!!)

  • Sur le circuit 2.2, ajoutez :

    • une entrée Labrador

  • vérifiez la validité du circuit (il n’y a pas qu’une seule solution)

Attention : un Labrador n’est pas un petit chien !

  • Un gentil Chihuahua qui ne bave pas est-il un candidat ?

  • Un gentil Saint-Bernard qui bave est-il un candidat ?

Exercice 3 : Le refuge de la SPA#

spa

Le refuge de la SPA est divisé en 4 secteurs qui abritent 4 races de chiens. Chaque secteur a droit à une promenade à un moment différent de la journée. Le refuge de la SPA souhaite créer un système électronique pour ouvrir les portes au bon moment de la journée à partir du numéro du secteur.

Ex 3.1 Combien de bits ?#

  • combien de bits sont nécessaire pour coder les 4 secteurs ?

Ex 3.2 Un décodeur électronique#

Voici les 4 races de chiens correspondant aux 4 secteurs :

Secteur

Race

0

Pittbulls

1

Pyrénées

2

Dalmatiens

3

Labradors

  • Codez le numéro des secteurs

  • Construisez un décodeur avec le nombre d’entrées correspondant au nombre de bits nécessaires et qui active une seule des 4 sorties (le numéro du secteur) à la fois.

  • vous pouvez vous aider d’une table de vérité

Exercice 4 : Et la famille Rochat ?#

La famille Rochat a construit un circuit similaire pour le choix de son chien. Le voici :

dubuis

  • Quels sont les critères de la famille Rochat ?

  • Testez avec le simulateur logique

  • Est-il possible de créer le même circuit électronique avec seulement 4 portes ?

Indices#

  1. La porte OR est très similaire à une porte XOR. Est-il possible d’altérer la sortie d’une porte OR pour que le circuit résultant se comporte comme une porte XOR ?

Exercice (pour aller plus loin)#

En reprenant le schéma des différents secteurs du refuge SPA, ajoutez :

  • un afficheur à 7 segments qui affiche le numéro du secteur sélectionné

En reprenant le schéma électronique de la famille Dupont, ajoutez :

  • un afficheur à 16 segments qui affiche OK ou rien si le chien est sélectionnable.

(Pour aller encore plus loin) Portes logiques universelles#

On peut montrer qu’en utilisant uniquement des portes logiques NAND (donc AND et NOT) on peut construire l’entier des portes logiques existantes :

universalgates