Académique Documents
Professionnel Documents
Culture Documents
Filière : G.I.M S2
Module : Electronique Numérique /API
Élément du module : Electronique Numérique
1 Pr. A. Yahya
Logique combinatoire
1 Principe : ...................................................................................................................................................................... 4
1.1 Définitions : .......................................................................................................................................................... 4
1.2 Généralisation : .................................................................................................................................................... 4
2 Systèmes de numération binaires et hexadécimal (les bases 2 et 16) ........................................................................ 4
3 Conversions de bases ................................................................................................................................................... 5
4 Opérations arithmétiques en binaire : ......................................................................................................................... 6
4.1 L'addition :............................................................................................................................................................ 6
4.2 La soustraction : ................................................................................................................................................... 6
4.3 Multiplication ....................................................................................................................................................... 6
4.4 Division ................................................................................................................................................................. 7
5 Codage des nombres (dans les systèmes programmés) .............................................................................................. 7
5.1 Représentation des nombres entiers :................................................................................................................. 7
5.2 Représentation des nombres signés : .................................................................................................................. 8
6 Codage ....................................................................................................................................................................... 10
6.1 Notion de codage ............................................................................................................................................... 10
6.2 Les codes numériques : ...................................................................................................................................... 10
6.3 Détecteurs et correcteurs d'erreurs .................................................................................................................. 12
6.4 Codage ASCII (American Standard Code for Information Interchange) ............................................................ 13
7 Circuits combinatoires ............................................................................................................................................... 15
7.1 Introduction et définition .................................................................................................................................. 15
7.2 Algèbre de Boole ................................................................................................................................................ 15
7.3 Simplification et réalisation des fonctions logiques .......................................................................................... 18
8 Circuit logiques combinatoires .................................................................................................................................. 22
8.1 Circuits de transcodage (codeurs, décodeurs, convertisseurs) ......................................................................... 22
8.2 Additionneur ...................................................................................................................................................... 23
8.3 Multiplexeur ....................................................................................................................................................... 24
8.4 Démultiplexeur .................................................................................................................................................. 25
8.5 Le comparateur .................................................................................................................................................. 26
8.6 Décodeur d'adresse ........................................................................................................................................... 26
8.7 Réalisation d’une fonction logique combinatoire .............................................................................................. 27
2 Pr. A. Yahya
Logique se quentielle
9 Introduction ............................................................................................................................................................... 29
9.1 Le point mémoire élémentaire : le bistable ....................................................................................................... 29
9.2 Latch (Verrou) RS ............................................................................................................................................... 30
10 BASCULES ............................................................................................................................................................... 32
10.1 Bascule RSH (flip-flop en anglais) ....................................................................................................................... 32
10.2 Bascule D ............................................................................................................................................................ 32
10.3 Bascule JK ........................................................................................................................................................... 34
10.4 Bascule T ............................................................................................................................................................ 35
11 Les compteurs/décompteurs ................................................................................................................................. 35
11.1 Structure générale d’un compteur modulo 2n ................................................................................................... 35
11.2 Compteurs asynchrones .................................................................................................................................... 36
11.3 Décompteur asynchrone.................................................................................................................................... 37
11.4 Compteurs synchrones ...................................................................................................................................... 37
11.5 Compteurs intégrés............................................................................................................................................ 38
12 Registres ................................................................................................................................................................. 41
12.1 Structure générale : ........................................................................................................................................... 41
12.2 Mode de fonctionnement .................................................................................................................................. 41
12.3 Synthèse de registre à décalage à partir de bascule.......................................................................................... 42
12.4 Registres intégrés et universels ......................................................................................................................... 42
Travaux Dirige s
3 Pr. A. Yahya
Logique combinatoire
1 Principe :
1.1 Définitions :
La numération représente un nombre par la juxtaposition de symboles appelés chiffres, pris
parmi un ensemble. Par exemple, dans le système décimal (Base 10), cet ensemble contient 10
symboles différents : {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
Le nombre de symboles définit la base de numération ; et la position respective des chiffres
détermine leurs poids.
2021 = 2 × 1000 + 0 × 100 + 2 × 10 + 1 × 1
2021 = 2 × 103 + 0 × 102 + 2 × 101 + 1 × 100
1 1
3.14 = 3 × 1 + 1 × +4×
10 100
3.14 = 3 × 10 + 1 × 10 + 4 × 10−2
1 −1
1.2 Généralisation :
Soit une base 𝒃, associée à 𝒃 symboles : {𝑆0 , 𝑆1 , . . . 𝑆𝑏−1 }. Un nombre 𝑁 s'écrit alors avec la règle
suivante : 𝑁 = (𝑎𝑛∙ 𝑎𝑛−1 ⋯ 𝑎0 , 𝑎−1 ⋯ 𝑎−𝑚 )𝑏 avec 𝑎𝑖 ∈ {𝑆0 , S1 , . . . Sb−1 }
Ce nombre s'écrit sous forme polynomiale :
𝑁 = 𝑎𝑛∙ 𝑏 𝑛 + 𝑎𝑛−1∙ 𝑏 𝑛−1 + ⋯ + 𝑎0∙ 𝑏 0 + 𝑎−1∙ 𝑏 −1 + ⋯ + 𝑎−𝑚∙ 𝑏 −𝑚
𝑛
𝑁 = ∑ 𝑎𝑖 × 𝑏 𝑖
𝑖=−𝑚
Où :
ai est le chiffre (digit) de rang 𝒊, son poids est 𝑏 𝑖 .
an est le chiffre le plus significatif (M.S.B.).
a-m est le chiffre le moins significatif (L.S.B.).
an ... a0 représente la partie entière.
a-1 ... a-m représente la partie fractionnaire.
La base 2 est la base la plus utilisée en électronique. On dispose de 2 symboles {0, 1} appelés bits.
(101)2 = 1 × 22 + 0 × 21 + 1 × 20 = (5)10
(1010,1)2 = 1 ⋅ 23 + 0 ⋅ 22 + 1 ⋅ 21 + 0 ⋅ 20 + 1 ⋅ 2−1 = (10,5)10
La base 16 (hexadécimal) est la base la plus utilisée en logique programmée. On dispose de 16
symboles :
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}.
(𝐴𝐵8)16 = 𝐴 ⋅ 162 + 𝐵 ⋅ 161 + 8 ⋅ 160 = 10 ⋅ 162 + 11 ⋅ 161 + 8 ⋅ 160 = (2744)10
(𝐵48𝐸, 𝐶)16 = 𝐵 × 163 + 4 ⋅ 162 + 8 ⋅ 161 + 𝐸 ⋅ 160 + 𝐶 ⋅ 16−1
= 11 ⋅ 4096 + 4 ⋅ 256 + 8 ⋅ 16 + 14 ⋅ 1 + 12 ⋅ 0.0625 = (46222 ⋅ 75)10
4 Pr. A. Yahya
3 Conversions de bases
1) Passage de la base b à la base 10 :
C'est l'exploitation directe de la forme polynomiale :
𝑁 = 𝑎𝑛∙ 𝑏 𝑛 + 𝑎𝑛−1∙ 𝑏 𝑛−1 + ⋯ + 𝑎0∙ 𝑏 0 + 𝑎−1∙ 𝑏 −1 + ⋯ + 𝑎−𝑚∙ 𝑏 −𝑚
2) Passage de la base 10 à la base b :
• Conversion par divisions successives :
On divise le nombre décimal par b jusqu'à 0, et on ne prend que les restes en remontant.
23 2
1 11 2 (23)10=(10111)2
1 5 2
1 2 2
0 1 2
1 0
(625)10 = (1161)8 (4592)10 = (11𝐹0)16
;
Pour les nombres à virgule, on fait la partie entière avec la méthode précédente et la partie
fractionnaire que l'on multiplie par 𝒃, et on ne garde que la partie entière et l'on recommence avec la
partie décimale. Et on lit le nombre binaire dans l'ordre.
(23,375)10 = (? )2
0,375 × 2 = 0,75 → 0
0,75 × 2 = 1,50 → 1 } ⇒ 0,37510 = 0,0112 ⇒ (23,375)10 = (10111,011)2
0,50 × 2 = 1,00 → 1
3) Passage de la base 𝒃 à la base 𝒃𝒌 :
Il suffit de regrouper les bits du nombre par paquets de 𝒌 bits.
a) Passage de la base 2 à la base 𝟖 = 𝟐𝟑
N= (0101111101 01,011010 )2
N= (010
⏟ 111
⏟ 110
⏟⏟ 1 01 , 011
⏟ 010
⏟)2 ⇒ N = (2765,32)8
2 7 6 5 3 2
5 Pr. A. Yahya
4 Opérations arithmétiques en binaire :
4.1 L'addition :
Quand on additionne deux nombres binaires, on obtient une retenue quand la somme d'une
colonne est supérieure ou égale à 210.
• Table d'addition
a b a+b
0 0 0
0 1 1
1 0 1
1 1 0 avec une retenue de 1
• Exemples
4.2 La soustraction :
On effectue la soustraction de la même manière qu'en décimal, si le chiffre à soustraire est plus
grand, on augmente le chiffre que l'on soustrait de 10, que l'on retranchera dans la colonne suivante.
• Table d'addition
a b a-b
0 0 0
0 1 1 avec une retenue de 1
1 0 1
1 1 0
• Exemples
4.3 Multiplication
La table de multiplication en binaire est très simple :
A B C
0 x 0 = 0
0 x 1 = 0
1 x 0 = 0
1 x 1 = 1
Exemple :
0101 multiplicande → 5
× 0 0 1 ,1 multiplieur → × 1.5
0101
0101=
0000==
0 1 1 1,1 = 7.5
6 Pr. A. Yahya
Remarque :
La multiplication binaire par 2𝑁 se résume à un décalage de 𝑁 bits vers la gauche. On introduira donc à droite
𝑁 zéro.
Exemple :
8 × 4 sur 8 bits :
0 0 0 0 1 0 0 0 ⟹ 0 0 1 0 0 0 0 0 ← 0
4.4 Division
La table de division binaire est la suivante :
A B C
0 / 0 = impossible
0 / 1 = 0
1 / 0 = impossible
1 / 1 = 1
La division binaire s’effectue à l’aide de soustractions et de décalages, comme la division décimale, sauf que
les digits du quotient ne peuvent être que 1 ou 0. Le bit du quotient est 1 si on peut soustraire le diviseur, sinon
il est 0.
Exemple :
Division du nombre (10010000111)2 par (1011)2 = (1101001)2 reste (100)2 , c’est-à-dire 1159/11 = 105,
reste 4.
1 0 0 1 0 0 0 0 1 1 1 1 0 1 1
- 1 0 1 1 1 1 0 1 0 0 1
0 1 1 1 0
- 1 0 1 1
0 0 1 1 0 0
- 1 0 1 1
0 0 0 1 1 1 1
- 1 0 1 1
0 1 0 0
0 ≤ 𝑁10 ≤ 65535
7 Pr. A. Yahya
5.2 Représentation des nombres signés :
Le codage binaire s'effectue en complément à 2, et le M.S.B. représente le signe : (0 <=> positif ; 1
<=> négatif)
La représentation en complément à 2 est la représentation la plus courante car c'est celle que les
microprocesseurs utilisent.
Le complément restreint :
(
CR ( N ) = 2 F − 1 )10
− N10
avec
(2 F
)
−1
est le plus grand nombre que l'on
puisse représenter avec le format de 𝑭 bits.
Il s'obtient donc en inversant chaque bit de 𝑁2 sans oublier le bit de poids fort (signe).
N10 = (14)10 alors en base 2 N2 = (00001110)2
−𝑁2 = 𝑁 ̅̅̅̅
̅̅̅2̅ = 11110001 et N2 = 00001110 = N2
Exemple :
Si 𝐹 = 8 et 𝑏 = 2 𝐶 = 256. Alors 𝑁max = (127)10 = (7F)𝐻
· Si 𝐵10 =75, alors -75 = C𝑅 (𝐵) = 255 -75 = 180 et 𝐴10 = 100 alors dans ce cas
A – B = (100-75)=100+180 , c'est égal à 255+25=25 résultat positif.
·(-75)10 = (01001011)2; (-75)10 = (10110100)2 = 𝑁2 .
Remarque :
- Il y a deux représentations du zéro +0 : (00)ℎ et - 0 : (FF)ℎ .
8 Pr. A. Yahya
-75 -01001011 +10110101
25 00011001 1 00011001 lecture directe du résultat
50 00110010 00110010
-75 -01001011 +10110101
-25 11100111 11100111 le résultat est en complément à deux : 256-231=25
Remarque :
1) Pour effectuer une soustraction, il suffit de faire une addition avec le complément à deux. Le
résultat se lit directement en complément à deux :
- si le signe est + la lecture est directe,
- si le signe est (-) on converti le résultat en recherchant le complément à deux de celui-ci.
2) Il existe une autre méthode pour obtenir le complément vrai. On examine le nombre binaire en
commençant par le bit de poids faible. On conserve les zéros s'il y en a jusque et y compris le
premier 1 rencontré. On complémente ensuite les autres bits.
S E M
S E E E E E E E E M M M M M M M M M M M M M M M M M M M M M M M
0 1 8 9 31
La norme IEEE754 permet de représenter certaines valeurs spéciales lorsque E vaut 0 ou 255.
63 51 0
S E M
6 Codage
Exemples de codes:
* Code ASCII : chaque touche du clavier est codée sur 8 bits, donc on peut coder 256 caractères.
Exemple: Touche ‘A’ ==> code ASCII « 01000001 » ??
* Code DCB (Décimal Codée en Binaire) : utilisé uniquement pour les chiffres décimaux. Ce code est
obtenu en remplaçant individuellement chacun des chiffres du nombre à représenter par son
équivalent binaire pur.
Exemple : (2458)10 = (0010 0100 0101 1000)𝐷𝐶𝐵
- Avantages : Représentation plus simple et très utile pour les systèmes d’affichage à 7 segments.
- Inconvénient : nécessite plus de bits.
10 Pr. A. Yahya
6.2.1 Code binaire naturel ou base 2
Voir (Numérisation S1)
11 Pr. A. Yahya
Avantage : facilité de conversion
Inconvénients :
− Toutes les combinaisons ne sont pas utilisées ; − Code pondéré de façon non linéaire.
Souvent, on utilise un nombre de bits supérieur à celui strictement nécessaire pour coder
l’information elle-même.
Ces codes possèdent 𝑛 bits dont 𝑃 sont à 1 ; la position des « 1 » permet de reconnaître un élément
codé.
Exemple :
Pour transmettre l’information numérique dans les centraux téléphoniques (cross bar), on utilise un
code 2 parmi 5 (ou code 74210) pour représenter les chiffres décimaux.
Il existe 10 combinaisons :
Décimal 2 parmi 5
1 00011
2 00101
3 00110
4 01001
5 01010
6 01100
7 10001
8 10010
9 10100
0 11000
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
0000 NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI
0001 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US
0010 SP ! " # $ % & ' ( ) * + , - . /
0011 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
0100 @ A B C D E F G H I J K L M N O
0101 P Q R S T U V W X Y Z [ \ ] ^ _
0110 ` a b c d e f g h i j k l m n o
0111 p q r s t u v w x y z { | } ~ DEL
13 Pr. A. Yahya
La représentation binaire du caractère ′𝒂′ est '0110_0001' (7e ligne, 2e colonne).
Le caractère de représentation binaire ′0111_1010′ est ′𝒛′ (′0111′ 8e ligne, ′1010′ 11e colonne)
On remarque que certains caractères de la table ASCII sont des caractères dits de contrôle, ils ne sont
pas imprimables ou ne peuvent pas être affichés.)
Note : les 33 caractères de contrôle (deux premières lignes et caractère DEL) correspondent aux
significations suivantes :
NUL Null (nul)
SOH Start of Header (debut d'en-tete)
STX Start of Text (debut du texte)
ETX End of Text (fin du texte)
EOT End of Transmission (fin de transmission)
ENQ Enquiry (End of Line) (demande, fin de ligne)
ACK Acknowledge (accuse de reception)
BEL Bell (caractere d'appel)
BS Backspace (espacement arriere)
HT Horizontal Tab (tabulation horizontale)
LF Line Feed (saut de ligne)
VT Vertical Tab (tabulation verticale)
FF Form Feed (saut de page)
CR Carriage Return (retour chariot)
SO Shift Out (fin d'extension)
SI Shift In (démarrage d'extension)
DLE Data Link Escape
DC1-DC4 Device Control (contrôle de périphérique)
NAK Negative Acknowledge (accuse de réception négatif)
SYN Synchronous Idle
ETB End of Transmission Block (fin du bloc de transmission)
CAN Cancel (annulation)
EM End of Medium (fin de support)
SUB Substitute (substitution)
ESC Escape (echappement)
FS File Separator (separateur de fichier)
GS Group Separator (separateur de groupe)
RS Record Separator (separateur d'enregistrement)
US Unit Separator (separateur d'unite)
SP Space (espace)
DEL Delete (effacement)
14 Pr. A. Yahya
Application :
Donnez la représentation binaire ASCII du texte suivant :
Je code en binaire !
0100101001100101 0010000001100011 0110111101100100 0110010100100000 0110010101101110 0010000001100010
0110100101101110 0110000101101001 0111001001100101 0010000000100001
7 Circuits combinatoires
• Un système logique combinatoire est un dispositif qui possède un nombre d’entrées logiques
(binaires) n donné, soit e1, e2, ..., en et on suppose, pour simplifier, qu’il dispose d’une sortie s
unique, binaire elle aussi, qui peut être considérée comme une fonction des variables logiques
d’entrée : S = f (e1,e2,. . . ,en)
𝑒1
𝑒2
. SLC 𝑆 = 𝑓(𝑒1 , 𝑒2 , … , 𝑒𝑛 )
.
.
𝑒𝑛
L’ensemble (e1,e2,. . . ,en) est appelé combinaison d’entrée du système. On utilise également parfois le
terme de vecteur d’entrée.
S
B
C
16 Pr. A. Yahya
7.2.3 Les opérateurs logiques de base
17 Pr. A. Yahya
Universalité des portes NON-ET et des portes NON-OU :
Toutes les portes logiques élémentaires (ET, OU, NON) peuvent être réalisées avec des portes
NON-OU ou NON-ET.
Famille des circuits logiques
– TTL (Transistor-Transistor Logic) !le plus populaire (54xx, 74xx) ;
– ECL (Emitter-Coupled Logic) !pour des circuits rapides (10xxx) ;
– MOS (Metal Oxyd Semiconductor) !haute intégration ;
– CMOS (Complementary Metal Oxyd Semiconductor) !faible consom. (40xx) ;
– I2L (Integrated Injection Logic) ! haute intégration.
Certains fonctionnent en logique positive, d’autres en logique négative.
S3 ab
00 01 11 10
S1 a S2 ab
00
0 1 00 01 11 10
01
0 c 0
cd 11
b 1 1
10
Système à 2 variables Système à 3 variables
Système à 4 variables
18 Pr. A. Yahya
Remarque :
Les tableaux de Karnaugh se présentent comme des cylindres fermés dans les deux sens.
S ab
S = abc
{ + abc
{ + abc
{ + abc
{ 00 01 11 10
=1 =1 =1 =1
si a=1 si a=1 si a=0 si a=1 c 0 0 0 1 0
et b=1 et b=0 et b=1 et b=1
et c=0 et c=1 et c=1 et c=1 1 0 1 1 1
S ab
a + b)g(1
S = ({ a4
+24 c)g({
b +3 a + c) 00 01 11 10
=0 =0 =0
si a=0 si a=1 si a=0 c 0 0 0 1 1
et b=0 et b=1 et c=0 1 0 1 0 1
et c=1
Remarque :
– il peut exister des états indifférents (notés ’X’). Ces états correspondent à des combinaisons d’entrée
impossibles. On les remplacera par 1 ou 0 de façon à avoir la simplification la plus optimale ;
– on peut utiliser une même case plusieurs fois, puisque 𝑥 + 𝑥 + 𝑥 + · · · + 𝑥 = 𝑥.
Des groupes de 2n cases symétriques par rapport aux axes de tableau peuvent être considérés
comme faisant partie d’un même groupement.
▪ Les valeurs indifférentes ou non spécifiées :
Le symbole Φ peut prendre indifféremment la valeur 0 ou 1 ; on remplace donc par 1 uniquement
ceux qui permettent de simplifier une expression par regroupement.
S3 Abc
00 1 0 1 1 1 1 0 1
01 1 1 0 0 0 0 1 1
de 11 1 1 0 0 0 0 1 1
10 1 1 1 1 1 1 1 1
20 Pr. A. Yahya
F = f ( A, B, C , D ) = A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D = (1,8,9,10,14,15 )
Minterms A B C D Groupe Nb de « 1 »
1 0 0 0 1
G1 1
8 1 0 0 0
9 1 0 0 1
G2 2
10 1 0 1 0
14 1 1 1 0 G3 3
15 1 1 1 1 G4 4
Étape 2 :
✓ Les simplifications ne peuvent se produire qu’entre groupes adjacents. On vérifie alors les
adjacences de chaque terme d’un groupe avec chaque terme du groupe immédiatement
suivant :
Groupe Minterms A B C D
(1 -9) - 0 0 1
G1/G2 (8 -9) 1 0 0 -
(8-10) 1 0 - 0
G2/G3 (10 -14) 1 - 1 0
G3/G4 (14 -15) 1 1 1 -
Étape 3 :
Chercher les combinaisons élémentaires qui vérifient l’expression initiale de la fonction à simplifier :
Les impliquants premiers sont en lignes et les minterms de départ sont en colonnes. Un impliquant
premier est dit essentiel s’il est le seul à couvrir un des minterms en colonne ; on le repère avec une
marque ’*’. Les impliquants premiers essentiels sont nécessaires, mais pas forcément suffisants. Ici
par exemple, si on ne prenait qu’eux, les minterms 8 et 10 ne seraient pas couverts. Dans notre
exemple, on peut ajouter 8-10 pour couvrir les manquants, ce qui donne la possibilité suivante :
21 Pr. A. Yahya
Minterms
Impliquants 1 8 9 10 14 15
premiers
1-9 -001 * X X Retenue ( PI essentiel )
8-9 100- X X Non retenue
8-10 10-0 X X Retenue
10-14 1-10 X X Non retenue
14-15 111- * X X Retenue ( PI essentiel )
* : Impliquant premier (PI) essentiels
Exemple :
Codeur 𝑑é𝑐𝑖𝑚𝑎𝑙 − 𝐷𝐶𝐵 : 10 entrées, 4 sorties
0
1 S0
2
3 Codeur S1
4
5
6 Déc/BCD S2
7
8
9 S3
8.1.2 Décodeur
Le décodeur est un circuit qui établit la correspondance entre un code d’entrée sur N bits et M
lignes de sortie (𝑀 ≤ 2𝑁 ).
Exemple :
Décodeur DCB-décimal : 4 entrées, 10 sorties.
22 Pr. A. Yahya
Exemple :
Code binaire ↦ code Gray
Code DCB ↦ code affichage chiffre (décodeur 7 segments)
8.2 Additionneur
8.2.1 Demi-additionneur
L'addition est une opération très courante dans un microprocesseur. Outre dans l'unité arithmétique,
elle sert pour incrémenter le compteur de programme et pour les calculs d'adresses.
Il prend en entrée deux bits A et B et calcule la somme S et la retenue C (pour Carry en anglais).
Entrées Sorties A Somme
A B C S B
0 0 0 0
Retenue
0 1 0 1
1 0 0 1
1 1 1 0
On remarque sur la table de vérité que S est le ou exclusif des deux entrées A et B, i.e. S = A + B et
que C vaut 1 lorsque les deux entrées valent 1, c’est-à-dire C = A. B
A B
D.A. C
Entrées Sorties
Pour construire un additionneur sur
A B C0 C1 S
plusieurs bits, plusieurs additionneurs 1 bit sont
0 0 0 0 0
mis en cascade. Chacun de ces additionneurs 0 1 0 0 1
prend en entrée deux bits A et B ainsi que la Table de vérité : 1 0 0 0 1
retenue précédente C0. Il calcule la somme S de 1 1 0 1 0
ces trois valeurs binaires ainsi que la retenue C1. 0 0 1 0 1
0 1 1 1 0
1 0 1 1 0
1 1 1 1 1
23 Pr. A. Yahya
A
On peut remarquer sur la table de vérité que S
Somme S
B
est le ou exclusif des trois entrées 𝐴, 𝐵 et 𝐶0 , i.e.
C0
𝑆 = 𝐴 ⊕ 𝐵 ⊕ 𝐶0 et que la retenue 𝐶1 vaut 1 dès
Retenue C1
que deux des trois entrées valent 1, c'est-à-dire
𝐶1 = 𝐴𝐵 + 𝐴𝐶0 + 𝐵𝐶0
8.3 Multiplexeur
C'est un circuit d'aiguillage comportant 2n Notation du multiplexeur :
entrées, n lignes de sélection et une seule sortie. E1
Les n lignes de sélection permettent de E2
b- Equation logique
Y = ABEX0 + ABEX1 + ABEX2 + ABEX3
8.4 Démultiplexeur
C'est un circuit qui fonctionne à l'inverse du circuit précédent, il permet d'aiguiller une seule entrée
(un bit) sur l'une des 𝟐𝒏 sorties possibles, selon la "programmation"(l’état) de ses 𝒏 lignes de
sélection.
2 lignes d'adressage A et B
25 Pr. A. Yahya
8.4.1.1.1 Table de correspondance
8.5 Le comparateur
Il détecte l’égalité entre deux nombres A et B. Certains circuits permettent également de détecter si
A est supérieur ou bien inférieur à B.
Comparateur de 2 e.b.
a b E S I 𝐸 = (𝑎 = 𝑏 ) = ̅̅̅̅̅̅̅
𝑎⨁ 𝑏
0 0 1 0 0 𝑆 = (𝑎 > 𝑏 ) = 𝑎. 𝑏̅
0 1 0 0 1 𝐼 = (𝑎 < 𝑏) = 𝑎̅. 𝑏
𝐷 = ( 𝑎 ≠ 𝑏) = 𝑎 ⊕ 𝑏
1 0 0 1 0
1 1 1 0 0
C'est un circuit composé de n lignes d'entrées qui représentent une adresse sur 𝒏 bits et de 𝟐𝒏 lignes
de sortie possibles dont une seule est sélectionnée en fonction de la "programmation" des 𝒏 lignes
d'entrées.
A0
S1
A1
S2
Adresse sur n bits
. .
. . 2n sorties
. .
An-1 S2n
0
1
2
G=1 DEC. 3 ≥𝟏 𝑭
4
▪ Avec la forme canonique complète, on réalise 𝐹 5
6
7
avec un multiplexeur. En effet, on a :
F = 1. A.B.C + 1. A.B.C + 0. A.B.C + 0. A.B.C + 0. A.B.C +1. A.B.C +1. A.B.C + 0. A.B.C
D’où on tire :
27 Pr. A. Yahya
( ) ( ) ( ) (
F = B.C 1. A + 0. A + B.C 1. A. + 1. A + B.C 0. A + 1. A + B.C 0. A + 0. A ) B
C
F = B.C.A + B.C.1 + B.C.A + B.C.0
̅
𝑨 I0
Comme, l'équation de sortie d'un multiplexeur est
1 I1 MUX
𝑭
F = I 0 .B.C + I1.B.C + I 2 .B.C + I 3.B.C , on obtient en identifiant les deux A I2
0 I3
expressions le schéma suivant :
28 Pr. A. Yahya
Logique sequentielle
9 Introduction
Dans un circuit séquentiel, une sortie est une fonction des entrées mais aussi des sorties du
circuit. Il y a rebouclage (rétroaction) des sorties sur les entrées. Cela signifie qu’un circuit
séquentiel garde la mémoire des états passés. Il existe deux grandes catégories de circuit
séquentiel :
▪ Le circuit séquentiel asynchrone. Les sorties du montage peuvent changer à tout moment
dès qu’une ou plusieurs entrées changent après un temps de propagation qui peut être
différent pour chaque sortie.
Figure 1
Figure 2
1. Q = 0 et Q = 1
2. Q = 1 et Q = 0
Ces deux états sont stables car le circuit est câblé de telle sorte que la propagation de ces valeurs
dans les inverseurs confirme cet état (nombre pair d’inverseurs). Ce point mémoire est
également désigné par le terme bistable.
29 Pr. A. Yahya
Figure 3: Le bistable, point mémoire élémentaire
Ce bistable constitue la base de la structure des mémoires RAM statiques. Une évolution de la
structure du bistable, appelée bascule RS.
On appelle 𝑄𝑛 : l’état de la sortie 𝑄 avant la modification de l’une des variables d’entrée et 𝑄𝑛+1
son état après la modification.
𝑄 R S Qn+1 Fonction
S
0 0 Qn Mémoire
R 0 1 1 SET
𝑄̅
1 0 0 RESET
1 1 X Interdit
Équations séquentielles
Tableau de Karnaugh
R S Qn Qn+1 Qn-1 RS
0 0 0 0
00 01 11 10
0 0 1 1
0 1 0 1 Qn 0 0 1 X 0
0 1 1 1
1 0 0 0 1 1 1 X 0
1 0 1 0 Équation logique :
1 1 0 X
1 1 1 X ̅ . 𝑸𝒏 + 𝑺
𝑸𝒏+𝟏 = 𝑹
30 Pr. A. Yahya
9.2.2 Comportement dynamique de la bascule 𝑹𝑺 − 𝑵𝑶𝑹
Chronogramme :
≥ 𝒕𝑾
Graphe d’états
Les modes de fonctionnement décrits précédemment peuvent être résumés dans le graphe de la
Figure 4
Figure 4: Graphe d'états d'un latch RS. Les nœuds correspondent aux états stables du circuit, et les arcs représentent les transitions entre les états
Figure 5: Fronts et niveaux d'un signal réel, et leur équivalent logique simplifié
31 Pr. A. Yahya
Une horloge est un signal périodique Il produit donc une succession périodique de fronts montants
et/ou descendants.
10 BASCULES
Les bascules sont les éléments de base des systèmes séquentiels ; ce sont des cellules de
mémorisation à 1 bit.
Entrées d’inscription/ 𝑄
d’effacement
Bascule
Entrées de 𝑄̅
synchronisation
Il existe deux types de bascules :
• Bascules asynchrones, dont la sortie peut changer d’état au temps de propagation prés, au
moment où la combinaison des états des entrées est changée (bascule RS…)
• Bascules synchrones, dont le changement d’état de la sortie, qui correspond à une nouvelle
combinaison d’états des entrées, est validé par un signal de synchronisation ou signal d’horloge
(RSH, D, T et JK).
̅ . 𝑸𝒏 + 𝑺) + 𝑯
𝑸𝒏+𝟏 = 𝑯(𝑹 ̅ 𝑸𝒏
Graphe d’évolution :
10.2 Bascule D
D Q
32 Pr. A. Yahya
CK 𝑄̅
CK D Qn+1 Fonction
0 X Qn Mémoire
1 0 0 RESET
1 1 1 SET
Elle décale dans le temps l’état de la sortie d’où son appellation D (D pour Delay : retard)
Equation logique :
̅̅̅̅. 𝑸𝒏
𝑸𝒏+𝟏 = 𝑪𝑲. 𝑫 + 𝑪𝑲
D Q
D Q
CK 𝑄̅
CK 𝑄̅
Bascule D flip-flop active sur front montant Bascule D flip-flop active sur front descendant
CK D Qn+1 Fonction
0 X Qn Mémoire
1 X Qn Mémoire
0 0 RESET
1 1 SET
L'entrée D est copiée sur Q sur les fronts actifs de l'horloge H => synchronisation sur fronts
Exemple du chronogramme :
D
CK
Équation d’évolution
L’équation d’évolution d’une bascule, c’est l’équation de la valeur que prendra l’état après le front
d’horloge. Dans le cas de la bascule D c’est tout simplement la valeur présente à son entrée : Q D
Graphe d’évolution :
33 Pr. A. Yahya
Caractéristiques temporelles de la D flip-flop
Les temps de propagation sont tous référencés par rapport aux fronts actifs de l'horloge. Cette
bascule existe sous forme de composant discret et permet la réalisation de montages nécessitant un
minimum de câblage, la bascule D est la seule utilisée dans les circuits programmables et dans les
ASIC
10.3 Bascule JK
J K H Qn+1 Fonction
X
J X 0 Qn Mémoire
̅̅̅̅
𝑸𝒏+𝟏 = 𝑯(𝑱. 𝑸 ̅ ̅
𝒏 + 𝑲𝑸𝒏 ) + 𝑯𝑸𝒏
0 0 Qn Mémoire
J 𝑸
0 1 0 RESET
H
̅
𝐐 1 0 1 SET
K
1 1 ̅̅̅̅
𝐐𝑛 Basculement
Exemple du chronogramme :
Q
Graphe d’évolution :
34 Pr. A. Yahya
10.4 Bascule T
Elle possède une seule entrée T donnant l’ordre à 𝑄 de changer d’état sur chaque front montant du
signal H appliqué en T.
La bascule T n’existe pas sous forme de composant discret car elle est très facile à réaliser à partir
d’une bascule JK ou d’une bascule D. Elle est particulièrement efficace dans la réalisation de
compteurs binaires.
11 Les compteurs/décompteurs
H
Poids 2 n-1 Poids 2 1 Poids 2 0
. .. .. .
RAZ Bn-1 B1 B0
Qn-1 Q1 Q0
35 Pr. A. Yahya
• Une impulsion (front montant ou descendant selon les circuits) sur l’entrée horloge H
(appelée aussi CK, CLK ou CP) provoque l’incrémentation du compteur d’une unité en
décimal.
• Entrée RAZ (nommée aussi CLR, RESET…) permet d’initialiser le compteur (remise à zéro).
• L’entrée LOAD (non représentée) permet de charger la valeur d’un nombre.
Vdd
A Q0 B Q1 C Q2 D Q3
H J Q J Q J Q J Q
Clk Clk Clk Clk
K Q K Q K Q K Q
36 Pr. A. Yahya
11.3 Décompteur asynchrone
Pour réaliser un décompteur le signal d'horloge est actif sur front montant.
Exemple de décompteur 3 bits, qui décompte de 7 à 0 :
37 Pr. A. Yahya
Q0 commute à chaque front actif sur H.
Q1 commute à chaque front actif sur H si Q0 = 1 sinon conserve son état.
Q2 commute à chaque front actif sur H si Q0 = Q1 = 1 sinon conserve son état.
…
Qk commute à chaque front actif sur H si Q0 = Q1 = … = Qk-1 = 1 sinon conserve son état.
Présentation 74xx191
Le 74xx191 est un compteur/décompteur 4 bits binaire naturel, synchrone à prépositionnement parallèle
asynchrone.
38 Pr. A. Yahya
̅̅̅̅̅̅̅̅
𝐶𝑇𝐸𝑁 : (ou 𝐺̅ ) Entrée de validation ( CounT ENable) active sur niveau bas. Autorisation de
comptage décomptage.
̅
𝐷/𝑈 : Mode de fonctionnement 𝐷/𝑈 ̅ = 1 : Décomptage 𝐷/𝑈 ̅ = 0 : Comptage.
ANALYSE :
• Le compteur peut compter ou décompter suivant l’état de 𝐷/𝑈 ̅ . il est bloqué si ̅̅̅̅̅̅̅̅
𝐶𝑇𝐸𝑁 = 1
• ̅̅̅̅̅̅̅̅ = 0:
Les états des entrées A, B, C et D sont recopiés en sortie 𝑄𝐴 , 𝑄𝐵 , 𝑄𝐶 𝑒𝑡 𝑄𝐷 dès que 𝐿𝑂𝐴𝐷
il s’agit de l’opération de préchargement asynchrone.
39 Pr. A. Yahya
• La sortie 𝑀𝑎𝑥/𝑀𝑖𝑛 reste à 1 pendant que la sortie est [1 1 1 1 ] =(15)10 en mode comptage
𝐷/𝑈 ̅ = 0 et [0 0 0 0]= (0)10 en mode décomptage.
• ̅̅̅̅̅̅ : permet de synchroniser le fonctionnement d’un autre compteur dans une mise en
𝑅𝐶𝑂
cascade en reliant cette sortie à l’entrée ̅̅̅̅̅̅̅̅
𝐶𝑇𝐸𝑁 du boitier suivant.
Mise en cascade
Le compteur 74xx191 est capable de compter sur 4 bits soit de 0 à 15 cependant il peut être utile
d’aller au-delà de cette capacité. Il sera donc nécessaire d’associer plusieurs compteurs 4 bits afin
de réaliser un compteur 8 bits (0 à 255), 12 bits (0 à 4095), 16 bits (0 à 65535) ou plus.
Association asynchrone :
Lors d'une mise en cascade asynchrone, c'est le front montant de RCO qui déclenche un cycle de
comptage décomptage sur le compteur suivant.
LSB
? MSB
?
?
?
?
?
?
?
U2 U1
15 3 15 3
D0 Q0 D0 Q0
1 2 1 2
D1 Q1 D1 Q1
10 6 10 6
D2 Q2 D2 Q2
9 7 9 7
D3 Q3 D3 Q3
Horloge 13 13
RCO RCO
14 14
VCC CLK CLK
4 4
E E
5 5
D/U D/U
11 11
PL PL
12 12
TC TC
MODE 74191 74191
Il existe donc un décalage entre l'instant où commutent les sorties du premier compteur et l'instant
où commutent les sorties du second compteur égale au temps de propagation du carry out.
Association synchrone :
Lors d'une mise en cascade synchrone, l’horloge est commune aux deux compteurs c’est le RCO du
compteur de poids faible (unités) qui autorise le comptage de celui de poids fort (seizaine). Ceci
permet un fonctionnement parfaitement synchrone des sorties avec l’horloge.
LSB MSB
?
?
?
?
?
?
?
?
U2 U1
15 3 15 3
D0 Q0 D0 Q0
1 2 1 2
D1 Q1 D1 Q1
10 6 10 6
D2 Q2 D2 Q2
9 7 9 7
D3 Q3 D3 Q3
Horloge 13 13
RCO RCO
14 14
VCC CLK CLK
4 4
E E
5 5
D/U D/U
11 11
PL PL
12 12
TC TC
MODE 74191 74191
40 Pr. A. Yahya
‘’1’’
‘’1’’ Vers le compteur
des centaines
LSB
MSB
UNITES DIZAINES
12 Registres
Ecriture
parallèle
Entrée Sortie
série (SR) r3 r2 r1 r0 série (SL)
Commande
de
décalage
Lecture
parallèle
Sorties parallèles (optionnelles)
41 Pr. A. Yahya
avant avant
r33 r2 r1 r0 r3 r2 r1 r0
SR r3 r2 r1 r2 r1 r0 SL
après après
Chronogramme :
CLK
1 0 0 0
Ser-In
0 1 0 0
r3
r2 1 0 1 0
r1 0 1 0 1
r0 0 0 1 0
Avec la bascule JK
Sortie série
Entrée série
r3 r2 r1 r0
SIN 1J Q 1J Q 1J Q 1J Q Sout
C1 C1 C1 C1
1K 1K 1K 1K
CLK
Registres universels : Ce sont des registres combinant toutes les fonctions : écriture et lecture
parallèle ou série avec possibilité d’un décalage de l’information vers la droite (→) ou la gauche ()
42 Pr. A. Yahya
43 Pr. A. Yahya
Circuit 74191 : Compteur/Décompteur binaire 4 bits
Ecriture
parallèle
Entrée Sortie
série (SR) r3 r2 r1 r0 série (SL)
Commande
de
décalage
Lecture
parallèle
Sorties parallèles (optionnelles)
Sortie série
Entrée série
r3 r2 r1 r0
SIN 1J Q 1J Q 1J Q 1J Q Sout
C1 C1 C1 C1
1K 1K 1K 1K
CLK
Chronogramme
CLK
1 0 0 0
Ser-In
0 1 0 0
r3
1 0 1 0
r2
r1 0 1 0 1
r0 0 0 1 0
44 Pr. A. Yahya
13 TD n°1 Logique Combinatoire
EXERCICE 1
1. Coder sur 8 bits les parties fractionnaires suivantes
► (0.54862)10 ► (0.85)10
2. Décoder : ► (0.10010011)2 ► (111.0110011)2
3. Coder les 3 nombres décimaux (86)10 , (87)10 et (88)10 en code BCD puis en code binaire réfléchi
(GRAY)
EXERCICE 2 ( Codage des réels Norme IEEE 754 )
1. Coder les réels suivants ( représentés en base décimale) en simple et double précision
► (−0.078125)10 ► (0)10 ► (+)10
2. Donnez la représentation décimale des nombres codés en simple précision suivants :
► (3EA80000)16 ► (1011 1101 0100 0000 0000 0000 0000 0000)2
3. Déterminez, en valeur absolue, le plus petit et le plus grand nombre flottant coder avec la norme IEEE
754 simple précision.
EXERCICE 3
Effectuer les opérations arithmétiques suivantes :
► (1001, 0011)2 + (1010, 0111)2 ► (1001, 0011)2 − (0111,1101)2
► (101, 011)2 (101,11)2 ► (1001, 0011)2 (11, 01)2
EXERCICE 4
A partir du chronogramme suivant :
EXERCICE 5
On définit l'expression logique V par sa table de vérité :
a) Écrire l'expression logique de V sous forme de polynôme.
b) Simplifier algébriquement V.
c) Vérifier la simplification de V grâce au tableau de Karnaugh
d) Construire le logigramme de V en utilisant uniquement des opérateurs logiques
NAND à deux entrées.
e) Construire le logigramme de V en utilisant uniquement des opérateurs logiques
NOR à deux entrées
EXERCICE 6
Formes disjonctive et conjonctive d’une fonction logique.
Soit la fonction logique de 3 variables définie par : f = A + B C
1) Donner sa forme disjonctive ("somme-de-produits ") standard.
2) En déduire sa forme conjonctive ("produit-de-sommes ") standard.
3) Donner sa table de vérité.
45 Pr. A. Yahya
7402
EXERCICE 7
U1:A
3
1
1 7402
7402
EXERCICE 8
Simplifier par Karnaugh les fonctions booliennes suivantes :
X1 = A B + C D + A B C D + A B C D
X 2 = A B C D + A B C D + A B C D + A B C D + + A B C D
Exercice 9 : Quine-McCluskey
Soit la table de vérité de la fonction logique 𝐹(𝐴, 𝐵, 𝐶, 𝐷) :
1. Retranscrire les minterms de la fonction 𝐹 sous forme binaire en soulignant les minterms facultatifs -.
𝑭(𝑨, 𝑩, 𝑪, 𝑫) =
2. Procéder par la méthode Quine-Mc-Cluskey pour simplifier la fonction 𝐹(𝐴, 𝐵, 𝐶, 𝐷) et identifier les
impliqués premiers
3. Compléter la table suivante pour identifier les impliqués essentiels de 𝐹(𝐴, 𝐵, 𝐶, 𝐷).
4. Les impliqués essentiels couvrent-ils l’ensemble des minterms ? Si oui, donner l’expression disjonctive
simplifiée de la fonction 𝐹(𝐴, 𝐵, 𝐶, 𝐷). Autrement, suggérer une solution et donner l’expression disjonctive
simplifiée de la fonction 𝐹(𝐴, 𝐵, 𝐶, 𝐷) ainsi obtenue.
5. Confirmer votre résultat en utilisant un tableau de Karnaugh
46 Pr. A. Yahya
Exercice 10 : générateur de bit de parité
Le générateur de parité est un système qui permet de détecter certaines erreurs, sans pouvoir les corriger. Le système
consiste, par exemple tous les 4 bits, à rajouter un cinquième bit de parité dont la valeur est 0 si le nombre de 1
transférés est impair et 1 si ce nombre est pair.
1) Donner la table de vérité de ce système.
2) Réaliser cette fonction logique avec un multiplexeur à trois entrées adresses.
Exercice 11
1. Donner l’équation de la fonction logique F réalisée par le multiplexeur représenté sur la Figure suivante :
S1
1
4 vers 1
contre : 1
0
a0
a1 a0
A 0 S
E3
E2
E1 MUX
E0
B -
4 vers 1
0
-
1
E3
E2 4 vers 1
E1 MUX
E0
1 S2
0
1
a1 a0
C
D
E
47 Pr. A. Yahya
14 TD n°2 : Logique Séquentielle
EXERCICE 1
Si nous désirons commander un système logique à l’aide
d’un bouton poussoir, un défaut important apparaît : le
rebond.
Figure 1
Pour supprimer ces rebondissements on réalise le montage
suivant à l’aide d’une bascule 𝑹 ̅𝑺̅ . Compléter le
chronogramme ci-contre :
Figure 2
EXERCICE 2
On considère le montage de la Figure 3 réalisé avec 1. Donner les expressions des sorties A et B en
une bascule D synchrone active sur les fronts fonction de CLK et Q.
montants du signal d'horloge. 2. Compléter le chronogramme de la Figure suivante :.
CLK
CLK
QAA
QBB
QQ
C
Figure 3
QD Figure 4
EXERCICE 3
Compléter le chronogramme de la sortie Q de la bascule JK suivante
Figure 5
La bascule JK est transformée comme le montre la fig. ci-dessous. Sachant que les entrées asynchrones ( 𝑹
̅𝑺̅ ) sont
b) Établir les tableaux de Karnaugh des entrées 𝐽𝑖 et 𝐾𝑖 des 3 bascules. En déduire leurs équations logiques.
c) Donner le schéma logique
EXERCICE 7
Compléter le schéma de câblage d’un compteur modulo 42 en utilisant 2 circuits 74190 (voir dossier technique)
montés en cascade asynchrone et des portes NAND. Prévoir un bouton « Raz ».
49 Pr. A. Yahya
EXERCICE 8
1°) Quel est le comptage réalisé par ce circuit.
EXERCICE 9
On donne le registre à décalage de la figure ci-contre
constitué de bascules « D ».
1) On suppose qu’initialement les bascules sont à
zéro. Que se passe-t-il lorsqu’on applique des
impulsions d’horloge sur l’entrée Clk ?
2) On initialise Q0 à « 1 ». Quel est l’état du registre
après deux impulsions ?
50 Pr. A. Yahya
Annexe :
Compteur – décompteur BCD synchrone 74190
51 Pr. A. Yahya
52 Pr. A. Yahya
Compteur asynchrone 4 bits 7490 - 74290
N.B Les entrées J et K sont à l’état logique 1 une fois que le circuit est alimenté
53 Pr. A. Yahya
54 Pr. A. Yahya