Définitions

Rappel des termes utilisés en logique combinatoire.

Portes logiques

NOT (NON)
S = A
AND (ET)
S = A · B
OR (OU)
S = A + B
NAND
S = A · B
NOR
S = A + B
XOR
S = A ⊕ B
XNOR
S = A ⊕ B

Théorie booléenne

Lois de Boole
Commutativité : A·B = B·A ; A+B = B+A. Associativité : (A·B)·C = A·(B·C) ; (A+B)+C = A+(B+C). Distributivité : A·(B+C) = A·B+A·C ; A+(B·C) = (A+B)·(A+C). Absorption : A+A·B = A ; A·(A+B) = A. Idempotence : A·A = A ; A+A = A. Complément : A·A = 0 ; A+A = 1. Éléments neutres : A·1 = A ; A+0 = A. Annulation : A·0 = 0 ; A+1 = 1.
Théorèmes de De Morgan
A + B = A·B ; A · B = A + B. « La barre se casse, le signe change. »
Table de vérité
Tableau qui liste toutes les combinaisons d’entrées et la valeur de la sortie.
Minterm
Produit (ET) de toutes les variables, chacune complémentée ou non.
Tableau de Karnaugh (K-map)
Grille (code de Gray) pour simplifier une fonction en regroupant les 1.
Dynamique de codage
Intervalle de valeurs représentables avec un codage numérique. Définie par une valeur de départ et une valeur d'arrivée. Pour un codage binaire non signé sur m bits : départ = 0, arrivée = 2m - 1 (car 2m combinaisons possibles).
Multiplexeur (MUX)
Circuit qui sélectionne les données provenant de plusieurs lignes d'entrée et les dirige vers sa sortie unique.
Codeur (Encoder)
Circuit numérique qui convertit une information sous une forme codée.
Décodeur (Decoder)
Circuit numérique qui convertit des codes sous forme familière.
Transcodeur
Circuit numérique qui convertit un code en un autre code.
Microcontrôleur
Ordinateur sur une puce, intégrant un processeur, de la mémoire et des périphériques d'entrée/sortie, qui exécute un programme pour interagir avec son environnement de manière embarquée.

Circuits combinatoires

Table de vérité
Tableau qui liste toutes les combinaisons d'entrées et la valeur de la sortie.
Minterm
Produit (ET) de toutes les variables, chacune complémentée ou non.
Tableau de Karnaugh (K-map)
Grille (code de Gray) pour simplifier une fonction en regroupant les 1.
Multiplexeur (MUX)
Circuit qui sélectionne les données provenant de plusieurs lignes d'entrée et les dirige vers sa sortie unique.
Codeur (Encoder)
Circuit numérique qui convertit une information sous une forme codée.
Décodeur (Decoder)
Circuit numérique qui convertit des codes sous forme familière.
Transcodeur
Circuit numérique qui convertit un code en un autre code.
Dynamique de codage
Intervalle de valeurs représentables avec un codage numérique. Définie par une valeur de départ et une valeur d'arrivée. Pour un codage binaire non signé sur m bits : départ = 0, arrivée = 2m - 1 (car 2m combinaisons possibles).

Signaux analogique / numérique et conversion de bases

Rappel : Un signal analogique est continu (dans le temps et en amplitude). Un signal numérique est discret (niveaux logiques 0 et 1). En numérique on utilise le binaire (base 2) et l’hexadécimal (base 16) pour représenter les nombres.

Pratique : Utilisez le convertisseur ci-dessous pour passer d’une base à l’autre (Décimal, Binaire, Hexadécimal).

Analogique vs Numérique

Analogique

Continu dans le temps et en valeurs.

Numérique

Discret (0 ou 1). Robuste au bruit.

Conversion de bases (interactif)

Théorèmes de De Morgan et simplification booléenne

De Morgan 1 : A + B = A · B. De Morgan 2 : A · B = A + B.

Pratique : Choisissez la bonne réponse (QCM, du plus simple au plus complexe). Même style que Karnaugh : vert = correct, rouge = incorrect.

Théorème 1 (NOR)

A + B = A · B

Théorème 2 (NAND)

A · B = A + B

Porte NAND universelle

Définition : NAND = NON-ET. S = A · B. La porte NAND est dite « universelle » car elle peut réaliser toutes les autres fonctions (NOT, AND, OR, XOR) en la branchant correctement.

Pratique : Choisissez une fonction (NOT, AND, OR, XOR) et observez le câblage. Les fils vert foncé = 0, vert fluo = 1 (style Logisim). Cliquez sur A et B pour changer les entrées.

Schéma interactif

S = 1

Tableau de Karnaugh — Entraînement

Rappel : Le tableau de Karnaugh (K-map) permet de simplifier une fonction booléenne en regroupant les 1 selon un code de Gray (cases adjacentes ne diffèrent que d’un bit).

Consigne : Choisissez le nombre d'entrées (3 ou 4) et de sorties. Une table de vérité cible est générée. Remplissez les grilles en cliquant sur les cases (0 → 1 → X → 0). Les "X" sont des "don't care" (peuvent être 0 ou 1). Puis cliquez sur « Vérifier ».

Votre grille (cliquez pour mettre 0, 1 ou X)

Table de vérité (cible)

Tableau de Karnaugh — Trouver la fonction simplifiée

Consigne : Remplissez le tableau en cliquant sur les cases (0 ↔ 1). Construisez votre équation simplifiée avec les boutons ci-dessous (les barres s’affichent proprement). Cliquez sur « Corriger » pour vérifier.

Votre tableau (cliquez pour 0 → 1 → X → 0)

Votre équation : F =

Cliquez pour ajouter des variables (avec ou sans barre) et le signe + entre les termes.

Variables : |

Multiplexeur et Décodeur

Multiplexeur 2→1 : Sélectionne une entrée (E0 ou E1) selon SEL : si SEL=0 alors S=E0, si SEL=1 alors S=E1.

Décodeur 1 parmi 4 : Deux entrées A1 A0 (2 bits) activent une seule sortie Y0…Y3 : Y0 si 00, Y1 si 01, Y2 si 10, Y3 si 11.

Pratique : Table de vérité → Tableaux de Karnaugh → Schéma. Puis changez les entrées et observez les sorties.

1. Tables de vérité

Mux 2→1 : SEL, E1, E0 → S

SELE1E0S
0000
0011
0100
0111
1000
1010
1101
1111

Décodeur 1 parmi 4 : A1 A0 → Y0 Y1 Y2 Y3

A1A0Y0Y1Y2Y3
001000
010100
100010
110001

2. Tableaux de Karnaugh

Mux 2→1 : S = SEL·E0 + SEL·E1 (SEL en ligne, E1 E0 en colonnes)

00011110
SEL 00110
10011

SEL=0 → S = E0 ; SEL=1 → S = E1

Décodeur : Y0…Y3 = 1 chacun dans une case (A1 A0 en ligne/colonne)

Y0 = A1A0

01
010
100

Y1 = A1·A0

01
001
100

Y2 = A1·A0

01
000
110

Y3 = A1·A0

01
000
101

3. Schémas interactifs

Multiplexeur 2→1

E0
E1
0

Décodeur 1 parmi 4

Y0
Y1
Y2
Y3

Exercice : réaliser une fonction avec un multiplexeur

Créer un circuit pour mettre en œuvre la fonction logique spécifiée par la table de vérité ci-dessous, en utilisant un multiplexeur.

Table de vérité A B C → S

ABCS
0001
0011
0100
0111
1000
1011
1101
1110

Tableau de Karnaugh S (AB en ligne, C en colonne)

AB\C01
0011
0101
1110
1001

S = A·B + B·C + A·B·C (ou réalisation Mux 4→1 : S = f(A,B) avec C sur les entrées de données).

Schéma avec multiplexeur 4→1

A et B en sélection ; entrées de données D0, D1, D2, D3 = f(C) pour chaque combinaison AB. Ici D0 = 1, D1 = C, D2 = C, D3 = C.

A, B → SEL
Mux 4→1D0 D1 D2 D3
→ S

Exercice 51EN1 – 6 : Décodeur pour afficheur 7 segments

On souhaite réaliser un circuit interfaçant un afficheur 7 segments avec un bloc comptant de 0 à 9 en binaire. Ce circuit est composé d’un décodeur n vers 7 qui convertit la valeur C donnée par le bloc logique en une valeur D exploitable par un afficheur 7 segments.

  1. Quelle doit être la valeur de n ? Justifier brièvement.
  2. Donner la table de vérité du décodeur (D0 … D6) = f(C0 … Cn-1). Préciser le codage et la stratégie pour les combinaisons non attribuées.
  3. En déduire les équations logiques de chacun des segments.
  4. Réaliser le schéma en portes logiques du décodeur (voir affichage interactif ci-dessous).

1. Valeur de n

Pour afficher les chiffres 0 à 9, il faut au moins 10 combinaisons. Avec 3 bits on a 2³ = 8 combinaisons (insuffisant). Avec 4 bits : 2⁴ = 16. Donc n = 4 (C0, C1, C2, C3 avec C0 bit de poids faible). Les combinaisons 10 à 15 (1010 à 1111) sont « non attribuées » : on peut les laisser à 0 ou afficher un tiret.

2. Table de vérité (D0 … D6) = f(C3 C2 C1 C0) — codage BCD naturel

Segments : D0=haut, D1=hd, D2=bd, D3=bas, D4=bg, D5=hg, D6=milieu. Combinaisons 10–15 : tous segments à 0.

C3C2C1C0déc.D0D1D2D3D4D5D6

3. Équations logiques (exemples simplifiés)

D0 = … ; D1 = … ; D2 = … ; D3 = … ; D4 = … ; D5 = … ; D6 = … (à déduire des K-maps ou de la table).

4. Schéma et affichage 7 segments

Choisissez la valeur décimale (0–9) : les bits C0…C3 et les segments D0…D6 se mettent à jour. Le chiffre s’affiche sur le dessin 7 segments.

Chiffre à afficher (0–9)
C3 C2 C1 C0 (binaire)
0000
0